mirror of
https://github.com/FunKey-Project/FunKey-OS.git
synced 2025-12-12 15:48:51 +01:00
Added USB Gadget Mass Storage and CDC ACM
This commit is contained in:
parent
f1c81cc332
commit
0777af6a55
@ -1,7 +1,7 @@
|
||||
#
|
||||
# Automatically generated make config: don't edit
|
||||
# Busybox version: 1.27.2
|
||||
# Sat Feb 24 11:11:49 2018
|
||||
# Tue Mar 6 00:09:21 2018
|
||||
#
|
||||
CONFIG_HAVE_DOT_CONFIG=y
|
||||
|
||||
@ -529,9 +529,9 @@ CONFIG_VLOCK=y
|
||||
#
|
||||
# Linux Ext2 FS Progs
|
||||
#
|
||||
CONFIG_CHATTR=y
|
||||
# CONFIG_CHATTR is not set
|
||||
CONFIG_FSCK=y
|
||||
CONFIG_LSATTR=y
|
||||
# CONFIG_LSATTR is not set
|
||||
# CONFIG_TUNE2FS is not set
|
||||
|
||||
#
|
||||
@ -571,13 +571,13 @@ CONFIG_DEFAULT_DEPMOD_FILE="modules.dep"
|
||||
# CONFIG_ACPID is not set
|
||||
# CONFIG_FEATURE_ACPID_COMPAT is not set
|
||||
# CONFIG_BLKDISCARD is not set
|
||||
CONFIG_BLKID=y
|
||||
# CONFIG_BLKID is not set
|
||||
# CONFIG_FEATURE_BLKID_TYPE is not set
|
||||
# CONFIG_BLOCKDEV is not set
|
||||
# CONFIG_CAL is not set
|
||||
CONFIG_CHRT=y
|
||||
CONFIG_DMESG=y
|
||||
CONFIG_FEATURE_DMESG_PRETTY=y
|
||||
# CONFIG_DMESG is not set
|
||||
# CONFIG_FEATURE_DMESG_PRETTY is not set
|
||||
CONFIG_EJECT=y
|
||||
# CONFIG_FEATURE_EJECT_SCSI is not set
|
||||
CONFIG_FALLOCATE=y
|
||||
@ -586,25 +586,25 @@ CONFIG_FBSET=y
|
||||
CONFIG_FEATURE_FBSET_FANCY=y
|
||||
CONFIG_FEATURE_FBSET_READMODE=y
|
||||
CONFIG_FDFORMAT=y
|
||||
CONFIG_FDISK=y
|
||||
# CONFIG_FDISK is not set
|
||||
# CONFIG_FDISK_SUPPORT_LARGE_DISKS is not set
|
||||
CONFIG_FEATURE_FDISK_WRITABLE=y
|
||||
# CONFIG_FEATURE_FDISK_WRITABLE is not set
|
||||
# CONFIG_FEATURE_AIX_LABEL is not set
|
||||
# CONFIG_FEATURE_SGI_LABEL is not set
|
||||
# CONFIG_FEATURE_SUN_LABEL is not set
|
||||
# CONFIG_FEATURE_OSF_LABEL is not set
|
||||
CONFIG_FEATURE_GPT_LABEL=y
|
||||
CONFIG_FEATURE_FDISK_ADVANCED=y
|
||||
# CONFIG_FEATURE_GPT_LABEL is not set
|
||||
# CONFIG_FEATURE_FDISK_ADVANCED is not set
|
||||
# CONFIG_FINDFS is not set
|
||||
CONFIG_FLOCK=y
|
||||
# CONFIG_FLOCK is not set
|
||||
CONFIG_FDFLUSH=y
|
||||
CONFIG_FREERAMDISK=y
|
||||
# CONFIG_FSCK_MINIX is not set
|
||||
CONFIG_FSFREEZE=y
|
||||
CONFIG_FSTRIM=y
|
||||
# CONFIG_FSTRIM is not set
|
||||
CONFIG_GETOPT=y
|
||||
CONFIG_FEATURE_GETOPT_LONG=y
|
||||
CONFIG_HEXDUMP=y
|
||||
# CONFIG_HEXDUMP is not set
|
||||
# CONFIG_FEATURE_HEXDUMP_REVERSE is not set
|
||||
# CONFIG_HD is not set
|
||||
CONFIG_XXD=y
|
||||
@ -627,14 +627,14 @@ CONFIG_FEATURE_MDEV_EXEC=y
|
||||
# CONFIG_FEATURE_MDEV_LOAD_FIRMWARE is not set
|
||||
CONFIG_MESG=y
|
||||
CONFIG_FEATURE_MESG_ENABLE_ONLY_GROUP=y
|
||||
CONFIG_MKE2FS=y
|
||||
# CONFIG_MKE2FS is not set
|
||||
# CONFIG_MKFS_EXT2 is not set
|
||||
# CONFIG_MKFS_MINIX is not set
|
||||
# CONFIG_FEATURE_MINIX2 is not set
|
||||
# CONFIG_MKFS_REISER is not set
|
||||
CONFIG_MKDOSFS=y
|
||||
# CONFIG_MKFS_VFAT is not set
|
||||
CONFIG_MKSWAP=y
|
||||
# CONFIG_MKSWAP is not set
|
||||
# CONFIG_FEATURE_MKSWAP_UUID is not set
|
||||
CONFIG_MORE=y
|
||||
CONFIG_MOUNT=y
|
||||
@ -653,8 +653,8 @@ CONFIG_MOUNTPOINT=y
|
||||
CONFIG_PIVOT_ROOT=y
|
||||
CONFIG_RDATE=y
|
||||
# CONFIG_RDEV is not set
|
||||
CONFIG_READPROFILE=y
|
||||
CONFIG_RENICE=y
|
||||
# CONFIG_READPROFILE is not set
|
||||
# CONFIG_RENICE is not set
|
||||
# CONFIG_REV is not set
|
||||
# CONFIG_RTCWAKE is not set
|
||||
# CONFIG_SCRIPT is not set
|
||||
@ -663,11 +663,11 @@ CONFIG_SETARCH=y
|
||||
CONFIG_LINUX32=y
|
||||
CONFIG_LINUX64=y
|
||||
CONFIG_SETPRIV=y
|
||||
CONFIG_SETSID=y
|
||||
CONFIG_SWAPON=y
|
||||
# CONFIG_SETSID is not set
|
||||
# CONFIG_SWAPON is not set
|
||||
# CONFIG_FEATURE_SWAPON_DISCARD is not set
|
||||
# CONFIG_FEATURE_SWAPON_PRI is not set
|
||||
CONFIG_SWAPOFF=y
|
||||
# CONFIG_SWAPOFF is not set
|
||||
CONFIG_SWITCH_ROOT=y
|
||||
# CONFIG_TASKSET is not set
|
||||
# CONFIG_FEATURE_TASKSET_FANCY is not set
|
||||
@ -683,18 +683,14 @@ CONFIG_FEATURE_UMOUNT_ALL=y
|
||||
CONFIG_FEATURE_MOUNT_LOOP=y
|
||||
CONFIG_FEATURE_MOUNT_LOOP_CREATE=y
|
||||
# CONFIG_FEATURE_MTAB_SUPPORT is not set
|
||||
CONFIG_VOLUMEID=y
|
||||
|
||||
#
|
||||
# Filesystem/Volume identification
|
||||
#
|
||||
# CONFIG_VOLUMEID is not set
|
||||
# CONFIG_FEATURE_VOLUMEID_BCACHE is not set
|
||||
# CONFIG_FEATURE_VOLUMEID_BTRFS is not set
|
||||
# CONFIG_FEATURE_VOLUMEID_CRAMFS is not set
|
||||
CONFIG_FEATURE_VOLUMEID_EXFAT=y
|
||||
CONFIG_FEATURE_VOLUMEID_EXT=y
|
||||
CONFIG_FEATURE_VOLUMEID_F2FS=y
|
||||
CONFIG_FEATURE_VOLUMEID_FAT=y
|
||||
# CONFIG_FEATURE_VOLUMEID_EXFAT is not set
|
||||
# CONFIG_FEATURE_VOLUMEID_EXT is not set
|
||||
# CONFIG_FEATURE_VOLUMEID_F2FS is not set
|
||||
# CONFIG_FEATURE_VOLUMEID_FAT is not set
|
||||
# CONFIG_FEATURE_VOLUMEID_HFS is not set
|
||||
# CONFIG_FEATURE_VOLUMEID_ISO9660 is not set
|
||||
# CONFIG_FEATURE_VOLUMEID_JFS is not set
|
||||
@ -708,7 +704,7 @@ CONFIG_FEATURE_VOLUMEID_FAT=y
|
||||
# CONFIG_FEATURE_VOLUMEID_ROMFS is not set
|
||||
# CONFIG_FEATURE_VOLUMEID_SQUASHFS is not set
|
||||
# CONFIG_FEATURE_VOLUMEID_SYSV is not set
|
||||
CONFIG_FEATURE_VOLUMEID_UBIFS=y
|
||||
# CONFIG_FEATURE_VOLUMEID_UBIFS is not set
|
||||
# CONFIG_FEATURE_VOLUMEID_UDF is not set
|
||||
# CONFIG_FEATURE_VOLUMEID_XFS is not set
|
||||
|
||||
|
||||
@ -46,6 +46,8 @@ CONFIG_DEVTMPFS_MOUNT=y
|
||||
CONFIG_MTD=y
|
||||
CONFIG_MTD_M25P80=y
|
||||
CONFIG_MTD_SPI_NOR=y
|
||||
CONFIG_BLK_DEV_LOOP=y
|
||||
CONFIG_BLK_DEV_LOOP_MIN_COUNT=1
|
||||
CONFIG_SCSI=y
|
||||
CONFIG_BLK_DEV_SD=y
|
||||
CONFIG_NETDEVICES=y
|
||||
@ -118,7 +120,9 @@ CONFIG_USB_MUSB_HDRC=y
|
||||
CONFIG_USB_MUSB_SUNXI=y
|
||||
CONFIG_NOP_USB_XCEIV=y
|
||||
CONFIG_USB_GADGET=y
|
||||
CONFIG_USB_CDC_COMPOSITE=y
|
||||
CONFIG_USB_MASS_STORAGE=m
|
||||
CONFIG_USB_G_SERIAL=m
|
||||
CONFIG_USB_G_ACM_MS=m
|
||||
CONFIG_MMC=y
|
||||
CONFIG_MMC_SUNXI=y
|
||||
CONFIG_NEW_LEDS=y
|
||||
@ -147,6 +151,7 @@ CONFIG_NVMEM_SUNXI_SID=y
|
||||
CONFIG_EXT4_FS=y
|
||||
CONFIG_VFAT_FS=y
|
||||
CONFIG_TMPFS=y
|
||||
CONFIG_CONFIGFS_FS=y
|
||||
# CONFIG_MISC_FILESYSTEMS is not set
|
||||
# CONFIG_NETWORK_FILESYSTEMS is not set
|
||||
CONFIG_NLS_CODEPAGE_437=y
|
||||
|
||||
115
board/funkey/rootfs-overlay/usr/sbin/share
Executable file
115
board/funkey/rootfs-overlay/usr/sbin/share
Executable file
@ -0,0 +1,115 @@
|
||||
#!/bin/sh
|
||||
|
||||
#set -x
|
||||
|
||||
THIS=$(basename $0)
|
||||
|
||||
case "${1}" in
|
||||
start)
|
||||
|
||||
if [ ! -f /mass_storage ]; then
|
||||
echo "$THIS: no shared storage file, create it" | tee /dev/kmsg
|
||||
dd if=/dev/zero of=/mass_storage bs=1M seek=1024 count=0 &&
|
||||
cat <<EOF | sfdisk /mass_storage
|
||||
,,C
|
||||
EOF
|
||||
if [ $? -ne 0 ]; then
|
||||
echo "$THIS: cannot create shared storage file" | tee /dev/kmsg
|
||||
exit 1
|
||||
fi
|
||||
UNIT_LINE=$(fdisk -l /mass_storage | egrep Units)
|
||||
set $UNIT_LINE
|
||||
UNIT=${8}
|
||||
PART_LINE=$(fdisk -l /mass_storage | egrep /mass_storage1)
|
||||
set $PART_LINE
|
||||
let START="${2} * $UNIT"
|
||||
if [ x"$START" = x -o $START -eq 0 ]; then
|
||||
echo "$THIS: cannot find shared storage file start" | tee /dev/kmsg
|
||||
exit 2
|
||||
fi
|
||||
losetup -o$START /dev/loop0 /mass_storage &&
|
||||
mkdosfs /dev/loop0 &&
|
||||
losetup -d /dev/loop0
|
||||
if [ $? -ne 0 ]; then
|
||||
echo "$THIS: cannot format shared storage file" | tee /dev/kmsg
|
||||
exit 3
|
||||
fi
|
||||
fi
|
||||
lsmod | egrep -q ^g_mass_storage
|
||||
if [ $? -eq 0 ]; then
|
||||
echo "$THIS; shared storage already started" | tee /dev/kmsg
|
||||
exit 4
|
||||
fi
|
||||
echo "$THIS: start shared storage" | tee /dev/kmsg
|
||||
modprobe g_mass_storage file=/mass_storage
|
||||
if [ $? -ne 0 ]; then
|
||||
echo "$THIS: cannot start shared storage" | tee /dev/kmsg
|
||||
exit 5
|
||||
fi
|
||||
echo "$THIS: shared storage started" | tee /dev/kmsg
|
||||
;;
|
||||
|
||||
stop)
|
||||
echo "$THIS: stop shared storage" | tee /dev/kmsg
|
||||
lsmod | egrep -q ^g_mass_storage
|
||||
if [ $? -eq 0 ]; then
|
||||
modprobe -r g_mass_storage
|
||||
if [ $? -ne 0 ]; then
|
||||
echo "$THIS: cannot stop shared storage" | tee /dev/kmsg
|
||||
exit 6
|
||||
fi
|
||||
else
|
||||
echo "$THIS: shared storage not started" | tee /dev/kmsg
|
||||
exit 7
|
||||
fi
|
||||
echo "$THIS: shared storage stopped" | tee /dev/kmsg
|
||||
;;
|
||||
|
||||
mount)
|
||||
if [ ! -f /mass_storage ]; then
|
||||
echo "$THIS: no shared storage file" | tee /dev/kmsg
|
||||
exit 8
|
||||
fi
|
||||
echo "$THIS: mounting shared storage" | tee /dev/kmsg
|
||||
UNIT_LINE=$(fdisk -l /mass_storage | egrep Units)
|
||||
set $UNIT_LINE
|
||||
UNIT=${8}
|
||||
PART_LINE=$(fdisk -l /mass_storage | egrep /mass_storage1)
|
||||
set $PART_LINE
|
||||
let START="${2} * $UNIT"
|
||||
if [ x"$START" = x -o $START -eq 0 ]; then
|
||||
echo "$THIS: cannot find shared storage file start" | tee /dev/kmsg
|
||||
exit 9
|
||||
fi
|
||||
losetup -o$START /dev/loop0 /mass_storage &&
|
||||
mount -t vfat /dev/loop0 /mnt/
|
||||
if [ $? -ne 0 ]; then
|
||||
echo "$THIS: cannot mount shared storage file" | tee /dev/kmsg
|
||||
exit 10
|
||||
fi
|
||||
echo "$THIS: shared storage mounted" | tee /dev/kmsg
|
||||
;;
|
||||
|
||||
umount)
|
||||
losetup -a | egrep -q /mass_storage
|
||||
if [ $? -ne 0 ]; then
|
||||
echo "$THIS: no mounted shared storage file" | tee /dev/kmsg
|
||||
exit 11
|
||||
fi
|
||||
echo "unmounting shared storage"
|
||||
umount /mnt &
|
||||
losetup -d /dev/loop0
|
||||
if [ $? -ne 0 ]; then
|
||||
echo "$THIS: cannot unmount shared storage" | tee /dev/kmsg
|
||||
exit 12
|
||||
fi
|
||||
echo "$THIS: shared storage unmounted" | tee //dev/kmsg
|
||||
;;
|
||||
|
||||
*)
|
||||
echo "Usage ${0} {start|stop|mount|umount}"
|
||||
exit 13
|
||||
;;
|
||||
esac
|
||||
|
||||
|
||||
@ -49,6 +49,7 @@ BR2_PACKAGE_BUSYBOX_CONFIG="$(BR2_EXTERNAL_FUNKEY_PATH)/board/funkey/busybox.con
|
||||
|
||||
# E2fsprog package for e2fsck and resize2fs
|
||||
BR2_PACKAGE_E2FSPROGS=y
|
||||
# BR2_PACKAGE_E2FSPROGS_FSCK is not set
|
||||
BR2_PACKAGE_E2FSPROGS_RESIZE2FS=y
|
||||
|
||||
# SDL package for Retro games
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user