From 6d51adb4db229e9c6a7c3fedfa3b752cbdf159eb Mon Sep 17 00:00:00 2001 From: lijunliang Date: Wed, 5 Jun 2024 16:39:59 +0800 Subject: [PATCH] =?UTF-8?q?=E5=A2=9E=E5=8A=A0ota=E6=96=87=E4=BB=B6?= =?UTF-8?q?=E7=B3=BB=E7=BB=9F=E7=BC=96=E8=AF=91=E6=96=B9=E6=B3=95=EF=BC=9B?= =?UTF-8?q?=EF=BC=88=E6=B3=A8=E6=84=8F=E6=AF=8F=E6=AC=A1swupdate=5Fmake=5F?= =?UTF-8?q?recovery=5Fimg=E9=9C=80=E8=A6=81=E5=88=A0=E9=99=A4=E6=A0=B9?= =?UTF-8?q?=E7=9B=AE=E5=BD=95=E5=92=8C./lichee/linux=E4=B8=8B=E7=9A=84.con?= =?UTF-8?q?fig=E5=92=8C.config.old=EF=BC=89?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- build/envsetup.sh | 44 + .../linux/sys_partition_nor.fex | 10 +- .../configs/fastboot_sl100_front/board.dts | 10 +- .../linux/config-4.9_recovery | 2460 +++++++++ .../linux/sys_partition_nor.fex | 40 +- .../etc/asound.conf | 414 ++ .../etc/fw_env.config | 46 + .../etc/init.d/S00mpp | 80 + .../etc/init.d/S10udev | 50 + .../etc/init.d/S50wifidaemon | 34 + .../etc/init.d/S79fat | 36 + .../etc/init.d/S80mmc | 38 + .../etc/init.d/S90pcba | 71 + .../etc/init.d/rc.final | 90 + .../etc/init.d/rc.modules | 12 + .../etc/init.d/rc.preboot | 4 + .../etc/init.d/rcK | 28 + .../busybox-init-base-ota-files/etc/inittab | 39 + .../busybox-init-base-ota-files/etc/profile | 45 + .../etc/udev/rules.d/10-tf.rules | 3 + .../etc/udev/rules.d/10-usb.rules | 3 + .../etc/udev/usb_handle | 18 + .../etc/udhcpd.conf | 104 + .../etc/wpa_supplicant.conf | 7 + .../files/pseudo_init | 525 ++ .../busybox-init-base-ota-files/mnt/ts.conf | 29 + .../busybox-init-base-ota-files/usr/bin/ftp | Bin 0 -> 14392 bytes .../usr/bin/hotplug.sh | 40 + .../usr/bin/pcba_test.sh | 40 + .../usr/bin/ramparser | Bin 0 -> 54892 bytes .../usr/bin/run_usb_adb | 50 + .../usr/bin/run_usb_disk | 37 + .../usr/bin/sample_ai_v851s_sc1721v.conf | 15 + .../usr/bin/sample_ao_startup.conf | 10 + .../usr/bin/sample_ao_v851s_sc1721v.conf | 10 + .../usr/bin/sample_rtsp_v851s_sc1721v.conf | 73 + .../bin/sample_virvi2vo_v851s_sc1721v.conf | 44 + .../usr/bin/setusbconfig | 344 ++ .../usr/share/startup.wav | Bin 0 -> 120166 bytes .../v851s-fastboot_sl100_back/defconfig_ota | 43 +- .../face_hand_detect_v1_10_20240221.bin | Bin .../bin => APP}/face_model_v1_4_20231027.bin | Bin .../bin => APP}/hand_model_v2_14_20240220.bin | Bin .../pix_face_lazy_v1_0_20230515.bin | Bin .../etc/asound.conf | 414 ++ .../etc/fw_env.config | 46 + .../etc/init.d/S10udev | 50 + .../etc/init.d/S50wifidaemon | 34 + .../etc/init.d/S79fat | 36 + .../etc/init.d/S80mmc | 38 + .../etc/init.d/_rc.final | 117 + .../etc/init.d/rc.final | 105 + .../etc/init.d/rc.modules | 43 + .../etc/init.d/rc.preboot | 4 + .../etc/init.d/rcK | 28 + .../busybox-init-base-ota-files/etc/inittab | 39 + .../busybox-init-base-ota-files/etc/profile | 45 + .../etc/udev/rules.d/10-tf.rules | 3 + .../etc/udev/rules.d/10-usb.rules | 3 + .../etc/udev/usb_handle | 18 + .../etc/udhcpd.conf | 105 + .../etc/wpa_supplicant.conf | 7 + .../files/pseudo_init | 577 +++ .../busybox-init-base-ota-files/mnt/ts.conf | 29 + .../usr/bin/hotplug.sh | 42 + .../usr/bin/ramparser | Bin 0 -> 54892 bytes .../usr/bin/run_otg | 68 + .../usr/bin/run_usb_adb | 52 + .../usr/bin/run_usb_disk | 37 + .../usr/bin/setusbconfig | 345 ++ .../v851s3-fastboot_sl100_front/defconfig | 199 +- .../v851s3-fastboot_sl100_front/defconfig_ota | 4492 +++++++++++++++++ .../v851s3-fastboot_sl100_front/modules.mk | 15 +- .../swupdate/sw-description | 4 +- .../swupdate/sw-subimgs.cfg | 4 +- 75 files changed, 11872 insertions(+), 73 deletions(-) create mode 100755 device/config/chips/v851s3/configs/fastboot_sl100_front/linux/config-4.9_recovery create mode 100755 target/allwinner/v851s-fastboot_sl100_back/busybox-init-base-ota-files/etc/asound.conf create mode 100755 target/allwinner/v851s-fastboot_sl100_back/busybox-init-base-ota-files/etc/fw_env.config create mode 100755 target/allwinner/v851s-fastboot_sl100_back/busybox-init-base-ota-files/etc/init.d/S00mpp create mode 100755 target/allwinner/v851s-fastboot_sl100_back/busybox-init-base-ota-files/etc/init.d/S10udev create mode 100755 target/allwinner/v851s-fastboot_sl100_back/busybox-init-base-ota-files/etc/init.d/S50wifidaemon create mode 100755 target/allwinner/v851s-fastboot_sl100_back/busybox-init-base-ota-files/etc/init.d/S79fat create mode 100755 target/allwinner/v851s-fastboot_sl100_back/busybox-init-base-ota-files/etc/init.d/S80mmc create mode 100755 target/allwinner/v851s-fastboot_sl100_back/busybox-init-base-ota-files/etc/init.d/S90pcba create mode 100755 target/allwinner/v851s-fastboot_sl100_back/busybox-init-base-ota-files/etc/init.d/rc.final create mode 100755 target/allwinner/v851s-fastboot_sl100_back/busybox-init-base-ota-files/etc/init.d/rc.modules create mode 100755 target/allwinner/v851s-fastboot_sl100_back/busybox-init-base-ota-files/etc/init.d/rc.preboot create mode 100755 target/allwinner/v851s-fastboot_sl100_back/busybox-init-base-ota-files/etc/init.d/rcK create mode 100755 target/allwinner/v851s-fastboot_sl100_back/busybox-init-base-ota-files/etc/inittab create mode 100755 target/allwinner/v851s-fastboot_sl100_back/busybox-init-base-ota-files/etc/profile create mode 100755 target/allwinner/v851s-fastboot_sl100_back/busybox-init-base-ota-files/etc/udev/rules.d/10-tf.rules create mode 100755 target/allwinner/v851s-fastboot_sl100_back/busybox-init-base-ota-files/etc/udev/rules.d/10-usb.rules create mode 100755 target/allwinner/v851s-fastboot_sl100_back/busybox-init-base-ota-files/etc/udev/usb_handle create mode 100755 target/allwinner/v851s-fastboot_sl100_back/busybox-init-base-ota-files/etc/udhcpd.conf create mode 100755 target/allwinner/v851s-fastboot_sl100_back/busybox-init-base-ota-files/etc/wpa_supplicant.conf create mode 100755 target/allwinner/v851s-fastboot_sl100_back/busybox-init-base-ota-files/files/pseudo_init create mode 100755 target/allwinner/v851s-fastboot_sl100_back/busybox-init-base-ota-files/mnt/ts.conf create mode 100755 target/allwinner/v851s-fastboot_sl100_back/busybox-init-base-ota-files/usr/bin/ftp create mode 100755 target/allwinner/v851s-fastboot_sl100_back/busybox-init-base-ota-files/usr/bin/hotplug.sh create mode 100755 target/allwinner/v851s-fastboot_sl100_back/busybox-init-base-ota-files/usr/bin/pcba_test.sh create mode 100755 target/allwinner/v851s-fastboot_sl100_back/busybox-init-base-ota-files/usr/bin/ramparser create mode 100755 target/allwinner/v851s-fastboot_sl100_back/busybox-init-base-ota-files/usr/bin/run_usb_adb create mode 100755 target/allwinner/v851s-fastboot_sl100_back/busybox-init-base-ota-files/usr/bin/run_usb_disk create mode 100755 target/allwinner/v851s-fastboot_sl100_back/busybox-init-base-ota-files/usr/bin/sample_ai_v851s_sc1721v.conf create mode 100755 target/allwinner/v851s-fastboot_sl100_back/busybox-init-base-ota-files/usr/bin/sample_ao_startup.conf create mode 100755 target/allwinner/v851s-fastboot_sl100_back/busybox-init-base-ota-files/usr/bin/sample_ao_v851s_sc1721v.conf create mode 100755 target/allwinner/v851s-fastboot_sl100_back/busybox-init-base-ota-files/usr/bin/sample_rtsp_v851s_sc1721v.conf create mode 100755 target/allwinner/v851s-fastboot_sl100_back/busybox-init-base-ota-files/usr/bin/sample_virvi2vo_v851s_sc1721v.conf create mode 100755 target/allwinner/v851s-fastboot_sl100_back/busybox-init-base-ota-files/usr/bin/setusbconfig create mode 100755 target/allwinner/v851s-fastboot_sl100_back/busybox-init-base-ota-files/usr/share/startup.wav rename target/allwinner/v851s3-fastboot_sl100_front/busybox-init-base-files/{usr/bin => APP}/face_hand_detect_v1_10_20240221.bin (100%) rename target/allwinner/v851s3-fastboot_sl100_front/busybox-init-base-files/{usr/bin => APP}/face_model_v1_4_20231027.bin (100%) rename target/allwinner/v851s3-fastboot_sl100_front/busybox-init-base-files/{usr/bin => APP}/hand_model_v2_14_20240220.bin (100%) rename target/allwinner/v851s3-fastboot_sl100_front/busybox-init-base-files/{usr/bin => APP}/pix_face_lazy_v1_0_20230515.bin (100%) create mode 100755 target/allwinner/v851s3-fastboot_sl100_front/busybox-init-base-ota-files/etc/asound.conf create mode 100755 target/allwinner/v851s3-fastboot_sl100_front/busybox-init-base-ota-files/etc/fw_env.config create mode 100755 target/allwinner/v851s3-fastboot_sl100_front/busybox-init-base-ota-files/etc/init.d/S10udev create mode 100755 target/allwinner/v851s3-fastboot_sl100_front/busybox-init-base-ota-files/etc/init.d/S50wifidaemon create mode 100755 target/allwinner/v851s3-fastboot_sl100_front/busybox-init-base-ota-files/etc/init.d/S79fat create mode 100755 target/allwinner/v851s3-fastboot_sl100_front/busybox-init-base-ota-files/etc/init.d/S80mmc create mode 100755 target/allwinner/v851s3-fastboot_sl100_front/busybox-init-base-ota-files/etc/init.d/_rc.final create mode 100755 target/allwinner/v851s3-fastboot_sl100_front/busybox-init-base-ota-files/etc/init.d/rc.final create mode 100755 target/allwinner/v851s3-fastboot_sl100_front/busybox-init-base-ota-files/etc/init.d/rc.modules create mode 100755 target/allwinner/v851s3-fastboot_sl100_front/busybox-init-base-ota-files/etc/init.d/rc.preboot create mode 100755 target/allwinner/v851s3-fastboot_sl100_front/busybox-init-base-ota-files/etc/init.d/rcK create mode 100755 target/allwinner/v851s3-fastboot_sl100_front/busybox-init-base-ota-files/etc/inittab create mode 100755 target/allwinner/v851s3-fastboot_sl100_front/busybox-init-base-ota-files/etc/profile create mode 100755 target/allwinner/v851s3-fastboot_sl100_front/busybox-init-base-ota-files/etc/udev/rules.d/10-tf.rules create mode 100755 target/allwinner/v851s3-fastboot_sl100_front/busybox-init-base-ota-files/etc/udev/rules.d/10-usb.rules create mode 100755 target/allwinner/v851s3-fastboot_sl100_front/busybox-init-base-ota-files/etc/udev/usb_handle create mode 100755 target/allwinner/v851s3-fastboot_sl100_front/busybox-init-base-ota-files/etc/udhcpd.conf create mode 100755 target/allwinner/v851s3-fastboot_sl100_front/busybox-init-base-ota-files/etc/wpa_supplicant.conf create mode 100755 target/allwinner/v851s3-fastboot_sl100_front/busybox-init-base-ota-files/files/pseudo_init create mode 100755 target/allwinner/v851s3-fastboot_sl100_front/busybox-init-base-ota-files/mnt/ts.conf create mode 100755 target/allwinner/v851s3-fastboot_sl100_front/busybox-init-base-ota-files/usr/bin/hotplug.sh create mode 100755 target/allwinner/v851s3-fastboot_sl100_front/busybox-init-base-ota-files/usr/bin/ramparser create mode 100755 target/allwinner/v851s3-fastboot_sl100_front/busybox-init-base-ota-files/usr/bin/run_otg create mode 100755 target/allwinner/v851s3-fastboot_sl100_front/busybox-init-base-ota-files/usr/bin/run_usb_adb create mode 100755 target/allwinner/v851s3-fastboot_sl100_front/busybox-init-base-ota-files/usr/bin/run_usb_disk create mode 100755 target/allwinner/v851s3-fastboot_sl100_front/busybox-init-base-ota-files/usr/bin/setusbconfig create mode 100755 target/allwinner/v851s3-fastboot_sl100_front/defconfig_ota diff --git a/build/envsetup.sh b/build/envsetup.sh index 225002287..f80fb6927 100755 --- a/build/envsetup.sh +++ b/build/envsetup.sh @@ -2164,6 +2164,50 @@ function tina_verbose() echo "TINA_VERBOSE=${TINA_VERBOSE}" } +function make_appImg_squash() +{ + local PACK_TOPDIR=$(gettop) + + local SOURCE_DATE_EPOCH=$(${PACK_TOPDIR}/scripts/get_source_date_epoch.sh) + # 这一行指定要打包到文件系统的数据 + local USER_PART_FILE_PATH=${PACK_TOPDIR}/target/allwinner/${TARGET_BOARD}/appimg + local USER_PART_SQUASHFS=${PACK_TOPDIR}/out/${TARGET_BOARD}/image/appimg.squashfs + local USER_PART_DOWNLOAD_FILE=${PACK_TOPDIR}/out/${TARGET_BOARD}/image/appimg.fex + cd ${PACK_TOPDIR}/out/${TARGET_BOARD}/image + [ -e $USER_PART_FILE_PATH ] && { + #这里用了gzip,需要更高压缩率可改成xz + ${PACK_TOPDIR}/out/host/bin/mksquashfs4 $USER_PART_FILE_PATH $USER_PART_SQUASHFS \ + -noappend -root-owned -comp lz4 -b 256k \ + -processors 1 + dd if=${USER_PART_SQUASHFS} of=${USER_PART_DOWNLOAD_FILE} bs=128k conv=sync + } + + cp ${USER_PART_DOWNLOAD_FILE} ${PACK_TOPDIR}/out/${TARGET_BOARD} + cd - +} + +function make_recoveryImg_squash() +{ + local PACK_TOPDIR=$(gettop) + + local SOURCE_DATE_EPOCH=$(${PACK_TOPDIR}/scripts/get_source_date_epoch.sh) + # 这一行指定要打包到文件系统的数据 + local USER_PART_FILE_PATH=${PACK_TOPDIR}/target/allwinner/${TARGET_BOARD}/recoveryimg + local USER_PART_SQUASHFS=${PACK_TOPDIR}/out/${TARGET_BOARD}/image/recoveryimg.squashfs + local USER_PART_DOWNLOAD_FILE=${PACK_TOPDIR}/out/${TARGET_BOARD}/image/recoveryimg.fex + cd ${PACK_TOPDIR}/out/${TARGET_BOARD}/image + [ -e $USER_PART_FILE_PATH ] && { + #这里用了gzip,需要更高压缩率可改成xz + ${PACK_TOPDIR}/out/host/bin/mksquashfs4 $USER_PART_FILE_PATH $USER_PART_SQUASHFS \ + -noappend -root-owned -comp xz -b 256k \ + -processors 1 + dd if=${USER_PART_SQUASHFS} of=${USER_PART_DOWNLOAD_FILE} bs=128k conv=sync + } + + cp ${USER_PART_DOWNLOAD_FILE} ${PACK_TOPDIR}/out/${TARGET_BOARD} + cd - +} + function make() { local T=$(gettop) diff --git a/device/config/chips/v851s/configs/fastboot_sl100_back/linux/sys_partition_nor.fex b/device/config/chips/v851s/configs/fastboot_sl100_back/linux/sys_partition_nor.fex index 22f8f55bb..2f0eca06f 100755 --- a/device/config/chips/v851s/configs/fastboot_sl100_back/linux/sys_partition_nor.fex +++ b/device/config/chips/v851s/configs/fastboot_sl100_back/linux/sys_partition_nor.fex @@ -63,11 +63,11 @@ size = 16 downloadfile = "usr.fex" user_type = 0x8000 -;[partition] -; name = recovery -; size = 5632 -; downloadfile = "recovery.fex" -; user_type = 0x8000 +[partition] + name = recovery + size = 5632 + downloadfile = "recovery.fex" + user_type = 0x8000 [partition] name = rootfs_data diff --git a/device/config/chips/v851s3/configs/fastboot_sl100_front/board.dts b/device/config/chips/v851s3/configs/fastboot_sl100_front/board.dts index ff8bee10d..77bd63364 100755 --- a/device/config/chips/v851s3/configs/fastboot_sl100_front/board.dts +++ b/device/config/chips/v851s3/configs/fastboot_sl100_front/board.dts @@ -21,7 +21,15 @@ }; chosen { - bootargs = "earlyprintk=sunxi-uart,0x02500000 clk_ignore_unused initcall_debug=0 console=ttyS0,115200 loglevel=6 lpj=240000 root=/dev/mtdblock4 rootwait init=/files/pseudo_init rdinit=/rdinit partitions=env@mtdblock1:env-redund@mtdblock2:boot@mtdblock3:rootfs@mtdblock4:extend@mtdblock5:rootfs_data@mtdblock6:UDISK@mtdblock7 coherent_pool=16K androidboot.hardware=sun8iw21p1 boot_type=3 androidboot.boot_type=3 gpt=1 mbr_offset=2080768 bootreason=unknow"; + /*bootargs = "earlyprintk=sunxi-uart,0x02500000 clk_ignore_unused initcall_debug=0 console=ttyS0,115200 loglevel=6 lpj=240000 root=/dev/mtdblock4 rootwait init=/files/pseudo_init rdinit=/rdinit partitions=env@mtdblock1:env-redund@mtdblock2:boot@mtdblock3:rootfs@mtdblock4:extend@mtdblock5:rootfs_data@mtdblock6:UDISK@mtdblock7 coherent_pool=16K androidboot.hardware=sun8iw21p1 boot_type=3 androidboot.boot_type=3 gpt=1 mbr_offset=2080768 bootreason=unknow";*/ + + /* for OTA recovery system:(kernel rootfs extend) */ + bootargs = "earlyprintk=sunxi-uart,0x02500000 clk_ignore_unused initcall_debug=0 console=ttyS0,115200 loglevel=1 lpj=240000 root=/dev/mtdblock4 rootwait init=/files/pseudo_init rdinit=/rdinit partitions=env@mtdblock1:env-redund@mtdblock2:boot@mtdblock3:rootfs@mtdblock4:extend@mtdblock5:recovery@mtdblock6:rootfs_data@mtdblock7:UDISK@mtdblock8 coherent_pool=16K androidboot.hardware=sun8iw21p1 boot_type=3 androidboot.boot_type=3 gpt=1 mbr_offset=2080768 bootreason=unknow"; + + + /* for OTA recovery system:(kernel rootfs extend appImg recoveryImg) */ + /*bootargs = "earlyprintk=sunxi-uart,0x02500000 clk_ignore_unused initcall_debug=0 console=ttyS0,115200 loglevel=1 lpj=240000 root=/dev/mtdblock4 rootwait init=/files/pseudo_init rdinit=/rdinit partitions=env@mtdblock1:env-redund@mtdblock2:boot@mtdblock3:rootfs@mtdblock4:extend@mtdblock5:usrapp@mtdblock6:recovery@mtdblock7:recoveryapp@mtdblock8:rootfs_data@mtdblock9:UDISK@mtdblock10 coherent_pool=16K androidboot.hardware=sun8iw21p1 boot_type=3 androidboot.boot_type=3 gpt=1 mbr_offset=2080768 bootreason=unknow";*/ + /* for OTA AB system:(kernel rootfs extend) */ /* bootargs = "earlyprintk=sunxi-uart,0x02500000 clk_ignore_unused initcall_debug=0 console=ttyS0,115200 loglevel=1 lpj=240000 root=/dev/mtdblock3 rootwait init=/files/pseudo_init rdinit=/rdinit partitions=boot@mtdblock1:boot_backup@mtdblock2:rootfs@mtdblock3:rootfs_backup@mtdblock4:extend@mtdblock5:extend_backup@mtdblock6:rootfs_data@mtdblock7:env@mtdblock8:UDISK@mtdblock9 coherent_pool=16K androidboot.hardware=sun8iw21p1 boot_type=3 androidboot.boot_type=3 gpt=1 mbr_offset=2080768 bootreason=unknow"; */ diff --git a/device/config/chips/v851s3/configs/fastboot_sl100_front/linux/config-4.9_recovery b/device/config/chips/v851s3/configs/fastboot_sl100_front/linux/config-4.9_recovery new file mode 100755 index 000000000..07584d729 --- /dev/null +++ b/device/config/chips/v851s3/configs/fastboot_sl100_front/linux/config-4.9_recovery @@ -0,0 +1,2460 @@ +# +# Automatically generated file; DO NOT EDIT. +# Linux/arm 4.9.191 Kernel Configuration +# +CONFIG_ARM=y +CONFIG_ARM_HAS_SG_CHAIN=y +CONFIG_NEED_SG_DMA_LENGTH=y +CONFIG_ARM_DMA_USE_IOMMU=y +CONFIG_ARM_DMA_IOMMU_ALIGNMENT=8 +CONFIG_SYS_SUPPORTS_APM_EMULATION=y +CONFIG_HAVE_PROC_CPU=y +CONFIG_STACKTRACE_SUPPORT=y +CONFIG_LOCKDEP_SUPPORT=y +CONFIG_TRACE_IRQFLAGS_SUPPORT=y +CONFIG_RWSEM_XCHGADD_ALGORITHM=y +CONFIG_FIX_EARLYCON_MEM=y +CONFIG_GENERIC_HWEIGHT=y +CONFIG_GENERIC_CALIBRATE_DELAY=y +CONFIG_NEED_DMA_MAP_STATE=y +CONFIG_ARCH_SUPPORTS_UPROBES=y +CONFIG_VECTORS_BASE=0xffff0000 +CONFIG_ARM_PATCH_PHYS_VIRT=y +CONFIG_NEED_MACH_IO_H=y +CONFIG_NEED_MACH_MEMORY_H=y +CONFIG_GENERIC_BUG=y +CONFIG_PGTABLE_LEVELS=2 +CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config" +CONFIG_IRQ_WORK=y +CONFIG_BUILDTIME_EXTABLE_SORT=y + +# +# General setup +# +CONFIG_BROKEN_ON_SMP=y +CONFIG_INIT_ENV_ARG_LIMIT=32 +CONFIG_CROSS_COMPILE="" +# CONFIG_COMPILE_TEST is not set +CONFIG_LOCALVERSION="" +# CONFIG_LOCALVERSION_AUTO is not set +CONFIG_HAVE_KERNEL_GZIP=y +CONFIG_HAVE_KERNEL_LZMA=y +CONFIG_HAVE_KERNEL_XZ=y +CONFIG_HAVE_KERNEL_LZO=y +CONFIG_HAVE_KERNEL_LZ4=y +# CONFIG_KERNEL_GZIP is not set +# CONFIG_KERNEL_LZMA is not set +# CONFIG_KERNEL_XZ is not set +# CONFIG_KERNEL_LZO is not set +CONFIG_KERNEL_LZ4=y +CONFIG_DEFAULT_HOSTNAME="(none)" +# CONFIG_SWAP is not set +# CONFIG_SYSVIPC is not set +# CONFIG_POSIX_MQUEUE is not set +# CONFIG_CROSS_MEMORY_ATTACH is not set +# CONFIG_FHANDLE is not set +# CONFIG_USELIB is not set +# CONFIG_AUDIT is not set +CONFIG_HAVE_ARCH_AUDITSYSCALL=y + +# +# IRQ subsystem +# +# CONFIG_IRQ_SYSFS is not set +CONFIG_GENERIC_IRQ_PROBE=y +CONFIG_GENERIC_IRQ_SHOW=y +CONFIG_GENERIC_IRQ_SHOW_LEVEL=y +CONFIG_HARDIRQS_SW_RESEND=y +CONFIG_GENERIC_IRQ_CHIP=y +CONFIG_IRQ_DOMAIN=y +CONFIG_IRQ_DOMAIN_HIERARCHY=y +CONFIG_HANDLE_DOMAIN_IRQ=y +CONFIG_IRQ_FORCED_THREADING=y +CONFIG_SPARSE_IRQ=y +CONFIG_ARCH_CLOCKSOURCE_DATA=y +CONFIG_GENERIC_CLOCKEVENTS=y + +# +# Timers subsystem +# +CONFIG_TICK_ONESHOT=y +CONFIG_NO_HZ_COMMON=y +# CONFIG_HZ_PERIODIC is not set +CONFIG_NO_HZ_IDLE=y +CONFIG_NO_HZ=y +CONFIG_HIGH_RES_TIMERS=y + +# +# CPU/Task time and stats accounting +# +CONFIG_TICK_CPU_ACCOUNTING=y +# CONFIG_VIRT_CPU_ACCOUNTING_GEN is not set +# CONFIG_IRQ_TIME_ACCOUNTING is not set +CONFIG_BSD_PROCESS_ACCT=y +CONFIG_BSD_PROCESS_ACCT_V3=y +# CONFIG_TASKSTATS is not set +# CONFIG_PSI is not set + +# +# RCU Subsystem +# +CONFIG_PREEMPT_RCU=y +# CONFIG_RCU_EXPERT is not set +CONFIG_SRCU=y +# CONFIG_TASKS_RCU is not set +CONFIG_RCU_STALL_COMMON=y +# CONFIG_TREE_RCU_TRACE is not set +# CONFIG_RCU_EXPEDITE_BOOT is not set +# CONFIG_BUILD_BIN2C is not set +# CONFIG_IKCONFIG is not set +CONFIG_LOG_BUF_SHIFT=15 +CONFIG_NMI_LOG_BUF_SHIFT=12 +CONFIG_GENERIC_SCHED_CLOCK=y +# CONFIG_CGROUPS is not set +# CONFIG_CHECKPOINT_RESTORE is not set +# CONFIG_NAMESPACES is not set +# CONFIG_SCHED_AUTOGROUP is not set +# CONFIG_DEFAULT_USE_ENERGY_AWARE is not set +# CONFIG_SYSFS_DEPRECATED is not set +# CONFIG_RELAY is not set +# CONFIG_BLK_DEV_INITRD is not set +# CONFIG_CC_OPTIMIZE_FOR_PERFORMANCE is not set +CONFIG_CC_OPTIMIZE_FOR_SIZE=y +CONFIG_SYSCTL=y +CONFIG_HAVE_UID16=y +CONFIG_BPF=y +CONFIG_EXPERT=y +# CONFIG_UID16 is not set +CONFIG_MULTIUSER=y +# CONFIG_SGETMASK_SYSCALL is not set +# CONFIG_SYSFS_SYSCALL is not set +# CONFIG_SYSCTL_SYSCALL is not set +# CONFIG_KALLSYMS is not set +CONFIG_PRINTK=y +CONFIG_PRINTK_NMI=y +CONFIG_BUG=y +CONFIG_BASE_FULL=y +CONFIG_FUTEX=y +CONFIG_EPOLL=y +CONFIG_SIGNALFD=y +CONFIG_TIMERFD=y +CONFIG_EVENTFD=y +# CONFIG_BPF_SYSCALL is not set +CONFIG_SHMEM=y +# CONFIG_AIO is not set +CONFIG_ADVISE_SYSCALLS=y +# CONFIG_USERFAULTFD is not set +CONFIG_MEMBARRIER=y +CONFIG_EMBEDDED=y +CONFIG_HAVE_PERF_EVENTS=y +CONFIG_PERF_USE_VMALLOC=y + +# +# Kernel Performance Events And Counters +# +# CONFIG_PERF_EVENTS is not set +# CONFIG_VM_EVENT_COUNTERS is not set +# CONFIG_SLUB_DEBUG is not set +# CONFIG_COMPAT_BRK is not set +# CONFIG_SLAB is not set +CONFIG_SLUB=y +# CONFIG_SLOB is not set +# CONFIG_SLAB_FREELIST_RANDOM is not set +# CONFIG_SYSTEM_DATA_VERIFICATION is not set +# CONFIG_PROFILING is not set +CONFIG_HAVE_OPROFILE=y +# CONFIG_KPROBES is not set +CONFIG_JUMP_LABEL=y +# CONFIG_STATIC_KEYS_SELFTEST is not set +# CONFIG_UPROBES is not set +# CONFIG_HAVE_64BIT_ALIGNED_ACCESS is not set +CONFIG_HAVE_EFFICIENT_UNALIGNED_ACCESS=y +CONFIG_ARCH_USE_BUILTIN_BSWAP=y +CONFIG_HAVE_KPROBES=y +CONFIG_HAVE_KRETPROBES=y +CONFIG_HAVE_NMI=y +CONFIG_HAVE_ARCH_TRACEHOOK=y +CONFIG_HAVE_DMA_CONTIGUOUS=y +CONFIG_GENERIC_SMP_IDLE_THREAD=y +CONFIG_GENERIC_IDLE_POLL_SETUP=y +CONFIG_HAVE_REGS_AND_STACK_ACCESS_API=y +CONFIG_HAVE_CLK=y +CONFIG_HAVE_DMA_API_DEBUG=y +CONFIG_HAVE_PERF_REGS=y +CONFIG_HAVE_PERF_USER_STACK_DUMP=y +CONFIG_HAVE_ARCH_JUMP_LABEL=y +CONFIG_ARCH_WANT_IPC_PARSE_VERSION=y +CONFIG_HAVE_ARCH_SECCOMP_FILTER=y +CONFIG_HAVE_GCC_PLUGINS=y +# CONFIG_GCC_PLUGINS is not set +CONFIG_HAVE_CC_STACKPROTECTOR=y +# CONFIG_CC_STACKPROTECTOR is not set +CONFIG_CC_STACKPROTECTOR_NONE=y +# CONFIG_CC_STACKPROTECTOR_REGULAR is not set +# CONFIG_CC_STACKPROTECTOR_STRONG is not set +# CONFIG_LTO is not set +CONFIG_LTO_NONE=y +CONFIG_HAVE_CONTEXT_TRACKING=y +CONFIG_HAVE_VIRT_CPU_ACCOUNTING_GEN=y +CONFIG_HAVE_IRQ_TIME_ACCOUNTING=y +CONFIG_HAVE_MOD_ARCH_SPECIFIC=y +CONFIG_MODULES_USE_ELF_REL=y +CONFIG_ARCH_HAS_ELF_RANDOMIZE=y +CONFIG_HAVE_ARCH_MMAP_RND_BITS=y +CONFIG_HAVE_EXIT_THREAD=y +CONFIG_ARCH_MMAP_RND_BITS_MIN=8 +CONFIG_ARCH_MMAP_RND_BITS_MAX=16 +CONFIG_ARCH_MMAP_RND_BITS=8 +# CONFIG_HAVE_ARCH_HASH is not set +# CONFIG_ISA_BUS_API is not set +CONFIG_CLONE_BACKWARDS=y +CONFIG_OLD_SIGSUSPEND3=y +CONFIG_OLD_SIGACTION=y +# CONFIG_CPU_NO_EFFICIENT_FFS is not set +# CONFIG_HAVE_ARCH_VMAP_STACK is not set + +# +# GCOV-based kernel profiling +# +CONFIG_ARCH_HAS_GCOV_PROFILE_ALL=y +CONFIG_HAVE_GENERIC_DMA_COHERENT=y +CONFIG_RT_MUTEXES=y +CONFIG_BASE_SMALL=0 +CONFIG_MODULES=y +# CONFIG_MODULE_FORCE_LOAD is not set +CONFIG_MODULE_UNLOAD=y +# CONFIG_MODULE_FORCE_UNLOAD is not set +# CONFIG_MODVERSIONS is not set +# CONFIG_MODULE_SRCVERSION_ALL is not set +# CONFIG_MODULE_SIG is not set +# CONFIG_MODULE_COMPRESS is not set +# CONFIG_TRIM_UNUSED_KSYMS is not set +CONFIG_BLOCK=y +# CONFIG_LBDAF is not set +# CONFIG_BLK_DEV_BSG is not set +# CONFIG_BLK_DEV_BSGLIB is not set +# CONFIG_BLK_DEV_INTEGRITY is not set +# CONFIG_BLK_CMDLINE_PARSER is not set + +# +# Partition Types +# +# CONFIG_PARTITION_ADVANCED is not set +CONFIG_MSDOS_PARTITION=y +CONFIG_EFI_PARTITION=y + +# +# IO Schedulers +# +CONFIG_IOSCHED_NOOP=y +# CONFIG_IOSCHED_DEADLINE is not set +CONFIG_IOSCHED_CFQ=y +CONFIG_DEFAULT_CFQ=y +# CONFIG_DEFAULT_NOOP is not set +CONFIG_DEFAULT_IOSCHED="cfq" +CONFIG_UNINLINE_SPIN_UNLOCK=y +CONFIG_ARCH_SUPPORTS_ATOMIC_RMW=y +# CONFIG_FREEZER is not set + +# +# System Type +# +CONFIG_MMU=y +# CONFIG_ARCH_MULTIPLATFORM is not set +CONFIG_ARCH_SUNXI=y +# CONFIG_ARCH_GEMINI is not set +# CONFIG_ARCH_EBSA110 is not set +# CONFIG_ARCH_EP93XX is not set +# CONFIG_ARCH_FOOTBRIDGE is not set +# CONFIG_ARCH_NETX is not set +# CONFIG_ARCH_IOP13XX is not set +# CONFIG_ARCH_IOP32X is not set +# CONFIG_ARCH_IOP33X is not set +# CONFIG_ARCH_IXP4XX is not set +# CONFIG_ARCH_DOVE is not set +# CONFIG_ARCH_KS8695 is not set +# CONFIG_ARCH_W90X900 is not set +# CONFIG_ARCH_LPC32XX is not set +# CONFIG_ARCH_PXA is not set +# CONFIG_ARCH_RPC is not set +# CONFIG_ARCH_SA1100 is not set +# CONFIG_ARCH_S3C24XX is not set +# CONFIG_ARCH_DAVINCI is not set +# CONFIG_ARCH_OMAP1 is not set +CONFIG_ARCH_SUN8I=y +# CONFIG_ARCH_SUN8IW11 is not set +# CONFIG_ARCH_SUN8IW12 is not set +# CONFIG_ARCH_SUN8IW15 is not set +# CONFIG_ARCH_SUN8IW16 is not set +# CONFIG_ARCH_SUN8IW17 is not set +# CONFIG_ARCH_SUN8IW8 is not set +# CONFIG_ARCH_SUN8IW7 is not set +# CONFIG_ARCH_SUN8IW6 is not set +# CONFIG_ARCH_SUN8IW18 is not set +# CONFIG_ARCH_SUN8IW19 is not set +CONFIG_ARCH_SUN8IW21=y +CONFIG_ARCH_SUN8IW21P1=y +# CONFIG_FPGA_V4_PLATFORM is not set +# CONFIG_FPGA_V7_PLATFORM is not set +CONFIG_EVB_PLATFORM=y +CONFIG_SUNXI_SOC_NAME="sun8iw21" + +# +# Processor Type +# +CONFIG_CPU_V7=y +CONFIG_CPU_32v6K=y +CONFIG_CPU_32v7=y +CONFIG_CPU_ABRT_EV7=y +CONFIG_CPU_PABRT_V7=y +CONFIG_CPU_CACHE_V7=y +CONFIG_CPU_CACHE_VIPT=y +CONFIG_CPU_COPY_V6=y +CONFIG_CPU_TLB_V7=y +CONFIG_CPU_HAS_ASID=y +CONFIG_CPU_CP15=y +CONFIG_CPU_CP15_MMU=y + +# +# Processor Features +# +# CONFIG_ARM_LPAE is not set +# CONFIG_ARCH_PHYS_ADDR_T_64BIT is not set +CONFIG_ARM_THUMB=y +# CONFIG_ARM_THUMBEE is not set +CONFIG_ARM_VIRT_EXT=y +CONFIG_SWP_EMULATE=y +# CONFIG_CPU_ICACHE_DISABLE is not set +# CONFIG_CPU_DCACHE_DISABLE is not set +# CONFIG_CPU_BPREDICT_DISABLE is not set +CONFIG_CPU_SPECTRE=y +CONFIG_HARDEN_BRANCH_PREDICTOR=y +CONFIG_KUSER_HELPERS=y +# CONFIG_VDSO is not set +CONFIG_OUTER_CACHE=y +CONFIG_OUTER_CACHE_SYNC=y +CONFIG_MIGHT_HAVE_CACHE_L2X0=y +CONFIG_CACHE_L2X0=y +# CONFIG_PL310_ERRATA_588369 is not set +# CONFIG_PL310_ERRATA_727915 is not set +# CONFIG_PL310_ERRATA_753970 is not set +# CONFIG_PL310_ERRATA_769419 is not set +CONFIG_ARM_L1_CACHE_SHIFT_6=y +CONFIG_ARM_L1_CACHE_SHIFT=6 +CONFIG_ARM_DMA_MEM_BUFFERABLE=y +CONFIG_ARM_HEAVY_MB=y +# CONFIG_DEBUG_RODATA is not set +CONFIG_MULTI_IRQ_HANDLER=y +# CONFIG_ARM_ERRATA_430973 is not set +# CONFIG_ARM_ERRATA_458693 is not set +# CONFIG_ARM_ERRATA_460075 is not set +# CONFIG_ARM_ERRATA_720789 is not set +# CONFIG_ARM_ERRATA_743622 is not set +# CONFIG_ARM_ERRATA_751472 is not set +# CONFIG_ARM_ERRATA_754322 is not set +# CONFIG_ARM_ERRATA_775420 is not set +# CONFIG_ARM_ERRATA_773022 is not set +# CONFIG_ARM_ERRATA_818325_852422 is not set +# CONFIG_ARM_ERRATA_821420 is not set +# CONFIG_ARM_ERRATA_825619 is not set +# CONFIG_ARM_ERRATA_852421 is not set +# CONFIG_ARM_ERRATA_852423 is not set + +# +# Bus support +# +# CONFIG_PCI_DOMAINS_GENERIC is not set +# CONFIG_PCI_SYSCALL is not set +# CONFIG_PCCARD is not set + +# +# Kernel Features +# +CONFIG_HAVE_SMP=y +# CONFIG_SMP is not set +CONFIG_HAVE_ARM_ARCH_TIMER=y +CONFIG_VMSPLIT_3G=y +# CONFIG_VMSPLIT_3G_OPT is not set +# CONFIG_VMSPLIT_2G is not set +# CONFIG_VMSPLIT_1G is not set +CONFIG_PAGE_OFFSET=0xC0000000 +# CONFIG_ARM_PSCI is not set +CONFIG_ARCH_NR_GPIO=416 +# CONFIG_PREEMPT_NONE is not set +# CONFIG_PREEMPT_VOLUNTARY is not set +CONFIG_PREEMPT=y +CONFIG_PREEMPT_COUNT=y +CONFIG_HZ_FIXED=0 +CONFIG_HZ_100=y +# CONFIG_HZ_200 is not set +# CONFIG_HZ_250 is not set +# CONFIG_HZ_300 is not set +# CONFIG_HZ_500 is not set +# CONFIG_HZ_1000 is not set +CONFIG_HZ=100 +CONFIG_SCHED_HRTICK=y +CONFIG_THUMB2_KERNEL=y +CONFIG_THUMB2_AVOID_R_ARM_THM_JUMP11=y +CONFIG_ARM_ASM_UNIFIED=y +CONFIG_ARM_PATCH_IDIV=y +CONFIG_AEABI=y +CONFIG_ARM_STACK_ORDER=1 +# CONFIG_ARCH_SPARSEMEM_DEFAULT is not set +# CONFIG_ARCH_SELECT_MEMORY_MODEL is not set +CONFIG_HAVE_ARCH_PFN_VALID=y +CONFIG_HIGHMEM=y +CONFIG_HIGHPTE=y +CONFIG_CPU_SW_DOMAIN_PAN=y +CONFIG_ARCH_WANT_GENERAL_HUGETLB=y +# CONFIG_ARM_MODULE_PLTS is not set +CONFIG_FLATMEM=y +CONFIG_FLAT_NODE_MEM_MAP=y +CONFIG_HAVE_MEMBLOCK=y +CONFIG_NO_BOOTMEM=y +CONFIG_MEMORY_ISOLATION=y +# CONFIG_HAVE_BOOTMEM_INFO_NODE is not set +CONFIG_SPLIT_PTLOCK_CPUS=4 +CONFIG_COMPACTION=y +CONFIG_MIGRATION=y +# CONFIG_PHYS_ADDR_T_64BIT is not set +CONFIG_BOUNCE=y +# CONFIG_KSM is not set +CONFIG_DEFAULT_MMAP_MIN_ADDR=4096 +CONFIG_NEED_PER_CPU_KM=y +# CONFIG_CLEANCACHE is not set +CONFIG_CMA=y +# CONFIG_CMA_DEBUG is not set +CONFIG_CMA_AREAS=4 +# CONFIG_ZPOOL is not set +# CONFIG_ZBUD is not set +# CONFIG_ZSMALLOC is not set +CONFIG_GENERIC_EARLY_IOREMAP=y +# CONFIG_IDLE_PAGE_TRACKING is not set +# CONFIG_SLAB_SYSFS is not set +CONFIG_FORCE_MAX_ZONEORDER=11 +CONFIG_ALIGNMENT_TRAP=y +# CONFIG_UACCESS_WITH_MEMCPY is not set +# CONFIG_SECCOMP is not set +CONFIG_SWIOTLB=y +CONFIG_IOMMU_HELPER=y +# CONFIG_PARAVIRT is not set +# CONFIG_PARAVIRT_TIME_ACCOUNTING is not set +# CONFIG_XEN is not set +CONFIG_ARM_FLUSH_CONSOLE_ON_RESTART=y + +# +# Boot options +# +CONFIG_USE_OF=y +# CONFIG_ATAGS is not set +# CONFIG_BUILD_ARM_APPENDED_DTB_IMAGE is not set +CONFIG_ZBOOT_ROM_TEXT=0 +CONFIG_ZBOOT_ROM_BSS=0 +# CONFIG_ARM_APPENDED_DTB is not set +CONFIG_CMDLINE="earlyprintk=sunxi-uart,0x05000000 loglevel=8 initcall_debug=1 console=ttyS0 init=/init" +# CONFIG_XIP_KERNEL is not set +# CONFIG_KEXEC is not set +# CONFIG_CRASH_DUMP is not set +# CONFIG_AUTO_ZRELADDR is not set + +# +# CPU Power Management +# + +# +# CPU Frequency scaling +# +# CONFIG_CPU_FREQ is not set + +# +# CPU Idle +# +# CONFIG_CPU_IDLE is not set +# CONFIG_ARCH_NEEDS_CPU_IDLE_COUPLED is not set + +# +# Floating point emulation +# + +# +# At least one emulation must be selected +# +CONFIG_VFP=y +CONFIG_VFPv3=y +CONFIG_NEON=y +# CONFIG_KERNEL_MODE_NEON is not set + +# +# Userspace binary formats +# +CONFIG_BINFMT_ELF=y +CONFIG_ELFCORE=y +CONFIG_BINFMT_SCRIPT=y +# CONFIG_BINFMT_FLAT is not set +# CONFIG_HAVE_AOUT is not set +# CONFIG_BINFMT_MISC is not set +# CONFIG_COREDUMP is not set + +# +# Power management options +# +# CONFIG_SUSPEND is not set +# CONFIG_PM is not set +# CONFIG_APM_EMULATION is not set +CONFIG_ARCH_SUSPEND_POSSIBLE=y +# CONFIG_ARM_CPU_SUSPEND is not set +CONFIG_ARCH_HIBERNATION_POSSIBLE=y +CONFIG_NET=y + +# +# Networking options +# +CONFIG_PACKET=y +CONFIG_PACKET_DIAG=y +CONFIG_UNIX=y +CONFIG_UNIX_DIAG=y +CONFIG_XFRM=y +CONFIG_XFRM_ALGO=y +# CONFIG_XFRM_USER is not set +# CONFIG_XFRM_SUB_POLICY is not set +# CONFIG_XFRM_MIGRATE is not set +# CONFIG_XFRM_STATISTICS is not set +CONFIG_NET_KEY=y +# CONFIG_NET_KEY_MIGRATE is not set +CONFIG_INET=y +CONFIG_IP_MULTICAST=y +CONFIG_IP_ADVANCED_ROUTER=y +CONFIG_IP_PING=y +CONFIG_IP_FIB_TRIE_STATS=y +CONFIG_IP_MULTIPLE_TABLES=y +CONFIG_IP_ROUTE_MULTIPATH=y +CONFIG_IP_ROUTE_VERBOSE=y +# CONFIG_IP_PNP is not set +# CONFIG_NET_IPIP is not set +# CONFIG_NET_IPGRE_DEMUX is not set +# CONFIG_NET_IP_TUNNEL is not set +CONFIG_IP_MROUTE=y +CONFIG_IP_MROUTE_MULTIPLE_TABLES=y +# CONFIG_IP_PIMSM_V1 is not set +# CONFIG_IP_PIMSM_V2 is not set +CONFIG_TCP_METRICS=y +# CONFIG_SYN_COOKIES is not set +# CONFIG_NET_IPVTI is not set +# CONFIG_NET_UDP_TUNNEL is not set +# CONFIG_NET_FOU is not set +# CONFIG_INET_AH is not set +# CONFIG_INET_ESP is not set +# CONFIG_INET_IPCOMP is not set +# CONFIG_INET_XFRM_TUNNEL is not set +# CONFIG_INET_TUNNEL is not set +CONFIG_INET_XFRM_MODE_TRANSPORT=y +CONFIG_INET_XFRM_MODE_TUNNEL=y +CONFIG_INET_XFRM_MODE_BEET=y +CONFIG_INET_DIAG=y +CONFIG_INET_TCP_DIAG=y +# CONFIG_INET_UDP_DIAG is not set +# CONFIG_INET_DIAG_DESTROY is not set +# CONFIG_TCP_CONG_ADVANCED is not set +CONFIG_TCP_CONG_CUBIC=y +CONFIG_DEFAULT_TCP_CONG="cubic" +# CONFIG_TCP_MD5SIG is not set +# CONFIG_IPV6 is not set +CONFIG_ANDROID_PARANOID_NETWORK=y +CONFIG_NET_ETHTOOL=y +# CONFIG_NETWORK_SECMARK is not set +# CONFIG_NET_PTP_CLASSIFY is not set +# CONFIG_NETWORK_PHY_TIMESTAMPING is not set +# CONFIG_NETFILTER is not set +# CONFIG_IP_DCCP is not set +# CONFIG_IP_SCTP is not set +# CONFIG_RDS is not set +# CONFIG_TIPC is not set +# CONFIG_ATM is not set +# CONFIG_L2TP is not set +# CONFIG_BRIDGE is not set +CONFIG_HAVE_NET_DSA=y +# CONFIG_NET_DSA is not set +# CONFIG_VLAN_8021Q is not set +# CONFIG_DECNET is not set +# CONFIG_LLC2 is not set +# CONFIG_IPX is not set +# CONFIG_ATALK is not set +# CONFIG_X25 is not set +# CONFIG_LAPB is not set +# CONFIG_PHONET is not set +# CONFIG_IEEE802154 is not set +# CONFIG_NET_SCHED is not set +# CONFIG_DCB is not set +# CONFIG_BATMAN_ADV is not set +# CONFIG_OPENVSWITCH is not set +# CONFIG_VSOCKETS is not set +# CONFIG_NETLINK_DIAG is not set +# CONFIG_MPLS is not set +# CONFIG_HSR is not set +# CONFIG_NET_SWITCHDEV is not set +# CONFIG_NET_L3_MASTER_DEV is not set +# CONFIG_NET_NCSI is not set +CONFIG_NET_RX_BUSY_POLL=y +CONFIG_BQL=y +# CONFIG_BPF_JIT is not set + +# +# Network testing +# +# CONFIG_NET_PKTGEN is not set +# CONFIG_HAMRADIO is not set +# CONFIG_CAN is not set +# CONFIG_IRDA is not set +# CONFIG_BT is not set +# CONFIG_AF_RXRPC is not set +# CONFIG_AF_KCM is not set +# CONFIG_STREAM_PARSER is not set +CONFIG_FIB_RULES=y +CONFIG_WIRELESS=y +CONFIG_CFG80211=y +# CONFIG_NL80211_TESTMODE is not set +# CONFIG_CFG80211_DEVELOPER_WARNINGS is not set +# CONFIG_CFG80211_CERTIFICATION_ONUS is not set +CONFIG_CFG80211_DEFAULT_PS=y +# CONFIG_CFG80211_INTERNAL_REGDB is not set +CONFIG_CFG80211_CRDA_SUPPORT=y +# CONFIG_CFG80211_WEXT is not set +# CONFIG_LIB80211 is not set +# CONFIG_MAC80211 is not set +CONFIG_MAC80211_STA_HASH_MAX_SIZE=0 +# CONFIG_WIMAX is not set +# CONFIG_RFKILL is not set +# CONFIG_NET_9P is not set +# CONFIG_CAIF is not set +# CONFIG_CEPH_LIB is not set +# CONFIG_NFC is not set +# CONFIG_LWTUNNEL is not set +# CONFIG_DST_CACHE is not set +# CONFIG_NET_DEVLINK is not set +CONFIG_MAY_USE_DEVLINK=y +CONFIG_HAVE_CBPF_JIT=y + +# +# Device Drivers +# + +# +# Generic Driver Options +# +CONFIG_UEVENT_HELPER=y +CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug" +CONFIG_DEVTMPFS=y +CONFIG_DEVTMPFS_MOUNT=y +CONFIG_STANDALONE=y +CONFIG_PREVENT_FIRMWARE_BUILD=y +CONFIG_FW_LOADER=y +# CONFIG_FIRMWARE_IN_KERNEL is not set +CONFIG_EXTRA_FIRMWARE="" +CONFIG_FW_LOADER_USER_HELPER=y +CONFIG_FW_LOADER_USER_HELPER_FALLBACK=y +CONFIG_ALLOW_DEV_COREDUMP=y +# CONFIG_DEBUG_DRIVER is not set +# CONFIG_DEBUG_DEVRES is not set +# CONFIG_DEBUG_TEST_DRIVER_REMOVE is not set +# CONFIG_SYS_HYPERVISOR is not set +# CONFIG_GENERIC_CPU_DEVICES is not set +CONFIG_REGMAP=y +CONFIG_REGMAP_MMIO=y +CONFIG_DMA_SHARED_BUFFER=y +# CONFIG_FENCE_TRACE is not set +# CONFIG_DMA_CMA is not set + +# +# Bus devices +# +# CONFIG_BRCMSTB_GISB_ARB is not set +# CONFIG_SUNXI_RSB is not set +CONFIG_SUNXI_MBUS=y +# CONFIG_SUNXI_NSI is not set +# CONFIG_VEXPRESS_CONFIG is not set +# CONFIG_CONNECTOR is not set +CONFIG_MTD=y +# CONFIG_MTD_TESTS is not set +# CONFIG_MTD_REDBOOT_PARTS is not set +# CONFIG_MTD_CMDLINE_PARTS is not set +# CONFIG_MTD_AFS_PARTS is not set +CONFIG_MTD_OF_PARTS=y +# CONFIG_MTD_AR7_PARTS is not set +CONFIG_MTD_SUNXI_PARTS=y +# CONFIG_UBOOT_DISP_ENABLE is not set +CONFIG_SUNXI_MTD_BLK_SIZE=4096 + +# +# User Modules And Translation Layers +# +CONFIG_MTD_BLKDEVS=y +CONFIG_MTD_CHAR=y +CONFIG_MTD_BLOCK=y +# CONFIG_FTL is not set +# CONFIG_NFTL is not set +# CONFIG_INFTL is not set +# CONFIG_RFD_FTL is not set +# CONFIG_SSFDC is not set +# CONFIG_SM_FTL is not set +# CONFIG_MTD_OOPS is not set +# CONFIG_MTD_PARTITIONED_MASTER is not set + +# +# RAM/ROM/Flash chip drivers +# +# CONFIG_MTD_CFI is not set +# CONFIG_MTD_JEDECPROBE is not set +CONFIG_MTD_MAP_BANK_WIDTH_1=y +CONFIG_MTD_MAP_BANK_WIDTH_2=y +CONFIG_MTD_MAP_BANK_WIDTH_4=y +# CONFIG_MTD_MAP_BANK_WIDTH_8 is not set +# CONFIG_MTD_MAP_BANK_WIDTH_16 is not set +# CONFIG_MTD_MAP_BANK_WIDTH_32 is not set +CONFIG_MTD_CFI_I1=y +CONFIG_MTD_CFI_I2=y +# CONFIG_MTD_CFI_I4 is not set +# CONFIG_MTD_CFI_I8 is not set +# CONFIG_MTD_RAM is not set +# CONFIG_MTD_ROM is not set +# CONFIG_MTD_ABSENT is not set + +# +# Mapping drivers for chip access +# +# CONFIG_MTD_COMPLEX_MAPPINGS is not set +# CONFIG_MTD_PLATRAM is not set + +# +# Self-contained MTD device drivers +# +# CONFIG_MTD_DATAFLASH is not set +CONFIG_MTD_M25P80=y +# CONFIG_MTD_SST25L is not set +# CONFIG_MTD_SLRAM is not set +# CONFIG_MTD_PHRAM is not set +# CONFIG_MTD_MTDRAM is not set +# CONFIG_MTD_BLOCK2MTD is not set + +# +# Disk-On-Chip Device Drivers +# +# CONFIG_MTD_DOCG3 is not set +# CONFIG_MTD_NAND_IDS is not set +# CONFIG_MTD_NAND is not set +# CONFIG_AW_MTD_SPINAND is not set +# CONFIG_AW_MTD_RAWNAND is not set +# CONFIG_RAW_KERNEL is not set +# CONFIG_MTD_ONENAND is not set + +# +# LPDDR & LPDDR2 PCM memory drivers +# +# CONFIG_MTD_LPDDR is not set +# CONFIG_MTD_LPDDR2_NVM is not set +CONFIG_MTD_SPI_NOR=y +# CONFIG_MTD_MT81xx_NOR is not set +# CONFIG_MTD_SPI_NOR_USE_4K_SECTORS is not set +# CONFIG_SPI_CADENCE_QUADSPI is not set +# CONFIG_SPI_FLASH_SR is not set +# CONFIG_MTD_UBI is not set +CONFIG_DTC=y +CONFIG_OF=y +# CONFIG_OF_UNITTEST is not set +CONFIG_OF_FLATTREE=y +CONFIG_OF_EARLY_FLATTREE=y +CONFIG_OF_ADDRESS=y +CONFIG_OF_IRQ=y +CONFIG_OF_NET=y +CONFIG_OF_RESERVED_MEM=y +# CONFIG_OF_OVERLAY is not set +CONFIG_ARCH_MIGHT_HAVE_PC_PARPORT=y +# CONFIG_PARPORT is not set +CONFIG_BLK_DEV=y +# CONFIG_BLK_DEV_NULL_BLK is not set +# CONFIG_SUNXI_NAND is not set +# CONFIG_BLK_DEV_COW_COMMON is not set +# CONFIG_BLK_DEV_LOOP is not set +# CONFIG_BLK_DEV_DRBD is not set +# CONFIG_BLK_DEV_NBD is not set +# CONFIG_BLK_DEV_RAM is not set +# CONFIG_CDROM_PKTCDVD is not set +# CONFIG_ATA_OVER_ETH is not set +# CONFIG_MG_DISK is not set +# CONFIG_BLK_DEV_RBD is not set +# CONFIG_NVME_TARGET is not set + +# +# Misc devices +# +# CONFIG_AD525X_DPOT is not set +# CONFIG_DUMMY_IRQ is not set +# CONFIG_ENCLOSURE_SERVICES is not set +# CONFIG_TI_DAC7512 is not set +# CONFIG_LATTICE_ECP3_CONFIG is not set +# CONFIG_SRAM is not set +# CONFIG_SUNXI_SST_STORAGE is not set +# CONFIG_C2PORT is not set + +# +# EEPROM support +# +# CONFIG_EEPROM_AT25 is not set +# CONFIG_EEPROM_93CX6 is not set +# CONFIG_EEPROM_93XX46 is not set + +# +# Texas Instruments shared transport line discipline +# +# CONFIG_TI_ST is not set + +# +# Altera FPGA firmware download module +# + +# +# Intel MIC Bus Driver +# + +# +# SCIF Bus Driver +# + +# +# VOP Bus Driver +# + +# +# Intel MIC Host Driver +# + +# +# Intel MIC Card Driver +# + +# +# SCIF Driver +# + +# +# Intel MIC Coprocessor State Management (COSM) Drivers +# + +# +# VOP Driver +# +# CONFIG_ECHO is not set +# CONFIG_CXL_BASE is not set +# CONFIG_CXL_AFU_DRIVER_OPS is not set +CONFIG_SUNXI_RFKILL=m +# CONFIG_SUNXI_ADDR_MGT is not set +# CONFIG_MISC_PWM_LEDS is not set +# CONFIG_MISC_PWM_GPIO_LEDS is not set +# CONFIG_MISC_AXP_LEDS is not set + +# +# SCSI device support +# +CONFIG_SCSI_MOD=y +# CONFIG_RAID_ATTRS is not set +# CONFIG_SCSI is not set +# CONFIG_SCSI_DMA is not set +# CONFIG_SCSI_NETLINK is not set +# CONFIG_ATA is not set +# CONFIG_MD is not set +CONFIG_NETDEVICES=y +CONFIG_MII=y +CONFIG_NET_CORE=y +# CONFIG_BONDING is not set +# CONFIG_DUMMY is not set +# CONFIG_EQUALIZER is not set +# CONFIG_NET_TEAM is not set +# CONFIG_MACVLAN is not set +# CONFIG_VXLAN is not set +# CONFIG_MACSEC is not set +# CONFIG_NETCONSOLE is not set +# CONFIG_NETPOLL is not set +# CONFIG_NET_POLL_CONTROLLER is not set +# CONFIG_TUN is not set +# CONFIG_TUN_VNET_CROSS_LE is not set +# CONFIG_VETH is not set +# CONFIG_NLMON is not set + +# +# CAIF transport drivers +# + +# +# Distributed Switch Architecture drivers +# +# CONFIG_ETHERNET is not set +# CONFIG_PHYLIB is not set +# CONFIG_MICREL_KS8995MA is not set +# CONFIG_PPP is not set +# CONFIG_SLIP is not set +CONFIG_USB_NET_DRIVERS=y +# CONFIG_USB_CATC is not set +# CONFIG_USB_KAWETH is not set +# CONFIG_USB_PEGASUS is not set +# CONFIG_USB_RTL8150 is not set +# CONFIG_USB_RTL8152 is not set +# CONFIG_USB_LAN78XX is not set +CONFIG_USB_USBNET=y +# CONFIG_USB_NET_AX8817X is not set +# CONFIG_USB_NET_AX88179_178A is not set +CONFIG_USB_NET_CDCETHER=y +# CONFIG_USB_NET_CDC_EEM is not set +# CONFIG_USB_NET_CDC_NCM is not set +# CONFIG_USB_NET_HUAWEI_CDC_NCM is not set +# CONFIG_USB_NET_CDC_MBIM is not set +# CONFIG_USB_NET_DM9601 is not set +# CONFIG_USB_NET_SR9700 is not set +# CONFIG_USB_NET_SR9800 is not set +# CONFIG_USB_NET_SMSC75XX is not set +# CONFIG_USB_NET_SMSC95XX is not set +# CONFIG_USB_NET_GL620A is not set +# CONFIG_USB_NET_NET1080 is not set +# CONFIG_USB_NET_PLUSB is not set +# CONFIG_USB_NET_MCS7830 is not set +CONFIG_USB_NET_RNDIS_HOST=y +# CONFIG_USB_NET_CDC_SUBSET is not set +# CONFIG_USB_NET_ZAURUS is not set +# CONFIG_USB_NET_CX82310_ETH is not set +# CONFIG_USB_NET_KALMIA is not set +# CONFIG_USB_NET_QMI_WWAN is not set +# CONFIG_USB_NET_INT51X1 is not set +# CONFIG_USB_IPHETH is not set +# CONFIG_USB_SIERRA_NET is not set +# CONFIG_USB_VL600 is not set +# CONFIG_USB_NET_CH9200 is not set +CONFIG_WLAN=y +CONFIG_XR806_WLAN=m +# CONFIG_USB_NET_RNDIS_WLAN is not set +# CONFIG_VIRT_WIFI is not set + +# +# Enable WiMAX (Networking options) to see the WiMAX drivers +# +# CONFIG_WAN is not set +# CONFIG_ISDN is not set +# CONFIG_NVM is not set + +# +# Input device support +# +# CONFIG_INPUT is not set + +# +# Hardware I/O ports +# +# CONFIG_SERIO is not set +# CONFIG_GAMEPORT is not set + +# +# Character devices +# +CONFIG_TTY=y +# CONFIG_VT is not set +CONFIG_UNIX98_PTYS=y +# CONFIG_LEGACY_PTYS is not set +# CONFIG_SERIAL_NONSTANDARD is not set +# CONFIG_N_GSM is not set +# CONFIG_TRACE_SINK is not set +# CONFIG_LDISC_AUTOLOAD is not set +# CONFIG_DEVMEM is not set +# CONFIG_DEVKMEM is not set + +# +# Serial drivers +# +# CONFIG_SERIAL_8250 is not set + +# +# Non-8250 serial port support +# +# CONFIG_SERIAL_EARLYCON_ARM_SEMIHOST is not set +# CONFIG_SERIAL_MAX3100 is not set +# CONFIG_SERIAL_MAX310X is not set +# CONFIG_SERIAL_UARTLITE is not set +CONFIG_SERIAL_CORE=y +CONFIG_SERIAL_CORE_CONSOLE=y +# CONFIG_SERIAL_SCCNXP is not set +# CONFIG_SERIAL_SC16IS7XX is not set +# CONFIG_SERIAL_BCM63XX is not set +# CONFIG_SERIAL_ALTERA_JTAGUART is not set +# CONFIG_SERIAL_ALTERA_UART is not set +# CONFIG_SERIAL_IFX6X60 is not set +# CONFIG_SERIAL_XILINX_PS_UART is not set +# CONFIG_SERIAL_ARC is not set +# CONFIG_SERIAL_FSL_LPUART is not set +# CONFIG_SERIAL_CONEXANT_DIGICOLOR is not set +# CONFIG_SERIAL_ST_ASC is not set +# CONFIG_SERIAL_STM32 is not set +CONFIG_SERIAL_SUNXI=y +# CONFIG_SERIAL_SUNXI_DMA is not set +# CONFIG_SERIAL_SUNXI_RXDMA is not set +CONFIG_SERIAL_SUNXI_CONSOLE=y +# CONFIG_SERIAL_SUNXI_EARLYCON is not set +# CONFIG_TTY_PRINTK is not set +# CONFIG_HVC_DCC is not set +# CONFIG_IPMI_HANDLER is not set +# CONFIG_HW_RANDOM is not set +# CONFIG_RAW_DRIVER is not set +# CONFIG_TCG_TPM is not set +# CONFIG_XILLYBUS is not set +# CONFIG_SUNXI_SCR is not set +CONFIG_SUNXI_SYS_INFO=y +# CONFIG_SUNXI_QA_TEST is not set +# CONFIG_SUNXI_SMC is not set +# CONFIG_DUMP_REG is not set +# CONFIG_SUNXI_TIMER_TEST is not set +# CONFIG_SUNXI_TRANSFORM is not set +# CONFIG_SUNXI_DI is not set +# CONFIG_SUNXI_G2D is not set +# CONFIG_SUNXI_DSPO is not set +# CONFIG_SUNXI_NNA_VIP is not set +# CONFIG_SUNXI_NNA_GALCORE is not set + +# +# I2C support +# +# CONFIG_I2C is not set +CONFIG_SPI=y +# CONFIG_SPI_DEBUG is not set +CONFIG_SPI_MASTER=y +CONFIG_SPI_MEM=y + +# +# SPI Master Controller Drivers +# +# CONFIG_SPI_ALTERA is not set +# CONFIG_SPI_AXI_SPI_ENGINE is not set +# CONFIG_SPI_BITBANG is not set +# CONFIG_SPI_CADENCE is not set +# CONFIG_SPI_DESIGNWARE is not set +# CONFIG_SPI_GPIO is not set +# CONFIG_SPI_FSL_SPI is not set +# CONFIG_SPI_OC_TINY is not set +# CONFIG_SPI_PXA2XX_PCI is not set +# CONFIG_SPI_ROCKCHIP is not set +# CONFIG_SPI_SUN4I is not set +# CONFIG_SPI_SUN6I is not set +CONFIG_SPI_SUNXI=y +CONFIG_SPIF_SUNXI=y +# CONFIG_SPI_XILINX is not set +# CONFIG_SPI_ZYNQMP_GQSPI is not set + +# +# SPI Protocol Masters +# +CONFIG_SPI_SPIDEV=y +# CONFIG_SPI_LOOPBACK_TEST is not set +# CONFIG_SPI_TLE62X0 is not set +# CONFIG_SPMI is not set +# CONFIG_HSI is not set + +# +# PPS support +# +# CONFIG_PPS is not set + +# +# PPS generators support +# + +# +# PTP clock support +# +# CONFIG_PTP_1588_CLOCK is not set + +# +# Enable PHYLIB and NETWORK_PHY_TIMESTAMPING to see the additional clocks. +# +CONFIG_PINCTRL=y + +# +# Pin controllers +# +CONFIG_PINMUX=y +CONFIG_PINCONF=y +CONFIG_GENERIC_PINCONF=y +# CONFIG_DEBUG_PINCTRL is not set +# CONFIG_PINCTRL_AMD is not set +# CONFIG_PINCTRL_SINGLE is not set + +# +# Allwinner SOC PINCTRL DRIVER +# +CONFIG_PINCTRL_SUNXI=y +# CONFIG_PINCTRL_SUNXI_TEST is not set +# CONFIG_PINCTRL_SUN4I_A10 is not set +# CONFIG_PINCTRL_SUN5I_A10S is not set +# CONFIG_PINCTRL_SUN5I_A13 is not set +# CONFIG_PINCTRL_GR8 is not set +# CONFIG_PINCTRL_SUN6I_A31 is not set +# CONFIG_PINCTRL_SUN6I_A31S is not set +# CONFIG_PINCTRL_SUN6I_A31_R is not set +# CONFIG_PINCTRL_SUN7I_A20 is not set +# CONFIG_PINCTRL_SUN8I_A23 is not set +# CONFIG_PINCTRL_SUN8I_A33 is not set +# CONFIG_PINCTRL_SUN8I_A83T is not set +# CONFIG_PINCTRL_SUN8I_A23_R is not set +# CONFIG_PINCTRL_SUN8I_H3 is not set +# CONFIG_PINCTRL_SUN8I_H3_R is not set +# CONFIG_PINCTRL_SUN9I_A80 is not set +# CONFIG_PINCTRL_SUN9I_A80_R is not set +CONFIG_PINCTRL_SUN8IW21P1=y +CONFIG_ARCH_HAVE_CUSTOM_GPIO_H=y +CONFIG_GPIOLIB=y +CONFIG_OF_GPIO=y +# CONFIG_DEBUG_GPIO is not set +# CONFIG_GPIO_SYSFS is not set + +# +# Memory mapped GPIO drivers +# +# CONFIG_GPIO_74XX_MMIO is not set +# CONFIG_GPIO_ALTERA is not set +# CONFIG_GPIO_SUNXI is not set +# CONFIG_GPIO_DWAPB is not set +# CONFIG_GPIO_EM is not set +# CONFIG_GPIO_GENERIC_PLATFORM is not set +# CONFIG_GPIO_GRGPIO is not set +# CONFIG_GPIO_MOCKUP is not set +# CONFIG_GPIO_MPC8XXX is not set +# CONFIG_GPIO_SYSCON is not set +# CONFIG_GPIO_XILINX is not set +# CONFIG_GPIO_ZEVIO is not set +# CONFIG_GPIO_ZX is not set + +# +# MFD GPIO expanders +# +# CONFIG_HTC_EGPIO is not set + +# +# SPI GPIO expanders +# +# CONFIG_GPIO_74X164 is not set +# CONFIG_GPIO_MAX7301 is not set +# CONFIG_GPIO_MC33880 is not set +# CONFIG_GPIO_PISOSR is not set + +# +# SPI or I2C GPIO expanders +# +# CONFIG_GPIO_MCP23S08 is not set + +# +# USB GPIO expanders +# +# CONFIG_W1 is not set +# CONFIG_POWER_AVS is not set +# CONFIG_POWER_RESET is not set +# CONFIG_POWER_SUPPLY is not set +CONFIG_HWMON=y +# CONFIG_HWMON_VID is not set +# CONFIG_HWMON_DEBUG_CHIP is not set + +# +# Native drivers +# +# CONFIG_SENSORS_AD7314 is not set +# CONFIG_SENSORS_ADT7310 is not set +# CONFIG_SENSORS_F71805F is not set +# CONFIG_SENSORS_F71882FG is not set +# CONFIG_SENSORS_GPIO_FAN is not set +# CONFIG_SENSORS_IT87 is not set +# CONFIG_SENSORS_MAX1111 is not set +# CONFIG_SENSORS_MAX197 is not set +# CONFIG_SENSORS_MAX31722 is not set +# CONFIG_SENSORS_ADCXX is not set +# CONFIG_SENSORS_LM70 is not set +# CONFIG_SENSORS_PC87360 is not set +# CONFIG_SENSORS_PC87427 is not set +# CONFIG_SENSORS_NTC_THERMISTOR is not set +# CONFIG_SENSORS_NCT6683 is not set +# CONFIG_SENSORS_NCT6775 is not set +# CONFIG_SENSORS_PWM_FAN is not set +# CONFIG_SENSORS_SHT15 is not set +# CONFIG_SENSORS_SMSC47M1 is not set +# CONFIG_SENSORS_SMSC47B397 is not set +# CONFIG_SENSORS_SCH56XX_COMMON is not set +# CONFIG_SENSORS_SCH5627 is not set +# CONFIG_SENSORS_SCH5636 is not set +# CONFIG_SENSORS_ADS7871 is not set +# CONFIG_SENSORS_VT1211 is not set +# CONFIG_SENSORS_W83627HF is not set +# CONFIG_SENSORS_W83627EHF is not set +# CONFIG_THERMAL is not set +CONFIG_WATCHDOG=y +CONFIG_WATCHDOG_CORE=y +# CONFIG_WATCHDOG_NOWAYOUT is not set +# CONFIG_WATCHDOG_SYSFS is not set + +# +# Watchdog Device Drivers +# +# CONFIG_SOFT_WATCHDOG is not set +# CONFIG_GPIO_WATCHDOG is not set +# CONFIG_XILINX_WATCHDOG is not set +# CONFIG_CADENCE_WATCHDOG is not set +# CONFIG_DW_WATCHDOG is not set +CONFIG_SUNXI_WATCHDOG=y +# CONFIG_SUNXI_WDOG_BOOTON is not set +# CONFIG_MAX63XX_WATCHDOG is not set +# CONFIG_MEN_A21_WDT is not set + +# +# USB-based Watchdog Cards +# +# CONFIG_USBPCWATCHDOG is not set + +# +# Watchdog Pretimeout Governors +# +# CONFIG_WATCHDOG_PRETIMEOUT_GOV is not set +CONFIG_SSB_POSSIBLE=y + +# +# Sonics Silicon Backplane +# +# CONFIG_SSB is not set +CONFIG_BCMA_POSSIBLE=y + +# +# Broadcom specific AMBA +# +# CONFIG_BCMA is not set + +# +# Multifunction device drivers +# +# CONFIG_MFD_CORE is not set +# CONFIG_MFD_ATMEL_FLEXCOM is not set +# CONFIG_MFD_ATMEL_HLCDC is not set +# CONFIG_MFD_PMC_MMIO is not set +# CONFIG_MFD_CROS_EC is not set +# CONFIG_MFD_ASIC3 is not set +# CONFIG_MFD_DA9052_SPI is not set +# CONFIG_MFD_DLN2 is not set +# CONFIG_MFD_EXYNOS_LPASS is not set +# CONFIG_MFD_MC13XXX_SPI is not set +# CONFIG_MFD_HI6421_PMIC is not set +# CONFIG_HTC_PASIC3 is not set +# CONFIG_MFD_KEMPLD is not set +# CONFIG_MFD_MT6397 is not set +# CONFIG_EZX_PCAP is not set +# CONFIG_MFD_VIPERBOARD is not set +# CONFIG_MFD_PM8921_CORE is not set +# CONFIG_MFD_RTSX_USB is not set +# CONFIG_MFD_SM501 is not set +# CONFIG_ABX500_CORE is not set +# CONFIG_MFD_STMPE is not set +# CONFIG_MFD_SUN6I_PRCM is not set +CONFIG_MFD_SYSCON=y +# CONFIG_MFD_TI_AM335X_TSCADC is not set +# CONFIG_MFD_TPS65912_SPI is not set +# CONFIG_MFD_TMIO is not set +# CONFIG_MFD_T7L66XB is not set +# CONFIG_MFD_TC6387XB is not set +# CONFIG_MFD_TC6393XB is not set +# CONFIG_MFD_ARIZONA_SPI is not set +# CONFIG_MFD_WM831X_SPI is not set +# CONFIG_REGULATOR is not set +CONFIG_MEDIA_SUPPORT=y + +# +# Multimedia core support +# +CONFIG_MEDIA_CAMERA_SUPPORT=y +# CONFIG_MEDIA_ANALOG_TV_SUPPORT is not set +# CONFIG_MEDIA_DIGITAL_TV_SUPPORT is not set +# CONFIG_MEDIA_RADIO_SUPPORT is not set +# CONFIG_MEDIA_SDR_SUPPORT is not set +CONFIG_MEDIA_CONTROLLER=y +# CONFIG_MEDIA_CONTROLLER_DVB is not set +CONFIG_VIDEO_DEV=y +CONFIG_VIDEO_V4L2_SUBDEV_API=y +CONFIG_VIDEO_V4L2=y +# CONFIG_VIDEO_DV_TIMINGS is not set +# CONFIG_VIDEO_ADV_DEBUG is not set +# CONFIG_VIDEO_FIXED_MINOR_RANGES is not set + +# +# Media drivers +# +# CONFIG_MEDIA_USB_SUPPORT is not set +# CONFIG_V4L_PLATFORM_DRIVERS is not set +# CONFIG_V4L_MEM2MEM_DRIVERS is not set +# CONFIG_V4L_TEST_DRIVERS is not set +# CONFIG_SUNXI_ISE is not set +# CONFIG_SUNXI_EISE is not set + +# +# Supported MMC/SDIO adapters +# +# CONFIG_CYPRESS_FIRMWARE is not set + +# +# Media ancillary drivers (tuners, sensors, i2c, spi, frontends) +# +# CONFIG_MEDIA_SUBDRV_AUTOSELECT is not set + +# +# I2C Encoders, decoders, sensors and other helper chips +# + +# +# Audio decoders, processors and mixers +# + +# +# RDS decoders +# + +# +# Video decoders +# + +# +# Video and audio decoders +# + +# +# Video encoders +# + +# +# Camera sensor devices +# + +# +# Flash devices +# + +# +# Video improvement chips +# + +# +# Audio/Video compression chips +# + +# +# Miscellaneous helper chips +# + +# +# Sensors used on soc_camera driver +# + +# +# SPI helper chips +# +# CONFIG_VIDEO_GS1662 is not set +# CONFIG_SPI_CAMERA is not set + +# +# Customise DVB Frontends +# + +# +# Tools to develop new frontends +# +# CONFIG_DVB_DUMMY_FE is not set +CONFIG_VIDEO_ENCODER_DECODER_SUNXI=m +# CONFIG_VIDEO_KERNEL_DEC_SUNXI is not set +# CONFIG_VE_SUPPORT_RPM is not set +CONFIG_VIDEO_GOOGLE_VP9_DECODER_SUNXI=m +# CONFIG_VIDEO_RT_MEDIA is not set +# CONFIG_AW_TSC is not set +# CONFIG_SUNXI_NNA is not set + +# +# Graphics support +# + +# +# GPU support for sunxi +# +CONFIG_SUNXI_GPU_TYPE="None" +# CONFIG_GPU_PM_OPP is not set +# CONFIG_DRM is not set + +# +# ACP (Audio CoProcessor) Configuration +# + +# +# Frame buffer Devices +# +CONFIG_FB=y +# CONFIG_FIRMWARE_EDID is not set +CONFIG_FB_NOTIFY=y +# CONFIG_FB_DDC is not set +# CONFIG_FB_BOOT_VESA_SUPPORT is not set +# CONFIG_FB_CFB_FILLRECT is not set +# CONFIG_FB_CFB_COPYAREA is not set +# CONFIG_FB_CFB_IMAGEBLIT is not set +# CONFIG_FB_CFB_REV_PIXELS_IN_BYTE is not set +# CONFIG_FB_SYS_FILLRECT is not set +# CONFIG_FB_SYS_COPYAREA is not set +# CONFIG_FB_SYS_IMAGEBLIT is not set +# CONFIG_FB_FOREIGN_ENDIAN is not set +# CONFIG_FB_SYS_FOPS is not set +# CONFIG_FB_SVGALIB is not set +# CONFIG_FB_MACMODES is not set +# CONFIG_FB_BACKLIGHT is not set +# CONFIG_FB_MODE_HELPERS is not set +# CONFIG_FB_TILEBLITTING is not set + +# +# Frame buffer hardware drivers +# +# CONFIG_FB_OPENCORES is not set +# CONFIG_FB_S1D13XXX is not set +# CONFIG_FB_SMSCUFX is not set +# CONFIG_FB_UDL is not set +# CONFIG_FB_IBM_GXT4500 is not set +# CONFIG_FB_VIRTUAL is not set +# CONFIG_FB_METRONOME is not set +# CONFIG_FB_BROADSHEET is not set +# CONFIG_FB_AUO_K190X is not set +# CONFIG_FB_SIMPLE is not set + +# +# Video support for sunxi +# +# CONFIG_DISP2_SUNXI_SATA_TEST is not set +# CONFIG_FB_CONSOLE_SUNXI is not set +CONFIG_DISP2_SUNXI=y +# CONFIG_SUNXI_DISP2_PQ is not set +CONFIG_SUNXI_DISP2_FB_DISABLE_ROTATE=y +# CONFIG_SUNXI_DISP2_FB_ROTATION_SUPPORT is not set +# CONFIG_SUNXI_DISP2_FB_DECOMPRESS_LZMA is not set +# CONFIG_HDMI_DISP2_SUNXI is not set +# CONFIG_HDMI2_DISP2_SUNXI is not set +# CONFIG_HDMI_EP952_DISP2_SUNXI is not set +# CONFIG_TV_DISP2_SUNXI is not set +# CONFIG_VDPO_DISP2_SUNXI is not set +# CONFIG_EDP_DISP2_SUNXI is not set +# CONFIG_DISP2_SUNXI_BOOT_COLORBAR is not set +CONFIG_DISP2_SUNXI_DEBUG=y +# CONFIG_DISP2_SUNXI_COMPOSER is not set +# CONFIG_DISP2_LCD_ESD_DETECT is not set +# CONFIG_DISP2_LCD_MULTI_COMPATIBLE is not set +# CONFIG_LCD_FB is not set +# CONFIG_LCD_FB_ENABLE_DEFERRED_IO is not set + +# +# LCD panels select +# +# CONFIG_LCD_SUPPORT_GG1P4062UTSW is not set +# CONFIG_LCD_SUPPORT_DX0960BE40A1 is not set +# CONFIG_LCD_SUPPORT_TFT720X1280 is not set +# CONFIG_LCD_SUPPORT_FD055HD003S is not set +# CONFIG_LCD_SUPPORT_HE0801A068 is not set +# CONFIG_LCD_SUPPORT_ILI9341 is not set +# CONFIG_LCD_SUPPORT_LH219WQ1 is not set +# CONFIG_LCD_SUPPORT_LS029B3SX02 is not set +# CONFIG_LCD_SUPPORT_LT070ME05000 is not set +# CONFIG_LCD_SUPPORT_S6D7AA0X01 is not set +# CONFIG_LCD_SUPPORT_T27P06 is not set +# CONFIG_LCD_SUPPORT_TFT720x1280 is not set +# CONFIG_LCD_SUPPORT_WTQ05027D01 is not set +# CONFIG_LCD_SUPPORT_H245QBN02 is not set +# CONFIG_LCD_SUPPORT_ST7789V is not set +# CONFIG_LCD_SUPPORT_ST7796S is not set +# CONFIG_LCD_SUPPORT_ST7701S is not set +# CONFIG_LCD_SUPPORT_ST7701S_G5 is not set +# CONFIG_LCD_SUPPORT_T30P106 is not set +# CONFIG_LCD_SUPPORT_TO20T20000 is not set +# CONFIG_LCD_SUPPORT_FRD450H40014 is not set +# CONFIG_LCD_SUPPORT_S2003T46G is not set +# CONFIG_LCD_SUPPORT_WILLIAMLCD is not set +# CONFIG_LCD_SUPPORT_LQ101R1SX03 is not set +# CONFIG_LCD_SUPPORT_INET_DSI_PANEL is not set +# CONFIG_LCD_SUPPORT_WTL096601G03 is not set +# CONFIG_LCD_SUPPORT_RT13QV005D is not set +# CONFIG_LCD_SUPPORT_ST7789V_CPU is not set +# CONFIG_LCD_SUPPORT_KD101NA5 is not set +# CONFIG_LCD_SUPPORT_KD070D57 is not set +# CONFIG_LCD_SUPPORT_ZS080NI4003E7H3H_A is not set +# CONFIG_LCD_SUPPORT_TV096WXM_NH0 is not set +# CONFIG_LCD_SUPPORT_BP101WX1_206 is not set +# CONFIG_LCD_SUPPORT_K101IM2QA04 is not set +CONFIG_LCD_SUPPORT_T050K589=y +# CONFIG_LCD_SUPPORT_KD080D24 is not set +# CONFIG_LCD_SUPPORT_JD9161Z_MIPI is not set +CONFIG_LCD_SUPPORT_ICN6202=y +CONFIG_LCD_SUPPORT_ICN6202_2LANE=y +# CONFIG_LCD_SUPPORT_NT35510_MIPI is not set + +# +# Display engine feature select +# +CONFIG_DISP2_SUNXI_SUPPORT_SMBL=y +CONFIG_DISP2_SUNXI_SUPPORT_ENAHNCE=y +# CONFIG_BACKLIGHT_LCD_SUPPORT is not set +# CONFIG_VGASTATE is not set +# CONFIG_LOGO is not set +# CONFIG_SOUND is not set +CONFIG_USB_OHCI_LITTLE_ENDIAN=y +CONFIG_USB_SUPPORT=y +CONFIG_USB_COMMON=y +CONFIG_USB_ARCH_HAS_HCD=y +CONFIG_USB=y +# CONFIG_USB_ANNOUNCE_NEW_DEVICES is not set + +# +# Miscellaneous USB options +# +CONFIG_USB_DEFAULT_PERSIST=y +# CONFIG_USB_DYNAMIC_MINORS is not set +# CONFIG_USB_OTG_WHITELIST is not set +# CONFIG_USB_OTG_BLACKLIST_HUB is not set +# CONFIG_USB_MON is not set +# CONFIG_USB_WUSB_CBAF is not set + +# +# USB Host Controller Drivers +# +# CONFIG_USB_C67X00_HCD is not set +# CONFIG_USB_XHCI_HCD is not set +CONFIG_USB_EHCI_HCD=m +# CONFIG_USB_EHCI_ROOT_HUB_TT is not set +CONFIG_USB_EHCI_TT_NEWSCHED=y +# CONFIG_USB_EHCI_HCD_PLATFORM is not set +# CONFIG_USB_OXU210HP_HCD is not set +# CONFIG_USB_ISP116X_HCD is not set +# CONFIG_USB_ISP1362_HCD is not set +# CONFIG_USB_FOTG210_HCD is not set +# CONFIG_USB_MAX3421_HCD is not set +CONFIG_USB_OHCI_HCD=m +# CONFIG_USB_OHCI_HCD_PLATFORM is not set +# CONFIG_USB_SL811_HCD is not set +# CONFIG_USB_R8A66597_HCD is not set +# CONFIG_USB_HCD_TEST_MODE is not set +CONFIG_USB_SUNXI_HCD=m +CONFIG_USB_SUNXI_HCI=m +CONFIG_USB_SUNXI_EHCI0=m +# CONFIG_USB_SUNXI_EHCI1 is not set +CONFIG_USB_SUNXI_OHCI0=m +# CONFIG_USB_SUNXI_OHCI1 is not set + +# +# USB Device Class drivers +# +# CONFIG_USB_ACM is not set +# CONFIG_USB_PRINTER is not set +# CONFIG_USB_WDM is not set +# CONFIG_USB_TMC is not set + +# +# NOTE: USB_STORAGE depends on SCSI but BLK_DEV_SD may +# + +# +# also be needed; see USB_STORAGE Help for more info +# + +# +# USB Imaging devices +# +# CONFIG_USB_MDC800 is not set +# CONFIG_USBIP_CORE is not set +# CONFIG_USB_MUSB_HDRC is not set +# CONFIG_USB_DWC3 is not set +# CONFIG_USB_DWC2 is not set +# CONFIG_USB_CHIPIDEA is not set +# CONFIG_USB_ISP1760 is not set + +# +# USB port drivers +# +# CONFIG_USB_SERIAL is not set + +# +# USB Miscellaneous drivers +# +# CONFIG_USB_EMI62 is not set +# CONFIG_USB_EMI26 is not set +# CONFIG_USB_ADUTUX is not set +# CONFIG_USB_SEVSEG is not set +# CONFIG_USB_RIO500 is not set +# CONFIG_USB_LEGOTOWER is not set +# CONFIG_USB_LCD is not set +# CONFIG_USB_CYPRESS_CY7C63 is not set +# CONFIG_USB_CYTHERM is not set +# CONFIG_USB_IDMOUSE is not set +# CONFIG_USB_FTDI_ELAN is not set +# CONFIG_USB_APPLEDISPLAY is not set +# CONFIG_USB_SISUSBVGA is not set +# CONFIG_USB_LD is not set +# CONFIG_USB_TRANCEVIBRATOR is not set +# CONFIG_USB_IOWARRIOR is not set +# CONFIG_USB_TEST is not set +# CONFIG_USB_EHSET_TEST_FIXTURE is not set +# CONFIG_USB_ISIGHTFW is not set +# CONFIG_USB_YUREX is not set +# CONFIG_USB_EZUSB_FX2 is not set +# CONFIG_USB_LINK_LAYER_TEST is not set + +# +# USB Physical Layer drivers +# +# CONFIG_USB_PHY is not set +# CONFIG_NOP_USB_XCEIV is not set +# CONFIG_USB_GPIO_VBUS is not set +# CONFIG_USB_ULPI is not set +CONFIG_USB_GADGET=y +# CONFIG_USB_GADGET_DEBUG is not set +# CONFIG_USB_GADGET_DEBUG_FILES is not set +CONFIG_USB_GADGET_VBUS_DRAW=2 +CONFIG_USB_GADGET_STORAGE_NUM_BUFFERS=2 + +# +# USB Peripheral Controller +# +# CONFIG_USB_FUSB300 is not set +# CONFIG_USB_FOTG210_UDC is not set +# CONFIG_USB_GR_UDC is not set +# CONFIG_USB_R8A66597 is not set +# CONFIG_USB_PXA27X is not set +# CONFIG_USB_MV_UDC is not set +# CONFIG_USB_MV_U3D is not set +# CONFIG_USB_M66592 is not set +# CONFIG_USB_BDC_UDC is not set +# CONFIG_USB_NET2272 is not set +CONFIG_USB_SUNXI_UDC0=m +# CONFIG_USB_GADGET_XILINX is not set +# CONFIG_USB_DUMMY_HCD is not set +CONFIG_USB_LIBCOMPOSITE=y +CONFIG_USB_U_ETHER=y +CONFIG_USB_F_RNDIS=y +CONFIG_USB_F_MASS_STORAGE=m +CONFIG_USB_F_FS=y +CONFIG_USB_F_HID=y +CONFIG_USB_CONFIGFS=y +# CONFIG_USB_CONFIGFS_SERIAL is not set +# CONFIG_USB_CONFIGFS_ACM is not set +# CONFIG_USB_CONFIGFS_OBEX is not set +# CONFIG_USB_CONFIGFS_NCM is not set +# CONFIG_USB_CONFIGFS_ECM is not set +# CONFIG_USB_CONFIGFS_ECM_SUBSET is not set +CONFIG_USB_CONFIGFS_RNDIS=y +# CONFIG_USB_CONFIGFS_EEM is not set +CONFIG_USB_CONFIGFS_MASS_STORAGE=m +# CONFIG_USB_CONFIGFS_F_LB_SS is not set +CONFIG_USB_CONFIGFS_F_FS=y +# CONFIG_USB_CONFIGFS_F_MTP is not set +# CONFIG_USB_CONFIGFS_F_ACC is not set +# CONFIG_USB_CONFIGFS_UEVENT is not set +CONFIG_USB_CONFIGFS_F_HID=y +# CONFIG_USB_CONFIGFS_F_UVC is not set +# CONFIG_USB_CONFIGFS_F_PRINTER is not set +CONFIG_USB_SUNXI_USB=m +CONFIG_USB_SUNXI_USB_MANAGER=m +CONFIG_USB_SUNXI_USB_DEBUG=m +CONFIG_USB_SUNXI_USB_ADB=m +# CONFIG_USB_ULPI_BUS is not set +# CONFIG_UWB is not set +CONFIG_MMC=m +# CONFIG_MMC_DEBUG is not set +CONFIG_PWRSEQ_EMMC=m +CONFIG_PWRSEQ_SIMPLE=m +# CONFIG_MMC_EMBEDDED_SDIO is not set +# CONFIG_MMC_PARANOID_SD_INIT is not set + +# +# MMC/SD/SDIO Card Drivers +# +# CONFIG_MMC_BLOCK is not set +# CONFIG_SDIO_UART is not set +# CONFIG_MMC_TEST is not set + +# +# MMC/SD/SDIO Host Controller Drivers +# +# CONFIG_MMC_SDHCI is not set +# CONFIG_MMC_DW is not set +# CONFIG_MMC_VUB300 is not set +# CONFIG_MMC_USHC is not set +# CONFIG_MMC_USDHI6ROL0 is not set +CONFIG_MMC_SUNXI=m +# CONFIG_MMC_MTK is not set +# CONFIG_MEMSTICK is not set +# CONFIG_NEW_LEDS is not set +# CONFIG_ACCESSIBILITY is not set +CONFIG_EDAC_ATOMIC_SCRUB=y +CONFIG_EDAC_SUPPORT=y +# CONFIG_EDAC is not set +CONFIG_RTC_LIB=y +# CONFIG_RTC_CLASS is not set +CONFIG_DMADEVICES=y +# CONFIG_DMADEVICES_DEBUG is not set + +# +# DMA Devices +# +CONFIG_DMA_ENGINE=y +CONFIG_DMA_VIRTUAL_CHANNELS=y +CONFIG_DMA_OF=y +CONFIG_DMA_SUNXI=y +# CONFIG_DMA_SUNXI_SUPPORT_4G is not set +# CONFIG_FSL_EDMA is not set +# CONFIG_INTEL_IDMA64 is not set +# CONFIG_NBPFAXI_DMA is not set +# CONFIG_QCOM_HIDMA_MGMT is not set +# CONFIG_QCOM_HIDMA is not set +# CONFIG_DW_DMAC is not set + +# +# DMA Clients +# +# CONFIG_ASYNC_TX_DMA is not set +# CONFIG_DMATEST is not set + +# +# DMABUF options +# +# CONFIG_SYNC_FILE is not set +# CONFIG_AUXDISPLAY is not set +# CONFIG_UIO is not set +# CONFIG_VFIO is not set +# CONFIG_VIRT_DRIVERS is not set + +# +# Virtio drivers +# +# CONFIG_VIRTIO_MMIO is not set + +# +# Microsoft Hyper-V guest support +# +CONFIG_STAGING=y +# CONFIG_PRISM2_USB is not set +# CONFIG_COMEDI is not set +# CONFIG_RTLLIB is not set +# CONFIG_R8712U is not set +# CONFIG_R8188EU is not set + +# +# Speakup console speech +# +# CONFIG_STAGING_MEDIA is not set + +# +# Android +# +# CONFIG_ASHMEM is not set +# CONFIG_ANDROID_LOW_MEMORY_KILLER is not set +CONFIG_ION=y +# CONFIG_ION_TEST is not set +# CONFIG_ION_DUMMY is not set +CONFIG_ION_SUNXI=y +# CONFIG_SUNXI_ION_DEBUG is not set +CONFIG_ION_OF=y +# CONFIG_STAGING_BOARD is not set +# CONFIG_LTE_GDM724X is not set +# CONFIG_LNET is not set +# CONFIG_GS_FPGABOOT is not set +# CONFIG_COMMON_CLK_XLNX_CLKWZRD is not set +# CONFIG_FB_TFT is not set +# CONFIG_WILC1000_SDIO is not set +# CONFIG_WILC1000_SPI is not set +# CONFIG_MOST is not set +# CONFIG_KS7010 is not set +# CONFIG_GREYBUS is not set +# CONFIG_NANOHUB is not set +# CONFIG_GOLDFISH is not set +# CONFIG_CHROME_PLATFORMS is not set +CONFIG_CLKDEV_LOOKUP=y +CONFIG_HAVE_CLK_PREPARE=y +CONFIG_COMMON_CLK=y + +# +# Common Clock Framework +# +# CONFIG_COMMON_CLK_DEBUG is not set +# CONFIG_CLK_QORIQ is not set +# CONFIG_COMMON_CLK_NXP is not set +# CONFIG_COMMON_CLK_PWM is not set +# CONFIG_COMMON_CLK_PXA is not set +# CONFIG_COMMON_CLK_PIC32 is not set +CONFIG_SUNXI_CCU=y +# CONFIG_SUN6I_A31_CCU is not set +# CONFIG_SUN8I_A23_CCU is not set +# CONFIG_SUN8I_A33_CCU is not set +# CONFIG_SUN8I_H3_CCU is not set + +# +# Hardware Spinlock drivers +# +# CONFIG_HWSPINLOCK_SUNXI is not set + +# +# Clock Source drivers +# +CONFIG_CLKSRC_OF=y +CONFIG_CLKSRC_PROBE=y +CONFIG_CLKSRC_MMIO=y +CONFIG_SUN4I_TIMER=y +CONFIG_ARM_ARCH_TIMER=y +# CONFIG_ARM_ARCH_TIMER_EVTSTREAM is not set +CONFIG_ARM_ARCH_TIMER_VCT_ACCESS=y +# CONFIG_ARM_TIMER_SP804 is not set +# CONFIG_ATMEL_PIT is not set +# CONFIG_SH_TIMER_CMT is not set +# CONFIG_SH_TIMER_MTU2 is not set +# CONFIG_SH_TIMER_TMU is not set +# CONFIG_EM_TIMER_STI is not set +# CONFIG_MAILBOX is not set +CONFIG_IOMMU_API=y +CONFIG_IOMMU_SUPPORT=y + +# +# Generic IOMMU Pagetable Support +# +# CONFIG_IOMMU_IO_PGTABLE_LPAE is not set +# CONFIG_IOMMU_IO_PGTABLE_ARMV7S is not set +CONFIG_OF_IOMMU=y +CONFIG_SUNXI_IOMMU=y +# CONFIG_SUNXI_IOMMU_LOOP_MAP is not set +# CONFIG_ARM_SMMU is not set +# CONFIG_IOMMU_DEBUG is not set + +# +# Remoteproc drivers +# +# CONFIG_STE_MODEM_RPROC is not set + +# +# Rpmsg drivers +# +# CONFIG_SUNXI_MSGBOX is not set +# CONFIG_SUNXI_RPMSG_E907 is not set +# CONFIG_SUNXI_RPMSG_SPEEDTEST is not set +# CONFIG_SUNXI_RPMSG_HEARBEAT is not set +# CONFIG_RPMSG_CTRL is not set +# CONFIG_RPMSG_NOTIFY is not set +# CONFIG_RPMSG_VIRTIO is not set + +# +# RPBuf drivers +# +# CONFIG_RPBUF_DEV is not set + +# +# Service +# +# CONFIG_RPBUF_SERVICE_RPMSG is not set + +# +# Controller +# +# CONFIG_RPBUF_CONTROLLER_SUNXI is not set + +# +# Sample +# +# CONFIG_RPBUF_SAMPLE_SUNXI is not set + +# +# SOC (System On Chip) specific Drivers +# + +# +# Broadcom SoC drivers +# +# CONFIG_SOC_BRCMSTB is not set +# CONFIG_SOC_SUNXI is not set +CONFIG_SUNXI_ARISC_INF=y +CONFIG_SUNXI_FASTBOOT=y +# CONFIG_SOC_TI is not set +# CONFIG_PM_DEVFREQ is not set +# CONFIG_EXTCON is not set +# CONFIG_MEMORY is not set +# CONFIG_IIO is not set +CONFIG_PWM=y +CONFIG_PWM_SYSFS=y +# CONFIG_PWM_FSL_FTM is not set +CONFIG_PWM_SUN4I=y +# CONFIG_PWM_SUNXI is not set +CONFIG_PWM_SUNXI_GROUP=y +# CONFIG_DSP_DEBUG is not set +CONFIG_IRQCHIP=y +CONFIG_ARM_GIC=y +CONFIG_ARM_GIC_MAX_NR=1 +CONFIG_SUNXI_WAKEUPGEN=y +# CONFIG_IPACK_BUS is not set +CONFIG_RESET_CONTROLLER=y +# CONFIG_RESET_ATH79 is not set +# CONFIG_RESET_BERLIN is not set +# CONFIG_RESET_LPC18XX is not set +# CONFIG_RESET_MESON is not set +# CONFIG_RESET_PISTACHIO is not set +# CONFIG_RESET_SOCFPGA is not set +# CONFIG_RESET_STM32 is not set +CONFIG_RESET_SUNXI=y +# CONFIG_TI_SYSCON_RESET is not set +# CONFIG_RESET_ZYNQ is not set +# CONFIG_FMC is not set + +# +# PHY Subsystem +# +# CONFIG_GENERIC_PHY is not set +# CONFIG_PHY_PXA_28NM_HSIC is not set +# CONFIG_PHY_PXA_28NM_USB2 is not set +# CONFIG_BCM_KONA_USB2_PHY is not set +# CONFIG_PHY_SUN9I_USB is not set +# CONFIG_POWERCAP is not set +# CONFIG_MCB is not set + +# +# Performance monitor support +# +# CONFIG_RAS is not set + +# +# Android +# +CONFIG_ANDROID=y +# CONFIG_ANDROID_BINDER_IPC is not set +# CONFIG_NVMEM is not set +# CONFIG_STM is not set +# CONFIG_INTEL_TH is not set + +# +# FPGA Configuration Support +# +# CONFIG_FPGA is not set +# CONFIG_TEE is not set + +# +# Firmware Drivers +# +# CONFIG_FIRMWARE_MEMMAP is not set +# CONFIG_FW_CFG_SYSFS is not set +CONFIG_HAVE_ARM_SMCCC=y + +# +# File systems +# +CONFIG_DCACHE_WORD_ACCESS=y +# CONFIG_EXT2_FS is not set +# CONFIG_EXT3_FS is not set +# CONFIG_EXT4_FS is not set +# CONFIG_REISERFS_FS is not set +# CONFIG_JFS_FS is not set +# CONFIG_OCFS2_FS is not set +# CONFIG_BTRFS_FS is not set +# CONFIG_NILFS2_FS is not set +# CONFIG_F2FS_FS is not set +CONFIG_FS_POSIX_ACL=y +# CONFIG_EXPORTFS_BLOCK_OPS is not set +CONFIG_FILE_LOCKING=y +CONFIG_MANDATORY_FILE_LOCKING=y +# CONFIG_FS_ENCRYPTION is not set +# CONFIG_FSNOTIFY is not set +# CONFIG_DNOTIFY is not set +# CONFIG_INOTIFY_USER is not set +# CONFIG_FANOTIFY is not set +# CONFIG_QUOTA is not set +# CONFIG_QUOTACTL is not set +# CONFIG_AUTOFS4_FS is not set +# CONFIG_FUSE_FS is not set +CONFIG_OVERLAY_FS=y + +# +# Caches +# +# CONFIG_FSCACHE is not set + +# +# CD-ROM/DVD Filesystems +# +# CONFIG_ISO9660_FS is not set +# CONFIG_UDF_FS is not set + +# +# DOS/FAT/NT Filesystems +# +# CONFIG_MSDOS_FS is not set +# CONFIG_VFAT_FS is not set +# CONFIG_NTFS_FS is not set +# CONFIG_EXFAT_FS is not set + +# +# Pseudo filesystems +# +CONFIG_PROC_FS=y +CONFIG_MODULE_PROC_FS=y +# CONFIG_EXECDOMAINS_PROC_FS is not set +CONFIG_PROC_SYSCTL=y +# CONFIG_PROC_PAGE_MONITOR is not set +# CONFIG_PROC_CHILDREN is not set +# CONFIG_PROC_UID is not set +CONFIG_KERNFS=y +CONFIG_SYSFS=y +# CONFIG_WORKQUEUE_SYSFS is not set +# CONFIG_PARAM_SYSFS is not set +CONFIG_TMPFS=y +CONFIG_TMPFS_POSIX_ACL=y +CONFIG_TMPFS_XATTR=y +# CONFIG_HUGETLB_PAGE is not set +CONFIG_CONFIGFS_FS=y +CONFIG_MISC_FILESYSTEMS=y +# CONFIG_ORANGEFS_FS is not set +# CONFIG_ADFS_FS is not set +# CONFIG_AFFS_FS is not set +# CONFIG_SDCARD_FS is not set +# CONFIG_HFS_FS is not set +# CONFIG_HFSPLUS_FS is not set +# CONFIG_BEFS_FS is not set +# CONFIG_BFS_FS is not set +# CONFIG_EFS_FS is not set +# CONFIG_JFFS2_FS is not set +# CONFIG_LOGFS is not set +# CONFIG_CRAMFS is not set +CONFIG_SQUASHFS=y +CONFIG_SQUASHFS_DECOMP_SINGLE=y +# CONFIG_SQUASHFS_DECOMP_MULTI is not set +# CONFIG_SQUASHFS_DECOMP_MULTI_PERCPU is not set +# CONFIG_SQUASHFS_XATTR is not set +# CONFIG_SQUASHFS_ZLIB is not set +# CONFIG_SQUASHFS_LZ4 is not set +# CONFIG_SQUASHFS_LZO is not set +CONFIG_SQUASHFS_XZ=y +# CONFIG_SQUASHFS_ZSTD is not set +# CONFIG_SQUASHFS_4K_DEVBLK_SIZE is not set +# CONFIG_SQUASHFS_EMBEDDED is not set +CONFIG_SQUASHFS_FRAGMENT_CACHE_SIZE=3 +# CONFIG_VXFS_FS is not set +# CONFIG_MINIX_FS is not set +# CONFIG_OMFS_FS is not set +# CONFIG_HPFS_FS is not set +# CONFIG_QNX4FS_FS is not set +# CONFIG_QNX6FS_FS is not set +# CONFIG_ROMFS_FS is not set +# CONFIG_PSTORE is not set +# CONFIG_SYSV_FS is not set +# CONFIG_UFS_FS is not set +# CONFIG_NETWORK_FILESYSTEMS is not set +CONFIG_NLS=y +CONFIG_NLS_DEFAULT="iso8859-1" +CONFIG_NLS_CODEPAGE_437=y +# CONFIG_NLS_CODEPAGE_737 is not set +# CONFIG_NLS_CODEPAGE_775 is not set +# CONFIG_NLS_CODEPAGE_850 is not set +# CONFIG_NLS_CODEPAGE_852 is not set +# CONFIG_NLS_CODEPAGE_855 is not set +# CONFIG_NLS_CODEPAGE_857 is not set +# CONFIG_NLS_CODEPAGE_860 is not set +# CONFIG_NLS_CODEPAGE_861 is not set +# CONFIG_NLS_CODEPAGE_862 is not set +# CONFIG_NLS_CODEPAGE_863 is not set +# CONFIG_NLS_CODEPAGE_864 is not set +# CONFIG_NLS_CODEPAGE_865 is not set +# CONFIG_NLS_CODEPAGE_866 is not set +# CONFIG_NLS_CODEPAGE_869 is not set +# CONFIG_NLS_CODEPAGE_936 is not set +# CONFIG_NLS_CODEPAGE_950 is not set +# CONFIG_NLS_CODEPAGE_932 is not set +# CONFIG_NLS_CODEPAGE_949 is not set +# CONFIG_NLS_CODEPAGE_874 is not set +# CONFIG_NLS_ISO8859_8 is not set +# CONFIG_NLS_CODEPAGE_1250 is not set +# CONFIG_NLS_CODEPAGE_1251 is not set +# CONFIG_NLS_ASCII is not set +CONFIG_NLS_ISO8859_1=y +# CONFIG_NLS_ISO8859_2 is not set +# CONFIG_NLS_ISO8859_3 is not set +# CONFIG_NLS_ISO8859_4 is not set +# CONFIG_NLS_ISO8859_5 is not set +# CONFIG_NLS_ISO8859_6 is not set +# CONFIG_NLS_ISO8859_7 is not set +# CONFIG_NLS_ISO8859_9 is not set +# CONFIG_NLS_ISO8859_13 is not set +# CONFIG_NLS_ISO8859_14 is not set +# CONFIG_NLS_ISO8859_15 is not set +# CONFIG_NLS_KOI8_R is not set +# CONFIG_NLS_KOI8_U is not set +# CONFIG_NLS_MAC_ROMAN is not set +# CONFIG_NLS_MAC_CELTIC is not set +# CONFIG_NLS_MAC_CENTEURO is not set +# CONFIG_NLS_MAC_CROATIAN is not set +# CONFIG_NLS_MAC_CYRILLIC is not set +# CONFIG_NLS_MAC_GAELIC is not set +# CONFIG_NLS_MAC_GREEK is not set +# CONFIG_NLS_MAC_ICELAND is not set +# CONFIG_NLS_MAC_INUIT is not set +# CONFIG_NLS_MAC_ROMANIAN is not set +# CONFIG_NLS_MAC_TURKISH is not set +# CONFIG_NLS_UTF8 is not set +# CONFIG_DLM is not set +# CONFIG_EROFS_FS is not set + +# +# Kernel hacking +# + +# +# printk and dmesg options +# +CONFIG_PRINTK_TIME=y +CONFIG_MESSAGE_LOGLEVEL_DEFAULT=4 +# CONFIG_BOOT_PRINTK_DELAY is not set + +# +# Compile-time checks and compiler options +# +# CONFIG_DEBUG_INFO is not set +CONFIG_ENABLE_WARN_DEPRECATED=y +CONFIG_ENABLE_MUST_CHECK=y +CONFIG_FRAME_WARN=2048 +# CONFIG_STRIP_ASM_SYMS is not set +# CONFIG_READABLE_ASM is not set +# CONFIG_UNUSED_SYMBOLS is not set +# CONFIG_PAGE_OWNER is not set +# CONFIG_DEBUG_FS is not set +# CONFIG_HEADERS_CHECK is not set +# CONFIG_DEBUG_SECTION_MISMATCH is not set +CONFIG_SECTION_MISMATCH_WARN_ONLY=y +# CONFIG_DEBUG_FORCE_WEAK_PER_CPU is not set +# CONFIG_MAGIC_SYSRQ is not set +CONFIG_DEBUG_KERNEL=y + +# +# Memory Debugging +# +# CONFIG_PAGE_EXTENSION is not set +# CONFIG_DEBUG_PAGEALLOC is not set +# CONFIG_PAGE_POISONING is not set +# CONFIG_DEBUG_OBJECTS is not set +# CONFIG_SLUB_STATS is not set +CONFIG_HAVE_DEBUG_KMEMLEAK=y +# CONFIG_DEBUG_KMEMLEAK is not set +# CONFIG_DEBUG_STACK_USAGE is not set +# CONFIG_DEBUG_VM is not set +# CONFIG_DEBUG_MEMORY_INIT is not set +# CONFIG_DEBUG_HIGHMEM is not set +# CONFIG_DEBUG_SHIRQ is not set + +# +# Debug Lockups and Hangs +# +# CONFIG_LOCKUP_DETECTOR is not set +# CONFIG_DETECT_HUNG_TASK is not set +# CONFIG_WQ_WATCHDOG is not set +# CONFIG_PANIC_ON_OOPS is not set +CONFIG_PANIC_ON_OOPS_VALUE=0 +CONFIG_PANIC_TIMEOUT=0 +# CONFIG_SCHED_DEBUG is not set +# CONFIG_SCHED_INFO is not set +# CONFIG_PANIC_ON_RT_THROTTLING is not set +# CONFIG_SCHEDSTATS is not set +# CONFIG_SCHED_STACK_END_CHECK is not set +# CONFIG_DEBUG_TIMEKEEPING is not set +# CONFIG_TIMER_STATS is not set +# CONFIG_DEBUG_PREEMPT is not set + +# +# Lock Debugging (spinlocks, mutexes, etc...) +# +# CONFIG_DEBUG_RT_MUTEXES is not set +# CONFIG_DEBUG_SPINLOCK is not set +CONFIG_DEBUG_MUTEXES=y +# CONFIG_DEBUG_WW_MUTEX_SLOWPATH is not set +# CONFIG_DEBUG_LOCK_ALLOC is not set +# CONFIG_PROVE_LOCKING is not set +# CONFIG_LOCK_STAT is not set +# CONFIG_DEBUG_ATOMIC_SLEEP is not set +# CONFIG_DEBUG_LOCKING_API_SELFTESTS is not set +# CONFIG_LOCK_TORTURE_TEST is not set +# CONFIG_STACKTRACE is not set +# CONFIG_DEBUG_KOBJECT is not set +# CONFIG_DEBUG_BUGVERBOSE is not set +# CONFIG_DEBUG_LIST is not set +# CONFIG_DEBUG_PI_LIST is not set +# CONFIG_DEBUG_SG is not set +# CONFIG_DEBUG_NOTIFIERS is not set +# CONFIG_DEBUG_CREDENTIALS is not set + +# +# RCU Debugging +# +# CONFIG_PROVE_RCU is not set +# CONFIG_SPARSE_RCU_POINTER is not set +# CONFIG_TORTURE_TEST is not set +# CONFIG_RCU_PERF_TEST is not set +# CONFIG_RCU_TORTURE_TEST is not set +CONFIG_RCU_CPU_STALL_TIMEOUT=21 +# CONFIG_RCU_TRACE is not set +# CONFIG_RCU_EQS_DEBUG is not set +# CONFIG_DEBUG_WQ_FORCE_RR_CPU is not set +# CONFIG_DEBUG_BLOCK_EXT_DEVT is not set +# CONFIG_NOTIFIER_ERROR_INJECTION is not set +# CONFIG_FAULT_INJECTION is not set +# CONFIG_LATENCYTOP is not set +CONFIG_HAVE_FUNCTION_TRACER=y +CONFIG_HAVE_DYNAMIC_FTRACE=y +CONFIG_HAVE_FTRACE_MCOUNT_RECORD=y +CONFIG_HAVE_SYSCALL_TRACEPOINTS=y +CONFIG_HAVE_C_RECORDMCOUNT=y +CONFIG_TRACING_SUPPORT=y +# CONFIG_FTRACE is not set + +# +# Runtime Testing +# +# CONFIG_TEST_LIST_SORT is not set +# CONFIG_BACKTRACE_SELF_TEST is not set +# CONFIG_RBTREE_TEST is not set +# CONFIG_INTERVAL_TREE_TEST is not set +# CONFIG_PERCPU_TEST is not set +# CONFIG_ATOMIC64_SELFTEST is not set +# CONFIG_TEST_HEXDUMP is not set +# CONFIG_TEST_STRING_HELPERS is not set +# CONFIG_TEST_KSTRTOX is not set +# CONFIG_TEST_PRINTF is not set +# CONFIG_TEST_BITMAP is not set +# CONFIG_TEST_UUID is not set +# CONFIG_TEST_RHASHTABLE is not set +# CONFIG_TEST_HASH is not set +# CONFIG_DMA_API_DEBUG is not set +# CONFIG_TEST_LKM is not set +# CONFIG_TEST_USER_COPY is not set +# CONFIG_TEST_BPF is not set +# CONFIG_TEST_FIRMWARE is not set +# CONFIG_TEST_UDELAY is not set +# CONFIG_MEMTEST is not set +# CONFIG_TEST_STATIC_KEYS is not set +# CONFIG_BUG_ON_DATA_CORRUPTION is not set +# CONFIG_SAMPLES is not set +CONFIG_HAVE_ARCH_KGDB=y +# CONFIG_KGDB is not set +# CONFIG_ARCH_WANTS_UBSAN_NO_NULL is not set +# CONFIG_UBSAN is not set +CONFIG_ARCH_HAS_DEVMEM_IS_ALLOWED=y +# CONFIG_STRICT_DEVMEM is not set +# CONFIG_ARM_PTDUMP is not set +CONFIG_ARM_UNWIND=y +# CONFIG_DEBUG_USER is not set +# CONFIG_DEBUG_LL is not set +CONFIG_DEBUG_LL_INCLUDE="mach/debug-macro.S" +# CONFIG_DEBUG_UART_8250 is not set +CONFIG_UNCOMPRESS_INCLUDE="mach/uncompress.h" +# CONFIG_PID_IN_CONTEXTIDR is not set +# CONFIG_DEBUG_SET_MODULE_RONX is not set +# CONFIG_SUNXI_DUMP is not set +# CONFIG_CORESIGHT is not set + +# +# Security options +# +# CONFIG_KEYS is not set +# CONFIG_SECURITY_DMESG_RESTRICT is not set +# CONFIG_SECURITY is not set +# CONFIG_SECURITYFS is not set +CONFIG_HAVE_HARDENED_USERCOPY_ALLOCATOR=y +CONFIG_HAVE_ARCH_HARDENED_USERCOPY=y +# CONFIG_HARDENED_USERCOPY is not set +CONFIG_DEFAULT_SECURITY_DAC=y +CONFIG_DEFAULT_SECURITY="" +CONFIG_CRYPTO=y + +# +# Crypto core or helper +# +CONFIG_CRYPTO_ALGAPI=y +CONFIG_CRYPTO_ALGAPI2=y +CONFIG_CRYPTO_AEAD=m +CONFIG_CRYPTO_AEAD2=y +CONFIG_CRYPTO_BLKCIPHER=y +CONFIG_CRYPTO_BLKCIPHER2=y +CONFIG_CRYPTO_HASH=y +CONFIG_CRYPTO_HASH2=y +CONFIG_CRYPTO_RNG=m +CONFIG_CRYPTO_RNG2=y +CONFIG_CRYPTO_RNG_DEFAULT=m +CONFIG_CRYPTO_AKCIPHER2=y +CONFIG_CRYPTO_KPP2=y +# CONFIG_CRYPTO_RSA is not set +# CONFIG_CRYPTO_DH is not set +# CONFIG_CRYPTO_ECDH is not set +CONFIG_CRYPTO_MANAGER=y +CONFIG_CRYPTO_MANAGER2=y +# CONFIG_CRYPTO_USER is not set +CONFIG_CRYPTO_MANAGER_DISABLE_TESTS=y +# CONFIG_CRYPTO_GF128MUL is not set +CONFIG_CRYPTO_NULL=m +CONFIG_CRYPTO_NULL2=y +CONFIG_CRYPTO_WORKQUEUE=y +# CONFIG_CRYPTO_CRYPTD is not set +# CONFIG_CRYPTO_MCRYPTD is not set +# CONFIG_CRYPTO_AUTHENC is not set +# CONFIG_CRYPTO_TEST is not set + +# +# Authenticated Encryption with Associated Data +# +# CONFIG_CRYPTO_CCM is not set +# CONFIG_CRYPTO_GCM is not set +# CONFIG_CRYPTO_CHACHA20POLY1305 is not set +# CONFIG_CRYPTO_SEQIV is not set +CONFIG_CRYPTO_ECHAINIV=m + +# +# Block modes +# +# CONFIG_CRYPTO_CBC is not set +# CONFIG_CRYPTO_CTR is not set +# CONFIG_CRYPTO_CTS is not set +CONFIG_CRYPTO_ECB=y +# CONFIG_CRYPTO_LRW is not set +# CONFIG_CRYPTO_PCBC is not set +# CONFIG_CRYPTO_XTS is not set +# CONFIG_CRYPTO_KEYWRAP is not set +# CONFIG_CRYPTO_ADIANTUM is not set + +# +# Hash modes +# +CONFIG_CRYPTO_CMAC=y +CONFIG_CRYPTO_HMAC=m +# CONFIG_CRYPTO_XCBC is not set +# CONFIG_CRYPTO_VMAC is not set + +# +# Digest +# +CONFIG_CRYPTO_CRC32C=y +# CONFIG_CRYPTO_CRC32 is not set +# CONFIG_CRYPTO_CRCT10DIF is not set +# CONFIG_CRYPTO_GHASH is not set +# CONFIG_CRYPTO_POLY1305 is not set +# CONFIG_CRYPTO_MD4 is not set +# CONFIG_CRYPTO_MD5 is not set +# CONFIG_CRYPTO_MICHAEL_MIC is not set +# CONFIG_CRYPTO_RMD128 is not set +# CONFIG_CRYPTO_RMD160 is not set +# CONFIG_CRYPTO_RMD256 is not set +# CONFIG_CRYPTO_RMD320 is not set +# CONFIG_CRYPTO_SHA1 is not set +CONFIG_CRYPTO_SHA256=y +# CONFIG_CRYPTO_SHA512 is not set +# CONFIG_CRYPTO_SHA3 is not set +# CONFIG_CRYPTO_TGR192 is not set +# CONFIG_CRYPTO_WP512 is not set + +# +# Ciphers +# +CONFIG_CRYPTO_AES=y +# CONFIG_CRYPTO_ANUBIS is not set +CONFIG_CRYPTO_ARC4=m +# CONFIG_CRYPTO_BLOWFISH is not set +# CONFIG_CRYPTO_CAMELLIA is not set +# CONFIG_CRYPTO_CAST5 is not set +# CONFIG_CRYPTO_CAST6 is not set +# CONFIG_CRYPTO_DES is not set +# CONFIG_CRYPTO_FCRYPT is not set +# CONFIG_CRYPTO_KHAZAD is not set +# CONFIG_CRYPTO_SALSA20 is not set +# CONFIG_CRYPTO_CHACHA20 is not set +# CONFIG_CRYPTO_SEED is not set +# CONFIG_CRYPTO_SERPENT is not set +# CONFIG_CRYPTO_TEA is not set +# CONFIG_CRYPTO_TWOFISH is not set + +# +# Compression +# +# CONFIG_CRYPTO_DEFLATE is not set +# CONFIG_CRYPTO_LZO is not set +# CONFIG_CRYPTO_842 is not set +# CONFIG_CRYPTO_LZ4 is not set +# CONFIG_CRYPTO_LZ4HC is not set +# CONFIG_CRYPTO_ZSTD is not set + +# +# Random Number Generation +# +# CONFIG_CRYPTO_ANSI_CPRNG is not set +CONFIG_CRYPTO_DRBG_MENU=m +CONFIG_CRYPTO_DRBG_HMAC=y +# CONFIG_CRYPTO_DRBG_HASH is not set +CONFIG_CRYPTO_DRBG=m +CONFIG_CRYPTO_JITTERENTROPY=m +# CONFIG_CRYPTO_USER_API_HASH is not set +# CONFIG_CRYPTO_USER_API_SKCIPHER is not set +# CONFIG_CRYPTO_USER_API_RNG is not set +# CONFIG_CRYPTO_USER_API_AEAD is not set +# CONFIG_CRYPTO_HW is not set + +# +# Certificates for signature checking +# +# CONFIG_ARM_CRYPTO is not set +# CONFIG_BINARY_PRINTF is not set + +# +# Library routines +# +CONFIG_BITREVERSE=y +CONFIG_HAVE_ARCH_BITREVERSE=y +CONFIG_RATIONAL=y +CONFIG_GENERIC_STRNCPY_FROM_USER=y +CONFIG_GENERIC_STRNLEN_USER=y +CONFIG_GENERIC_NET_UTILS=y +CONFIG_GENERIC_PCI_IOMAP=y +CONFIG_GENERIC_IO=y +CONFIG_ARCH_USE_CMPXCHG_LOCKREF=y +CONFIG_FLEX_ARRAY=y +# CONFIG_CRC_CCITT is not set +CONFIG_CRC16=y +# CONFIG_CRC_T10DIF is not set +# CONFIG_CRC_ITU_T is not set +CONFIG_CRC32=y +# CONFIG_CRC32_SELFTEST is not set +CONFIG_CRC32_SLICEBY8=y +# CONFIG_CRC32_SLICEBY4 is not set +# CONFIG_CRC32_SARWATE is not set +# CONFIG_CRC32_BIT is not set +# CONFIG_CRC7 is not set +# CONFIG_LIBCRC32C is not set +# CONFIG_CRC8 is not set +# CONFIG_HALFMD4 is not set +# CONFIG_AUDIT_ARCH_COMPAT_GENERIC is not set +# CONFIG_RANDOM32_SELFTEST is not set +CONFIG_LZO_COMPRESS=y +CONFIG_LZO_DECOMPRESS=y +CONFIG_XZ_DEC=y +# CONFIG_XZ_DEC_X86 is not set +# CONFIG_XZ_DEC_POWERPC is not set +# CONFIG_XZ_DEC_IA64 is not set +# CONFIG_XZ_DEC_ARM is not set +# CONFIG_XZ_DEC_ARMTHUMB is not set +# CONFIG_XZ_DEC_SPARC is not set +# CONFIG_XZ_DEC_BCJ is not set +# CONFIG_XZ_DEC_TEST is not set +CONFIG_GENERIC_ALLOCATOR=y +CONFIG_HAS_IOMEM=y +CONFIG_HAS_IOPORT_MAP=y +CONFIG_HAS_DMA=y +CONFIG_DQL=y +CONFIG_NLATTR=y +# CONFIG_CORDIC is not set +# CONFIG_DDR is not set +# CONFIG_IRQ_POLL is not set +CONFIG_LIBFDT=y +# CONFIG_LIBM is not set +# CONFIG_SG_SPLIT is not set +# CONFIG_SG_POOL is not set +CONFIG_ARCH_HAS_SG_CHAIN=y +CONFIG_SBITMAP=y +CONFIG_VIRTUALIZATION=y +# CONFIG_VHOST_NET is not set +# CONFIG_VHOST_CROSS_ENDIAN_LEGACY is not set diff --git a/device/config/chips/v851s3/configs/fastboot_sl100_front/linux/sys_partition_nor.fex b/device/config/chips/v851s3/configs/fastboot_sl100_front/linux/sys_partition_nor.fex index 6d2247807..429b0d51f 100755 --- a/device/config/chips/v851s3/configs/fastboot_sl100_front/linux/sys_partition_nor.fex +++ b/device/config/chips/v851s3/configs/fastboot_sl100_front/linux/sys_partition_nor.fex @@ -47,47 +47,49 @@ size = 16 [partition] name = boot - size = 6272 -# size = 7040 + size = 6016 downloadfile = "boot.fex" user_type = 0x8000 -;[partition] -; name = boot_backup -; size = 7040 -; downloadfile = "boot.fex" -; user_type = 0x8000 - [partition] name = rootfs - ;size = 12288 size = 4864 downloadfile = "rootfs.fex" user_type = 0x8000 -;[partition] -; name = rootfs_backup -; size = 11264 -; downloadfile = "rootfs.fex" -; user_type = 0x8000 - [partition] name = extend - size = 30464 + size = 11264 downloadfile = "usr.fex" user_type = 0x8000 ;[partition] -; name = extend_backup -; size = 3072 -; downloadfile = "usr.fex" +; name = usrapp +; size = 4864 +; downloadfile = "appimg.fex" ; user_type = 0x8000 +[partition] + name = recovery + size = 4992 + downloadfile = "recovery.fex" + user_type = 0x8000 + +;[partition] +; name = recoveryapp +; size = 2560 +; downloadfile = "recoveryimg.fex" +; user_type = 0x8000 + [partition] name = rootfs_data size = 1024 user_type = 0x8000 + + + + ;[partition] ; name = private ; size = 1024 diff --git a/target/allwinner/v851s-fastboot_sl100_back/busybox-init-base-ota-files/etc/asound.conf b/target/allwinner/v851s-fastboot_sl100_back/busybox-init-base-ota-files/etc/asound.conf new file mode 100755 index 000000000..57081c85b --- /dev/null +++ b/target/allwinner/v851s-fastboot_sl100_back/busybox-init-base-ota-files/etc/asound.conf @@ -0,0 +1,414 @@ + +hook_args.HookArgsDefault [ + { + name "LINEOUT Switch" + preserve true + optional true + value 1 + } + { + name "SPK Switch" + preserve true + optional true + value 1 + } + { + name "LINEOUT Output Select" + preserve true + optional true + value "differ" #value=1, "single" value=0 + } +# { +# name "LINEOUT volume" +# preserve true +# optional true +# value 31 +# } + { + name "MIC1 Switch" + preserve true + optional true + value 1 + } + { + name "MIC1 Input Select" + preserve true + optional true + value "differ" #value=0, "single" value=1 + } +# { +# name "MIC1 gain volume" +# preserve true +# optional true +# value 31 +# } +] + +hook_args.HookArgsPlayback [ + { + name "LINEOUT Switch" + preserve true + optional true + value 1 + } + { + name "SPK Switch" + preserve true + optional true + value 1 + } + { + name "LINEOUT Output Select" + preserve true + optional true + value "differ" + } +# { +# name "LINEOUT volume" +# preserve true +# optional true +# value 31 +# } +] + +hook_args.HookArgsCapture [ + { + name "MIC1 Switch" + preserve true + optional true + value 1 + } + { + name "MIC1 Input Select" + preserve true + optional true + value "differ" + } +# { +# name "MIC1 gain volume" +# preserve true +# optional true +# value 31 +# } +] +pcm.!default { + type hooks + slave { + pcm { + type asym + playback.pcm "hw:{CARD=audiocodec, DEV=0}" + capture.pcm "hw:0,0" + } + } + hooks.0 { + type ctl_elems + hook_args HookArgsDefault + } +} + +pcm.PlaybackRateDmix { + @args [ SAMPLERATE CHNNUM PERIODSIZE ] + @args.SAMPLERATE { + type integer + default 16000 + } + @args.CHNNUM { + type integer + default 1 + } + @args.PERIODSIZE { + type integer + default 960 #1024 + } + type plug + slave.pcm { + type softvol + slave.pcm { + type hooks + slave.pcm { + type dmix + ipc_key 1111 + ipc_perm 0666 + slave { + pcm "hw:0,0" + format S16_LE + rate $SAMPLERATE + channels $CHNNUM + period_size $PERIODSIZE + periods 8 + } + } + hooks.0 { + type ctl_elems + hook_args HookArgsPlayback + } + } + control { + name "Soft Volume Master" + card audiocodec + count 1 + } + min_dB -26.0 + max_dB 25.0 + resolution 256 + } + rate_converter "linear" #"speexrate" +} + +#pcm.resample rely on alsa-plugin and libspeexdsp. Select them in menuconfig if we want to use plugin pcm.resample. +pcm.resample { + type plug + slave { + pcm "hw:0,0" + format S16_LE + rate 16000 + channels 1 + } + rate_converter "speexrate" +} + +pcm.CaptureMic Capture1MicHard + +# I2SRTX's I2S_SAMPLERATE and I2S_CHNNUM must be same to PlaybackRateDmix's SAMPLERATE and CHNNUM! +pcm.I2SRTX { + @args [ I2S_SAMPLERATE I2S_CHNNUM ] + @args.I2S_SAMPLERATE { + type integer + default 16000 + } + @args.I2S_CHNNUM { + type integer + default 1 + } + type hooks + slave.pcm { + type plug + slave { + pcm "hw:snddaudio0,0" + channels $I2S_CHNNUM + rate $I2S_SAMPLERATE + } + } + hooks.0 { + type ctl_elems + hook_args [ + { + name "loopback debug" + preserve true + optional true + value 1 + } + ] + } +} + +#pcm.CaptureI2SRX { +# type hooks +# slave.pcm "hw:snddaudio0,0" +# hooks.0 { +# type ctl_elems +# hook_args [ +# { +# name "loopback debug" +# preserve true +# optional true +# value 1 +# } +# ] +# } +#} + +#pcm_slave.slaveCap { +# @args [ PCMID CHNNUM ] +# @args.PCMID { +# type string +# } +# @args.CHNNUM { +# type integer +# } +# pcm $PCMID +# channels $CHNNUM +#} + +#pcm_slave.slaveMultiCapture { +# pcm { +# type multi +# slaves { +# a "slaveCap:CaptureMic,1" +# b "slaveCap:CaptureI2SRX,1" +# } +# bindings { +# 0 {slave a channel 0} +# 1 {slave b channel 0} +# } +# } +#} + +#pcm.CaptureDouble { +# type plug +# slave slaveMultiCapture +# ttable.0.0 1 +# ttable.1.1 1 +#} + +#we define pcm capture plugin naming convention: +#pcm.CaptureMic:, : the number of MIC. It can auto convert to indicated channels. : set sample rate to Hardware PCM. +#pcm.CaptureMicPlusAec, if enable aec, add PlusAec. It forbids to auto convert to multi channels because of aec. +# ref to GenerateCaptureIdentifier() in [audio_hw.c] +#e.g.: +#pcm.Capture1Mic:16000 +#pcm.Capture1MicPlusAec +#pcm.Capture2Mic:16000 +#pcm.Capture2MicPlusAec +pcm.Capture1Mic { + @args [ SAMPLERATE ] + @args.SAMPLERATE { + type integer + default 16000 + } + type hooks + slave.pcm { + type plug + slave { + pcm "hw:0,0" + channels 1 + rate $SAMPLERATE + } + } + hooks.0 { + type ctl_elems + hook_args HookArgsCapture + } +} + +pcm.Capture1MicHard { + type hooks + slave.pcm "hw:0,0" + hooks.0 { + type ctl_elems + hook_args HookArgsCapture + } +} +pcm.Capture1MicPlusAec { + type route + slave.pcm { + type multi + slaves { + a {pcm Capture1MicHard channels 1} + b {pcm I2SRTX channels 1} + } + bindings { + 0 {slave a channel 0} + 1 {slave b channel 0} + } + } + ttable.0.0 1 + ttable.1.1 1 +} + +pcm.Capture2Mic { + @args [ SAMPLERATE ] + @args.SAMPLERATE { + type integer + default 16000 + } + type hooks + slave.pcm { + type plug + slave { + pcm "hw:0,0" + channels 2 + rate $SAMPLERATE + } + } + hooks.0 { + type ctl_elems + hook_args [ + { + name "MIC1 Switch" + preserve true + optional true + value 1 + } + { + name "MIC1 Input Select" + preserve true + optional true + value "differ" + } + { + name "MIC2 Switch" + preserve true + optional true + value 1 + } + { + name "MIC2 Input Select" + preserve true + optional true + value "differ" + } + ] + } +} + +pcm.Capture2MicHard { + type hooks + slave.pcm "hw:0,0" + hooks.0 { + type ctl_elems + hook_args [ + { + name "MIC1 Switch" + preserve true + optional true + value 1 + } + { + name "MIC1 Input Select" + preserve true + optional true + value "differ" + } + { + name "MIC2 Switch" + preserve true + optional true + value 1 + } + { + name "MIC2 Input Select" + preserve true + optional true + value "differ" + } + ] + } +} +pcm.Capture2MicPlusAec { + type route + slave.pcm { + type multi + slaves { + a {pcm Capture2MicHard channels 2} + b {pcm I2SRTX channels 1} + } + bindings { + 0 {slave a channel 0} + 1 {slave a channel 1} + 2 {slave b channel 0} + } + } + ttable.0.0 1 + ttable.1.1 1 + ttable.2.2 1 +} + +pcm.eq { + type awequal + slave.pcm "hw:0,0" + config_file "/etc/awequal.conf" + tuning_support true + verbose true +} + diff --git a/target/allwinner/v851s-fastboot_sl100_back/busybox-init-base-ota-files/etc/fw_env.config b/target/allwinner/v851s-fastboot_sl100_back/busybox-init-base-ota-files/etc/fw_env.config new file mode 100755 index 000000000..f1a10e66f --- /dev/null +++ b/target/allwinner/v851s-fastboot_sl100_back/busybox-init-base-ota-files/etc/fw_env.config @@ -0,0 +1,46 @@ +# Configuration file for fw_(printenv/setenv) utility. +# Up to two entries are valid, in this case the redundant +# environment sector is assumed present. +# Notice, that the "Number of sectors" is not required on NOR and SPI-dataflash. +# Futhermore, if the Flash sector size is omitted, this value is assumed to +# be the same as the Environment size, which is valid for NOR and SPI-dataflash +# Device offset must be prefixed with 0x to be parsed as a hexadecimal value. + +# NOR example +# MTD device name Device offset Env. size Flash sector size Number of sectors +# /dev/mtd1 0x0000 0x4000 0x4000 +# /dev/mtd2 0x0000 0x4000 0x4000 + +# MTD SPI-dataflash example +# MTD device name Device offset Env. size Flash sector size Number of sectors +#/dev/mtd5 0x4200 0x4200 +#/dev/mtd6 0x4200 0x4200 + +# NAND example +#/dev/mtd0 0x4000 0x4000 0x20000 2 + +# On a block device a negative offset is treated as a backwards offset from the +# end of the device/partition, rather than a forwards offset from the start. + +# Block device example +#/dev/mmcblk0 0xc0000 0x20000 +#/dev/mmcblk0 -0x20000 0x20000 + +# VFAT example +#/boot/uboot.env 0x0000 0x4000 + +# UBI volume +#/dev/ubi0_0 0x0 0x1f000 0x1f000 +#/dev/ubi0_1 0x0 0x1f000 0x1f000 + +# UBI volume by name +#/dev/ubi0:env 0x0 0x1f000 0x1f000 +#/dev/ubi0:env-redund 0x0 0x1f000 0x1f000 + +# Allwinner Tina +/dev/by-name/env 0x0000 0x1000 +/dev/by-name/env-redund 0x0000 0x1000 + +# Allwinner Tina UBI volume +# /dev/ubi0:env 0x0 0x20000 0x20000 +# /dev/ubi0:env-redund 0x0 0x20000 0x20000 diff --git a/target/allwinner/v851s-fastboot_sl100_back/busybox-init-base-ota-files/etc/init.d/S00mpp b/target/allwinner/v851s-fastboot_sl100_back/busybox-init-base-ota-files/etc/init.d/S00mpp new file mode 100755 index 000000000..58dc09275 --- /dev/null +++ b/target/allwinner/v851s-fastboot_sl100_back/busybox-init-base-ota-files/etc/init.d/S00mpp @@ -0,0 +1,80 @@ +#!/bin/sh +# +# load modules.... +# + +MODULES_DIR="/lib/modules/`uname -r`" + +start() { + printf "load modules\n" + + echo "load sample_virvi2vo ---- " + #/usr/bin/sample_virvi2vo -path /usr/bin/sample_virvi2vo_v851s_sc1721v.conf & + + #echo "------ insmod scsi modules start --------" + #insmod $MODULES_DIR/scsi_mod.ko + #insmod $MODULES_DIR/sd_mod.ko + + #wifi + echo "------ insmod xr806 modules start --------" + insmod $MODULES_DIR/xr806.ko + #insmod $MODULES_DIR/vipcore.ko + #input + #insmod $MODULES_DIR/input-core.ko + insmod $MODULES_DIR/evdev.ko + + echo "------insmod audio modules start-----" + #audio + insmod $MODULES_DIR/soundcore.ko + insmod $MODULES_DIR/snd.ko + insmod $MODULES_DIR/snd-timer.ko + insmod $MODULES_DIR/snd-pcm.ko + insmod $MODULES_DIR/snd-pcm-dmaengine.ko + insmod $MODULES_DIR/snd-soc-core.ko + insmod $MODULES_DIR/snd_soc_sunxi_pcm.ko + insmod $MODULES_DIR/snd_soc_sunxi_component_rxsync.ko + insmod $MODULES_DIR/snd_soc_sunxi_aaudio.ko + insmod $MODULES_DIR/snd_soc_sunxi_daudio.ko + insmod $MODULES_DIR/snd_soc_sunxi_internal_codec.ko + insmod $MODULES_DIR/snd_soc_sunxi_machine.ko + + echo "------insmod audio modules end-----" + + #insmod $MODULES_DIR/rt-media.ko + + echo "------ insmod gpio_keys modules start --------" + #gpio key + insmod $MODULES_DIR/gpio_keys.ko + + echo "------ insmod sunxi_gpadc modules start --------" + #l-sen + insmod $MODULES_DIR/sunxi_gpadc.ko + + echo "------ insmod cst9220 modules start --------" + #ctp + #insmod $MODULES_DIR/gslX680new.ko + insmod $MODULES_DIR/cst9220.ko +} + +stop() { + printf "unload modules\n" + +} + +case "$1" in + start) + start + ;; + stop) + stop + ;; + restart|reload) + stop + start + ;; + *) + echo "Usage: $0 {start|stop|restart}" + exit 1 +esac + +exit $? diff --git a/target/allwinner/v851s-fastboot_sl100_back/busybox-init-base-ota-files/etc/init.d/S10udev b/target/allwinner/v851s-fastboot_sl100_back/busybox-init-base-ota-files/etc/init.d/S10udev new file mode 100755 index 000000000..8382bec2b --- /dev/null +++ b/target/allwinner/v851s-fastboot_sl100_back/busybox-init-base-ota-files/etc/init.d/S10udev @@ -0,0 +1,50 @@ +#!/bin/sh +# +# udev This is a minimal non-LSB version of a UDEV startup script. It +# was derived by stripping down the udev-058 LSB version for use +# with buildroot on embedded hardware using Linux 2.6.34+ kernels. +# +# You may need to customize this for your system's resource limits +# (including startup time!) and administration. For example, if +# your early userspace has a custom initramfs or initrd you might +# need /dev much earlier; or without hotpluggable busses (like USB, +# PCMCIA, MMC/SD, and so on) your /dev might be static after boot. +# +# This script assumes your system boots right into the eventual root +# filesystem, and that init runs this udev script before any programs +# needing more device nodes than the bare-bones set -- /dev/console, +# /dev/zero, /dev/null -- that's needed to boot and run this script. +# + +# Check for missing binaries +UDEV_BIN=/sbin/udevd +test -x $UDEV_BIN || exit 5 + +# Check for config file and read it +UDEV_CONFIG=/etc/udev/udev.conf +test -r $UDEV_CONFIG || exit 6 +. $UDEV_CONFIG + +case "$1" in + start) + printf "Populating ${udev_root:-/dev} using udev: " + printf '\000\000\000\000' > /proc/sys/kernel/hotplug + $UDEV_BIN -d || (echo "FAIL" && exit 1) + udevadm trigger --type=subsystems --action=add + udevadm trigger --type=devices --action=add + udevadm settle --timeout=30 || echo "udevadm settle failed" + echo "done" + ;; + stop) + # Stop execution of events + udevadm control --stop-exec-queue + killall udevd + ;; + *) + echo "Usage: $0 {start|stop}" + exit 1 + ;; +esac + + +exit 0 diff --git a/target/allwinner/v851s-fastboot_sl100_back/busybox-init-base-ota-files/etc/init.d/S50wifidaemon b/target/allwinner/v851s-fastboot_sl100_back/busybox-init-base-ota-files/etc/init.d/S50wifidaemon new file mode 100755 index 000000000..645d0b35c --- /dev/null +++ b/target/allwinner/v851s-fastboot_sl100_back/busybox-init-base-ota-files/etc/init.d/S50wifidaemon @@ -0,0 +1,34 @@ +#!/bin/sh +# +# Start wifi_deamon.... +# + +start() { + printf "Starting wifi_deamon....: " + wifi_daemon + sleep 0.2 + wifi -o sta + #wifi -a enable +} + +stop() { + printf "Stopping wifi_deamon: " +} + +case "$1" in + start) + start + ;; + stop) + stop + ;; + restart|reload) + stop + start + ;; + *) + echo "Usage: $0 {start|stop|restart}" + exit 1 +esac + +exit $? diff --git a/target/allwinner/v851s-fastboot_sl100_back/busybox-init-base-ota-files/etc/init.d/S79fat b/target/allwinner/v851s-fastboot_sl100_back/busybox-init-base-ota-files/etc/init.d/S79fat new file mode 100755 index 000000000..cc867d7e7 --- /dev/null +++ b/target/allwinner/v851s-fastboot_sl100_back/busybox-init-base-ota-files/etc/init.d/S79fat @@ -0,0 +1,36 @@ +#!/bin/sh +# +# Load fat modules.... +# + +MODULES_DIR="/lib/modules/`uname -r`" + +start() { + printf "Load fat modules\n" + insmod $MODULES_DIR/fat.ko + insmod $MODULES_DIR/vfat.ko +} + +stop() { + printf "Unload fat modules\n" + rmmod $MODULES_DIR/fat.ko + rmmod $MODULES_DIR/vfat.ko +} + +#case "$1" in +# start) +# start +# ;; +# stop) +# stop +# ;; +# restart|reload) +# stop +# start +# ;; +# *) +# echo "Usage: $0 {start|stop|restart}" +# exit 1 +#esac + +exit $? diff --git a/target/allwinner/v851s-fastboot_sl100_back/busybox-init-base-ota-files/etc/init.d/S80mmc b/target/allwinner/v851s-fastboot_sl100_back/busybox-init-base-ota-files/etc/init.d/S80mmc new file mode 100755 index 000000000..0d1156508 --- /dev/null +++ b/target/allwinner/v851s-fastboot_sl100_back/busybox-init-base-ota-files/etc/init.d/S80mmc @@ -0,0 +1,38 @@ +#!/bin/sh +# +# Load mmc modules.... +# + +MODULES_DIR="/lib/modules/`uname -r`" + +start() { + printf "Load mmc modules\n" + insmod $MODULES_DIR/mmc_core.ko + insmod $MODULES_DIR/mmc_block.ko + insmod $MODULES_DIR/sunxi_mmc_host.ko +} + +stop() { + printf "Unload mmc modules\n" + rmmod $MODULES_DIR/mmc_core.ko + rmmod $MODULES_DIR/block.ko + rmmod $MODULES_DIR/sunxi_mmc_host.ko +} + +#case "$1" in +# start) +# start +# ;; +# stop) +# stop +# ;; +# restart|reload) +# stop +# start +# ;; +# *) +# echo "Usage: $0 {start|stop|restart}" +# exit 1 +#esac + +exit $? diff --git a/target/allwinner/v851s-fastboot_sl100_back/busybox-init-base-ota-files/etc/init.d/S90pcba b/target/allwinner/v851s-fastboot_sl100_back/busybox-init-base-ota-files/etc/init.d/S90pcba new file mode 100755 index 000000000..2b162adc4 --- /dev/null +++ b/target/allwinner/v851s-fastboot_sl100_back/busybox-init-base-ota-files/etc/init.d/S90pcba @@ -0,0 +1,71 @@ +#!/bin/sh +# +# pcba test +# +start() { + printf "load pcba test\n" + + LOOP_CNT=0 + SD_DEV= + while [ 1 ];do + if [ $LOOP_CNT -eq 3 ];then + echo wait SD Card ready timeout + break; + fi + if [ -b /dev/mmcblk1p1 ];then + SD_DEV=/dev/mmcblk1p1 + break; + elif [ -b /dev/mmcblk1 ];then + SD_DEV=/dev/mmcblk1 + break; + elif [ -b /dev/mmcblk0p1 ];then + SD_DEV=/dev/mmcblk0p1 + break; + elif [ -b /dev/mmcblk0 ];then + SD_DEV=/dev/mmcblk0 + break; + else + echo SD Card not ready, wait + fi + LOOP_CNT=$(($LOOP_CNT+1)) + sleep 1 + done + + if [ -n "$(grep '/mnt/SDCARD' /proc/mounts)" ]; then + echo "start mv stream..." + ls /tmp/ + rm -rf /mnt/extsd/stream*.h264 + rm -rf /mnt/extsd/data*.jpg + mv /tmp/stream*.h264 /mnt/SDCARD/ + mv /tmp/data*.jpg /mnt/SDCARD/ + echo "---/mnt/SDCARD/---" + ls /mnt/SDCARD/ + fi + + if [ -d /mnt/SDCARD/pcba_test ]; then + /usr/bin/pcba_test.sh + fi +} + +stop() { + printf "nnload pcba test\n" + +} + +#case "$1" in +# start) +# start +# ;; +# stop) +# stop +# ;; +# restart|reload) +# stop +# start +# ;; +# *) +# echo "Usage: $0 {start|stop|restart}" +# exit 1 +#esac + +exit $? diff --git a/target/allwinner/v851s-fastboot_sl100_back/busybox-init-base-ota-files/etc/init.d/rc.final b/target/allwinner/v851s-fastboot_sl100_back/busybox-init-base-ota-files/etc/init.d/rc.final new file mode 100755 index 000000000..fe1642a8e --- /dev/null +++ b/target/allwinner/v851s-fastboot_sl100_back/busybox-init-base-ota-files/etc/init.d/rc.final @@ -0,0 +1,90 @@ +#!/bin/sh + +echo "------run rc.final file-----" +#echo "insmod wifi modules" +#insmod /lib/modules/3.4.39/8723ds.ko +#insmod /lib/modules/3.4.39/bcmdhd.ko +#insmod /lib/modules/3.4.39/xradio_mac.ko +#insmod /lib/modules/3.4.39/xradio_core.ko +#insmod /lib/modules/3.4.39/xradio_wlan.ko + +export LD_LIBRARY_PATH=/usr/lib/eyesee-mpp:${LD_LIBRARY_PATH} +ulimit -c unlimited +echo /mnt/extsd/coredump-%e-%p-%s-%t > /proc/sys/kernel/core_pattern + +for i in /etc/init.d/S??* ;do + + # Ignore dangling symlinks (if any). + [ ! -f "$i" ] && continue + + case "$i" in + *.sh) + # Source shell script for speed. + ( + trap - INT QUIT TSTP + set start + . $i + ) + ;; + *) + # No sh extension, so fork subprocess. + $i start + ;; + esac +done + +#LOOP_CNT=0 +#SD_DEV= +#while [ 1 ];do +# if [ $LOOP_CNT -eq 3 ];then +# echo wait SD Card ready timeout +# break; +# fi +# if [ -b /dev/mmcblk1p1 ];then +# SD_DEV=/dev/mmcblk1p1 +# break; +# elif [ -b /dev/mmcblk1 ];then +# SD_DEV=/dev/mmcblk1 +# break; +# elif [ -b /dev/mmcblk0p1 ];then +# SD_DEV=/dev/mmcblk0p1 +# break; +# elif [ -b /dev/mmcblk0 ];then +# SD_DEV=/dev/mmcblk0 +# break; +# else +# echo SD Card not ready, wait +# fi +# LOOP_CNT=$(($LOOP_CNT+1)) +# sleep 1 +#done +# +## repair sd card file +#if [ "x$SD_DEV" != "x" ]; then +# echo SD Card is ready +# +# if [ -f /usr/bin/fsck_msdos ]; then +# /usr/bin/fsck_msdos -pfS $SD_DEV +# fi +#fi + +#if [ -z "$(grep '\' /proc/mounts)" ]; then +# ! /bin/mount -t vfat /dev/mmcblk0 /mnt/extsd 2>/dev/null && +# /bin/mount -t vfat /dev/mmcblk0p1 /mnt/extsd +#fi + +#sleep 1 + + + + + + +#/usr/bin/sample_virvi2vo -path /usr/bin/sample_virvi2vo_v851s_sc1721v.conf & + + +run_usb_adb + +#l-sen +echo "show ls value" +cat /sys/class/gpadc/data \ No newline at end of file diff --git a/target/allwinner/v851s-fastboot_sl100_back/busybox-init-base-ota-files/etc/init.d/rc.modules b/target/allwinner/v851s-fastboot_sl100_back/busybox-init-base-ota-files/etc/init.d/rc.modules new file mode 100755 index 000000000..b50a6af9f --- /dev/null +++ b/target/allwinner/v851s-fastboot_sl100_back/busybox-init-base-ota-files/etc/init.d/rc.modules @@ -0,0 +1,12 @@ +#!/bin/sh + +echo "------run rc.modules file-----" +MODULES_DIR="/lib/modules/`uname -r`" + +#disp +echo "------ insmod display modules start --------" +#insmod $MODULES_DIR/fb.ko +insmod $MODULES_DIR/disp.ko + + + diff --git a/target/allwinner/v851s-fastboot_sl100_back/busybox-init-base-ota-files/etc/init.d/rc.preboot b/target/allwinner/v851s-fastboot_sl100_back/busybox-init-base-ota-files/etc/init.d/rc.preboot new file mode 100755 index 000000000..39df103c2 --- /dev/null +++ b/target/allwinner/v851s-fastboot_sl100_back/busybox-init-base-ota-files/etc/init.d/rc.preboot @@ -0,0 +1,4 @@ +#!/bin/sh + +echo "------run rc.preboot file-----" + diff --git a/target/allwinner/v851s-fastboot_sl100_back/busybox-init-base-ota-files/etc/init.d/rcK b/target/allwinner/v851s-fastboot_sl100_back/busybox-init-base-ota-files/etc/init.d/rcK new file mode 100755 index 000000000..e733f9c99 --- /dev/null +++ b/target/allwinner/v851s-fastboot_sl100_back/busybox-init-base-ota-files/etc/init.d/rcK @@ -0,0 +1,28 @@ +#!/bin/sh + + +# Stop all init scripts in /etc/init.d +# executing them in reversed numerical order. +# + +for i in $(ls -r /etc/init.d/S??*) ;do + + # Ignore dangling symlinks (if any). + [ ! -f "$i" ] && continue + + case "$i" in + *.sh) + # Source shell script for speed. + ( + trap - INT QUIT TSTP + set stop + . $i + ) + ;; + *) + # No sh extension, so fork subprocess. + $i stop + ;; + esac +done + diff --git a/target/allwinner/v851s-fastboot_sl100_back/busybox-init-base-ota-files/etc/inittab b/target/allwinner/v851s-fastboot_sl100_back/busybox-init-base-ota-files/etc/inittab new file mode 100755 index 000000000..d4aec1458 --- /dev/null +++ b/target/allwinner/v851s-fastboot_sl100_back/busybox-init-base-ota-files/etc/inittab @@ -0,0 +1,39 @@ +# /etc/inittab +# +# Copyright (C) 2001 Erik Andersen +# +# Note: BusyBox init doesn't support runlevels. The runlevels field is +# completely ignored by BusyBox init. If you want runlevels, use +# sysvinit. +# +# Format for each entry: ::: +# +# id == tty to run on, or empty for /dev/console +# runlevels == ignored +# action == one of sysinit, respawn, askfirst, wait, and once +# process == program to run + +# Startup the system +::sysinit:/etc/preinit +::sysinit:/bin/mount -t proc proc /proc +::sysinit:/bin/mount -t tmpfs tmpfs /run +::sysinit:/bin/mount -o remount,rw / +::sysinit:/bin/mkdir -p /dev/pts +::sysinit:/bin/mkdir -p /dev/shm +::sysinit:/bin/mount -a +::sysinit:/bin/hostname -F /etc/hostname +# now run any rc scripts +#::sysinit:/etc/init.d/rcS +::sysinit:/etc/init.d/rcS boot + +# Put a getty on the serial port +/dev/console::respawn:-/bin/sh +#ttyS0::respawn:/sbin/getty -n -L ttyS0 115200 vt100 -n -l /bin/sh # GENERIC_SERIAL + +# Stuff to do for the 3-finger salute +#::ctrlaltdel:/sbin/reboot + +# Stuff to do before rebooting +::shutdown:/etc/init.d/rcK +::shutdown:/sbin/swapoff -a +::shutdown:/bin/umount -a -r diff --git a/target/allwinner/v851s-fastboot_sl100_back/busybox-init-base-ota-files/etc/profile b/target/allwinner/v851s-fastboot_sl100_back/busybox-init-base-ota-files/etc/profile new file mode 100755 index 000000000..ff075b4c9 --- /dev/null +++ b/target/allwinner/v851s-fastboot_sl100_back/busybox-init-base-ota-files/etc/profile @@ -0,0 +1,45 @@ +#!/bin/sh +echo "------run profile file-----" +[ -f /etc/banner ] && cat /etc/banner +[ -e /tmp/.failsafe ] && cat /etc/banner.failsafe +fgrep -sq '/ overlay ro,' /proc/mounts && { + echo 'Your JFFS2-partition seems full and overlayfs is mounted read-only.' + echo 'Please try to remove files from /overlay/upper/... and reboot!' +} + +export PATH="%PATH%" +export HOME=$(grep -e "^${USER:-root}:" /etc/passwd | cut -d ":" -f 6) +export HOME=${HOME:-/root} +export PS1='\u@\h:\w\$ ' +export LD_LIBRARY_PATH=/usr/lib/eyesee-mpp:${LD_LIBRARY_PATH} +ulimit -c unlimited +mount -t debugfs none /sys/kernel/debug + +[ -x /bin/more ] || alias more=less +[ -x /usr/bin/vim ] && alias vi=vim || alias vim=vi + +[ -z "$KSH_VERSION" -o \! -s /etc/mkshrc ] || . /etc/mkshrc + +[ -x /usr/bin/arp ] || arp() { cat /proc/net/arp; } +[ -x /usr/bin/ldd ] || ldd() { LD_TRACE_LOADED_OBJECTS=1 $*; } + +[ -n "$FAILSAFE" ] || { + for FILE in /etc/profile.d/*.sh; do + [ -e "$FILE" ] && . "$FILE" + done + unset FILE +} +[ -x /bin/ll ] || alias ll='ls -al' + +#export TSLIB_ROOT=/usr/local/tslib +export TSLIB_TSDEVICE=/dev/input/event2 +export TSLIB_TSEVENTTYPE=input +export TSLIB_CONFFILE=/mnt/ts.conf +#export TSLIB_PLUGINDIR=/usr/local/tslib/lib/ts +#export TSLIB_CALIBFILE=/etc/pointercal +export TSLIB_CALIBFILE=/mnt/pointercal + +export TSLIB_PLUGINDIR=/usr/lib/ts +export TSLIB_CONSOLEDEVICE=none +export TSLIB_FBDEVICE=/dev/fb0 + diff --git a/target/allwinner/v851s-fastboot_sl100_back/busybox-init-base-ota-files/etc/udev/rules.d/10-tf.rules b/target/allwinner/v851s-fastboot_sl100_back/busybox-init-base-ota-files/etc/udev/rules.d/10-tf.rules new file mode 100755 index 000000000..2566d3c4d --- /dev/null +++ b/target/allwinner/v851s-fastboot_sl100_back/busybox-init-base-ota-files/etc/udev/rules.d/10-tf.rules @@ -0,0 +1,3 @@ +KERNEL=="mmcblk[0-9]p[0-9]", RUN+="/etc/udev/hotplug-tf.sh %k $env{ACTION}" +ACTION=="add", KERNEL=="mmc0:*", RUN+="/etc/udev/hotplug-tf.sh %k $env{ACTION}" +ACTION=="remove", KERNEL=="mmc0:*", RUN+="/etc/udev/hotplug-tf.sh %k $env{ACTION}" diff --git a/target/allwinner/v851s-fastboot_sl100_back/busybox-init-base-ota-files/etc/udev/rules.d/10-usb.rules b/target/allwinner/v851s-fastboot_sl100_back/busybox-init-base-ota-files/etc/udev/rules.d/10-usb.rules new file mode 100755 index 000000000..c7f57b645 --- /dev/null +++ b/target/allwinner/v851s-fastboot_sl100_back/busybox-init-base-ota-files/etc/udev/rules.d/10-usb.rules @@ -0,0 +1,3 @@ +KERNEL=="sda[0-9]", SUBSYSTEM=="block", SUBSYSTEM=="usb", RUN+="/etc/udev/usb_handle %k $env{ACTION}" +ACTION=="add|change", KERNEL=="sd*", RUN+="/etc/udev/usb_handle %k $env{ACTION}" +ACTION=="remove", KERNEL=="sd*", RUN+="/etc/udev/usb_handle %k $env{ACTION}" diff --git a/target/allwinner/v851s-fastboot_sl100_back/busybox-init-base-ota-files/etc/udev/usb_handle b/target/allwinner/v851s-fastboot_sl100_back/busybox-init-base-ota-files/etc/udev/usb_handle new file mode 100755 index 000000000..aa28b8482 --- /dev/null +++ b/target/allwinner/v851s-fastboot_sl100_back/busybox-init-base-ota-files/etc/udev/usb_handle @@ -0,0 +1,18 @@ +#!/bin/sh + +echo "hotplug usb $(date)"#>>/run/udev.log +echo "[$#] $0, $1, $2"#>>/run/udev.log +if [ "$#" != "2" ];then + echo " !! param err." #>> /run/udev.log + exit 1 +fi + +if [ "$2" == "remove" ];then + echo " <==umount"#>> /run/udev.log + umount /mnt/exUDISK +fi + +if [ "$2" == "add" ];then + echo " <==mount"#>> /run/udev.log + mount -t vfat /dev/sda1 /mnt/exUDISK +fi diff --git a/target/allwinner/v851s-fastboot_sl100_back/busybox-init-base-ota-files/etc/udhcpd.conf b/target/allwinner/v851s-fastboot_sl100_back/busybox-init-base-ota-files/etc/udhcpd.conf new file mode 100755 index 000000000..ec88f2f03 --- /dev/null +++ b/target/allwinner/v851s-fastboot_sl100_back/busybox-init-base-ota-files/etc/udhcpd.conf @@ -0,0 +1,104 @@ +# Sample udhcpd configuration file (/etc/udhcpd.conf) +# Values shown are defaults + +# The start and end of the IP lease block +start 192.168.10.100 +end 192.168.10.254 + +# The interface that udhcpd will use +interface wlan0 + +# The maximum number of leases (includes addresses reserved +# by OFFER's, DECLINE's, and ARP conflicts). Will be corrected +# if it's bigger than IP lease block, but it ok to make it +# smaller than lease block. +#max_leases 254 + +# The time period at which udhcpd will write out a dhcpd.leases +# file. If this is 0, udhcpd will never automatically write a +# lease file. Specified in seconds. +#auto_time 7200 + +# The amount of time that an IP will be reserved (leased to nobody) +# if a DHCP decline message is received (seconds) +#decline_time 3600 + +# The amount of time that an IP will be reserved +# if an ARP conflict occurs (seconds) +#conflict_time 3600 + +# How long an offered address is reserved (seconds) +#offer_time 60 + +# If client asks for lease below this value, it will be rounded up +# to this value (seconds) +#min_lease 60 + +# The location of the leases file +#lease_file /var/lib/misc/udhcpd.leases + +# The location of the pid file +#pidfile /var/run/udhcpd.pid + +# Every time udhcpd writes a leases file, the below script will be called +#notify_file # default: no script +#notify_file dumpleases # useful for debugging + +# The following are bootp specific options +# next server to use in bootstrap +#siaddr 192.168.0.22 # default: 0.0.0.0 (none) +# tftp server name +#sname zorak # default: none +# tftp file to download (e.g. kernel image) +#boot_file /var/nfs_root # default: none + +# Static leases map +#static_lease 00:60:08:11:CE:4E 192.168.0.54 +#static_lease 00:60:08:11:CE:3E 192.168.0.44 + +# The remainder of options are DHCP options and can be specified with the +# keyword 'opt' or 'option'. If an option can take multiple items, such +# as the dns option, they can be listed on the same line, or multiple +# lines. +# Examples: +opt dns 192.168.10.2 192.168.10.10 +option subnet 255.255.255.0 +opt router 192.168.10.2 +opt wins 192.168.10.10 +option dns 129.219.13.81 # appended to above DNS servers for a total of 3 +option domain local +option lease 864000 # default: 10 days +# Arbitrary option in hex form: +option 0x08 01020304 # option 8: "cookie server IP addr: 1.2.3.4" + +# Currently supported options (for more info, see options.c): +#opt lease NUM +#opt subnet IP +#opt broadcast IP +#opt router IP_LIST +#opt ipttl NUM +#opt mtu NUM +#opt hostname STRING # client's hostname +#opt domain STRING # client's domain suffix +#opt search STRING_LIST # search domains +#opt nisdomain STRING +#opt timezone NUM # (localtime - UTC_time) in seconds. signed +#opt tftp STRING # tftp server name +#opt bootfile STRING # tftp file to download (e.g. kernel image) +#opt bootsize NUM # size of that file +#opt rootpath STRING # (NFS) path to mount as root fs +#opt wpad STRING +#opt serverid IP # default: server's IP +#opt message STRING # error message (udhcpd sends it on success too) +# Options specifying server(s) +#opt dns IP_LIST +#opt wins IP_LIST +#opt nissrv IP_LIST +#opt ntpsrv IP_LIST +#opt lprsrv IP_LIST +#opt swapsrv IP +# Obsolete options, no longer supported +#opt logsrv IP_LIST # 704/UDP log server (not syslog!) +#opt namesrv IP_LIST # IEN 116 name server, obsolete (August 1979!!!) +#opt cookiesrv IP_LIST # RFC 865 "quote of the day" server, rarely (never?) used +#opt timesrv IP_LIST # RFC 868 time server, rarely (never?) used diff --git a/target/allwinner/v851s-fastboot_sl100_back/busybox-init-base-ota-files/etc/wpa_supplicant.conf b/target/allwinner/v851s-fastboot_sl100_back/busybox-init-base-ota-files/etc/wpa_supplicant.conf new file mode 100755 index 000000000..3f7bd9364 --- /dev/null +++ b/target/allwinner/v851s-fastboot_sl100_back/busybox-init-base-ota-files/etc/wpa_supplicant.conf @@ -0,0 +1,7 @@ +ctrl_interface=/var/log/wpa_supplicant +update_config=1 + +network={ + ssid="AWTest" + psk="1qaz@WSX" +} \ No newline at end of file diff --git a/target/allwinner/v851s-fastboot_sl100_back/busybox-init-base-ota-files/files/pseudo_init b/target/allwinner/v851s-fastboot_sl100_back/busybox-init-base-ota-files/files/pseudo_init new file mode 100755 index 000000000..71176f5e8 --- /dev/null +++ b/target/allwinner/v851s-fastboot_sl100_back/busybox-init-base-ota-files/files/pseudo_init @@ -0,0 +1,525 @@ +#!/bin/sh + +MOUNT_ETC=0 +MOUNT_OVERLAY=1 + +################################## functions ################################## + +#mkfs_jffs2() +mkfs_jffs2() { + ! [ -x /usr/sbin/mkfs.jffs2 ] \ + && ! [ -x /sbin/mkfs.jffs2 ] \ + && echo "Not Found /usr/sbin/mkfs.jffs2 or /sbin/mkfs.jffs2" \ + && return 1 + + # format to jffs2 + local erase_block=$(/bin/cat /proc/mtd \ + | /bin/grep "$(basename $1)" \ + | /usr/bin/awk '{print $3}') + /bin/mkdir -p /tmp/jffs2.dir/tmp + mkfs.jffs2 -p -e 0x${erase_block} -d /tmp/jffs2.dir \ + -o /tmp/jffs2.img >/dev/null || return 1 + /bin/dd if=/tmp/jffs2.img of=$1 || return 1 + /bin/rm -rf /tmp/jffs2.img /tmp/jffs2.dir + return 0 +} + +mkfs_ubifs() { + mkfs.ubifs -x lzo -y "$1" +} + +mount_etc() { + local etc_update=0 + # if enable ota, do update + [ -f /etc/init.d/rc.ota-upgrade ] \ + && source /etc/init.d/ota-upgrade + + local root_dev="$(readlink /dev/by-name/rootfs)" + + # if mount failed, format. + case "${root_dev}" in + /dev/mtdblock*) + /bin/mount -t jffs2 /dev/by-name/rootfs_data /etc \ + && [ -e /etc/etc_complete -a ! -e /etc/etc_need_update ] \ + && return + # /etc/etc_complete and /etc/etc_need_update both exist, that means we just need to update + [ -e /etc/etc_complete -a -e /etc/etc_need_update ] && /bin/echo "do etc update" && etc_update=1 + /bin/umount /etc + + [ x$etc_update = x"1" ] || { + # not update, format first + /bin/echo "Mount Failed: formating /dev/by-name/rootfs_data to jffs2 ..." + mkfs_jffs2 "/dev/by-name/rootfs_data" || return 1 + } + mount -t jffs2 /dev/by-name/rootfs_data /mnt + ;; + /dev/ubi*) + /bin/mount -t ubifs /dev/by-name/rootfs_data /etc \ + && [ -e /etc/etc_complete -a ! -e /etc/etc_need_update ] \ + && return + # /etc/etc_complete and /etc/etc_need_update both exist, that means we just need to update + [ -e /etc/etc_complete -a -e /etc/etc_need_update ] && /bin/echo "do etc update" && etc_update=1 + + /bin/umount /etc + [ x$etc_update = x"1" ] || { + # not update, format first + /bin/echo "Mount Failed: formating /dev/by-name/rootfs_data to ubifs ..." + mkfs_ubifs "/dev/by-name/rootfs_data" || return 1 + } + /bin/mount -t ubifs /dev/by-name/rootfs_data /mnt + ;; + *) + /usr/sbin/fsck.ext4 -y /dev/by-name/rootfs_data &>/dev/null + /bin/mount -t ext4 -o sync,data=journal /dev/by-name/rootfs_data /etc \ + && [ -e /etc/etc_complete -a ! -e /etc/etc_need_update ] \ + && return + # /etc/etc_complete and /etc/etc_need_update both exist, that means we just need to update + [ -e /etc/etc_complete -a -e /etc/etc_need_update ] && /bin/echo "do etc update" && etc_update=1 + + /bin/umount /etc + [ x$etc_update = x"1" ] || { + # not update, format first + /bin/echo "Mount Failed: formating /dev/by-name/rootfs_data to ext4 ..." + mkfs.ext4 -m 0 /dev/by-name/rootfs_data >/dev/null || return 1 + } + /bin/mount -t ext4 -o sync,data=journal /dev/by-name/rootfs_data /mnt + ;; + esac + mkdir -p /tmp/etc + /bin/cp -af /etc/* /tmp/etc/ + # keep the wifi config + [ -e /mnt/wifi/wpa_supplicant.conf ] && { + /bin/echo "keep the wifi config" + /bin/cp /mnt/wifi/wpa_supplicant.conf /tmp/etc/wifi/ + } + /bin/cp -af /tmp/etc/* /mnt/ + rm -rf /tmp/etc + sync + [ ! -e /mnt/etc_complete ] && touch /mnt/etc_complete + [ -e /mnt/etc_need_update ] && /bin/echo "etc update done" && rm -f /mnt/etc_need_update + sync + /bin/mount -o move /mnt /etc + +} + +mount_usr(){ + + local extend_name=$(fw_printenv -n extend_partition) + if [ $extend_name == extendB ]; then + extend_name="extend_backup" + else + extend_name="extend" + fi + local extend_partition="/dev/by-name/${extend_name}" + + [ -L ${extend_partition} ] || + if [ ${extend_partition} == "/dev/by-name/extend" ]; then + [ -L /dev/by-name/extend_backup ] || return + else + [ -L /dev/by-name/extend ] || return + fi + + /bin/mkdir -p /tmp/usr + /bin/mount ${extend_partition} /tmp/usr >/dev/null || { + if [ ${extend_partition} == "/dev/by-name/extend" ]; then + echo "****** 111 mount /dev/by-name/extend_backup /usr *******" + /bin/mount /dev/by-name/extend_backup /tmp/usr > /dev/null + return + else + echo "********** 222 mount /dev/by-name/extend /usr ********" + /bin/mount /dev/by-name/extend /tmp/usr > /dev/null + fi + } + + echo "*******333 mount ${extend_partition} /usr ******" + ! [ -d /tmp/usr/bin ] \ + && umount /tmp/usr \ + && rm -rf /tmp/usr \ + && return + + /bin/mount -o move /tmp/usr /usr \ + && rm -rf /tmp/usr + +} + +mount_sec_storage(){ + [ -e /dev/by-name/sec_storage ] || return + + local root_dev="$(readlink /dev/by-name/rootfs)" + + # mount sec_storage + if [ -h /dev/by-name/sec_storage -a -d /data/tee ]; then + case "${root_dev}" in + /dev/mtdblock*) + /bin/busybox mount -t jffs2 /dev/by-name/sec_storage /data/tee 2>/dev/null + if [ "$?" -ne "0" ]; then + mkfs_jffs2 "/dev/by-name/sec_storage" + /bin/busybox mount -t jffs2 /dev/by-name/sec_storage /data/tee 2>/dev/null + fi + ;; + /dev/ubi*) + /bin/busybox mount -t ubifs /dev/by-name/sec_storage /data/tee 2>/dev/null + if [ "$?" -ne "0" ]; then + mkfs_ubifs "/dev/by-name/sec_storage" + /bin/busybox mount -t ubifs /dev/by-name/sec_storage /data/tee 2>/dev/null + fi + ;; + *) + /usr/sbin/fsck.ext4 -y /dev/by-name/sec_storage &>/dev/null + /bin/busybox mount -t ext4 /dev/by-name/sec_storage /data/tee 2>/dev/null + if [ "$?" -ne "0" ]; then + mkfs.ext4 /dev/by-name/sec_storage >/dev/null + /bin/busybox mount -t ext4 /dev/by-name/sec_storage /data/tee 2>/dev/null + fi + ;; + esac + fi +} + +mount_single_app(){ + /usr/sbin/fsck.ext4 -y /dev/by-name/app &>/dev/null + /bin/mount /dev/by-name/app /mnt/app +} + +mount_dual_app(){ + local appAB=$(fw_printenv -n appAB) + local first_app=app + local second_app=app_sub + local applimit=$(fw_printenv -n applimit) + [ x"$applimit" != x"" -a "$applimit" -ne 0 ] && { + local appcount=$(fw_printenv -n appcount) + let appcount+=1 + [ "$appcount" -gt "$applimit" ] && { + echo "Warning: applimit ($applimit) exceeded. Switch app partition." + if [ x"$appAB" = x"A" ]; then + appAB=B + elif [ x"$appAB" = x"B" ]; then + appAB=A + else + echo "check appAB error: appAB=$appAB" + appAB=A + fi + fw_setenv appAB $appAB + echo "Switch appAB to $appAB" + appcount=1 + } + fw_setenv appcount $appcount + } + echo "appAB=$appAB" + if [ x"$appAB" = x"A" ]; then + first_app=app + second_app=app_sub + elif [ x"$appAB" = x"B" ]; then + first_app=app_sub + second_app=app + else + echo "check appAB error: appAB=$appAB" + fi + + /usr/sbin/fsck.ext4 -y /dev/by-name/$first_app &> /dev/null + /bin/mount -t ext4 /dev/by-name/$first_app /mnt/app \ + && echo "mount $first_app success" \ + && return + + echo "mount $first_app fail, now try mount $second_app" + + #mount first_app fail, try second_app + /usr/sbin/fsck.ext4 -y /dev/by-name/$second_app &> /dev/null + /bin/mount -t ext4 /dev/by-name/$second_app /mnt/app \ + && echo "mount $second_app success" \ + && return + + echo "mount app fail" +} + +mount_app() { + [ -L /dev/by-name/app ] || return + + if [ -L /dev/by-name/app_sub ]; then + mount_dual_app + else + mount_single_app + fi +} + +mount_overlay() { + + local root_dev="$(readlink /dev/by-name/rootfs)" + local mount_partition_dir + case "$1" in + UDISK) + mount_partition_dir="/mnt/UDISK" + ;; + rootfs_data) + mount_partition_dir="/overlay" + ;; + *) + echo "error: please choose rootfs_data or UDISK" + return 1 + esac + + case "${root_dev}" in + /dev/mtdblock*) + /bin/mount -t jffs2 /dev/by-name/$1 ${mount_partition_dir} || { + /bin/echo "Mount Failed: formating /dev/by-name/$1 to jffs2 ..." + mkfs_jffs2 "/dev/by-name/$1" || return 1 + mount -t jffs2 /dev/by-name/$1 ${mount_partition_dir} + } + ;; + /dev/ubi*) + /bin/mount -t ubifs /dev/by-name/$1 ${mount_partition_dir} || { + /bin/echo "Mount Failed: formating /dev/by-name/$1 to ubifs ..." + mkfs_ubifs "/dev/by-name/$1" || return 1 + /bin/mount -t ubifs /dev/by-name/$1 ${mount_partition_dir} + } + ;; + *) + /usr/sbin/fsck.ext4 -y /dev/by-name/$1 &>/dev/null + /bin/mount -t ext4 -o sync,data=journal /dev/by-name/$1 ${mount_partition_dir} || { + /bin/echo "Mount Failed: formating /dev/by-name/$1 to ext4 ..." + mkfs.ext4 -m 0 /dev/by-name/$1 >/dev/null || return 1 + /bin/mount -t ext4 -o sync,data=journal /dev/by-name/$1 ${mount_partition_dir} + } + ;; + esac + + fgrep -sq overlay /proc/filesystems || { + /bin/echo "skip mount overlayfs as kernel not support" + return + } + # only for recovery,copy boot_partition(boot) wifi information to boot_partition(recovery) + local system=$(fw_printenv -n boot_partition) + + if [ x"$system" = x"recovery" ]; then + [ -e /overlay/upper/etc/wifi/wpa_supplicant ] && { + cp -fpr /overlay/upper/etc/wifi/* /etc/wifi/ + } + fi + + #When /dev/root is readonly, such as squashfs or ext4 ro, we try to mount overlayfs.Otherwise, don't mount overlayfs + fgrep -sq '/dev/root / squashfs ro' /proc/mounts || fgrep -sq '/dev/root / ext4 ro' /proc/mounts || { + /bin/echo "skip mount overlayfs as now rootfs not squashfs or readonly ext4" + return + } + # First, try to mount without a workdir, for overlayfs v22 and before. + # If it fails, it means that we are probably using a v23 and + # later versions that require a workdir + # mount -n -t overlay overlayfs:/overlay -o rw,noatime,lowerdir=/,upperdir=/overlay /mnt || { + # mkdir -p /overlay/upper /overlay/workdir + # mount -n -t overlay overlayfs:/overlay -o rw,noatime,lowerdir=/,upperdir=/overlay/upper,workdir=/overlay/workdir /mnt + # } + + local overlay_need_workdir=1 + # overlayfs in linux-3.4 and linux-3.10 is v22 and before, should mount without a workdir + fgrep -sq 'Linux version 3' /proc/version && overlay_need_workdir=0 + + local mount_overlay_dir="/overlay" + [ x"${mount_partition_dir}" = x"/mnt/UDISK" ] && { + mkdir -p /mnt/UDISK/overlay + mount_overlay_dir="/mnt/UDISK/overlay" + } + + if [ x"$overlay_need_workdir" = x"0" ]; then + mount -n -t overlayfs overlayfs:${mount_overlay_dir} -o rw,noatime,lowerdir=/,upperdir=${mount_overlay_dir} /mnt + else + mkdir -p ${mount_overlay_dir}/upper ${mount_overlay_dir}/workdir + mount -n -t overlay overlayfs:${mount_overlay_dir} -o rw,noatime,lowerdir=/,upperdir=${mount_overlay_dir}/upper,workdir=${mount_overlay_dir}/workdir /mnt + fi + + mount -n /proc -o noatime,move /mnt/proc + pivot_root /mnt /mnt/rom + mount -n /rom/dev -o noatime,move /dev + mount -n /rom/tmp -o noatime,move /tmp + mount -n /rom/sys -o noatime,move /sys + mount -n /rom$mount_partition_dir -o noatime,move $mount_partition_dir + fgrep -sq '/rom/usr' /proc/mounts && { + mount -n /rom/usr -o noatime,move /usr + if [ x"$overlay_need_workdir" = x"0" ]; then + mkdir -p $mount_overlay_dir/usr + mount -n -t overlayfs overlayfs:${mount_overlay_dir} -o rw,noatime,lowerdir=/usr,upperdir=${mount_overlay_dir}/usr /usr + else + mkdir -p ${mount_overlay_dir}/upper/usr ${mount_overlay_dir}/workdir/usr + mount -n -t overlay overlayfs:${mount_overlay_dir} -o rw,noatime,lowerdir=/usr,upperdir=${mount_overlay_dir}/upper/usr,workdir=${mount_overlay_dir}/workdir/usr /usr + fi + } + + [ x"$1" = x"UDISK" ] && rm -rf /overlay +} + +set_parts_by_name() { + # create by-name + local parts part + /bin/mkdir -p /dev/by-name + parts=$partitions + for part in $(/bin/echo ${parts} | /bin/sed 's/:/ /g') + do + [ ! -e /dev/${part#*@} ] && [ -x /sbin/mdev ] && mdev -s #for initramfs + /bin/ln -fs "/dev/${part#*@}" "/dev/by-name/${part%@*}" + done +} + +etc_part=/dev/nande + +#hardcode rootfs_data partition as nande +mount_etc_hardcode() { + + # fix fs + /usr/sbin/fsck.ext4 -y $etc_part &>/dev/null + + /bin/mount -t ext4 $etc_part /etc \ + && [ -e /etc/etc_complete ] \ + && return + + /bin/echo "mount Failed or etc_complete not exist" + /bin/echo "now format $etc_part to ext4 ..." + /bin/umount /etc + mkfs.ext4 -m 0 $etc_part >/dev/null || return 1 + /bin/mount -t ext4 -o sync,data=journal $etc_part /mnt + + /bin/cp -af /etc/* /mnt/ + sync + /bin/mount -o move /mnt /etc + + #prepare by-name in /etc for next boot + set_parts_by_name + cp -fpr /dev/by-name /etc + sync + #now rootfs_data is ready, next boot can mount it as etc + touch /etc/etc_complete + sync # this sync not necessary, but sync after modify something is good +} + +set_parts_by_name_hardcode() { + + #UDISK is the last partition, when UDISK is there, the /etc/by-name is ready + [ -e /etc/by-name/UDISK ] && { + #set_part_by_name may cost more than 100ms, now just copy it from /etc + cp -fpr /etc/by-name /dev/ + return + } + + #should not go here. now just show warning and do set_parts_by_name + echo "warning: no /etc/by-name/UDISK, please check it" + set_parts_by_name +} + +check_update_system_state() { + swu_mode=`fw_printenv | grep swu_mode | awk -F '=' '{print $2}'` + echo "swu_mode:$swu_mode" + if [ $swu_mode == ]; then + echo "Not thing todo" + else + # update_flash_flag && boot_partition_flag + # bit3~7: reserve + # bit2 : extend(/usr) 1:extend 0:extend_back + # bit1 : rootfs 1:rootfs 0:rootfs_backup + # bit0 : kernel 1:kernel 0:kernel_back + + dd if=/dev/mtdblock0 of=/tmp/boot0_flag skip=61439 ibs=1 bs=1 count=1 1>/dev/null 2>&1 + boot_flash_flag=0x`xxd /tmp/boot0_flag | awk -F ' ' '{print $2}'` + boot_partition_flag=0x`fw_printenv | grep update_partition_flag | awk 'BEGIN{FS="="} {print $2}'` + echo "boot_flash_flag:$boot_flash_flag, boot_partition_flag:$boot_partition_flag" + if [ $boot_flash_flag == $boot_partition_flag ]; then + + boot_flash_flag_tmp=$((boot_flash_flag&0x7)) + echo "boot_flash_flag_tmp:$boot_flash_flag_tmp" + # The system has been updated, but env has not been updated + case $boot_flash_flag_tmp in + 0) + fw_setenv boot_partition bootB + fw_setenv root_partition rootfsB + fw_setenv extend_parttion extendB + fw_setenv swu_mode + ;; + + 1) + fw_setenv boot_partition bootA + fw_setenv root_partition rootfsB + fw_setenv extend_parttion extendB + fw_setenv swu_mode + ;; + 2) + fw_setenv boot_partition bootB + fw_setenv root_partition rootfsA + fw_setenv extend_parttion extendB + fw_setenv swu_mode + ;; + 3) + + fw_setenv boot_partition bootB + fw_setenv root_partition rootfsB + fw_setenv extend_parttion extendA + fw_setenv swu_mode + ;; + 4) + + fw_setenv boot_partition bootA + fw_setenv root_partition rootfsA + fw_setenv extend_parttion extendB + fw_setenv swu_mode + ;; + 5) + fw_setenv boot_partition bootA + fw_setenv root_partition rootfsB + fw_setenv extend_parttion extendA + fw_setenv swu_mode + ;; + 6) + fw_setenv boot_partition bootB + fw_setenv root_partition rootfsA + fw_setenv extend_parttion extendA + fw_setenv swu_mode + ;; + 7) + fw_setenv boot_partition bootA + fw_setenv root_partition rootfsA + fw_setenv extend_parttion extendA + fw_setenv swu_mode + ;; + *) + echo "not match boot_flash_flag_tmp" + ;; + + esac + + else + echo "update system fail, not clean swu_mode" + fi + fi +} + + +#---------------------------------------------------------------- + +/bin/mount -t proc /proc /proc +/bin/mount -t tmpfs tmpfs /tmp +/bin/mount -t sysfs sys /sys +# /bin/mount -t devtmpfs none /dev +#demo_video_in -n 40 -s0 1920x1088 -f0 0 -pf 12 -trd 1 -pf2 0 +fgrep -sq pstore /proc/filesystems && { + /bin/mount -t pstore pstore /sys/fs/pstore +} + +#fw_setenv, fw_printenv need /var/lock +mkdir -p /var/lock + +#common but slow +set_parts_by_name + +mount_sec_storage + +# OTA's configuration is not turned on by default exit returns, +# which does not affect the startup speed +check_update_system_state + +mount_usr +[ x"$MOUNT_ETC" = x"1" ] && mount_etc +[ x"$MOUNT_OVERLAY" = x"1" ] && mount_overlay rootfs_data #choose rootfs_data or UDISK +mount_app + +#hardcode but fast +#mount_etc_hardcode +#set_parts_by_name_hardcode +#mount_usr + +exec /sbin/init diff --git a/target/allwinner/v851s-fastboot_sl100_back/busybox-init-base-ota-files/mnt/ts.conf b/target/allwinner/v851s-fastboot_sl100_back/busybox-init-base-ota-files/mnt/ts.conf new file mode 100755 index 000000000..52fdbfb15 --- /dev/null +++ b/target/allwinner/v851s-fastboot_sl100_back/busybox-init-base-ota-files/mnt/ts.conf @@ -0,0 +1,29 @@ +# Uncomment if you wish to use the one-wire linux input layer S70/A70... +# module_raw one_wire_ts_input + +# Uncomment if you wish to use the linux input layer event interface +module_raw input + +# Uncomment if you're using a Sharp Zaurus SL-5500/SL-5000d +# module_raw collie + +# Uncomment if you're using a Sharp Zaurus SL-C700/C750/C760/C860 +# module_raw corgi + +# Uncomment if you're using a device with a UCB1200/1300/1400 TS interface +# module_raw ucb1x00 + +# Uncomment if you're using an HP iPaq h3600 or similar +# module_raw h3600 + +# Uncomment if you're using a Hitachi Webpad +# module_raw mk712 + +# Uncomment if you're using an IBM Arctic II +# module_raw arctic2 + +module pthres pmin=1 +module variance delta=30 +module dejitter delta=100 +module linear + diff --git a/target/allwinner/v851s-fastboot_sl100_back/busybox-init-base-ota-files/usr/bin/ftp b/target/allwinner/v851s-fastboot_sl100_back/busybox-init-base-ota-files/usr/bin/ftp new file mode 100755 index 0000000000000000000000000000000000000000..6a40031daa96ac802abe201e8d7224483f4c9ac4 GIT binary patch literal 14392 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 literal 0 HcmV?d00001 diff --git a/target/allwinner/v851s-fastboot_sl100_back/busybox-init-base-ota-files/usr/bin/hotplug.sh b/target/allwinner/v851s-fastboot_sl100_back/busybox-init-base-ota-files/usr/bin/hotplug.sh new file mode 100755 index 000000000..ec5761c60 --- /dev/null +++ b/target/allwinner/v851s-fastboot_sl100_back/busybox-init-base-ota-files/usr/bin/hotplug.sh @@ -0,0 +1,40 @@ +#!/bin/sh +# remove +if [ "${ACTION}" == "remove" ]; then + MOUNTPOINT="$(grep -w "^/dev/${MDEV}" /proc/mounts | awk '{print $2}')" + [ -n "${MOUNTPOINT}" ] \ + && /bin/umount -l ${MOUNTPOINT} 2>/dev/null 1>/dev/null + exit 0 +fi + +# add +if [ "${ACTION}" == "add" ]; then + case ${MDEV} in + mmcblk[0-9]) + [ -d "/sys/block/${MDEV}/${MDEV}p1" ] && exit 0 + MOUNTPOINT=/mnt/SDCARD + ;; + mmcblk[0-9]p[0-9]) + MOUNTPOINT=/mnt/SDCARD + ;; + sd[a-z]) + [ -d "/sys/block/${MDEV}/${MDEV}1" ] && exit 0 + MOUNTPOINT=/mnt/exUDISK + ;; + sd[a-z][0-9]) + MOUNTPOINT=/mnt/exUDISK + ;; + *) + exit 0 + ;; + esac + for fstype in vfat ext4 + do + [ "${fstype}" = "ext4" -a -x "/usr/sbin/e2fsck" ] \ + && e2fsck -p /dev/${MDEV} >/dev/null + /bin/mount -t ${fstype} -o utf8 /dev/${MDEV} ${MOUNTPOINT} && exit 0 + done + [ ! -b "/dev/${MDEV}" -a -f "/sys/block/${MDEV%p*}/${MDEV}/uevent" ] \ + && echo add > /sys/block/${MDEV%p*}/${MDEV}/uevent +fi +exit 0 diff --git a/target/allwinner/v851s-fastboot_sl100_back/busybox-init-base-ota-files/usr/bin/pcba_test.sh b/target/allwinner/v851s-fastboot_sl100_back/busybox-init-base-ota-files/usr/bin/pcba_test.sh new file mode 100755 index 000000000..162dca790 --- /dev/null +++ b/target/allwinner/v851s-fastboot_sl100_back/busybox-init-base-ota-files/usr/bin/pcba_test.sh @@ -0,0 +1,40 @@ +#!/bin/sh +# +# pcba test +# + +echo "start PCBA Test\n" + +echo "============ pcba test ================" + +export SCREEN_INFO='1280x800-32bpp' +export TSLIB_TSEVENTTYPE=H3600 +export TSLIB_CONSOLEDEVICE=none +export TSLIB_FBDEVICE=/dev/fb0 +export TSLIB_TSDEVICE=/dev/input/event2 +export TSLIB_CALIBFILE=/etc/pointercal +export TSLIB_CONFFILE=/etc/ts.conf +export TSLIB_PLUGINDIR=/usr/lib/ts + + +/usr/bin/sample_ao -path /usr/bin/sample_ao_startup.conf + + + + + +#/usr/bin/sample_ai -path /usr/bin/sample_ai_v851s_sc1721v.conf + +#/usr/bin/sample_ao -path /usr/bin/sample_ao_v851s_sc1721v.conf + + +ifconfig wlan0 up +ifconfig wlan0 192.168.51.1 +udhcpd /etc/udhcpd.conf & + +wifi -o ap + +/usr/bin/sample_rtsp -path /usr/bin/sample_rtsp_v851s_sc1721v.conf & + +ts_test & + diff --git a/target/allwinner/v851s-fastboot_sl100_back/busybox-init-base-ota-files/usr/bin/ramparser b/target/allwinner/v851s-fastboot_sl100_back/busybox-init-base-ota-files/usr/bin/ramparser new file mode 100755 index 0000000000000000000000000000000000000000..94669586126d546ee47d6fb475df21d28323cef6 GIT binary patch literal 54892 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 aiv(^qk>6bWXbWt7iSIbhr!0Lj`2KGxRV#@A literal 0 HcmV?d00001 diff --git a/target/allwinner/v851s-fastboot_sl100_back/busybox-init-base-ota-files/usr/bin/run_usb_adb b/target/allwinner/v851s-fastboot_sl100_back/busybox-init-base-ota-files/usr/bin/run_usb_adb new file mode 100755 index 000000000..165eb3884 --- /dev/null +++ b/target/allwinner/v851s-fastboot_sl100_back/busybox-init-base-ota-files/usr/bin/run_usb_adb @@ -0,0 +1,50 @@ +#!/bin/sh + +MODULES_DIR="/lib/modules/`uname -r`" + +insmod $MODULES_DIR/configfs.ko +#insmod $MODULES_DIR/usb-common.ko +#insmod $MODULES_DIR/usbcore.ko +insmod $MODULES_DIR/sunxi_hci.ko +insmod $MODULES_DIR/ehci-hcd.ko +insmod $MODULES_DIR/ohci-hcd.ko +insmod $MODULES_DIR/udc-core.ko +insmod $MODULES_DIR/libcomposite.ko +insmod $MODULES_DIR/sunxi_usb_udc.ko +insmod $MODULES_DIR/usb_f_fs.ko +insmod $MODULES_DIR/usb_f_mass_storage.ko +insmod $MODULES_DIR/usb_f_hid.ko +insmod $MODULES_DIR/sunxi_usbc.ko + +if [ -f /lib/modules/4.9.191/videobuf2-vmalloc.ko ];then +insmod $MODULES_DIR/videobuf2-vmalloc.ko +fi +if [ -f /lib/modules/4.9.191/usb_f_uvc.ko ];then +insmod $MODULES_DIR/usb_f_uvc.ko +fi +if [ -f /lib/modules/4.9.191/u_audio.ko ];then +insmod $MODULES_DIR/u_audio.ko +fi +if [ -f /lib/modules/4.9.191/usb_f_uac1.ko ];then +insmod $MODULES_DIR/usb_f_uac1.ko +fi +if [ -f /lib/modules/4.9.191/uvcvideo.ko ];then +insmod $MODULES_DIR/uvcvideo.ko +fi +if [ -f /lib/modules/4.9.191/snd-hwdep.ko ];then +insmod $MODULES_DIR/snd-hwdep.ko +fi +if [ -f /lib/modules/4.9.191/snd-rawmidi.ko ];then +insmod $MODULES_DIR/snd-rawmidi.ko +fi +if [ -f /lib/modules/4.9.191/snd-usbmidi-lib.ko ];then +insmod $MODULES_DIR/snd-usbmidi-lib.ko +fi +if [ -f /lib/modules/4.9.191/snd-usb-audio.ko ];then +insmod $MODULES_DIR/snd-usb-audio.ko +fi + +cat /sys/devices/platform/soc/usbc0/usb_device +setusbconfig adb +adbd > /dev/null & + diff --git a/target/allwinner/v851s-fastboot_sl100_back/busybox-init-base-ota-files/usr/bin/run_usb_disk b/target/allwinner/v851s-fastboot_sl100_back/busybox-init-base-ota-files/usr/bin/run_usb_disk new file mode 100755 index 000000000..8c9262b5c --- /dev/null +++ b/target/allwinner/v851s-fastboot_sl100_back/busybox-init-base-ota-files/usr/bin/run_usb_disk @@ -0,0 +1,37 @@ +#!/bin/sh + +MODULES_DIR="/lib/modules/`uname -r`" + +insmod $MODULES_DIR/configfs.ko +#insmod $MODULES_DIR/usb-common.ko +#insmod $MODULES_DIR/usbcore.ko +insmod $MODULES_DIR/sunxi_hci.ko +insmod $MODULES_DIR/ehci-hcd.ko +insmod $MODULES_DIR/ohci-hcd.ko +insmod $MODULES_DIR/udc-core.ko +insmod $MODULES_DIR/libcomposite.ko +insmod $MODULES_DIR/sunxi_usb_udc.ko +insmod $MODULES_DIR/usb_f_fs.ko +insmod $MODULES_DIR/usb_f_mass_storage.ko +insmod $MODULES_DIR/usb_f_hid.ko +insmod $MODULES_DIR/sunxi_usbc.ko + +insmod $MODULES_DIR/scsi_mod.ko +insmod $MODULES_DIR/sd_mod.ko +insmod $MODULES_DIR/usb-storage.ko +insmod $MODULES_DIR/uas.ko +insmod $MODULES_DIR/ums-realtek.ko +insmod $MODULES_DIR/ums-datafab.ko +insmod $MODULES_DIR/ums-freecom.ko +insmod $MODULES_DIR/ums-isd200.ko +insmod $MODULES_DIR/ums-usbat.ko +insmod $MODULES_DIR/ums-sddr09.ko +insmod $MODULES_DIR/ums-sddr55.ko +insmod $MODULES_DIR/ums-jumpshot.ko +insmod $MODULES_DIR/ums-alauda.ko +insmod $MODULES_DIR/ums-karma.ko +insmod $MODULES_DIR/ums-cypress.ko +insmod $MODULES_DIR/ums-eneub6250.ko + +cat /sys/devices/platform/soc/usbc0/usb_host + diff --git a/target/allwinner/v851s-fastboot_sl100_back/busybox-init-base-ota-files/usr/bin/sample_ai_v851s_sc1721v.conf b/target/allwinner/v851s-fastboot_sl100_back/busybox-init-base-ota-files/usr/bin/sample_ai_v851s_sc1721v.conf new file mode 100755 index 000000000..58dfdb02d --- /dev/null +++ b/target/allwinner/v851s-fastboot_sl100_back/busybox-init-base-ota-files/usr/bin/sample_ai_v851s_sc1721v.conf @@ -0,0 +1,15 @@ +########### paramter (ref to tulip_cedarx.conf)############ +[parameter] +pcm_file_path = "/mnt/SDCARD/sample_ai_pcm.wav" +pcm_sample_rate = 44100 +mic_num = 1 #1 or 2 +pcm_channel_cnt = 2 +pcm_bit_width = 16 +pcm_frame_size = 1024 +pcm_cap_duration = 30 +pcm_ai_gain = 100 +ans_en = 0 +ans_mode = 3 +agc_en = 0 +agc_target_db = 0 +agc_max_gain_db = 30 diff --git a/target/allwinner/v851s-fastboot_sl100_back/busybox-init-base-ota-files/usr/bin/sample_ao_startup.conf b/target/allwinner/v851s-fastboot_sl100_back/busybox-init-base-ota-files/usr/bin/sample_ao_startup.conf new file mode 100755 index 000000000..c39e288b9 --- /dev/null +++ b/target/allwinner/v851s-fastboot_sl100_back/busybox-init-base-ota-files/usr/bin/sample_ao_startup.conf @@ -0,0 +1,10 @@ +########### paramter (ref to tulip_cedarx.conf)############ +[parameter] +pcm_file_path = "/usr/share/startup.wav" +pcm_sample_rate = 44100 +pcm_channel_cnt = 2 +pcm_bit_width = 16 +pcm_frame_size = 1024 +ao_volume = 60 +log_level = 0 +ao_softvolume = 0 #[0,100] diff --git a/target/allwinner/v851s-fastboot_sl100_back/busybox-init-base-ota-files/usr/bin/sample_ao_v851s_sc1721v.conf b/target/allwinner/v851s-fastboot_sl100_back/busybox-init-base-ota-files/usr/bin/sample_ao_v851s_sc1721v.conf new file mode 100755 index 000000000..98fa35cb0 --- /dev/null +++ b/target/allwinner/v851s-fastboot_sl100_back/busybox-init-base-ota-files/usr/bin/sample_ao_v851s_sc1721v.conf @@ -0,0 +1,10 @@ +########### paramter (ref to tulip_cedarx.conf)############ +[parameter] +pcm_file_path = "/mnt/SDCARD/sample_ai_pcm.wav" +pcm_sample_rate = 44100 +pcm_channel_cnt = 2 +pcm_bit_width = 16 +pcm_frame_size = 1024 +ao_volume = 100 +log_level = 0 +ao_softvolume = 0 #[0,100] diff --git a/target/allwinner/v851s-fastboot_sl100_back/busybox-init-base-ota-files/usr/bin/sample_rtsp_v851s_sc1721v.conf b/target/allwinner/v851s-fastboot_sl100_back/busybox-init-base-ota-files/usr/bin/sample_rtsp_v851s_sc1721v.conf new file mode 100755 index 000000000..10daf8cb6 --- /dev/null +++ b/target/allwinner/v851s-fastboot_sl100_back/busybox-init-base-ota-files/usr/bin/sample_rtsp_v851s_sc1721v.conf @@ -0,0 +1,73 @@ +########### paramter (ref to tulip_cedarx.conf)############ +[parameter] + +main_isp = 0 +main_vipp = 4 +main_src_width = 1280 +main_src_height = 720 +main_pixel_format = "aw_lbc_2_0x" #nv21,nv12,yu12,yv12;aw_lbc_2_5x,aw_lbc_2_0x,aw_lbc_1_5x,aw_lbc_1_0x +main_wdr_enable = 0 +main_vi_buf_num = 3 +main_src_frame_rate = 20 #fps +main_viChn = 0 #-1:disale main stream +main_venc_chn = 0 #-1:disale main stream +main_encode_type = "H.265" +main_encode_width = 1280 #1280x720->720p, 1920x1080->1080p, 2304x1296->3M, 2560×1440->2k, 3840x2160->4k, 7680x4320->8k +main_encode_height = 720 +main_encode_frame_rate = 20 #fps +main_encode_bitrate = 1572864 #5M:5242880, 2M:2097152, 1.5M:1572864, 1M:1048576 +main_file_path = #"/mnt/extsd/mainStream.raw" #if no path is specified, it will not be saved. +main_online_en = 0 +main_online_share_buf_num = 2 +main_encpp_enable = 1 + +sub_isp = 0 +sub_vipp = 4 +sub_src_width = 640 +sub_src_height = 360 +sub_pixel_format = "aw_lbc_2_0x" #nv21,nv12,yu12,yv12;aw_lbc_2_5x,aw_lbc_2_0x,aw_lbc_1_5x,aw_lbc_1_0x +sub_wdr_enable = 0 +sub_vi_buf_num = 3 +sub_src_frame_rate = 20 #fps + +sub_vipp_crop_en = 1 +sub_vipp_crop_rect_x = 0 +sub_vipp_crop_rect_y = 0 +sub_vipp_crop_rect_w = 1888 +sub_vipp_crop_rect_h = 1072 + +sub_viChn = -1 #-1:disale sub stream +sub_venc_chn = -1 #-1:disale sub stream +sub_encode_type = "H.264" +sub_encode_width = 640 #1280x720->720p, 1920x1080->1080p, 2560×1440->2k, 3840x2160->4k, 7680x4320->8k +sub_encode_height = 360 +sub_encode_frame_rate = 20 #fps +sub_encode_bitrate = 256000 #5M:5242880‬, 2M:2097152, 1M:1048576, 0.5M:512000 +sub_file_path = #"/mnt/extsd/subStream.raw" #if no path is specified, it will not be saved. +sub_encpp_enable = 1 + +sub_lapse_viChn = -1 #-1:disale sub lapse stream +sub_lapse_venc_chn = -1 #-1:disale sub lapse stream +sub_lapse_encode_type = "H.264" +sub_lapse_encode_width = 640 #1280x720->720p, 1920x1080->1080p, 2560×1440->2k, 3840x2160->4k, 7680x4320->8k +sub_lapse_encode_height = 360 +sub_lapse_encode_frame_rate = 20 #fps +sub_lapse_encode_bitrate = 256000 #5M:5242880‬, 2M:2097152, 1M:1048576, 0.5M:512000 +sub_lapse_file_path = #"/mnt/extsd/subLapseStream.raw" #if no path is specified, it will not be saved. +sub_lapse_time = 1000000 #unit:us +sub_lapse_encpp_enable = 1 + +isp_ve_linkage_enable = 1 +isp_ve_linkage_stream_channel = 0 #0:main stream, 1:sub stream, 2:sub lapse stream + +wb_yuv_enable = 0 +wb_yuv_buf_num = 20 +wb_yuv_start_index = 0 +wb_yuv_total_cnt = 100 +wb_yuv_stream_channel = 0 #0:main stream, 1:sub stream, 2:sub lapse stream +wb_yuv_file_path = "/mnt/extsd/wb_yuv.yuv" + +rtsp_net_type = 3 #RTSP Network type, 0: "lo", 1: "eth0", 2: "br0", 3: "wlan0" + +test_duration = 0 #unit:s, 0:Infinite duration. + diff --git a/target/allwinner/v851s-fastboot_sl100_back/busybox-init-base-ota-files/usr/bin/sample_virvi2vo_v851s_sc1721v.conf b/target/allwinner/v851s-fastboot_sl100_back/busybox-init-base-ota-files/usr/bin/sample_virvi2vo_v851s_sc1721v.conf new file mode 100755 index 000000000..5dc56567f --- /dev/null +++ b/target/allwinner/v851s-fastboot_sl100_back/busybox-init-base-ota-files/usr/bin/sample_virvi2vo_v851s_sc1721v.conf @@ -0,0 +1,44 @@ +########### paramter (ref to tulip_cedarx.conf)############ +[parameter] +capture_width = 1920 +capture_height = 1080 +display_x = 0 +display_y = 0 +display_width = 1280 +display_height = 800 +layer_num = 0 +isp_dev = 0 +vipp_dev = 0 + +capture_width2 = 0 +capture_height2 = 640 +display_x2 = 0 +display_y2 = 0 +display_width2 = 0 +display_height2 = 640 +layer_num2 = 4 +isp_dev2 = 0 +vipp_dev2 = 4 + +capture_width3 = 0 +capture_height3 = 360 +display_x3 = 240 +display_y3 = 320 +display_width3 = 0 +display_height3 = 320 +layer_num3 = 5 +isp_dev3 = 0 +vipp_dev3 = 0 + +add_ui_layer = 0 +ui_test_layer = 9 +ui_display_width = 480 +ui_display_height = 640 + +# disp_type is lcd, hdmi, cvbs +disp_type = "lcd" + +# pic_format is yu12, yv12, nv21, nv12, nv21s +pic_format = nv21 +frame_rate = 20 +test_duration = 0 #unit:s diff --git a/target/allwinner/v851s-fastboot_sl100_back/busybox-init-base-ota-files/usr/bin/setusbconfig b/target/allwinner/v851s-fastboot_sl100_back/busybox-init-base-ota-files/usr/bin/setusbconfig new file mode 100755 index 000000000..e075aad9a --- /dev/null +++ b/target/allwinner/v851s-fastboot_sl100_back/busybox-init-base-ota-files/usr/bin/setusbconfig @@ -0,0 +1,344 @@ +#!/bin/sh + +name=`basename $0` + +usage() { + echo "$name Usage:" + echo "" + echo "$name [function]" + echo "function: mtp, support MTP function" + echo " adb, support adb function" + echo " uvc, support uvc function" + echo " uvc,uac1 support uvc and uac1 function" + echo "example:" + echo "$name uvc" + echo "" +} + +enable_adb() { + [ -d /sys/kernel/config/usb_gadget/g1/functions/ffs.adb ] || { + mkdir /sys/kernel/config/usb_gadget/g1/functions/ffs.adb + } + echo "Tina ADB" > /sys/kernel/config/usb_gadget/g1/strings/0x409/product + ln -s /sys/kernel/config/usb_gadget/g1/functions/ffs.adb/ /sys/kernel/config/usb_gadget/g1/configs/c.1/ffs.adb + + [ -d /dev/usb-ffs/adb ] || { + mkdir -p /dev/usb-ffs + mkdir /dev/usb-ffs/adb + mount -o uid=2000,gid=2000 -t functionfs adb /dev/usb-ffs/adb/ + } +} + +enable_mtp() { + mtp_name=mtp.gs0 + mtp_ffs=false + kv=`uname -r` + kv=${kv:0:1} + if [ "x$kv" = "x5" ]; then + mtp_ffs=true + mtp_name=ffs.mtp + fi + [ -d /sys/kernel/config/usb_gadget/g1/functions/$mtp_name ] || { + mkdir /sys/kernel/config/usb_gadget/g1/functions/$mtp_name + } + if [ "x$mtp_ffs" = "xtrue" ]; then + [ -d /dev/usb-ffs/mtp ] || { + mkdir -p /dev/usb-ffs + mkdir /dev/usb-ffs/mtp + mount -o rmode=0770,fmode=0660,uid=1024,gid=1024,no_disconnect=1 -t functionfs mtp /dev/usb-ffs/mtp/ + } + fi + echo "Tina MTP" > /sys/kernel/config/usb_gadget/g1/strings/0x409/product + echo 1 > /sys/kernel/config/usb_gadget/g1/os_desc/use + ln -s /sys/kernel/config/usb_gadget/g1/functions/$mtp_name/ /sys/kernel/config/usb_gadget/g1/configs/c.1/$mtp_name + if [ "x$mtp_ffs" = "xtrue" ]; then + MtpTools -f connect + sleep .500 + fi +} + +uvc_create_frame() +{ + format=$1 + name=$2 + width=$3 + height=$4 + frameindex=$5 + + dir=streaming/$format/$name/${height}p + mkdir -p $dir + echo $width > $dir/wWidth + echo $height > $dir/wHeight + echo $(($width * $height * 2 )) > $dir/dwMaxVideoFrameBufferSize + #20,30fps + #cat < $dir/dwFrameInterval +#500000 +#333333 +#EOF + + #30fps + echo 333333 > $dir/dwFrameInterval + echo 333333 > $dir/dwDefaultFrameInterval + echo $(($width * $height * 2 * 30 * 8)) > $dir/dwMinBitRate + echo $(($width * $height * 2 * 30 * 8)) > $dir/dwMaxBitRate + echo $frameindex > $dir/bFrameIndex +} + +enable_uvc() +{ + cd /sys/kernel/config/usb_gadget/g1/functions + mkdir uvc.usb0 + cd uvc.usb0 + + uvc_create_frame mjpeg m 1920 1080 1 + uvc_create_frame mjpeg m 1280 720 2 + uvc_create_frame mjpeg m 640 480 3 + uvc_create_frame uncompressed u 320 240 1 + uvc_create_frame h264 h 1920 1080 1 + uvc_create_frame h264 h 1280 720 2 + + mkdir -p streaming/header/h + + ln -s streaming/mjpeg/m/ streaming/header/h/ + ln -s streaming/uncompressed/u/ streaming/header/h/ + ln -s streaming/h264/h/ streaming/header/h/ + + ln -s streaming/header/h/ streaming/class/fs + ln -s streaming/header/h/ streaming/class/hs + + mkdir -p control/header/h + + ln -s control/header/h/ control/class/fs/ + ln -s control/header/h/ control/class/ss/ + + #echo 3072 > streaming_maxpacket + + ln -s /sys/kernel/config/usb_gadget/g1/functions/uvc.usb0/ /sys/kernel/config/usb_gadget/g1/configs/c.1/ +} + +udc_controller=`ls /sys/class/udc` + +set_usb_function() { +# 1:function +# 2:idVendor +# 3:idProduct +# + + [ -d /sys/kernel/config/usb_gadget ] || { + mount -t configfs none /sys/kernel/config + mkdir /sys/kernel/config/usb_gadget/g1 + mkdir /sys/kernel/config/usb_gadget/g1/strings/0x409 + echo "Allwinner Technology Inc." > /sys/kernel/config/usb_gadget/g1/strings/0x409/manufacturer + echo "Tina" > /sys/kernel/config/usb_gadget/g1/strings/0x409/product + } + [ -d /sys/kernel/config/usb_gadget/g1/configs/c.1 ] || { + mkdir /sys/kernel/config/usb_gadget/g1/configs/c.1 + echo 0xc0 > /sys/kernel/config/usb_gadget/g1/configs/c.1/bmAttributes + echo 500 > /sys/kernel/config/usb_gadget/g1/configs/c.1/MaxPower + mkdir /sys/kernel/config/usb_gadget/g1/configs/c.1/strings/0x409 + } + + rm -f /sys/kernel/config/usb_gadget/g1/configs/c.1/ffs.adb + rm -f /sys/kernel/config/usb_gadget/g1/configs/c.1/ffs.mtp + rm -f /sys/kernel/config/usb_gadget/g1/configs/c.1/mtp.gs0 + rm -f /sys/kernel/config/usb_gadget/g1/configs/c.1/f1 + rm -f /sys/kernel/config/usb_gadget/g1/configs/c.1/rndis.usb0 + rm -f /sys/kernel/config/usb_gadget/g1/configs/c.1/uac1.usb0 + rm -f /sys/kernel/config/usb_gadget/g1/configs/c.1/accessory.usb0 + rm -f /sys/kernel/config/usb_gadget/g1/configs/c.1/hid.usb0 + rm -f /sys/kernel/config/usb_gadget/g1/configs/c.1/hid.usb1 + rm -f /sys/kernel/config/usb_gadget/g1/configs/c.1/loopback.usb0 + rm -f /sys/kernel/config/usb_gadget/g1/configs/c.1/gser.usb0 + rm -f /sys/kernel/config/usb_gadget/g1/configs/c.1/printer.usb0 + rm -f /sys/kernel/config/usb_gadget/g1/configs/c.1/uvc.usb0 + rm -f /sys/kernel/config/usb_gadget/g1/configs/c.1/mass_storage.usb0 + rm -rf /sys/kernel/config/usb_gadget/g1/functions/uvc.usb0/streaming/header/h/ + rm -rf /sys/kernel/config/usb_gadget/g1/functions/uvc.usb0/streaming/class/fs + rm -rf /sys/kernel/config/usb_gadget/g1/functions/uvc.usb0/streaming/class/hs + rm -rf /sys/kernel/config/usb_gadget/g1/functions/uvc.usb0/control/class/fs/ + rm -rf /sys/kernel/config/usb_gadget/g1/functions/uvc.usb0/control/class/ss/ + rm -rf /sys/kernel/config/usb_gadget/g1/functions/uvc.usb0/streaming/mjpeg/m + rm -rf /sys/kernel/config/usb_gadget/g1/functions/uvc.usb0/streaming/mjpeg/ + rm -rf /sys/kernel/config/usb_gadget/g1/functions/uvc.usb0/streaming/uncompressed/ + + echo $2 > /sys/kernel/config/usb_gadget/g1/idVendor + echo $3 > /sys/kernel/config/usb_gadget/g1/idProduct + + if [ $1 == "none" ]; then + return + elif [ $1 == "mtp" ]; then + enable_mtp + elif [ $1 == "adb" ]; then + enable_adb + elif [ $1 == "mass_storage" ]; then + [ -d /sys/kernel/config/usb_gadget/g1/functions/mass_storage.usb0 ] || { + mkdir /sys/kernel/config/usb_gadget/g1/functions/mass_storage.usb0 + echo Tina > /sys/kernel/config/usb_gadget/g1/functions/mass_storage.usb0/lun.0/inquiry_string + } + ln -s /sys/kernel/config/usb_gadget/g1/functions/mass_storage.usb0/ /sys/kernel/config/usb_gadget/g1/configs/c.1/f1 + + #echo "/dev/by-name/UDISK" > /sys/kernel/config/usb_gadget/g1/functions/mass_storage.usb0/lun.0/file + elif [ $1 == "uac1" ]; then + [ -d /sys/kernel/config/usb_gadget/g1/functions/uac1.usb0 ] || { + mkdir /sys/kernel/config/usb_gadget/g1/functions/uac1.usb0 + echo 0x1 > /sys/kernel/config/usb_gadget/g1/functions/uac1.usb0/p_chmask + echo 0 > /sys/kernel/config/usb_gadget/g1/functions/uac1.usb0/c_chmask + echo 16000 > /sys/kernel/config/usb_gadget/g1/functions/uac1.usb0/p_srate + } + echo "Tina UAC1" > /sys/kernel/config/usb_gadget/g1/strings/0x409/product + ln -s /sys/kernel/config/usb_gadget/g1/functions/uac1.usb0/ /sys/kernel/config/usb_gadget/g1/configs/c.1/uac1.usb0 + elif [ $1 == "uvc" ]; then + [ $4 == "bulk" ] && { + echo Y > /sys/module/usb_f_uvc/parameters/bulk_streaming_ep + } + echo 0xef > /sys/kernel/config/usb_gadget/g1/bDeviceClass + echo 0x02 > /sys/kernel/config/usb_gadget/g1/bDeviceSubClass + echo 0x01 > /sys/kernel/config/usb_gadget/g1/bDeviceProtocol + echo "Tina UVC" > /sys/kernel/config/usb_gadget/g1/strings/0x409/product + + #echo 0x150 > /sys/kernel/config/usb_gadget/g1/functions/uvc.usb0/control/header/h/bcdUVC + + enable_uvc + elif [ $1 == "uvc,uac1" ]; then + echo Y > /sys/module/usb_f_uvc/parameters/bulk_streaming_ep + echo 0xef > /sys/kernel/config/usb_gadget/g1/bDeviceClass + echo 0x02 > /sys/kernel/config/usb_gadget/g1/bDeviceSubClass + echo 0x01 > /sys/kernel/config/usb_gadget/g1/bDeviceProtocol + echo "Tina UVC" > /sys/kernel/config/usb_gadget/g1/strings/0x409/product + + enable_uvc + [ -d /sys/kernel/config/usb_gadget/g1/functions/uac1.usb0 ] || { + mkdir /sys/kernel/config/usb_gadget/g1/functions/uac1.usb0 + # enable PC capture only ISOC(IN) + echo 0x1 > /sys/kernel/config/usb_gadget/g1/functions/uac1.usb0/p_chmask + echo 0 > /sys/kernel/config/usb_gadget/g1/functions/uac1.usb0/c_chmask + echo 16000 > /sys/kernel/config/usb_gadget/g1/functions/uac1.usb0/p_srate + } + echo "Tina UVC UAC1" > /sys/kernel/config/usb_gadget/g1/strings/0x409/product + ln -s /sys/kernel/config/usb_gadget/g1/functions/uac1.usb0/ /sys/kernel/config/usb_gadget/g1/configs/c.1/uac1.usb0 + elif [ $1 == "rndis" ]; then + mkdir /sys/kernel/config/usb_gadget/g1/functions/rndis.usb0 + echo "Tina RNDIS" > /sys/kernel/config/usb_gadget/g1/strings/0x409/product + ln -s /sys/kernel/config/usb_gadget/g1/functions/rndis.usb0/ /sys/kernel/config/usb_gadget/g1/configs/c.1/rndis.usb0 + elif [ $1 == "adb,rndis" ]; then + [ -d /sys/kernel/config/usb_gadget/g1/functions/rndis.usb0] || { + mkdir /sys/kernel/config/usb_gadget/g1/functions/rndis.usb0 + } + ln -s /sys/kernel/config/usb_gadget/g1/functions/rndis.usb0/ /sys/kernel/config/usb_gadget/g1/configs/c.1/rndis.usb0 + enable_adb + echo 0xef > /sys/kernel/config/usb_gadget/g1/bDeviceClass + echo 0x02 > /sys/kernel/config/usb_gadget/g1/bDeviceSubClass + echo 0x01 > /sys/kernel/config/usb_gadget/g1/bDeviceProtocol + echo "Tina ADB,RNDIS" > /sys/kernel/config/usb_gadget/g1/strings/0x409/product + elif [ $1 == "hid" ]; then + [ -d /sys/kernel/config/usb_gadget/g1/functions/hid.usb0 ] || { + mkdir /sys/kernel/config/usb_gadget/g1/functions/hid.usb0 + } + echo 1 > /sys/kernel/config/usb_gadget/g1/functions/hid.usb0/protocol + echo 8 > /sys/kernel/config/usb_gadget/g1/functions/hid.usb0/report_length + echo -ne \\x05\\x01\\x09\\x06\\xa1\\x01\\x05\\x07\\x19\\xe0\\x29\\xe7\\x15\\x00\\x25\\x01\\x75\\x01\\x95\\x08\\x81\\x02\\x95\\x01\\x75\\x08\\x81\\x03\\x95\\x05\\x75\\x01\\x05\\x08\\x19\\x01\\x29\\x05\\x91\\x02\\x95\\x01\\x75\\x03\\x91\\x03\\x95\\x06\\x75\\x08\\x15\\x00\\x25\\x65\\x05\\x07\\x19\\x00\\x29\\x65\\x81\\x00\\xc0 > /sys/kernel/config/usb_gadget/g1/functions/hid.usb0/report_desc + ln -s /sys/kernel/config/usb_gadget/g1/functions/hid.usb0/ /sys/kernel/config/usb_gadget/g1/configs/c.1/hid.usb0 + echo "Tina HID" > /sys/kernel/config/usb_gadget/g1/strings/0x409/product + elif [ $1 == "ecm" ]; then + mkdir /sys/kernel/config/usb_gadget/g1/functions/ecm.usb0 + echo "Tina ECM" > /sys/kernel/config/usb_gadget/g1/strings/0x409/product + ln -s /sys/kernel/config/usb_gadget/g1/functions/ecm.usb0/ /sys/kernel/config/usb_gadget/g1/configs/c.1/ecm.usb0 + elif [ $1 == "adb,ecm" ]; then + [ -d /sys/kernel/config/usb_gadget/g1/functions/ecm.usb0] || { + mkdir /sys/kernel/config/usb_gadget/g1/functions/ecm.usb0 + } + ln -s /sys/kernel/config/usb_gadget/g1/functions/ecm.usb0/ /sys/kernel/config/usb_gadget/g1/configs/c.1/ecm.usb0 + enable_adb + echo 0xef > /sys/kernel/config/usb_gadget/g1/bDeviceClass + echo 0x02 > /sys/kernel/config/usb_gadget/g1/bDeviceSubClass + echo 0x01 > /sys/kernel/config/usb_gadget/g1/bDeviceProtocol + echo "Tina ADB,ECM" > /sys/kernel/config/usb_gadget/g1/strings/0x409/product + fi + + echo $udc_controller > /sys/kernel/config/usb_gadget/g1/UDC +} + +if [ $# -lt 1 ]; then + echo "Lack of arg!" + usage + exit +fi + +# idVendor, idProduct only for test +if [ $1 == "none" ]; then + set_usb_function none 0x1f3a 0x1001 + return +fi +if [ $1 == "adb" ]; then + set_usb_function adb 0x18d1 0xD002 + return +fi +if [ $1 == "mtp" ]; then + set_usb_function mtp 0x045E 0x00C9 + return +fi +if [ $1 == "uac1" ]; then + if [ $# == 3 ]; then + set_usb_function uac1 $2 $3 + else + set_usb_function uac1 0x1d61 0x0101 + fi + return +fi +if [ $1 == "mass_storage" ]; then + set_usb_function mass_storage 0x1f3a 0x1000 + return +fi +if [ $1 == "uvc" ]; then + if [ $2 == "bulk" ]; then + set_usb_function uvc 0x09a1 0x0026 bulk + else + set_usb_function uvc 0x09a1 0x0026 + fi + return +fi +if [ $1 == "uac1,uvc" -o $1 == "uvc,uac1" ]; then + #set_usb_function uvc,uac1 0x1943 0x2263 + #set_usb_function uvc,uac1 0x09a1 0x0026 + if [ $# == 3 ]; then + set_usb_function uvc,uac1 $2 $3 + else + set_usb_function uvc,uac1 0x09a1 0x002A + fi + return +fi +if [ $1 == "rndis" ]; then + if [ $# == 3 ]; then + set_usb_function rndis $2 $3 + else + set_usb_function rndis 0x0525 0xa4a2 + fi +fi +if [ $1 == "adb,rndis" ]; then + if [ $# == 3 ]; then + set_usb_function adb,rndis $2 $3 + else + set_usb_function adb,rndis 0x0525 0xa4a2 + fi +fi +if [ $1 == "hid" ]; then + if [ $# == 3 ]; then + set_usb_function hid $2 $3 + else + set_usb_function hid 0x0525 0xa4ac + fi +fi +if [ $1 == "ecm" ]; then + if [ $# == 3 ]; then + set_usb_function ecm $2 $3 + else + set_usb_function ecm 0x0525 0xa4a2 + fi +fi +if [ $1 == "adb,ecm" ]; then + if [ $# == 3 ]; then + set_usb_function adb,ecm $2 $3 + else + set_usb_function adb,ecm 0x18d1 0xD002 + fi +fi diff --git a/target/allwinner/v851s-fastboot_sl100_back/busybox-init-base-ota-files/usr/share/startup.wav b/target/allwinner/v851s-fastboot_sl100_back/busybox-init-base-ota-files/usr/share/startup.wav new file mode 100755 index 0000000000000000000000000000000000000000..fcd1de9ff5af9b4670b4adc1ab310debd6f7ea2a GIT binary patch literal 120166 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 literal 0 HcmV?d00001 diff --git a/target/allwinner/v851s-fastboot_sl100_back/defconfig_ota b/target/allwinner/v851s-fastboot_sl100_back/defconfig_ota index 9732a68ed..f123cfb0f 100755 --- a/target/allwinner/v851s-fastboot_sl100_back/defconfig_ota +++ b/target/allwinner/v851s-fastboot_sl100_back/defconfig_ota @@ -4,7 +4,6 @@ # CONFIG_MODULES=y CONFIG_HAVE_DOT_CONFIG=y -# CONFIG_TARGET_v837s_fastboot is not set CONFIG_TARGET_v851s_fastboot_sl100_back=y # CONFIG_TARGET_v851s3_fastboot_sl100_front is not set CONFIG_TARGET_v851s_fastboot_sl100_back_=y @@ -83,7 +82,6 @@ CONFIG_SUNXI_SD_BOOT_KERNEL_FORMAT_BOOTIMG=y # CONFIG_SUNXI_MKBOOTIMG_ADD_DTB is not set CONFIG_SUNXI_SMALL_STORAGE_OTA=y CONFIG_SUNXI_MOVE_KO_TO_USR=y -CONFIG_SUNXI_MOVE_UDEV_TO_USR=y # CONFIG_SUNXI_RECOVERY_INITRAMFS_PART is not set # CONFIG_SUNXI_RECOVERY_INITRAMFS_KERNEL_FORMAT_UIMAGE is not set CONFIG_SUNXI_RECOVERY_INITRAMFS_KERNEL_FORMAT_BOOTIMG=y @@ -96,7 +94,10 @@ CONFIG_SUNXI_BOOT_IMAGE_NAME_SUFFIX_RECOVERY=y # CONFIG_SUNXI_ROOTFS_IMAGE_NAME_SUFFIX_NONE is not set CONFIG_SUNXI_ROOTFS_IMAGE_NAME_SUFFIX_RECOVERY=y # CONFIG_SUNXI_ROOTFS_IMAGE_NAME_SUFFIX_RAMFS is not set -# CONFIG_CUSTOMIZE_CONFIG_FILE is not set +CONFIG_CUSTOMIZE_CONFIG_FILE=y +# CONFIG_KERNEL_CONFIG_FILE_SUFFIX_NONE is not set +CONFIG_KERNEL_CONFIG_FILE_SUFFIX_RECOVERY=y +# CONFIG_KERNEL_CONFIG_FILE_SUFFIX_RAMFS is not set # CONFIG_SUPPORT_PACK_OUT_OF_TINA is not set CONFIG_TARGET_ROOTFS_INCLUDE_UIMAGE=y CONFIG_TARGET_ROOTFS_INCLUDE_ZIMAGE=y @@ -1479,7 +1480,7 @@ CONFIG_BUSYBOX_CONFIG_EXPR_MATH_SUPPORT_64=y # CONFIG_BUSYBOX_CONFIG_FACTOR is not set # CONFIG_BUSYBOX_CONFIG_FALSE is not set # CONFIG_BUSYBOX_CONFIG_FOLD is not set -# CONFIG_BUSYBOX_CONFIG_FSYNC is not set +CONFIG_BUSYBOX_CONFIG_FSYNC=y # CONFIG_BUSYBOX_CONFIG_HEAD is not set # CONFIG_BUSYBOX_CONFIG_HOSTID is not set # CONFIG_BUSYBOX_CONFIG_ID is not set @@ -1752,7 +1753,7 @@ CONFIG_BUSYBOX_CONFIG_FLOCK=y CONFIG_BUSYBOX_CONFIG_HEXDUMP=y # CONFIG_BUSYBOX_CONFIG_FEATURE_HEXDUMP_REVERSE is not set # CONFIG_BUSYBOX_CONFIG_HD is not set -# CONFIG_BUSYBOX_CONFIG_XXD is not set +CONFIG_BUSYBOX_CONFIG_XXD=y CONFIG_BUSYBOX_CONFIG_HWCLOCK=y # CONFIG_BUSYBOX_CONFIG_FEATURE_HWCLOCK_LONG_OPTIONS is not set # CONFIG_BUSYBOX_CONFIG_FEATURE_HWCLOCK_ADJTIME_FHS is not set @@ -1762,7 +1763,12 @@ CONFIG_BUSYBOX_CONFIG_HWCLOCK=y CONFIG_BUSYBOX_CONFIG_LOSETUP=y # CONFIG_BUSYBOX_CONFIG_LSPCI is not set # CONFIG_BUSYBOX_CONFIG_LSUSB is not set -# CONFIG_BUSYBOX_CONFIG_MDEV is not set +CONFIG_BUSYBOX_CONFIG_MDEV=y +CONFIG_BUSYBOX_CONFIG_FEATURE_MDEV_CONF=y +CONFIG_BUSYBOX_CONFIG_FEATURE_MDEV_RENAME=y +CONFIG_BUSYBOX_CONFIG_FEATURE_MDEV_RENAME_REGEXP=y +CONFIG_BUSYBOX_CONFIG_FEATURE_MDEV_EXEC=y +# CONFIG_BUSYBOX_CONFIG_FEATURE_MDEV_LOAD_FIRMWARE is not set # CONFIG_BUSYBOX_CONFIG_MESG is not set # CONFIG_BUSYBOX_CONFIG_MKE2FS is not set # CONFIG_BUSYBOX_CONFIG_MKFS_EXT2 is not set @@ -2080,7 +2086,7 @@ CONFIG_BUSYBOX_CONFIG_FEATURE_KMSG_SYSLOG=y # CONFIG_BUSYBOX_SYSLOG_STAMP_KERNEL_FORMAT is not set CONFIG_PACKAGE_busybox-init-base-files=y CONFIG_BUSYBOX_INIT_BASE_FILES_OPTIONS=y -CONFIG_BUSYBOX_INIT_BASE_FILES_PATH="busybox-init-base-files" +CONFIG_BUSYBOX_INIT_BASE_FILES_PATH="busybox-init-base-ota-files" # CONFIG_BUSYBOX_INIT_BASE_FILES_RC_LOG is not set # CONFIG_BUSYBOX_INIT_BASE_FILES_RC_LOAD_SCRIPT is not set # CONFIG_BUSYBOX_INIT_BASE_FILES_RC_MODULES is not set @@ -2144,28 +2150,7 @@ CONFIG_LIBSTDCPP_FILE_SPEC="./lib/libstdc++.so.*" # CONFIG_PACKAGE_ubus is not set # CONFIG_PACKAGE_ubusd is not set # CONFIG_PACKAGE_uci is not set -CONFIG_PACKAGE_udev=y - -# -# Configuration -# -# CONFIG_UDEV_DISABLE_LOGGING is not set -# CONFIG_UDEV_ENABLE_DEBUG is not set -CONFIG_UDEV_EXTRA_accelerometer=y -CONFIG_UDEV_EXTRA_ata_id=y -CONFIG_UDEV_EXTRA_cdrom_id=y -# CONFIG_UDEV_EXTRA_collect is not set -# CONFIG_UDEV_EXTRA_edd_id is not set -# CONFIG_UDEV_EXTRA_firmware is not set -# CONFIG_UDEV_EXTRA_floppy is not set -CONFIG_UDEV_EXTRA_input_id=y -CONFIG_UDEV_EXTRA_mtd_probe=y -CONFIG_UDEV_EXTRA_path_id=y -CONFIG_UDEV_EXTRA_qemu=y -CONFIG_UDEV_EXTRA_rule_generator=y -CONFIG_UDEV_EXTRA_scsi_id=y -CONFIG_UDEV_EXTRA_usb_id=y -CONFIG_UDEV_EXTRA_v4l_id=y +# CONFIG_PACKAGE_udev is not set # CONFIG_PACKAGE_usign is not set # CONFIG_PACKAGE_wireless-tools is not set diff --git a/target/allwinner/v851s3-fastboot_sl100_front/busybox-init-base-files/usr/bin/face_hand_detect_v1_10_20240221.bin b/target/allwinner/v851s3-fastboot_sl100_front/busybox-init-base-files/APP/face_hand_detect_v1_10_20240221.bin similarity index 100% rename from target/allwinner/v851s3-fastboot_sl100_front/busybox-init-base-files/usr/bin/face_hand_detect_v1_10_20240221.bin rename to target/allwinner/v851s3-fastboot_sl100_front/busybox-init-base-files/APP/face_hand_detect_v1_10_20240221.bin diff --git a/target/allwinner/v851s3-fastboot_sl100_front/busybox-init-base-files/usr/bin/face_model_v1_4_20231027.bin b/target/allwinner/v851s3-fastboot_sl100_front/busybox-init-base-files/APP/face_model_v1_4_20231027.bin similarity index 100% rename from target/allwinner/v851s3-fastboot_sl100_front/busybox-init-base-files/usr/bin/face_model_v1_4_20231027.bin rename to target/allwinner/v851s3-fastboot_sl100_front/busybox-init-base-files/APP/face_model_v1_4_20231027.bin diff --git a/target/allwinner/v851s3-fastboot_sl100_front/busybox-init-base-files/usr/bin/hand_model_v2_14_20240220.bin b/target/allwinner/v851s3-fastboot_sl100_front/busybox-init-base-files/APP/hand_model_v2_14_20240220.bin similarity index 100% rename from target/allwinner/v851s3-fastboot_sl100_front/busybox-init-base-files/usr/bin/hand_model_v2_14_20240220.bin rename to target/allwinner/v851s3-fastboot_sl100_front/busybox-init-base-files/APP/hand_model_v2_14_20240220.bin diff --git a/target/allwinner/v851s3-fastboot_sl100_front/busybox-init-base-files/usr/bin/pix_face_lazy_v1_0_20230515.bin b/target/allwinner/v851s3-fastboot_sl100_front/busybox-init-base-files/APP/pix_face_lazy_v1_0_20230515.bin similarity index 100% rename from target/allwinner/v851s3-fastboot_sl100_front/busybox-init-base-files/usr/bin/pix_face_lazy_v1_0_20230515.bin rename to target/allwinner/v851s3-fastboot_sl100_front/busybox-init-base-files/APP/pix_face_lazy_v1_0_20230515.bin diff --git a/target/allwinner/v851s3-fastboot_sl100_front/busybox-init-base-ota-files/etc/asound.conf b/target/allwinner/v851s3-fastboot_sl100_front/busybox-init-base-ota-files/etc/asound.conf new file mode 100755 index 000000000..57081c85b --- /dev/null +++ b/target/allwinner/v851s3-fastboot_sl100_front/busybox-init-base-ota-files/etc/asound.conf @@ -0,0 +1,414 @@ + +hook_args.HookArgsDefault [ + { + name "LINEOUT Switch" + preserve true + optional true + value 1 + } + { + name "SPK Switch" + preserve true + optional true + value 1 + } + { + name "LINEOUT Output Select" + preserve true + optional true + value "differ" #value=1, "single" value=0 + } +# { +# name "LINEOUT volume" +# preserve true +# optional true +# value 31 +# } + { + name "MIC1 Switch" + preserve true + optional true + value 1 + } + { + name "MIC1 Input Select" + preserve true + optional true + value "differ" #value=0, "single" value=1 + } +# { +# name "MIC1 gain volume" +# preserve true +# optional true +# value 31 +# } +] + +hook_args.HookArgsPlayback [ + { + name "LINEOUT Switch" + preserve true + optional true + value 1 + } + { + name "SPK Switch" + preserve true + optional true + value 1 + } + { + name "LINEOUT Output Select" + preserve true + optional true + value "differ" + } +# { +# name "LINEOUT volume" +# preserve true +# optional true +# value 31 +# } +] + +hook_args.HookArgsCapture [ + { + name "MIC1 Switch" + preserve true + optional true + value 1 + } + { + name "MIC1 Input Select" + preserve true + optional true + value "differ" + } +# { +# name "MIC1 gain volume" +# preserve true +# optional true +# value 31 +# } +] +pcm.!default { + type hooks + slave { + pcm { + type asym + playback.pcm "hw:{CARD=audiocodec, DEV=0}" + capture.pcm "hw:0,0" + } + } + hooks.0 { + type ctl_elems + hook_args HookArgsDefault + } +} + +pcm.PlaybackRateDmix { + @args [ SAMPLERATE CHNNUM PERIODSIZE ] + @args.SAMPLERATE { + type integer + default 16000 + } + @args.CHNNUM { + type integer + default 1 + } + @args.PERIODSIZE { + type integer + default 960 #1024 + } + type plug + slave.pcm { + type softvol + slave.pcm { + type hooks + slave.pcm { + type dmix + ipc_key 1111 + ipc_perm 0666 + slave { + pcm "hw:0,0" + format S16_LE + rate $SAMPLERATE + channels $CHNNUM + period_size $PERIODSIZE + periods 8 + } + } + hooks.0 { + type ctl_elems + hook_args HookArgsPlayback + } + } + control { + name "Soft Volume Master" + card audiocodec + count 1 + } + min_dB -26.0 + max_dB 25.0 + resolution 256 + } + rate_converter "linear" #"speexrate" +} + +#pcm.resample rely on alsa-plugin and libspeexdsp. Select them in menuconfig if we want to use plugin pcm.resample. +pcm.resample { + type plug + slave { + pcm "hw:0,0" + format S16_LE + rate 16000 + channels 1 + } + rate_converter "speexrate" +} + +pcm.CaptureMic Capture1MicHard + +# I2SRTX's I2S_SAMPLERATE and I2S_CHNNUM must be same to PlaybackRateDmix's SAMPLERATE and CHNNUM! +pcm.I2SRTX { + @args [ I2S_SAMPLERATE I2S_CHNNUM ] + @args.I2S_SAMPLERATE { + type integer + default 16000 + } + @args.I2S_CHNNUM { + type integer + default 1 + } + type hooks + slave.pcm { + type plug + slave { + pcm "hw:snddaudio0,0" + channels $I2S_CHNNUM + rate $I2S_SAMPLERATE + } + } + hooks.0 { + type ctl_elems + hook_args [ + { + name "loopback debug" + preserve true + optional true + value 1 + } + ] + } +} + +#pcm.CaptureI2SRX { +# type hooks +# slave.pcm "hw:snddaudio0,0" +# hooks.0 { +# type ctl_elems +# hook_args [ +# { +# name "loopback debug" +# preserve true +# optional true +# value 1 +# } +# ] +# } +#} + +#pcm_slave.slaveCap { +# @args [ PCMID CHNNUM ] +# @args.PCMID { +# type string +# } +# @args.CHNNUM { +# type integer +# } +# pcm $PCMID +# channels $CHNNUM +#} + +#pcm_slave.slaveMultiCapture { +# pcm { +# type multi +# slaves { +# a "slaveCap:CaptureMic,1" +# b "slaveCap:CaptureI2SRX,1" +# } +# bindings { +# 0 {slave a channel 0} +# 1 {slave b channel 0} +# } +# } +#} + +#pcm.CaptureDouble { +# type plug +# slave slaveMultiCapture +# ttable.0.0 1 +# ttable.1.1 1 +#} + +#we define pcm capture plugin naming convention: +#pcm.CaptureMic:, : the number of MIC. It can auto convert to indicated channels. : set sample rate to Hardware PCM. +#pcm.CaptureMicPlusAec, if enable aec, add PlusAec. It forbids to auto convert to multi channels because of aec. +# ref to GenerateCaptureIdentifier() in [audio_hw.c] +#e.g.: +#pcm.Capture1Mic:16000 +#pcm.Capture1MicPlusAec +#pcm.Capture2Mic:16000 +#pcm.Capture2MicPlusAec +pcm.Capture1Mic { + @args [ SAMPLERATE ] + @args.SAMPLERATE { + type integer + default 16000 + } + type hooks + slave.pcm { + type plug + slave { + pcm "hw:0,0" + channels 1 + rate $SAMPLERATE + } + } + hooks.0 { + type ctl_elems + hook_args HookArgsCapture + } +} + +pcm.Capture1MicHard { + type hooks + slave.pcm "hw:0,0" + hooks.0 { + type ctl_elems + hook_args HookArgsCapture + } +} +pcm.Capture1MicPlusAec { + type route + slave.pcm { + type multi + slaves { + a {pcm Capture1MicHard channels 1} + b {pcm I2SRTX channels 1} + } + bindings { + 0 {slave a channel 0} + 1 {slave b channel 0} + } + } + ttable.0.0 1 + ttable.1.1 1 +} + +pcm.Capture2Mic { + @args [ SAMPLERATE ] + @args.SAMPLERATE { + type integer + default 16000 + } + type hooks + slave.pcm { + type plug + slave { + pcm "hw:0,0" + channels 2 + rate $SAMPLERATE + } + } + hooks.0 { + type ctl_elems + hook_args [ + { + name "MIC1 Switch" + preserve true + optional true + value 1 + } + { + name "MIC1 Input Select" + preserve true + optional true + value "differ" + } + { + name "MIC2 Switch" + preserve true + optional true + value 1 + } + { + name "MIC2 Input Select" + preserve true + optional true + value "differ" + } + ] + } +} + +pcm.Capture2MicHard { + type hooks + slave.pcm "hw:0,0" + hooks.0 { + type ctl_elems + hook_args [ + { + name "MIC1 Switch" + preserve true + optional true + value 1 + } + { + name "MIC1 Input Select" + preserve true + optional true + value "differ" + } + { + name "MIC2 Switch" + preserve true + optional true + value 1 + } + { + name "MIC2 Input Select" + preserve true + optional true + value "differ" + } + ] + } +} +pcm.Capture2MicPlusAec { + type route + slave.pcm { + type multi + slaves { + a {pcm Capture2MicHard channels 2} + b {pcm I2SRTX channels 1} + } + bindings { + 0 {slave a channel 0} + 1 {slave a channel 1} + 2 {slave b channel 0} + } + } + ttable.0.0 1 + ttable.1.1 1 + ttable.2.2 1 +} + +pcm.eq { + type awequal + slave.pcm "hw:0,0" + config_file "/etc/awequal.conf" + tuning_support true + verbose true +} + diff --git a/target/allwinner/v851s3-fastboot_sl100_front/busybox-init-base-ota-files/etc/fw_env.config b/target/allwinner/v851s3-fastboot_sl100_front/busybox-init-base-ota-files/etc/fw_env.config new file mode 100755 index 000000000..f1a10e66f --- /dev/null +++ b/target/allwinner/v851s3-fastboot_sl100_front/busybox-init-base-ota-files/etc/fw_env.config @@ -0,0 +1,46 @@ +# Configuration file for fw_(printenv/setenv) utility. +# Up to two entries are valid, in this case the redundant +# environment sector is assumed present. +# Notice, that the "Number of sectors" is not required on NOR and SPI-dataflash. +# Futhermore, if the Flash sector size is omitted, this value is assumed to +# be the same as the Environment size, which is valid for NOR and SPI-dataflash +# Device offset must be prefixed with 0x to be parsed as a hexadecimal value. + +# NOR example +# MTD device name Device offset Env. size Flash sector size Number of sectors +# /dev/mtd1 0x0000 0x4000 0x4000 +# /dev/mtd2 0x0000 0x4000 0x4000 + +# MTD SPI-dataflash example +# MTD device name Device offset Env. size Flash sector size Number of sectors +#/dev/mtd5 0x4200 0x4200 +#/dev/mtd6 0x4200 0x4200 + +# NAND example +#/dev/mtd0 0x4000 0x4000 0x20000 2 + +# On a block device a negative offset is treated as a backwards offset from the +# end of the device/partition, rather than a forwards offset from the start. + +# Block device example +#/dev/mmcblk0 0xc0000 0x20000 +#/dev/mmcblk0 -0x20000 0x20000 + +# VFAT example +#/boot/uboot.env 0x0000 0x4000 + +# UBI volume +#/dev/ubi0_0 0x0 0x1f000 0x1f000 +#/dev/ubi0_1 0x0 0x1f000 0x1f000 + +# UBI volume by name +#/dev/ubi0:env 0x0 0x1f000 0x1f000 +#/dev/ubi0:env-redund 0x0 0x1f000 0x1f000 + +# Allwinner Tina +/dev/by-name/env 0x0000 0x1000 +/dev/by-name/env-redund 0x0000 0x1000 + +# Allwinner Tina UBI volume +# /dev/ubi0:env 0x0 0x20000 0x20000 +# /dev/ubi0:env-redund 0x0 0x20000 0x20000 diff --git a/target/allwinner/v851s3-fastboot_sl100_front/busybox-init-base-ota-files/etc/init.d/S10udev b/target/allwinner/v851s3-fastboot_sl100_front/busybox-init-base-ota-files/etc/init.d/S10udev new file mode 100755 index 000000000..8382bec2b --- /dev/null +++ b/target/allwinner/v851s3-fastboot_sl100_front/busybox-init-base-ota-files/etc/init.d/S10udev @@ -0,0 +1,50 @@ +#!/bin/sh +# +# udev This is a minimal non-LSB version of a UDEV startup script. It +# was derived by stripping down the udev-058 LSB version for use +# with buildroot on embedded hardware using Linux 2.6.34+ kernels. +# +# You may need to customize this for your system's resource limits +# (including startup time!) and administration. For example, if +# your early userspace has a custom initramfs or initrd you might +# need /dev much earlier; or without hotpluggable busses (like USB, +# PCMCIA, MMC/SD, and so on) your /dev might be static after boot. +# +# This script assumes your system boots right into the eventual root +# filesystem, and that init runs this udev script before any programs +# needing more device nodes than the bare-bones set -- /dev/console, +# /dev/zero, /dev/null -- that's needed to boot and run this script. +# + +# Check for missing binaries +UDEV_BIN=/sbin/udevd +test -x $UDEV_BIN || exit 5 + +# Check for config file and read it +UDEV_CONFIG=/etc/udev/udev.conf +test -r $UDEV_CONFIG || exit 6 +. $UDEV_CONFIG + +case "$1" in + start) + printf "Populating ${udev_root:-/dev} using udev: " + printf '\000\000\000\000' > /proc/sys/kernel/hotplug + $UDEV_BIN -d || (echo "FAIL" && exit 1) + udevadm trigger --type=subsystems --action=add + udevadm trigger --type=devices --action=add + udevadm settle --timeout=30 || echo "udevadm settle failed" + echo "done" + ;; + stop) + # Stop execution of events + udevadm control --stop-exec-queue + killall udevd + ;; + *) + echo "Usage: $0 {start|stop}" + exit 1 + ;; +esac + + +exit 0 diff --git a/target/allwinner/v851s3-fastboot_sl100_front/busybox-init-base-ota-files/etc/init.d/S50wifidaemon b/target/allwinner/v851s3-fastboot_sl100_front/busybox-init-base-ota-files/etc/init.d/S50wifidaemon new file mode 100755 index 000000000..e8065dfd0 --- /dev/null +++ b/target/allwinner/v851s3-fastboot_sl100_front/busybox-init-base-ota-files/etc/init.d/S50wifidaemon @@ -0,0 +1,34 @@ +#!/bin/sh +# +# Start wifi_deamon.... +# + +start() { + printf "Starting wifi_deamon....: " + #wifi_daemon + #sleep 0.2 + #wifi -o sta + #wifi -a enable +} + +stop() { + printf "Stopping wifi_deamon: " +} + +case "$1" in + start) + start + ;; + stop) + stop + ;; + restart|reload) + stop + start + ;; + *) + echo "Usage: $0 {start|stop|restart}" + exit 1 +esac + +exit $? diff --git a/target/allwinner/v851s3-fastboot_sl100_front/busybox-init-base-ota-files/etc/init.d/S79fat b/target/allwinner/v851s3-fastboot_sl100_front/busybox-init-base-ota-files/etc/init.d/S79fat new file mode 100755 index 000000000..4110b5808 --- /dev/null +++ b/target/allwinner/v851s3-fastboot_sl100_front/busybox-init-base-ota-files/etc/init.d/S79fat @@ -0,0 +1,36 @@ +#!/bin/sh +# +# Load fat modules.... +# + +MODULES_DIR="/lib/modules/`uname -r`" + +start() { + printf "Load fat modules\n" + insmod $MODULES_DIR/fat.ko + insmod $MODULES_DIR/vfat.ko +} + +stop() { + printf "Unload fat modules\n" + rmmod $MODULES_DIR/fat.ko + rmmod $MODULES_DIR/vfat.ko +} + +case "$1" in + start) + start + ;; + stop) + stop + ;; + restart|reload) + stop + start + ;; + *) + echo "Usage: $0 {start|stop|restart}" + exit 1 +esac + +exit $? diff --git a/target/allwinner/v851s3-fastboot_sl100_front/busybox-init-base-ota-files/etc/init.d/S80mmc b/target/allwinner/v851s3-fastboot_sl100_front/busybox-init-base-ota-files/etc/init.d/S80mmc new file mode 100755 index 000000000..7b034dcb8 --- /dev/null +++ b/target/allwinner/v851s3-fastboot_sl100_front/busybox-init-base-ota-files/etc/init.d/S80mmc @@ -0,0 +1,38 @@ +#!/bin/sh +# +# Load mmc modules.... +# + +MODULES_DIR="/lib/modules/`uname -r`" + +start() { + printf "Load mmc modules\n" + #insmod $MODULES_DIR/mmc_core.ko + #insmod $MODULES_DIR/mmc_block.ko + #insmod $MODULES_DIR/sunxi_mmc_host.ko +} + +stop() { + printf "Unload mmc modules\n" + #rmmod $MODULES_DIR/mmc_core.ko + #rmmod $MODULES_DIR/block.ko + #rmmod $MODULES_DIR/sunxi_mmc_host.ko +} + +case "$1" in + start) + start + ;; + stop) + stop + ;; + restart|reload) + stop + start + ;; + *) + echo "Usage: $0 {start|stop|restart}" + exit 1 +esac + +exit $? diff --git a/target/allwinner/v851s3-fastboot_sl100_front/busybox-init-base-ota-files/etc/init.d/_rc.final b/target/allwinner/v851s3-fastboot_sl100_front/busybox-init-base-ota-files/etc/init.d/_rc.final new file mode 100755 index 000000000..b63faf9c5 --- /dev/null +++ b/target/allwinner/v851s3-fastboot_sl100_front/busybox-init-base-ota-files/etc/init.d/_rc.final @@ -0,0 +1,117 @@ +#!/bin/sh + +echo "------run rc.final file-----" +#echo "insmod wifi modules" +#insmod /lib/modules/3.4.39/8723ds.ko +#insmod /lib/modules/3.4.39/bcmdhd.ko +#insmod /lib/modules/3.4.39/xradio_mac.ko +#insmod /lib/modules/3.4.39/xradio_core.ko +#insmod /lib/modules/3.4.39/xradio_wlan.ko + +export LD_LIBRARY_PATH=/usr/lib/eyesee-mpp:${LD_LIBRARY_PATH} +ulimit -c unlimited +echo /mnt/extsd/coredump-%e-%p-%s-%t > /proc/sys/kernel/core_pattern + +for i in /etc/init.d/S??* ;do + + # Ignore dangling symlinks (if any). + [ ! -f "$i" ] && continue + + case "$i" in + *.sh) + # Source shell script for speed. + ( + trap - INT QUIT TSTP + set start + . $i + ) + ;; + *) + # No sh extension, so fork subprocess. + $i start + ;; + esac +done + +LOOP_CNT=0 +SD_DEV= +while [ 1 ];do + if [ $LOOP_CNT -eq 3 ];then + echo wait SD Card ready timeout + break; + fi + if [ -b /dev/mmcblk1p1 ];then + SD_DEV=/dev/mmcblk1p1 + break; + elif [ -b /dev/mmcblk1 ];then + SD_DEV=/dev/mmcblk1 + break; + elif [ -b /dev/mmcblk0p1 ];then + SD_DEV=/dev/mmcblk0p1 + break; + elif [ -b /dev/mmcblk0 ];then + SD_DEV=/dev/mmcblk0 + break; + else + echo SD Card not ready, wait + fi + LOOP_CNT=$(($LOOP_CNT+1)) + sleep 1 +done + +# repair sd card file +if [ "x$SD_DEV" != "x" ]; then + echo SD Card is ready + + if [ -f /usr/bin/fsck_msdos ]; then + /usr/bin/fsck_msdos -pfS $SD_DEV + fi +fi + +if [ -z "$(grep '\' /proc/mounts)" ]; then + ! /bin/mount -t vfat /dev/mmcblk0 /mnt/extsd 2>/dev/null && + /bin/mount -t vfat /dev/mmcblk0p1 /mnt/extsd +fi + +sleep 1 +if [ -n "$(grep '/mnt/extsd' /proc/mounts)" ]; then +echo "start mv stream..." +ls /tmp/ +rm -rf /mnt/extsd/stream*.h264 +rm -rf /mnt/extsd/data*.jpg +mv /tmp/stream*.h264 /mnt/extsd/ +mv /tmp/data*.jpg /mnt/extsd/ +echo "---/mnt/extsd/---" +ls /mnt/extsd/ +fi + +echo "run_usb_adb start!" +run_usb_adb + +#echo "sample_virvi2vo start!" + +#/usr/bin/sample_virvi2vo -path /usr/bin/sample_virvi2vo_v851s_sc1721v_dual.conf & +#catch jpg 0 +#demo_video_in -n 40 -s0 800x608 -f0 0 -pf 4 -trd 1 -snd 1 -s1 800x608 -f1 0 -pf1 4 -vn1 1 + +#catch jpg 1 +#demo_video_in -n 40 -s0 800x608 -f0 0 -pf 4 -snd 1 -s1 800x608 -f1 0 -pf1 4 -trd 1 -vn1 1 -vn2 5 + +#set ir +echo 6 > /sys/class/pwm/pwmchip0/export +echo 50000 > /sys/class/pwm/pwmchip0/pwm6/period +echo 30000 > /sys/class/pwm/pwmchip0/pwm6/duty_cycle + +#disable ir +echo 0 > /sys/class/pwm/pwmchip0/pwm6/enable +#enable ir +#echo 1 > /sys/class/pwm/pwmchip0/pwm6/enable + +#/usr/bin/rt_media-uvc -D 0 -b 0 -d 2 & + +#run_otg + +#sleep 2 + +#/usr/bin/rt_media-uvc -D 0 -d 2 & + diff --git a/target/allwinner/v851s3-fastboot_sl100_front/busybox-init-base-ota-files/etc/init.d/rc.final b/target/allwinner/v851s3-fastboot_sl100_front/busybox-init-base-ota-files/etc/init.d/rc.final new file mode 100755 index 000000000..e4b8f71c3 --- /dev/null +++ b/target/allwinner/v851s3-fastboot_sl100_front/busybox-init-base-ota-files/etc/init.d/rc.final @@ -0,0 +1,105 @@ +#!/bin/sh + +echo "------run rc.final file-----" +#echo "insmod wifi modules" +#insmod /lib/modules/3.4.39/8723ds.ko +#insmod /lib/modules/3.4.39/bcmdhd.ko +#insmod /lib/modules/3.4.39/xradio_mac.ko +#insmod /lib/modules/3.4.39/xradio_core.ko +#insmod /lib/modules/3.4.39/xradio_wlan.ko + +export LD_LIBRARY_PATH=/usr/lib/eyesee-mpp:${LD_LIBRARY_PATH} +ulimit -c unlimited +echo /mnt/extsd/coredump-%e-%p-%s-%t > /proc/sys/kernel/core_pattern + +for i in /etc/init.d/S??* ;do + + # Ignore dangling symlinks (if any). + [ ! -f "$i" ] && continue + + case "$i" in + *.sh) + # Source shell script for speed. + ( + trap - INT QUIT TSTP + set start + . $i + ) + ;; + *) + # No sh extension, so fork subprocess. + $i start + ;; + esac +done + +#LOOP_CNT=0 +#SD_DEV= +#while [ 1 ];do +# if [ $LOOP_CNT -eq 3 ];then +# echo wait SD Card ready timeout +# break; +# fi +# if [ -b /dev/mmcblk1p1 ];then +# SD_DEV=/dev/mmcblk1p1 +# break; +# elif [ -b /dev/mmcblk1 ];then +# SD_DEV=/dev/mmcblk1 +# break; +# elif [ -b /dev/mmcblk0p1 ];then +# SD_DEV=/dev/mmcblk0p1 +# break; +# elif [ -b /dev/mmcblk0 ];then +# SD_DEV=/dev/mmcblk0 +# break; +# else +# echo SD Card not ready, wait +# fi +# LOOP_CNT=$(($LOOP_CNT+1)) +# sleep 1 +#done +# +# repair sd card file +#if [ "x$SD_DEV" != "x" ]; then +# echo SD Card is ready +# +# if [ -f /usr/bin/fsck_msdos ]; then +# /usr/bin/fsck_msdos -pfS $SD_DEV +# fi +#fi + +#if [ -z "$(grep '\' /proc/mounts)" ]; then +# ! /bin/mount -t vfat /dev/mmcblk0 /mnt/extsd 2>/dev/null && +# /bin/mount -t vfat /dev/mmcblk0p1 /mnt/extsd +#fi + +#sleep 1 +#echo "start mv stream..." +#ls /tmp/ +#rm -rf /mnt/extsd/stream*.h264 +#rm -rf /mnt/extsd/data*.jpg +#mv /tmp/stream*.h264 /mnt/extsd/ +#mv /tmp/data*.jpg /mnt/extsd/ +#echo "---/mnt/extsd/---" +#ls /mnt/extsd/ + +echo 160 > /sys/class/gpio/export +echo out > /sys/class/gpio/gpio160/direction +echo 0 > /sys/class/gpio/gpio160/value + +echo 0 > /sys/class/pwm/pwmchip0/export +echo 100000 > /sys/class/pwm/pwmchip0/pwm0/period +echo 40000 > /sys/class/pwm/pwmchip0/pwm0/duty_cycle +echo 1 > /sys/class/pwm/pwmchip0/pwm0/enable + +echo 1 > /sys/class/gpio/gpio160/value + +run_usb_adb + +setusbconfig rndis + +ifconfig usb0 up + +ifconfig usb0 192.168.2.100 + +# /mnt/UDISK/rt_media-uvc & diff --git a/target/allwinner/v851s3-fastboot_sl100_front/busybox-init-base-ota-files/etc/init.d/rc.modules b/target/allwinner/v851s3-fastboot_sl100_front/busybox-init-base-ota-files/etc/init.d/rc.modules new file mode 100755 index 000000000..0b38ce706 --- /dev/null +++ b/target/allwinner/v851s3-fastboot_sl100_front/busybox-init-base-ota-files/etc/init.d/rc.modules @@ -0,0 +1,43 @@ +#!/bin/sh + +echo "------run rc.modules file-----" +MODULES_DIR="/lib/modules/`uname -r`" +#disp +#echo "------insmod display modules start-----" +#insmod /lib/modules/4.9.191/fb.ko +#insmod /lib/modules/4.9.191/disp.ko +#wifi +#echo "------insmod wifi modules xr806 start-----" +#insmod /lib/modules/4.9.191/xr806.ko +#insmod /lib/modules/4.9.191/vipcore.ko +#input +#echo "------insmod input modules start-----" +#insmod /lib/modules/4.9.191/input-core.ko +#insmod /lib/modules/4.9.191/evdev.ko + +#audio +echo "------insmod audio modules start-----" +insmod $MODULES_DIR/soundcore.ko +insmod $MODULES_DIR/snd.ko +insmod $MODULES_DIR/snd-timer.ko +insmod $MODULES_DIR/snd-pcm.ko +insmod $MODULES_DIR/snd-pcm-dmaengine.ko +insmod $MODULES_DIR/snd-soc-core.ko +insmod $MODULES_DIR/snd_soc_sunxi_pcm.ko +insmod $MODULES_DIR/snd_soc_sunxi_component_rxsync.ko +insmod $MODULES_DIR/snd_soc_sunxi_aaudio.ko +insmod $MODULES_DIR/snd_soc_sunxi_daudio.ko +insmod $MODULES_DIR/snd_soc_sunxi_internal_codec.ko +insmod $MODULES_DIR/snd_soc_sunxi_machine.ko +echo "------insmod audio modules end-----" +insmod $MODULES_DIR/rt-media.ko +insmod $MODULES_DIR/cst9220.ko + +#ctp +#echo "------insmod ctp modules gslx680 start-----" +#insmod /lib/modules/4.9.191/gslX680new.ko +#l-sen +#echo "------insmod l-sen modules gpadc start-----" +#insmod /lib/modules/4.9.191/sunxi_gpadc.ko + + diff --git a/target/allwinner/v851s3-fastboot_sl100_front/busybox-init-base-ota-files/etc/init.d/rc.preboot b/target/allwinner/v851s3-fastboot_sl100_front/busybox-init-base-ota-files/etc/init.d/rc.preboot new file mode 100755 index 000000000..39df103c2 --- /dev/null +++ b/target/allwinner/v851s3-fastboot_sl100_front/busybox-init-base-ota-files/etc/init.d/rc.preboot @@ -0,0 +1,4 @@ +#!/bin/sh + +echo "------run rc.preboot file-----" + diff --git a/target/allwinner/v851s3-fastboot_sl100_front/busybox-init-base-ota-files/etc/init.d/rcK b/target/allwinner/v851s3-fastboot_sl100_front/busybox-init-base-ota-files/etc/init.d/rcK new file mode 100755 index 000000000..e733f9c99 --- /dev/null +++ b/target/allwinner/v851s3-fastboot_sl100_front/busybox-init-base-ota-files/etc/init.d/rcK @@ -0,0 +1,28 @@ +#!/bin/sh + + +# Stop all init scripts in /etc/init.d +# executing them in reversed numerical order. +# + +for i in $(ls -r /etc/init.d/S??*) ;do + + # Ignore dangling symlinks (if any). + [ ! -f "$i" ] && continue + + case "$i" in + *.sh) + # Source shell script for speed. + ( + trap - INT QUIT TSTP + set stop + . $i + ) + ;; + *) + # No sh extension, so fork subprocess. + $i stop + ;; + esac +done + diff --git a/target/allwinner/v851s3-fastboot_sl100_front/busybox-init-base-ota-files/etc/inittab b/target/allwinner/v851s3-fastboot_sl100_front/busybox-init-base-ota-files/etc/inittab new file mode 100755 index 000000000..d4aec1458 --- /dev/null +++ b/target/allwinner/v851s3-fastboot_sl100_front/busybox-init-base-ota-files/etc/inittab @@ -0,0 +1,39 @@ +# /etc/inittab +# +# Copyright (C) 2001 Erik Andersen +# +# Note: BusyBox init doesn't support runlevels. The runlevels field is +# completely ignored by BusyBox init. If you want runlevels, use +# sysvinit. +# +# Format for each entry: ::: +# +# id == tty to run on, or empty for /dev/console +# runlevels == ignored +# action == one of sysinit, respawn, askfirst, wait, and once +# process == program to run + +# Startup the system +::sysinit:/etc/preinit +::sysinit:/bin/mount -t proc proc /proc +::sysinit:/bin/mount -t tmpfs tmpfs /run +::sysinit:/bin/mount -o remount,rw / +::sysinit:/bin/mkdir -p /dev/pts +::sysinit:/bin/mkdir -p /dev/shm +::sysinit:/bin/mount -a +::sysinit:/bin/hostname -F /etc/hostname +# now run any rc scripts +#::sysinit:/etc/init.d/rcS +::sysinit:/etc/init.d/rcS boot + +# Put a getty on the serial port +/dev/console::respawn:-/bin/sh +#ttyS0::respawn:/sbin/getty -n -L ttyS0 115200 vt100 -n -l /bin/sh # GENERIC_SERIAL + +# Stuff to do for the 3-finger salute +#::ctrlaltdel:/sbin/reboot + +# Stuff to do before rebooting +::shutdown:/etc/init.d/rcK +::shutdown:/sbin/swapoff -a +::shutdown:/bin/umount -a -r diff --git a/target/allwinner/v851s3-fastboot_sl100_front/busybox-init-base-ota-files/etc/profile b/target/allwinner/v851s3-fastboot_sl100_front/busybox-init-base-ota-files/etc/profile new file mode 100755 index 000000000..ff075b4c9 --- /dev/null +++ b/target/allwinner/v851s3-fastboot_sl100_front/busybox-init-base-ota-files/etc/profile @@ -0,0 +1,45 @@ +#!/bin/sh +echo "------run profile file-----" +[ -f /etc/banner ] && cat /etc/banner +[ -e /tmp/.failsafe ] && cat /etc/banner.failsafe +fgrep -sq '/ overlay ro,' /proc/mounts && { + echo 'Your JFFS2-partition seems full and overlayfs is mounted read-only.' + echo 'Please try to remove files from /overlay/upper/... and reboot!' +} + +export PATH="%PATH%" +export HOME=$(grep -e "^${USER:-root}:" /etc/passwd | cut -d ":" -f 6) +export HOME=${HOME:-/root} +export PS1='\u@\h:\w\$ ' +export LD_LIBRARY_PATH=/usr/lib/eyesee-mpp:${LD_LIBRARY_PATH} +ulimit -c unlimited +mount -t debugfs none /sys/kernel/debug + +[ -x /bin/more ] || alias more=less +[ -x /usr/bin/vim ] && alias vi=vim || alias vim=vi + +[ -z "$KSH_VERSION" -o \! -s /etc/mkshrc ] || . /etc/mkshrc + +[ -x /usr/bin/arp ] || arp() { cat /proc/net/arp; } +[ -x /usr/bin/ldd ] || ldd() { LD_TRACE_LOADED_OBJECTS=1 $*; } + +[ -n "$FAILSAFE" ] || { + for FILE in /etc/profile.d/*.sh; do + [ -e "$FILE" ] && . "$FILE" + done + unset FILE +} +[ -x /bin/ll ] || alias ll='ls -al' + +#export TSLIB_ROOT=/usr/local/tslib +export TSLIB_TSDEVICE=/dev/input/event2 +export TSLIB_TSEVENTTYPE=input +export TSLIB_CONFFILE=/mnt/ts.conf +#export TSLIB_PLUGINDIR=/usr/local/tslib/lib/ts +#export TSLIB_CALIBFILE=/etc/pointercal +export TSLIB_CALIBFILE=/mnt/pointercal + +export TSLIB_PLUGINDIR=/usr/lib/ts +export TSLIB_CONSOLEDEVICE=none +export TSLIB_FBDEVICE=/dev/fb0 + diff --git a/target/allwinner/v851s3-fastboot_sl100_front/busybox-init-base-ota-files/etc/udev/rules.d/10-tf.rules b/target/allwinner/v851s3-fastboot_sl100_front/busybox-init-base-ota-files/etc/udev/rules.d/10-tf.rules new file mode 100755 index 000000000..2566d3c4d --- /dev/null +++ b/target/allwinner/v851s3-fastboot_sl100_front/busybox-init-base-ota-files/etc/udev/rules.d/10-tf.rules @@ -0,0 +1,3 @@ +KERNEL=="mmcblk[0-9]p[0-9]", RUN+="/etc/udev/hotplug-tf.sh %k $env{ACTION}" +ACTION=="add", KERNEL=="mmc0:*", RUN+="/etc/udev/hotplug-tf.sh %k $env{ACTION}" +ACTION=="remove", KERNEL=="mmc0:*", RUN+="/etc/udev/hotplug-tf.sh %k $env{ACTION}" diff --git a/target/allwinner/v851s3-fastboot_sl100_front/busybox-init-base-ota-files/etc/udev/rules.d/10-usb.rules b/target/allwinner/v851s3-fastboot_sl100_front/busybox-init-base-ota-files/etc/udev/rules.d/10-usb.rules new file mode 100755 index 000000000..c7f57b645 --- /dev/null +++ b/target/allwinner/v851s3-fastboot_sl100_front/busybox-init-base-ota-files/etc/udev/rules.d/10-usb.rules @@ -0,0 +1,3 @@ +KERNEL=="sda[0-9]", SUBSYSTEM=="block", SUBSYSTEM=="usb", RUN+="/etc/udev/usb_handle %k $env{ACTION}" +ACTION=="add|change", KERNEL=="sd*", RUN+="/etc/udev/usb_handle %k $env{ACTION}" +ACTION=="remove", KERNEL=="sd*", RUN+="/etc/udev/usb_handle %k $env{ACTION}" diff --git a/target/allwinner/v851s3-fastboot_sl100_front/busybox-init-base-ota-files/etc/udev/usb_handle b/target/allwinner/v851s3-fastboot_sl100_front/busybox-init-base-ota-files/etc/udev/usb_handle new file mode 100755 index 000000000..aa28b8482 --- /dev/null +++ b/target/allwinner/v851s3-fastboot_sl100_front/busybox-init-base-ota-files/etc/udev/usb_handle @@ -0,0 +1,18 @@ +#!/bin/sh + +echo "hotplug usb $(date)"#>>/run/udev.log +echo "[$#] $0, $1, $2"#>>/run/udev.log +if [ "$#" != "2" ];then + echo " !! param err." #>> /run/udev.log + exit 1 +fi + +if [ "$2" == "remove" ];then + echo " <==umount"#>> /run/udev.log + umount /mnt/exUDISK +fi + +if [ "$2" == "add" ];then + echo " <==mount"#>> /run/udev.log + mount -t vfat /dev/sda1 /mnt/exUDISK +fi diff --git a/target/allwinner/v851s3-fastboot_sl100_front/busybox-init-base-ota-files/etc/udhcpd.conf b/target/allwinner/v851s3-fastboot_sl100_front/busybox-init-base-ota-files/etc/udhcpd.conf new file mode 100755 index 000000000..a1b0a2574 --- /dev/null +++ b/target/allwinner/v851s3-fastboot_sl100_front/busybox-init-base-ota-files/etc/udhcpd.conf @@ -0,0 +1,105 @@ +# Sample udhcpd configuration file (/etc/udhcpd.conf) +# Values shown are defaults + +# The start and end of the IP lease block +start 172.168.10.100 +end 172.168.10.254 + +# The interface that udhcpd will use +#interface wlan0 +interface usb0 + +# The maximum number of leases (includes addresses reserved +# by OFFER's, DECLINE's, and ARP conflicts). Will be corrected +# if it's bigger than IP lease block, but it ok to make it +# smaller than lease block. +#max_leases 254 + +# The time period at which udhcpd will write out a dhcpd.leases +# file. If this is 0, udhcpd will never automatically write a +# lease file. Specified in seconds. +#auto_time 7200 + +# The amount of time that an IP will be reserved (leased to nobody) +# if a DHCP decline message is received (seconds) +#decline_time 3600 + +# The amount of time that an IP will be reserved +# if an ARP conflict occurs (seconds) +#conflict_time 3600 + +# How long an offered address is reserved (seconds) +#offer_time 60 + +# If client asks for lease below this value, it will be rounded up +# to this value (seconds) +#min_lease 60 + +# The location of the leases file +#lease_file /var/lib/misc/udhcpd.leases + +# The location of the pid file +#pidfile /var/run/udhcpd.pid + +# Every time udhcpd writes a leases file, the below script will be called +#notify_file # default: no script +#notify_file dumpleases # useful for debugging + +# The following are bootp specific options +# next server to use in bootstrap +#siaddr 192.168.0.22 # default: 0.0.0.0 (none) +# tftp server name +#sname zorak # default: none +# tftp file to download (e.g. kernel image) +#boot_file /var/nfs_root # default: none + +# Static leases map +#static_lease 00:60:08:11:CE:4E 192.168.0.54 +#static_lease 00:60:08:11:CE:3E 192.168.0.44 + +# The remainder of options are DHCP options and can be specified with the +# keyword 'opt' or 'option'. If an option can take multiple items, such +# as the dns option, they can be listed on the same line, or multiple +# lines. +# Examples: +opt dns 172.168.10.2 172.168.10.10 +option subnet 255.255.255.0 +opt router 172.168.10.1 +opt wins 172.168.10.1 +option dns 129.219.13.81 # appended to above DNS servers for a total of 3 +option domain local +option lease 864000 # default: 10 days +# Arbitrary option in hex form: +option 0x08 01020304 # option 8: "cookie server IP addr: 1.2.3.4" + +# Currently supported options (for more info, see options.c): +#opt lease NUM +#opt subnet IP +#opt broadcast IP +#opt router IP_LIST +#opt ipttl NUM +#opt mtu NUM +#opt hostname STRING # client's hostname +#opt domain STRING # client's domain suffix +#opt search STRING_LIST # search domains +#opt nisdomain STRING +#opt timezone NUM # (localtime - UTC_time) in seconds. signed +#opt tftp STRING # tftp server name +#opt bootfile STRING # tftp file to download (e.g. kernel image) +#opt bootsize NUM # size of that file +#opt rootpath STRING # (NFS) path to mount as root fs +#opt wpad STRING +#opt serverid IP # default: server's IP +#opt message STRING # error message (udhcpd sends it on success too) +# Options specifying server(s) +#opt dns IP_LIST +#opt wins IP_LIST +#opt nissrv IP_LIST +#opt ntpsrv IP_LIST +#opt lprsrv IP_LIST +#opt swapsrv IP +# Obsolete options, no longer supported +#opt logsrv IP_LIST # 704/UDP log server (not syslog!) +#opt namesrv IP_LIST # IEN 116 name server, obsolete (August 1979!!!) +#opt cookiesrv IP_LIST # RFC 865 "quote of the day" server, rarely (never?) used +#opt timesrv IP_LIST # RFC 868 time server, rarely (never?) used diff --git a/target/allwinner/v851s3-fastboot_sl100_front/busybox-init-base-ota-files/etc/wpa_supplicant.conf b/target/allwinner/v851s3-fastboot_sl100_front/busybox-init-base-ota-files/etc/wpa_supplicant.conf new file mode 100755 index 000000000..3f7bd9364 --- /dev/null +++ b/target/allwinner/v851s3-fastboot_sl100_front/busybox-init-base-ota-files/etc/wpa_supplicant.conf @@ -0,0 +1,7 @@ +ctrl_interface=/var/log/wpa_supplicant +update_config=1 + +network={ + ssid="AWTest" + psk="1qaz@WSX" +} \ No newline at end of file diff --git a/target/allwinner/v851s3-fastboot_sl100_front/busybox-init-base-ota-files/files/pseudo_init b/target/allwinner/v851s3-fastboot_sl100_front/busybox-init-base-ota-files/files/pseudo_init new file mode 100755 index 000000000..42f287bd5 --- /dev/null +++ b/target/allwinner/v851s3-fastboot_sl100_front/busybox-init-base-ota-files/files/pseudo_init @@ -0,0 +1,577 @@ +#!/bin/sh + +MOUNT_ETC=0 +MOUNT_OVERLAY=1 + +################################## functions ################################## + +#mkfs_jffs2() +mkfs_jffs2() { + ! [ -x /usr/sbin/mkfs.jffs2 ] \ + && ! [ -x /sbin/mkfs.jffs2 ] \ + && echo "Not Found /usr/sbin/mkfs.jffs2 or /sbin/mkfs.jffs2" \ + && return 1 + + # format to jffs2 + local erase_block=$(/bin/cat /proc/mtd \ + | /bin/grep "$(basename $1)" \ + | /usr/bin/awk '{print $3}') + /bin/mkdir -p /tmp/jffs2.dir/tmp + mkfs.jffs2 -p -e 0x${erase_block} -d /tmp/jffs2.dir \ + -o /tmp/jffs2.img >/dev/null || return 1 + /bin/dd if=/tmp/jffs2.img of=$1 || return 1 + /bin/rm -rf /tmp/jffs2.img /tmp/jffs2.dir + return 0 +} + +mkfs_ubifs() { + mkfs.ubifs -x lzo -y "$1" +} + +mount_etc() { + local etc_update=0 + # if enable ota, do update + [ -f /etc/init.d/rc.ota-upgrade ] \ + && source /etc/init.d/ota-upgrade + + local root_dev="$(readlink /dev/by-name/rootfs)" + + # if mount failed, format. + case "${root_dev}" in + /dev/mtdblock*) + /bin/mount -t jffs2 /dev/by-name/rootfs_data /etc \ + && [ -e /etc/etc_complete -a ! -e /etc/etc_need_update ] \ + && return + # /etc/etc_complete and /etc/etc_need_update both exist, that means we just need to update + [ -e /etc/etc_complete -a -e /etc/etc_need_update ] && /bin/echo "do etc update" && etc_update=1 + /bin/umount /etc + + [ x$etc_update = x"1" ] || { + # not update, format first + /bin/echo "Mount Failed: formating /dev/by-name/rootfs_data to jffs2 ..." + mkfs_jffs2 "/dev/by-name/rootfs_data" || return 1 + } + mount -t jffs2 /dev/by-name/rootfs_data /mnt + ;; + /dev/ubi*) + /bin/mount -t ubifs /dev/by-name/rootfs_data /etc \ + && [ -e /etc/etc_complete -a ! -e /etc/etc_need_update ] \ + && return + # /etc/etc_complete and /etc/etc_need_update both exist, that means we just need to update + [ -e /etc/etc_complete -a -e /etc/etc_need_update ] && /bin/echo "do etc update" && etc_update=1 + + /bin/umount /etc + [ x$etc_update = x"1" ] || { + # not update, format first + /bin/echo "Mount Failed: formating /dev/by-name/rootfs_data to ubifs ..." + mkfs_ubifs "/dev/by-name/rootfs_data" || return 1 + } + /bin/mount -t ubifs /dev/by-name/rootfs_data /mnt + ;; + *) + /usr/sbin/fsck.ext4 -y /dev/by-name/rootfs_data &>/dev/null + /bin/mount -t ext4 -o sync,data=journal /dev/by-name/rootfs_data /etc \ + && [ -e /etc/etc_complete -a ! -e /etc/etc_need_update ] \ + && return + # /etc/etc_complete and /etc/etc_need_update both exist, that means we just need to update + [ -e /etc/etc_complete -a -e /etc/etc_need_update ] && /bin/echo "do etc update" && etc_update=1 + + /bin/umount /etc + [ x$etc_update = x"1" ] || { + # not update, format first + /bin/echo "Mount Failed: formating /dev/by-name/rootfs_data to ext4 ..." + mkfs.ext4 -m 0 /dev/by-name/rootfs_data >/dev/null || return 1 + } + /bin/mount -t ext4 -o sync,data=journal /dev/by-name/rootfs_data /mnt + ;; + esac + mkdir -p /tmp/etc + /bin/cp -af /etc/* /tmp/etc/ + # keep the wifi config + [ -e /mnt/wifi/wpa_supplicant.conf ] && { + /bin/echo "keep the wifi config" + /bin/cp /mnt/wifi/wpa_supplicant.conf /tmp/etc/wifi/ + } + /bin/cp -af /tmp/etc/* /mnt/ + rm -rf /tmp/etc + sync + [ ! -e /mnt/etc_complete ] && touch /mnt/etc_complete + [ -e /mnt/etc_need_update ] && /bin/echo "etc update done" && rm -f /mnt/etc_need_update + sync + /bin/mount -o move /mnt /etc + +} + +mount_usr(){ + + local extend_name=$(fw_printenv -n extend_partition) + if [ $extend_name == extendB ]; then + extend_name="extend_backup" + else + extend_name="extend" + fi + local extend_partition="/dev/by-name/${extend_name}" + + [ -L ${extend_partition} ] || + if [ ${extend_partition} == "/dev/by-name/extend" ]; then + [ -L /dev/by-name/extend_backup ] || return + else + [ -L /dev/by-name/extend ] || return + fi + + /bin/mkdir -p /tmp/usr + /bin/mount ${extend_partition} /tmp/usr >/dev/null || { + if [ ${extend_partition} == "/dev/by-name/extend" ]; then + echo "****** 111 mount /dev/by-name/extend_backup /usr *******" + /bin/mount /dev/by-name/extend_backup /tmp/usr > /dev/null + return + else + echo "********** 222 mount /dev/by-name/extend /usr ********" + /bin/mount /dev/by-name/extend /tmp/usr > /dev/null + fi + } + + echo "*******333 mount ${extend_partition} /usr ******" + ! [ -d /tmp/usr/bin ] \ + && umount /tmp/usr \ + && rm -rf /tmp/usr \ + && return + + /bin/mount -o move /tmp/usr /usr \ + && rm -rf /tmp/usr + +} + +mount_sec_storage(){ + [ -e /dev/by-name/sec_storage ] || return + + local root_dev="$(readlink /dev/by-name/rootfs)" + + # mount sec_storage + if [ -h /dev/by-name/sec_storage -a -d /data/tee ]; then + case "${root_dev}" in + /dev/mtdblock*) + /bin/busybox mount -t jffs2 /dev/by-name/sec_storage /data/tee 2>/dev/null + if [ "$?" -ne "0" ]; then + mkfs_jffs2 "/dev/by-name/sec_storage" + /bin/busybox mount -t jffs2 /dev/by-name/sec_storage /data/tee 2>/dev/null + fi + ;; + /dev/ubi*) + /bin/busybox mount -t ubifs /dev/by-name/sec_storage /data/tee 2>/dev/null + if [ "$?" -ne "0" ]; then + mkfs_ubifs "/dev/by-name/sec_storage" + /bin/busybox mount -t ubifs /dev/by-name/sec_storage /data/tee 2>/dev/null + fi + ;; + *) + /usr/sbin/fsck.ext4 -y /dev/by-name/sec_storage &>/dev/null + /bin/busybox mount -t ext4 /dev/by-name/sec_storage /data/tee 2>/dev/null + if [ "$?" -ne "0" ]; then + mkfs.ext4 /dev/by-name/sec_storage >/dev/null + /bin/busybox mount -t ext4 /dev/by-name/sec_storage /data/tee 2>/dev/null + fi + ;; + esac + fi +} + +mount_single_app(){ + /usr/sbin/fsck.ext4 -y /dev/by-name/app &>/dev/null + /bin/mount /dev/by-name/app /mnt/app +} + +mount_dual_app(){ + local appAB=$(fw_printenv -n appAB) + local first_app=app + local second_app=app_sub + local applimit=$(fw_printenv -n applimit) + [ x"$applimit" != x"" -a "$applimit" -ne 0 ] && { + local appcount=$(fw_printenv -n appcount) + let appcount+=1 + [ "$appcount" -gt "$applimit" ] && { + echo "Warning: applimit ($applimit) exceeded. Switch app partition." + if [ x"$appAB" = x"A" ]; then + appAB=B + elif [ x"$appAB" = x"B" ]; then + appAB=A + else + echo "check appAB error: appAB=$appAB" + appAB=A + fi + fw_setenv appAB $appAB + echo "Switch appAB to $appAB" + appcount=1 + } + fw_setenv appcount $appcount + } + echo "appAB=$appAB" + if [ x"$appAB" = x"A" ]; then + first_app=app + second_app=app_sub + elif [ x"$appAB" = x"B" ]; then + first_app=app_sub + second_app=app + else + echo "check appAB error: appAB=$appAB" + fi + + /usr/sbin/fsck.ext4 -y /dev/by-name/$first_app &> /dev/null + /bin/mount -t ext4 /dev/by-name/$first_app /mnt/app \ + && echo "mount $first_app success" \ + && return + + echo "mount $first_app fail, now try mount $second_app" + + #mount first_app fail, try second_app + /usr/sbin/fsck.ext4 -y /dev/by-name/$second_app &> /dev/null + /bin/mount -t ext4 /dev/by-name/$second_app /mnt/app \ + && echo "mount $second_app success" \ + && return + + echo "mount app fail" +} + +mount_app() { + [ -L /dev/by-name/app ] || return + + if [ -L /dev/by-name/app_sub ]; then + mount_dual_app + else + mount_single_app + fi +} + +mount_overlay() { + + local root_dev="$(readlink /dev/by-name/rootfs)" + local mount_partition_dir + case "$1" in + UDISK) + mount_partition_dir="/mnt/UDISK" + ;; + rootfs_data) + mount_partition_dir="/overlay" + ;; + *) + echo "error: please choose rootfs_data or UDISK" + return 1 + esac + + case "${root_dev}" in + /dev/mtdblock*) + /bin/mount -t jffs2 /dev/by-name/$1 ${mount_partition_dir} || { + /bin/echo "Mount Failed: formating /dev/by-name/$1 to jffs2 ..." + mkfs_jffs2 "/dev/by-name/$1" || return 1 + mount -t jffs2 /dev/by-name/$1 ${mount_partition_dir} + } + ;; + /dev/ubi*) + /bin/mount -t ubifs /dev/by-name/$1 ${mount_partition_dir} || { + /bin/echo "Mount Failed: formating /dev/by-name/$1 to ubifs ..." + mkfs_ubifs "/dev/by-name/$1" || return 1 + /bin/mount -t ubifs /dev/by-name/$1 ${mount_partition_dir} + } + ;; + *) + /usr/sbin/fsck.ext4 -y /dev/by-name/$1 &>/dev/null + /bin/mount -t ext4 -o sync,data=journal /dev/by-name/$1 ${mount_partition_dir} || { + /bin/echo "Mount Failed: formating /dev/by-name/$1 to ext4 ..." + mkfs.ext4 -m 0 /dev/by-name/$1 >/dev/null || return 1 + /bin/mount -t ext4 -o sync,data=journal /dev/by-name/$1 ${mount_partition_dir} + } + ;; + esac + + fgrep -sq overlay /proc/filesystems || { + /bin/echo "skip mount overlayfs as kernel not support" + return + } + # only for recovery,copy boot_partition(boot) wifi information to boot_partition(recovery) + local system=$(fw_printenv -n boot_partition) + + if [ x"$system" = x"recovery" ]; then + [ -e /overlay/upper/etc/wifi/wpa_supplicant ] && { + cp -fpr /overlay/upper/etc/wifi/* /etc/wifi/ + } + fi + + #When /dev/root is readonly, such as squashfs or ext4 ro, we try to mount overlayfs.Otherwise, don't mount overlayfs + fgrep -sq '/dev/root / squashfs ro' /proc/mounts || fgrep -sq '/dev/root / ext4 ro' /proc/mounts || { + /bin/echo "skip mount overlayfs as now rootfs not squashfs or readonly ext4" + return + } + # First, try to mount without a workdir, for overlayfs v22 and before. + # If it fails, it means that we are probably using a v23 and + # later versions that require a workdir + # mount -n -t overlay overlayfs:/overlay -o rw,noatime,lowerdir=/,upperdir=/overlay /mnt || { + # mkdir -p /overlay/upper /overlay/workdir + # mount -n -t overlay overlayfs:/overlay -o rw,noatime,lowerdir=/,upperdir=/overlay/upper,workdir=/overlay/workdir /mnt + # } + + local overlay_need_workdir=1 + # overlayfs in linux-3.4 and linux-3.10 is v22 and before, should mount without a workdir + fgrep -sq 'Linux version 3' /proc/version && overlay_need_workdir=0 + + local mount_overlay_dir="/overlay" + [ x"${mount_partition_dir}" = x"/mnt/UDISK" ] && { + mkdir -p /mnt/UDISK/overlay + mount_overlay_dir="/mnt/UDISK/overlay" + } + + if [ x"$overlay_need_workdir" = x"0" ]; then + mount -n -t overlayfs overlayfs:${mount_overlay_dir} -o rw,noatime,lowerdir=/,upperdir=${mount_overlay_dir} /mnt + else + mkdir -p ${mount_overlay_dir}/upper ${mount_overlay_dir}/workdir + mount -n -t overlay overlayfs:${mount_overlay_dir} -o rw,noatime,lowerdir=/,upperdir=${mount_overlay_dir}/upper,workdir=${mount_overlay_dir}/workdir /mnt + fi + + mount -n /proc -o noatime,move /mnt/proc + pivot_root /mnt /mnt/rom + mount -n /rom/dev -o noatime,move /dev + mount -n /rom/tmp -o noatime,move /tmp + mount -n /rom/sys -o noatime,move /sys + mount -n /rom$mount_partition_dir -o noatime,move $mount_partition_dir + fgrep -sq '/rom/usr' /proc/mounts && { + mount -n /rom/usr -o noatime,move /usr + if [ x"$overlay_need_workdir" = x"0" ]; then + mkdir -p $mount_overlay_dir/usr + mount -n -t overlayfs overlayfs:${mount_overlay_dir} -o rw,noatime,lowerdir=/usr,upperdir=${mount_overlay_dir}/usr /usr + else + mkdir -p ${mount_overlay_dir}/upper/usr ${mount_overlay_dir}/workdir/usr + mount -n -t overlay overlayfs:${mount_overlay_dir} -o rw,noatime,lowerdir=/usr,upperdir=${mount_overlay_dir}/upper/usr,workdir=${mount_overlay_dir}/workdir/usr /usr + fi + } + + [ x"$1" = x"UDISK" ] && rm -rf /overlay +} + +mount_appImg() { + if[ -e /dev/by-name/sec_storage ];then + + fi + +} + +mount_recoveryImg() { + if[ -e /dev/by-name/sec_storage ];then + + fi + +} + +set_parts_by_name() { + # create by-name + local parts part + /bin/mkdir -p /dev/by-name + parts=$partitions + for part in $(/bin/echo ${parts} | /bin/sed 's/:/ /g') + do + [ ! -e /dev/${part#*@} ] && [ -x /sbin/mdev ] && mdev -s #for initramfs + /bin/ln -fs "/dev/${part#*@}" "/dev/by-name/${part%@*}" + done +} + +etc_part=/dev/nande + +#hardcode rootfs_data partition as nande +mount_etc_hardcode() { + + # fix fs + /usr/sbin/fsck.ext4 -y $etc_part &>/dev/null + + /bin/mount -t ext4 $etc_part /etc \ + && [ -e /etc/etc_complete ] \ + && return + + /bin/echo "mount Failed or etc_complete not exist" + /bin/echo "now format $etc_part to ext4 ..." + /bin/umount /etc + mkfs.ext4 -m 0 $etc_part >/dev/null || return 1 + /bin/mount -t ext4 -o sync,data=journal $etc_part /mnt + + /bin/cp -af /etc/* /mnt/ + sync + /bin/mount -o move /mnt /etc + + #prepare by-name in /etc for next boot + set_parts_by_name + cp -fpr /dev/by-name /etc + sync + #now rootfs_data is ready, next boot can mount it as etc + touch /etc/etc_complete + sync # this sync not necessary, but sync after modify something is good +} + +set_parts_by_name_hardcode() { + + #UDISK is the last partition, when UDISK is there, the /etc/by-name is ready + [ -e /etc/by-name/UDISK ] && { + #set_part_by_name may cost more than 100ms, now just copy it from /etc + cp -fpr /etc/by-name /dev/ + return + } + + #should not go here. now just show warning and do set_parts_by_name + echo "warning: no /etc/by-name/UDISK, please check it" + set_parts_by_name +} + +check_update_system_state() { + swu_mode=`fw_printenv | grep swu_mode | awk -F '=' '{print $2}'` + echo "swu_mode:$swu_mode" + if [ $swu_mode == ]; then + echo "Not thing todo" + else + # update_flash_flag && boot_partition_flag + # bit3~7: reserve + # bit2 : extend(/usr) 1:extend 0:extend_back + # bit1 : rootfs 1:rootfs 0:rootfs_backup + # bit0 : kernel 1:kernel 0:kernel_back + + dd if=/dev/mtdblock0 of=/tmp/boot0_flag skip=61439 ibs=1 bs=1 count=1 1>/dev/null 2>&1 + boot_flash_flag=0x`xxd /tmp/boot0_flag | awk -F ' ' '{print $2}'` + boot_partition_flag=0x`fw_printenv | grep update_partition_flag | awk 'BEGIN{FS="="} {print $2}'` + echo "boot_flash_flag:$boot_flash_flag, boot_partition_flag:$boot_partition_flag" + if [ $boot_flash_flag == $boot_partition_flag ]; then + + boot_flash_flag_tmp=$((boot_flash_flag&0x7)) + echo "boot_flash_flag_tmp:$boot_flash_flag_tmp" + # The system has been updated, but env has not been updated + case $boot_flash_flag_tmp in + 0) + fw_setenv boot_partition bootB + fw_setenv root_partition rootfsB + fw_setenv extend_parttion extendB + fw_setenv swu_mode + ;; + + 1) + fw_setenv boot_partition bootA + fw_setenv root_partition rootfsB + fw_setenv extend_parttion extendB + fw_setenv swu_mode + ;; + 2) + fw_setenv boot_partition bootB + fw_setenv root_partition rootfsA + fw_setenv extend_parttion extendB + fw_setenv swu_mode + ;; + 3) + + fw_setenv boot_partition bootB + fw_setenv root_partition rootfsB + fw_setenv extend_parttion extendA + fw_setenv swu_mode + ;; + 4) + + fw_setenv boot_partition bootA + fw_setenv root_partition rootfsA + fw_setenv extend_parttion extendB + fw_setenv swu_mode + ;; + 5) + fw_setenv boot_partition bootA + fw_setenv root_partition rootfsB + fw_setenv extend_parttion extendA + fw_setenv swu_mode + ;; + 6) + fw_setenv boot_partition bootB + fw_setenv root_partition rootfsA + fw_setenv extend_parttion extendA + fw_setenv swu_mode + ;; + 7) + fw_setenv boot_partition bootA + fw_setenv root_partition rootfsA + fw_setenv extend_parttion extendA + fw_setenv swu_mode + ;; + *) + echo "not match boot_flash_flag_tmp" + ;; + + esac + + else + echo "update system fail, not clean swu_mode" + fi + fi +} + + +#---------------------------------------------------------------- + +/bin/mount -t proc /proc /proc +/bin/mount -t tmpfs tmpfs /tmp +/bin/mount -t sysfs sys /sys +# /bin/mount -t devtmpfs none /dev +#/bin/mount -t jffs2 /dev/mtdblock3 /home +#/bin/mount -t jffs2 /dev/mtdblock6 /home + +# /bin/mount -t jffs2 /dev/mtdblock4 /home + +# cur_time=`cat /proc/uptime` +# echo "mount /data partition [${cur_time}]" + + +# cur_time=`cat /proc/uptime` +#echo "initialization led pwm [${cur_time}]" +#echo 6 > /sys/class/pwm/pwmchip0/export +#echo 50000 > /sys/class/pwm/pwmchip0/pwm6/period +#echo 30000 > /sys/class/pwm/pwmchip0/pwm6/duty_cycle +# echo "initialization led gpio [${cur_time}]" +#echo 134 > /sys/class/gpio/export +#echo out > /sys/class/gpio/gpio134/direction + +# cur_time=`cat /proc/uptime` +# echo "enable ir led [${cur_time}]" +#echo 1 > /sys/class/pwm/pwmchip0/pwm6/enable +#echo 0 > /sys/class/gpio/gpio134/value + +# cur_time=`cat /proc/uptime` +# echo "start demo_video_in [${cur_time}]" +#demo_video_in -n 40 -s0 800x600 -f0 0 -pf 4 -trd 1 -snd 1 -s1 800x600 -f1 0 -pf1 4 -vn1 1 +#demo_video_in -n 40 -s0 800x600 -f0 0 -pf 4 -snd 1 -s1 800x600 -f1 0 -pf1 4 -trd 1 -vn1 1 -vn2 5 + +# cur_time=`cat /proc/uptime` +# echo "start uvc out [${cur_time}]" +# /bin/setusbconfig uvc +#/bin/setusbconfig uvc +# /usr/bin/setusbconfig uvc +#/usr/bin/rt_media-uvc -D 0 -d 2 -B 10 & + +#sleep 2 +#/bin/rt_media-uvc -D 1 -d 2 -B 10 & +# sleep 3 + +fgrep -sq pstore /proc/filesystems && { + /bin/mount -t pstore pstore /sys/fs/pstore +} + +#fw_setenv, fw_printenv need /var/lock +mkdir -p /var/lock + +#common but slow +set_parts_by_name + +mount_sec_storage + +# OTA's configuration is not turned on by default exit returns, +# which does not affect the startup speed +check_update_system_state + +mount_usr +[ x"$MOUNT_ETC" = x"1" ] && mount_etc +[ x"$MOUNT_OVERLAY" = x"1" ] && mount_overlay rootfs_data #choose rootfs_data or UDISK +mount_app + +#hardcode but fast +#mount_etc_hardcode +#set_parts_by_name_hardcode +#mount_usr + +exec /sbin/init diff --git a/target/allwinner/v851s3-fastboot_sl100_front/busybox-init-base-ota-files/mnt/ts.conf b/target/allwinner/v851s3-fastboot_sl100_front/busybox-init-base-ota-files/mnt/ts.conf new file mode 100755 index 000000000..52fdbfb15 --- /dev/null +++ b/target/allwinner/v851s3-fastboot_sl100_front/busybox-init-base-ota-files/mnt/ts.conf @@ -0,0 +1,29 @@ +# Uncomment if you wish to use the one-wire linux input layer S70/A70... +# module_raw one_wire_ts_input + +# Uncomment if you wish to use the linux input layer event interface +module_raw input + +# Uncomment if you're using a Sharp Zaurus SL-5500/SL-5000d +# module_raw collie + +# Uncomment if you're using a Sharp Zaurus SL-C700/C750/C760/C860 +# module_raw corgi + +# Uncomment if you're using a device with a UCB1200/1300/1400 TS interface +# module_raw ucb1x00 + +# Uncomment if you're using an HP iPaq h3600 or similar +# module_raw h3600 + +# Uncomment if you're using a Hitachi Webpad +# module_raw mk712 + +# Uncomment if you're using an IBM Arctic II +# module_raw arctic2 + +module pthres pmin=1 +module variance delta=30 +module dejitter delta=100 +module linear + diff --git a/target/allwinner/v851s3-fastboot_sl100_front/busybox-init-base-ota-files/usr/bin/hotplug.sh b/target/allwinner/v851s3-fastboot_sl100_front/busybox-init-base-ota-files/usr/bin/hotplug.sh new file mode 100755 index 000000000..85ef2c556 --- /dev/null +++ b/target/allwinner/v851s3-fastboot_sl100_front/busybox-init-base-ota-files/usr/bin/hotplug.sh @@ -0,0 +1,42 @@ +#!/bin/sh +: <<'COMMENTBLOCK' +# remove +if [ "${ACTION}" == "remove" ]; then + MOUNTPOINT="$(grep -w "^/dev/${MDEV}" /proc/mounts | awk '{print $2}')" + [ -n "${MOUNTPOINT}" ] \ + && /bin/umount -l ${MOUNTPOINT} 2>/dev/null 1>/dev/null + exit 0 +fi + +# add +if [ "${ACTION}" == "add" ]; then + case ${MDEV} in + mmcblk[0-9]) + [ -d "/sys/block/${MDEV}/${MDEV}p1" ] && exit 0 + MOUNTPOINT=/mnt/SDCARD + ;; + mmcblk[0-9]p[0-9]) + MOUNTPOINT=/mnt/SDCARD + ;; + sd[a-z]) + [ -d "/sys/block/${MDEV}/${MDEV}1" ] && exit 0 + MOUNTPOINT=/mnt/exUDISK + ;; + sd[a-z][0-9]) + MOUNTPOINT=/mnt/exUDISK + ;; + *) + exit 0 + ;; + esac + for fstype in vfat ext4 + do + [ "${fstype}" = "ext4" -a -x "/usr/sbin/e2fsck" ] \ + && e2fsck -p /dev/${MDEV} >/dev/null + /bin/mount -t ${fstype} -o utf8 /dev/${MDEV} ${MOUNTPOINT} && exit 0 + done + [ ! -b "/dev/${MDEV}" -a -f "/sys/block/${MDEV%p*}/${MDEV}/uevent" ] \ + && echo add > /sys/block/${MDEV%p*}/${MDEV}/uevent +fi +COMMENTBLOCK +exit 0 diff --git a/target/allwinner/v851s3-fastboot_sl100_front/busybox-init-base-ota-files/usr/bin/ramparser b/target/allwinner/v851s3-fastboot_sl100_front/busybox-init-base-ota-files/usr/bin/ramparser new file mode 100755 index 0000000000000000000000000000000000000000..94669586126d546ee47d6fb475df21d28323cef6 GIT binary patch literal 54892 zcmeIb3wT{swKlwVlAWe$XwwVOrUh1SkhZz(T-qk3VD3$5ZsY>3f~&j9P7|6N**m>p z)k=E=5wr?wg(^KB)XI-q&xfBJKhP>1MGt<5qv%18m$W4ZtlU%-RJ8y5jydPrbFU`I zdCvd*&-eVltKC`iGUk|Lj5+3*V_w!;@2+od2!%q9xze0`hp|X@$SKFY?%(hy!wHu= zu9JzprOw5;JCaupNd8VB&R-b64E)mZdqsXB+(XVng!yA0aVKk2u?78(!yn5tSMo;@ z98HtoeMs1nzl-p@1ivEu7UQ=DzyHp4o-RDgLXxAy^Khq3C{tc+gA4JS%?K{G zL?6a{+M=;`brWi}n3P zLh29UDWm?ZkigG_RE`Dme;tTZj^=U^XbaHC{%0;1fzKh|=J&b){PIA&DiF^M#9Iw= z+=>6oR-F8N5b!p?-GTBq1mJrD`QH!Ze;N5U{iOl;8v%dcwMKr~&Uu0SzeoN9R(rfB zkbf#r->t|`(m&UE1aZ6mZv^1?1@Ns2#BT`1?+%ndKajuM%6AdI!-`YB4(!m5o*pl* z%+FACaB!r@@dkzm5{~Ef#>Qeh2I7g>nAbNJ9f~2nZ^ZGMx>`Jw(bZBrI5HgTif$i_ zshnh?l)RzXP&@{teZURWro4@~Z!8ugK|LVGi6_PeW5c)s-IL2Ca79F_?Anj)7?l@2ec=I^HpmZQ~sSQ!nor`1*OrAU4Q5 z2Ch-wF>oe$$DkIfD*R=r>XGLzK3jY;W1?^}W8&V)*%Kd}$a?u}lh^e_VBh-SsSCb) z`>E?*dw9}>yR2}t6|S?w8?A7;6)v#CE3EJmE4;u8=UCwkEByMaNqSzf!p~dbXRPo~ zt?*M;_z5fgm=%853O{ItAF#srS>YpA_%17ayA?iYh4)$EgcTmN!o61bIxE~|g_{}X zb^PdQXX5DT+}wL7L%AQEIL|qHa?Xhpr*ob>dJ?(6dMt*vj2t~Z1MQvR?mv|gxnpu+ zZ%ksR+iP!xBaCZ=P zZZ2p}uR412XP`}JK%L+wdjaaW327nJ<3t{t%-#RUbH_D~T9j}{aNj9>qMPTLv?`qj6O&g}q2Lzi zG?2yxL^kFPJu7E^V#&=qbC!S1@8rJ7=2IEaHKyIhvd&1&c?@mFx}MN@)}g%V z+ZpKR$H*`GcQWn3lrnf)(@DO2En4A<p)@g9OZs90=0~`y0qiGr(8H<#DQa(%G07pJ>R7`^-$HFn| z4R9<3j?1ROvCzWt$3G`^Dk#$>zybH~+&+MISz+P$rG*1-W=gxP0FJQ6LEWbPp$^VK zf4J=I*}JL33!xjm=!2BYCoEh`&YsP)`{$RCXLN>oX~G=i(%qUA{WN(tT+W+>%YBn@ z95aLUvj5$ycsPwQ8Mb6X_{w^6^Qm0eI!BMuhhggu!#=fFD*Hv-ei(A0oxo_G$8xnO zzfI@UejEFigF4=cI&x8-vb4*rW1ZTj!!CutL>F%3AwGQ{<6jbGxhONRm1f;5xATj!I{ zw8()8q0@bIvJ2%oF4SoqSR%NU&3qC%!1}IIX(CHAZWvis|Gec?7UXH>rC_DHVM$vaV=aq>%A zpGVx*b$Hs@qW9Eu=nwUY{RjFhzLCN6DCt03vF+hEy7AkH^A~96BY<}zKae`8LzL;E4KrSRcGhbzRxJL-3xB`n#EYeC zI-k$VRyz7N&vG`NMSrIJx^lEpXao8b`d;mowQ^5eqx>(nb1UjH`3H1<$jWa}Jf6-6 z9_mklzDIDc+Mw(x>o9hp9DR=TSD+76uwBqbSfkD>&xKvowEyW()RBqPtJ0k_wXh4M zEepR2w6*EWuK}h4xXuc!(x=~^J)8Y#5$!{b{Oq!cJkSC^lsx64emk$Z;NHo7R(=-p z%~-V&vVS98^x@Dq8#gL`sAEB!g8p&$?V7(Q6wRl9o#vcj8Mf{1kRA1z^nFkBv=MSU zCm*o%jW>e#X92enGF(WR>+yv$A%2@bTW-wO=CAyJ$xoXFaXh&Or{wH9T(B}{6PQKO+j=P+X8@-~h@^Cb6_!Evfj^V zd?E10whW`+W*~jkq6bT5!Uy{WmeZ!B|6>;XGT1_!F2myoOkGt6PEAMWROR-Ya`5*^ z^IkumN^`A6gONRHrfv6qMaYcp!+HLZvuD2=(QU;sz_cUEo-yrKp!4sUhNrDoomi^O zw)x6OU1^j*+GQ%ft}=YIA2>BtevQf3d|&RzQ~Az9`e>kCHfX&n(Ph{t-Yk8l>@rhd zfIgF-XYw_D^Zj@#eG`8?`>VzPeMTo{TJ$Y_1HJz}aB%FU-cKjvb9DR-^!_=GFR1rl zMmm#}WAKj7@VpIY|e z-5NLB`{}=&6`iKt!Cvnf&LwQVeEUFKfPTM&^+RXbU${oaH8jk%f3mP@@g!}+JsNkq zdvM~J4QhOJ9Qr>uPus`PukJVY@aOPnXp=**_w)xDz8$=B3_v|+YW4V+g)#7eWtWYQ zxfJ!+TIse-mIv~T&lEfqp7@ur#YzOS6Khrn7eq=#cv`D>X4CMTr zw5$LvymS4DYjbvat{obh79woqa*@Rw?br&+7;+^p&H)%EzUgp1XX#J2g^T{@3e;oP zMd=$%hr_1lD}TVc5$ZKAw8Z+DKKJ^^_4?K;qSyY>a@oW+wrM>=K5 z@Xz4a)Bz`b1({3ecC+Qj{3XDFEu}N8e+kMOnLn)SVEc2On)#foEa9C#D(Hc(IvfSq6CIjcXc1XVMqu zQZ7eNehR$WGP7kFlwUUL+5#NLm#Y9zCQSd2e8ETkiAk$Kn#><=dg#RiH~iv-OKZ`b%=dJQ_R<^DT_jXk3L?Y?H)Bid^AiH!k0nGW9W-}Ar^`x@o>pU_*@ zN1e-ga`UMO*OQ$6bqjXEis*Hv%~%T|%w6TmE^&U!IOnWQu*F>W;2bB{Iq@53)}t?k z@ViQu{si*LLSK^o60Ds1l(OKxXz&Y!Q7ntKgU+2L)X>V z#5~$=vnCMan{D`IwBZB5{YLXVzu&HA+my}C zO_o*bn@3MRrezSBLRNO!EUT=l_vp!2blIgSYjiibPIZUY*&`LHI?HjMWjGezX6bG_ zbazg6?JMcf-Q~LNnRbazW0}V_t|#=JI=p0~(r4nU(Bb3A->Ab6Al#_K#}Mw);rld> zqx#PF{SDgua6sQL29LgeXnlX6V*cb|t?wL{w-qGy{THutJttM)X8?!2Z-qT5U*G8u zzKk+B19ZmpW%lR(CBUiI8-9g+yT6p7ybU{Q!A<}cvJ%?@9nOvd@B1uU@IKvl*ngU4 zt2I!rgYMHfer%P;zVSKxj_ju=^3!Gg|49D1eTR9*RyV>{`?Ax0>jY$H?>jX@cWGw` zmxjKC_1wJWg{ptk2etV;Xz}?)i_Q?}q<&B@o~Tg%0C>+^2E0tCp3on8TJJT>nkn`( z*>|xQk{wJBt*$*qJRDo#cjP@~_O!u|q`NmyB-7LyD{Tbpq5V4xyzob`?U?j$Nt?|J zeKlj#x-DMb$?*U_@pQ0PS+KtYtdW(pr*3EJ&ml`zy}AtN5~biLXe($NA1A-CjYo5! zckmxpqm18nmflxbc(+-!07u^A&^FfqjS+9Nc#^x>N_* z3yqL{G7a+=^q&gi(6T1Y)7fj*%{C81ZjXWAH)F49gHOCk*bKlv{3c{}+T_QsO(`tOVrpZWc{V=DY?e~fXgaf17EhK4LB874jS5on(t z)OvOZc-cqk7X-(U8a;-{`Xpd%zvtzR%I-7I_!iWK2Y_!0)`rbofO<)v-kcFgAb*0o zqWz5}C_@_VLRtuQ*y9uDey^;@xfz^Q;JlCLQ~Z4)^f5E{JD_+Fn+vZkoBR+D=hODw zF9nyjKlJ}N&!AqyR%cgh`^+_HyRM9jlH3;fw|xfa~@7G0b-+HkG~*O>~J zZTgpsc68yZgf?)EB&kO(^pSg#HogK2-&-tv+>bP{8I?AW1qkNh=pdV+Zs@tx&(W*DgsuyEJwz~jlAnb8v?ty1H2AJ`{##6Hs}ED)*IO)Bf|plVZssgr#DlE@-=13-((re%amb%HsJ!4w{?LwFF2mSZ@4=J z9^*>;d1_p_3w*QB{R{b@Vn5OB`d|_I*8mn?2HhKzZBmqiqpeLED8jF9UzX($8(W zPAv-`C++K%$V1yC`xNw%WBz@*Z3>ZZaMIoxU1d7uK%8HKu2P0?W17`|=Db%eY<5QA z%-0eC2loW?k!1m+e1;hm><)XJ1jY zaL=#LYHN-Mi%_-}X*IB`w5cJzzQ}qXv*fl|@hEniZA&@ZXT%EX=1&@$Da%U2Ls$GX z$T0)y=?ag?3dg1MXwQT7+IxwA2JOcF8yzuyXAAlk?5EH|9Sr7QhkUjt%hPwJ|3n=# z<+mZ9d9+28y@C5S&gj^3uzk^gq%5tr4)$%ViTHhcOK#FGTxZ#cZLkrKYn?g_d~An* zRd{8b51yO(<}cLx2KzSqJNv~(@O3nBHZWdpWp|FLQY&P%{o{RVI^(0NstAr1Ov zU^Zqdn1=v!;4Pa^nSA$R;L`J}FX=qC>mD6WD@d++d_t#fyj0;Xu*!bQDm#F14r~$a zKl=*WBir^zFC}U(#o5OWA+i$b$;#}K|BlqZX)bF354M^X2kS6m?^u3_}&o(#&J-%x} zQkQRqtXI56*?~ir?w$aiTLZHG9C4#R52z)?eha4H_aN{D`5i*qU*or&G)=>AEAsvt zzgGihI)0ZEcYt5Q2l+K;h+;THE9by&GYRg`8|IlVA!YdE4TU;>sn0**4IhUn72wMWzj?8#WJHQO3?Q^}x5vw$o>$t`k;WgH~P7 zf)}&qwWvV#jR^f)eHM>(+J0sa%Dxdz<^Khmp0sG%^jByqe*>DX)HInrv!I;jAm7fj zcfPwu>j3-voCVJ5=d~W6`SrQ$U4*~cg0H^#=;_xr{LiO> zH+n<-bAdm{!Fm#Wx9wHvRCebiAF={5Sm-I_B#9y{Nla3&w)-OuL#mixEy-TwJ6g3yyoQ@ z=!$y2@8${m1k8I5X`JJ7U6KBQz$1<8aZIDH5VQ?Ar*}8uoC&Of;$Gc$0Au{($!D%s zapH7Q{`sXJo^*53ZkN30l~*-w1n)PjjS zCf`W@qgLIwpl;Sj+eCZ9F#7|Z@6GE6E#!gmnC>5@zpT(UkY%`5Ei}KR^u(#sG<#Za zw7xv2X@6eR{$J6T(U2NDYNw%>XZx^@c*e-_2@PKbcs%Ma^bO2W^hEzv({)nO8Pw;D z-1p#lqNLu=hTi5tZ{a_m%t}*qES-jqXFvznW6imn5_9fm^{X$k?M?a`la8}b+^;d| zD@}Udt1lW|6Fau}doMV%zV`y3pQu|jcd|g!arUL8?r_hA?NFfG(X?p+^rRc~$~bGa zG0yzwQP(d+p3zmVCr~GsX?WTt`)rO`>wFM%mt*kpiPOwKI3F1;g?zYYgzyl?wO@ih z_9NP!Aw37-n%E4DpZ141s7GAyWV*eFbuH+zpL2bb`1BmESMxg`YkZ_Ln>f)<#~=gl zUpJyG=U=3Yav|JN%%R!;w&``WUjrZ8<*2*a-_!c6P9x48JRc04gmKZQc|V5o+>2nJ zXFS6Cp&J~lX5&nh!0K@Y`)JwZmuUqjV2cSq!8518SEcSNP@cH*`CNG})&MQt%Yf|Q z3!lsZ{t@5~+G?y>+|4~c!RILaD|9{FuOQwC@ERMO1AOFXkJg_N@X9@jn{jv1o~HjF zgKn6$*)ZgI40YV6%WMZM=QUW9l{39xlX!CeNx7MIPNOd)dYzN)%=UhxIjqqk!cvE} zDE#oHk~+ls)h?v7zk{FC$1w&nZ1jnJfb~Rhr=7eJum#|+fbg(q?*~sDyUaRXA?wh3 zbq0Jz0B7_nq3dV4ccMK_-hfto9su1m%W`H=km@zjq4V z8p4|BZk>o{yE>o>k8`J`;-YIx&o8aWW&^f%&N133DcER$iC zq3vNAxd+Nz3^L)*Y@$9dRELg{C;&pMp7;x+#90wV;`$q$KHtEN$ezTA1 zXeTKP{gra)C%m(t@Xmh1vg{|2;k5na)4(-VKjC>?!H0e#_;fw&C&c?k{p8c&m3H(Y z@(ev9-)xTr`iarIr*!}L2f!?YtXW4vuByuo)S0jAJU&I=%t}{d%&ov9^a57SEW=-; zEfd<2X8U?fBTn{r+pRch?LyqhkK-36RA_eLk)mUVCx(4fnqA-kZMl;$=7O_Rm)z)A)Y#!r5Pu?lZWXvI{Lb`VAdu zW0Swc%HL-4!54j!67cr8#{C}_&J|XfPE!VYW^htp4ey&xK5&|R_DhprYw`nnmzAOV z$|F|21#WV0j^_mIHscup?m-*8g$A!~qjrt&a~3}0puTa9%FxC%gJVem$Ee0}*uuej zgE*LGaLfwexK-o01vuDN@5Y__PhI!-3Ie)rXtU2OP$%p&3vzDUI?vM1eApHCk!8>` z_#eK$=UDV@HS}5SmuuzQXW$JT3#|MmQ$EmsM>U@<;4jOvGglaR-7e2-xLQl5=kN(W zj68$wniW=hQf8GW@4+@Hi{}jxf(~Jg(op z^g+OxbiBe%=EoTr--#p5J$kxd(@cGTf%MXE)i}PQal8vS_TYT+81CG6ehb!o)&nN} z*Y|#G2x)_OXV&Qd0l&I8NyFi56ul4WJ86GjhmTun&mi23ygIxuWl*=ndm*DgAzlo= z&tMG0n!}mt#=6gPUkLdf*pF?(oQb~50=&zC^XFrhzQLzFeaLEu_gn42F>?mW@ck1h zWzb&704IAU(3>&LS-9V@2(%TUu0JAvm!^3u;Qlw#p%-Ub*`~Nx;ePBg=qb)I&|l-+ zX)oZ+J~{R80LJ}bpRwPaw=%xLZ5fXz+_CXtH`<4{L%Mv~qBlA=(&OPZk9- zBc-KA!}P{>4amD5-?p;%dJT+9@wQ5xE@=fW(*}lnV|z3V@u>=u_=-t%u_hV^tHbNiwLgG*fnLrRg$NK0&} zYa|gJWLbn8_;yR&t9JohUYCjV+GtOI3={3ne$aq;XZP?}tY9j|8sCR6FfTy>FoM-TR9>3S|%h(!na`0P--wOQV7ZTo(_1~K+cpbcE!fxe2*sH!#FTJzQ;|*SFQ$g{Ph;ee}Fhc(Hlm_$TEbj z0&Z*%Gy-B{6FR-)L!<6ctal*lvepf%Jptb{GCrJO!C|~tR0(W+IGO;nkjDl$e`Qf= zUrWs@;-J2z#Ctc_tVT&>;XthBZ>I>WxHqpFJ_^0>zP_YEUzUQPSjE*A=eA_m6t0W6bbQyui~l6iucu9v#~i z8yQddiAWnC-Z?z7d)QA>I*=kGv@whsdnM|@drrOnSacL`O+|(1ldNlHycqw7$A`R; zK2Kf@>uukgQ2a^Mm8i5dh(f1UW!b7NH3dFlfef;WdSEbExflz>DN7O)Zuy&~@kMvf zp_`<}9Y8vUdEzu!Ot@!cI5Dt8^MOPqap=O>Xn%Cr@QBKg=j#C?2+RL4j^5z}^QbGl?^2j;a;Ip2*qiNmY3|Nq(`?|ocf-m( zq4_0FbREIBVP)@THlX6+CcODqF#z-7zyyH)0(Wp^x7_;&cJw14?TtLp zzT06M@jY{W$axOG=kY7<<*RR%{nz4fWGvBB3Cxf?^L2x}{fMT7sf@S8p^i4j!%<>geo5oC-j_ zh!0WIU}w%56bjq{)HD){4_}sm&BI%gmx9yw!B{jNb7R9a@NR8eYeUl}uf3zK)@!fc zRPVL4wKjFNb)amYyLV*V-5rGy92yymiFF*3QO%8RM{lNe8FQnfqf4E3yuP?+WQfB9 zbiQ|RU^wQCZGW?M{THe#VmlYF?Dg21jWj6=Fj*N5JPDebxf%%|I-Ny!YMH4Zv z7Q7E5rCrDC2F4P55x-`rVKBNw!LEdDCj%w4e5l35O9SyT6Bql;aYx%|xtF4YQb+Z8 z1Uyl+HEhX9Z)^j)1q?LklYG`;;8O0uq53*-PlG>xy;XLa`lrKzdPfIP2K|9;2WAW0 zu{a0M0(Vs3$Mt<|H#$D@VQMA6kHS_ygf%3j24!Gz*%TxT>=fqLbOMCjd(t?U;b}MLBeEPEG0VVF4e*404Pn%r%P{itHAXg z`(%=G?@b*2gSfgWKp$69{)TaVzd{R2$=V_aBBY8Z=s;S@^bIZ7GMUpI$K(NR>FcNa zHoTr5&e!$X>b}7(+$oj9J@3cht^6%GyF)T8vCqj>I3_m@)g^vX=z~z|2x;H85TN^OcR~{ z@#yf5c>nlFygxR)qY8xV9vB{ujU{3|{Y4l&h@*Nu(U19+UuMcV9pEs30p+fb!!^^u zrTD%JULuvooYYed#*Cd~L*t_xqPs{BB;)z>X~YNM z!@yO-d~g(>V%QA<(htRV4n{qwo%p1vUD7aiM4iWWgq$bvdm6uI@OvJ=M)-n%yZ$DD zze(V468M`0{w9IHN#Oq<5~!Pnb?j{Q%{_Vm{CyZdJX0XwWH}FaexC);P+=mLCf}pW zKrj!#48-vsXZhY4({e%~Cye{Pa7ez5H<*S8J`n#Vkj}y#@0D=ysUo@Xe3>(W^4K47 z79taGud=pAnL974Gv8XSw(uu z-!iPOLfL36x_!V2;hhdnxON0S?ViHw^-gB?jOwh=%(U$EoY1_C`Jn}&^FtS=FAU|S zEeTzmu`IMYRFGE3_Tk0$RT3m|_#PB=Wut`DpB1>JIbR2e$~WJ?qt2)l8?FXuRq7zx zf~+0`oZYVf%g2-v3PbsF9)ZSum{bI=w2T>_0JiiHG$U=xD&%Hlgz=d&CoLnq6=l-0 z!dHYM28xOt1R@QnE8T z@HgvL{F(U?C~4PU@;#+((%3}47_)|`n#gcmZLGw0KUS;V5bbG9-)k7O;F^Evd{@M4m( zaLzJTFX1I~DzL?&!tR`#NXinzteA5WatUAbU4-*N7Sm>utndn`x-+v9`Vo#u>UK1H zxI}`#UyWetQh;S=+`tl7=bD7`ZbbYF(Ybi2&8b0j!9HmF|3KvYP)GQ;q4wn&=cm0hBLs@FGnk*9 zL5eQufHCARG|PE6QehN9K}KjT{(?%U2b~sQ87;H9 zGW{z~pkEh`4E7dd0lIis#oDsM(b!mDNiim&qgbT#u=ZY@7#SJFm-GgPi{;y;B}FAg zrRC11)^4}D(=9D3UGIeUD-w!?g#GwS`B@|k|Gz*&Xl`ib?D@0OXD^=Jec{|t?u8$( zfsUl%%;>Buk%}&Kfs;Oa!>r3^H9;>jbUMsHcn(1DVO5{}KwJ)4D?Gi!b*efF$b#7nD?bDoo)r7Eca((^*0ruj^ty%czgkunDWnhFBsE`_A# z7KPrjNTpu3Xl`g;X4S%v)huGMd0`)28n~ICB!kff@4Gn!wo3qb{%tqo8?_5RRD$Dt0A}io@CY#ReA#wM8n%q5Lc^XvDtR&`A0@yo^n%o1OcC zP{-^H&+EiyRdrWeOH-}aQoY6V+{m8wed@voD7&h?hMJ}>B(Ez&w64B(UAfoUUDMju z(Nf*)wKTP|L{TK=Dyc6lt0=3ha~hhO>pPp?S`Q4J?z(ayXlU;8>aStR`mV;dIu>?z z$D%v20y_|m=fe&a499k_G6xDgkL^Cv$Bb1ja$L{Dfq}7s?c>;d^78XNPfB|Q%peLR zE+_D+Rj3Wlis7xRzO&1#Zmsh=>$|+Jj&2g+mN;H#S6x$^*XROTF<0N-+0@)dw!lWo zT5u7M^+27R_Uf)iipVXGRIYQp_O{NZEnYPWGYy!$&g$CQ?iM4(E$bT^8rlojH*R)1 zSTCXSld>gw-A%1s6<%$A&nmZvs?3j`dfwGndreB@5yI42QL6i}n}4Z?ZDNEx%9n`b zE2HMnhUZ;d+gROU=-8thv#%SUY8_6jE5}~#@DBNdl57vv>}5sekf zhdDr6-O&Qodux4LgC@7jEq7W`QRgN~s;qSVy7d4vAdr+tEiA|GKTiFOc!_>)$H%4H zqasQG;6kcsaejX9$T;?6SCtg4uUx;bvaF=6ykcExS;^Y<;44zmyvk8hYHEcFLe8BH z9o4lEhSBKm#t!UU_x9p6&^bD{Yal+bePD1Pu@?+2Q&7vOa$tu7T18H}>bG=}mC{Ig z1u7uJWu( ztGl{8>b=^It?gZHj<=<)y}s4!Z0qi*t#{YMiBZZ~>Y>FtyjE(yk}1k-f%2vWs%kA+ zXKKZEz!aAT(E%l;ssm4Rsh2FHut8447X(m$@ zj>N$=B&CAYTPQNmYgQdd8=NxsskV+fV6H*6^{sVH)$Eq#Wu?sNZf@2srmWT$bhnhN zy>MMQfI3W9ZES-aTB}>IBhOY@yB0{$uFmlC*TgYtpc`Lyt<>VWeb2I52#;? z30zl48_-N16?-KVTw6QZoI0c`Y1U1r4OdwyKs5E8^;dhfon0CH_w%BZs) zSU_1>clmM`I$=m@Zff0}q(hszk_h_^5akz^Mb=X3EjG`TM0+0D4VIeqqfndIc%+mpm;vV z6FK=pK?^6P($|MBwh4C3Qg#ejUT4a%u)YsTkcH}VDGg`oerq>+wsH;7V^s;&?W{41 zWHdn2D~vX3vn3zj_7wqYT)m~fPPA9dkD=Hapo|GnRye;fvZbWGtfYCfA7FF%L~8_7 z^!&0?0BsgnJt+HToykfOyI}C^Vfdju_1Dy^E{K6gXP0_4wO$SSohV3UC6IBjY^?5t zE<$6Qy0(h)ch}uI{*Hs&D0F(_3 zVOJLgjliceEvj<^!uKq!&XXKl2-do(qpiEWQ;72Uh8m|>bk&!s67A5k2Ks$)q?*y? zTC2O7uBjIxYb{dE26s?PpC4$)6w;h&vltGVB%g261?L8nQOB$9?H!Y`Pi!xGnplGI z;ekCOdF9_VR$o)^b#85~^=jK%+N;rj#LK(3y4@>*0o*Y-vOPK|pNhwc6VL05=kF=l zOW(xuBV9U@JUAOou;0VIf|t?f!K>U;;O33x{-lHPxdTRu}s$3mN_tPwaU6tBb8MqO|;QT+wFTmn4rT4DPI>UuPj{~ zfg@BBD=b+D2k5T~uoMEMp9jx+$1p4KX9F@g8~ygYfjEwVCk?pjUjZY;9z9Tq#(XLj@~x%zvOAR9p*(NhnA~Vav2N{lCmE0IDQPdP=!WC%d1jb25;c<7 zv@~F3FO`Li+R93`gy|Lz^^J~SF&x8wK7u%WnJC0^<`p>q)Qf~3A)Z1U z?H$Cy;VX6wkGq9C@W0G0Y{PLy=-cIErK6@FYiu zuaG>cpl=K(8VObiW$Xv+@JQkKFb)Uw7AAPU5NMecjqe@q=^q;z9vP3HlixQ!+{3dT zg_ybU&N4i2X~%&BeRD82Rv3@s^n$_)GJ1A`EF6gL!C5g%*YxaZoh+JKv9#xUW9?A0 z?harvzO_cOUgkv|PP6R^rn-Vul=|wLCf(6(OKF-?ItT0=jG##}t!wqGYr9*;&MVs? zW-$pZ3@W+<>O-zbxpokfxzNlqySuE(ni#Fx?hblkNzcc49BOb+@?~*h zs5f^QQ&7UL-cemAE)K>h%l}OdZHi=A0gh5vcQ;|G+bTY@ILyJ3FgXyu)%O&{v`sCM z62UGM(@G^Rc#7@z_(;eO9`N`2aM%`v>i(&{dU`S9(saTSY;Em=N_4k2H8jy*MV7eI z!cdC&S{qr9NofUc*l#G0!7<|mPT5R!apQLcC_&@-Vy!HKpJiY5WfkR^+(WR|ybm5n z(b^9AW6Yy=V>#qDx7BV2czwO`NU2FlZ8Ghp?#iYsnJ3jpY!iCLW;F}KbWl7FFU1Q} z1B`gw^;~Gt^ON$T%JRs%wd=~)R+N{Nmakh&L6nwLIm9niZbs4~YKe2MrrSWPs-&p7 zx3Q0EZk_C@stG8FMiED&Oxj^%I$8igw-t~_A<#RqL5xp0I5j0Q+efCG~a3|f?`vMRP0Clwo$ZQ4-z&`Bq{ zc{6nz3#3>_!{aU{Ad9IO<#ls((!)@mn47QeEH?FM%T=zVTbeWt^ya$Fv_s9g713Sr zo_(W3&wzF%S#F9o2&||ySGVfLAr!FI_N0Q;&e`2)Sz=&Uom}?_=&mfCh${kHS-V*@ z&ep}+=C?|kj7nx`Ldz!od(+#cpQ~Z$oN2!D#myR_+Vu1HnqF? z7?W0;*cz;uaC-$mE|SwBozm7QBuS%?bkU{BOm~H@m`N|zKuX27n)MaYBXR1fkWdA^ z@+b?pZi*wFT#%LZ*Y3`gR$!C8fxBJ~iCkv46?5-+?EJzaN8BG?y93NvX> z)e>A&+ch$oqH%1+=}2rtOtE^1hvp>5^F&BpjomFZoF&wET-(;MSsTVwg=E0#j2f7PrjuTww9eYEGI?RvhqcY*Q%n{?6L!X6z|ccQkc1V(X@< z)^r+ffHY$TPVa-zGnL&4;SW!E_kp z5<3^>ye4R`bYgJ})e@bhrI-^K-7cj~kkxIl#+thUx>E?m)!>ApP0W&@1+*pRkFM2tyQ9st`VZKR=e$a51PBt z@6O~9Pesa8eQ>Yf{=kOf>_EGh7#ihceangwU_YpDZjcK9pFgJ{GKP}tjW%o5qwd=3 zj)qdNwxP+Z?rahDVE6YY4a$(R`$j@4Kx~Piu-$va23%7wCdak`-nCTUskW=2DBSi5_8U%CPz0@E=OEF{rgc{l*IJum zYw4b3sZCbPxh+|%)`xMY-O%ex)`pXrIW%p$y1QO4)Jg?nF0rp$+t`d1;AXAx9Q4T& zmU-K}`m4J!D}lGF465`SJ!7<5A1fVe=^TkTw2Q?N!;Fhbt~g2aT@1aRrM=UnYu4fK zHlaSfY_Du&Dcv8X1}#@(7Y6%&RD=p;NBzZRs;hykZER{*+s~yOtrYQkppMYP$M_;1 zKJJvC>fj<@t{hG^^)^uFEQW()Dg=!tI?*})aKKSBV>;$oYCnUvuBpD(Tf4SWR&$#% z#BxOONisgF+JdHhwUcU_ZLI*tQ{kp@z*90r;gh}iH`Rv|98eHKG2IQ2PjK%>xAyQP}-z))r_J5OnL zns^2PL~v&zsg_2@U@SRJiO>w_wL1+;^4Y{ma|$W$GOFh5V=0H1lqneI&n(K#mgedj z^fhb0PKNqAd#R%YhY?CjD=W&^VYj!uqGUamtjpIn00X?5>W(%TNZAubkL3Z>60UEF zy|VTwn(FJhIbn_IvM-CV$#>hktvwm(GNQfgP)W;gcjJJl)zYWEpIJ`64N?%NJQ|z0 z>W)pFh>Mr7o0~jJ^VKxJy{_HgP;|?%$U|(Fx39cLPiZX%;QCrwLRSMZX3`wi$yljtgAd+0}+qFPk`nNS%P8{%)K{(T#81mDEiNY$RUW z+SZ7`lO@JB1G_erYS9JWNosl6tM^DJ%>QA}z* zO9mbG_-3yMhs}oYOrYpuqJMm7d#Nlj`Yw~|e0o%bm`!geaWEgl!mU_VYzFo443fvE z--fn(I0^)>c2B-c-OQXjSrQ7WM+Y-N6|HTS6|`nqK||M}1d>CVEFXY(Ifmdfk2&~S zfAK{f_rZ>sf8NJ8vcAvgTUNbqh6$>a*_%Ih=Yz zZ`#ewQ`T%&Va5(MGE>miSnq^}m8`n*$_mWhr9WUEkL8yxDhs9xeBDfm(+We5$^Nd9 zf!@`tke{+VBty0BMT-&Ab}7&$^{ScgvtolsTqxhx$&AgH-(U6gd`QcdCPe_MwUZ-@ zGgzH5aW2o$+$m*9?LVkA(EgT2L+RDsp_xh^5ioPx z&Zd^SGVa^?mfIidQ#*<7DeTki;uaKn_EjOESeiC9cUDtqv4OX?>sNH@3H-dW=#uA`mp}H3iKj%4-_hu?db03fK6n z=h`#1btJQImef98a!Lg4)eaoGR8wnvcb9HPwNB`J3YaBnKprt@#UCZ<(zW#O^*XHb z8P!1vEW*k;3Eat#HE}dNrOqAM&MCSmlN&{w--spbKGQBOZgyJVTHnzo&8Ax4KP74G zs_Fqr4Uip>^;p~H6q%Nl!nCX}$2@zChM8e=Yb&$VYCtfl1$i~R3B3TJ{QBg%PtLZ{ zcY_NYW|In)(N@Sj9&_4*SmHHw?HJfU8X4!-FXv(`}E)QrQO z%E+L0nM_fGr&y*jqmA}6se_zgo6!$A^f6fv?_wH{dsu#yLr5v>Z6u{{6o2SKO<4_A zQ-}EiA8df}22favlqCoDI?-71{OX$I6f~@YoP6yYeKSXHM#muBz?mEE?02?{Geu3X z^sQ4)2d3(qe=JdW(UzJ*l#`g#NYTuRlj@*$X=O%lRw37jCAQT(e=#Kz}tY0Y{>9btI{!2Dr0Y!IGP)oImY7 z6O~MtmG!|qp}tx*rFQ*kr_SkYrjLmaJI(P&cI0WUlw-H-R%j-+T!TNGlt~JFa;%() zG3JnT&hEH>USPUya$_(s7e4W5?1dxPN!MZEU1Y65g zEiX{2ouZVqv!>q~^{J&6chqBimwgB&DBX8sy-sv|k3Yp`y|vY?ZP>4n6U;_G%}N41 zDt)q@`a!a+$whL1!afNR2-josQ7(s|QPP@UmaL~OI}c60IB zE{6Fm86N`UV`O~%%UmX(d3^SqdB?5%3_eJQha8XMPr4II4`qha=JP4!j2SZy<9XkV z84vPrdRjP~_GLVzn4XapPWvGqj!Vy&Ipe#?N}r!L<39!PB0N`{k&zzGm@$A*dS?2J zy}ak8&GB03V@#Rx6ZzYVhch$688_mw%Jj^fj0`@w z7j`~{uONk;8}S%k*m?UJ{=ERtIfk8mcwjH=ynZqN{yoZvoi8rq-y?XIHtcNY1D(!R z&>D7b5)Aj?p+Mj%;NM?M%J&3voxnV^nCW3WuNro~y@G$A2ZdqhF3H`>r;nX~le*p} zRJ|m%-zcT3gr0ll?_#ezao_UNy=U+I9E%(4-0MSg5eIq zKewEv@a!r6PDrW4^BAt@!{yGreEz)!4HkC3j0eKQ&I^KPzhK@EF@~LI&^lq~PJw)f zga^?QVdtb!a;@O36HvaW4NJ;WO7xo6EnKNca&+e@I%S9(ojZ zF5lFGRZ53AY*|1YE! zpruH^UF7+~Y=*}K^V5>@HA%S(&%K77ugc$Ck-!{j>(2^?9|>O%3x&_{0dMEpGXDLM z)b&fDe?;2-(}L|CLhWay6-q_B_LUO;9;x@8a~S^PD*i1NomniBzfNk5icY>y{!U8k zTr8Mh5w71Qe0@T&En7U^`b4?MXFyBY5zs2 z{Wu;54?EkW#SaS2=L!Bb!utzSwpQBZ8IjL2X}g&slb;IZIG_LwPl#l`C%GSxw*D8P z;VYtJ|0I-uM6msv&>0bVUMh0FPk8xfq2bpenJl4Xv6T9nNNKLX{9d>?EG>RWGiyR__m0&{vEsd}I2NsUl`p44@fQ2wfvjSKv(Qsb9}{{IllX*0tPgo?jyg6A(H zw}Vp4pQXp06s|88UK)i*S7`o;wAySbMGF;nyw&`BouuC+Ej2@W>p`&qUy=6xnCQ~W zqT3u^m5_r zS&`niq?QxXBJ-r)_X^B$p|D75d|5bpO!VseLhUc5-hOGL>jnP(LcVQ!n^`F1Z&Arz=F~H;R1fMHBu_FzgZ99+$ssizt~ti-y#S-TOzu@FU@Ol}PnN z!s9_{&9_R6&k&qP1^M5ach1B>3k>nC-uScX! zuasW-Q=#+6!qIPq&ff_Q-xp2$WE$&zRZ3kTwLehIlpo`7rt?MVHSYp1na&?1w_j4$ zNbT8Z!AxhKwAZ83Izu9#-GVc;hIlTN8jni*J}Wiefu5V`Os?eL|3tfFIuim}Dco%o zIjk0H{{U>6&UYZCOlKuzlIirJ#WS7r!Cj`a2n~?wJS)5}m0ErvJ^hE$UhffoI4zu( zN%}`cC;Oyb{zEXtr8mtJ?R}?|`i<27OZodHX@y$_^JBvGYa;pGfE2$cZ64zbUYn1< zc`GUXrCU*}BUT~0!xCk)YPe2qjn<9~yFMJ``o5YGN*D#xrRDd-#_dd~A~ zu=Cs5U>A%seBlIePs7HH_mJtF%c&aupCy*Bhu-1h_OrCNp<_(X+C|$b(~DoCTrQ)` z(pKZSZ6~~@4N}c4Tn&B9Eb2z}nZ@%Uqj2OfTe9SB?7^jAs~dyOq$ zG066;ypfO_?tvzTFaIdZZoGxUX)I#PH(kPZy(&Z+?+g8y^145?2jwz<6bgf+%zqF4 zJFFks&CKE}fimS4K$+RMQCzuS;NQ7N*c9`&qj5wm={He`nO|dL%~(*PQ_p*yJ!N(; z>$~7bNDW{352S2i25DNT1dJlW|#or<1C3DD|n*c50rJtfj zUG`2k`SL5-A6MQ_4p(PUo7TJ?m4*vC$!Fmj(pdCo;w*OAfRV+lv80yRN*`cK*&yjD z53`S~{TLNx-LF{7h767!m;Zqcx$*O~16R}#&y}BEg}-m9CQQ{qVypglYIyw;<~DS& zEjMjhfxnHvVJ%Jk#6kF~Ybo)~KTpTs=B>ogGEU5G7c<=c0m|pbE6K~?y*c`V8s0@l~qeST|wf_cJ$vqqa_X{6WI+ z`WkWWp3A>`9;U4JZlauTI!rmd<42@+-)-dOotF~ZyFSUX@BY82Py0iY6vul)pXYdZ zbLavJ{6Odq#tw%1sEU6V8f5M74ONlhTS9*!$G3)x*%0pweX|_5+d{XN;r9Mem{#ld z(4A!Xj?nM2aQi^$Ml$=s&|iq`P-wwS+&&b#it_w$sGS16GjxVD-WBR&4Ic@$v4)R^ zenf$NER@f-I2;^1bpKkoT0=D>MbTFb9=8-{q#_ zss!KVrsAj+7vJ&5E1lSJ@m+1a(lI3P;yc`UrNe~t;{2Fbx&t}m;#`>$Hs__^^Oo+MCsDqej#s*a-h#`#2QJ-#lyULh zbG*{!6-|z_=SCBsE9uAlIJCgJ(&bHb$%J(OjV>xJ-G9TKiNiEoSGq%EoV?NaUEa`^Oh|Vw(k-acGMrzZg_b!+zIcC>wwkXO_Ur+pDAorC(VKll&3?;L2p2{3opV4Z!yb@L@#u@ntoo!sl3V;(MSiHUGF3 zXa3=i)chk>ocW_&srd;j&iseEQ}g*fGj+{8M_&nV^cAlmbM}EB6Q};#7v+B&@{N58 z!9LxIxUo+mzSa%}jJ*V;$oHV%f3hV1RxAEFls6Zx*OvnEhY)wmLryvF^UzSpq=I43p1)%p`cFBM-#ZaE7wNkP@q_D?{xYBMaE#2xd)83_;}0YL zH2FiE^860sgLq-zE4VZNKHOz^5j z=UQl4udl7Hm7;?C5!T84l@b@CVaWmG-acBPVKt2~tj{5C2*Le(a+K&fydmMnAo*qwg zdQms!`~5)qA0xhT7l1)O^M8pr?MXzJ|Dy#@{yA+n7x`I&xUC=gf&Ah?ycYEQ6#D+S z#=j2v*Il0MUz-B(t%3M8h;PK4n`DvR7~;7Xgq+v3{P!bnx6iGC@*hNe|M?-O3*{-# zdlBdOOnmb&K7Tp@|9Ql#ILFuWc^L5re0k4v9!2~p^t(~l|0LquO3|J=ehTsXz;A`F z?pM-?_Yp-2Wo!zAkOh^5UwZbxy6Eaf%6kqob~g0Q9diW zBI>N@)$apM{SHOowV?Rm7e1{wFqkOb(bH2b+opwkD%Q!{8vR#-7RvVp3;AMD>ph{{ z@vcz34HA!nNm)EiRLBo2?jB1NDm;Y8`!e{Z;9_~L3BmpUZwybY;ANm_PM;yTOU1QO`9=;+sw%6&y=Q{ABS9}~~FJJPB zcYmO`JhpG;;0(|}BBhxBZ5bh(FCFo`qIGL=P5^I(yrmdkt-pg3ccf>iP;|V#&jFW0TqkHi!K79XfH@-H8_w(S3 zcsz*BkG6PVb_l}3#~-~xd{cDLi4UtoM0jIk0^ifaemO9K-NBgChf;BTEsyU{^1ops z?;8VYT`f4jC4>P!&Tk6h+lY8^=tv*FZ8C_L82O(W^zeZ`el*3C5Aithodctud@jzz z!7jWo1>e@e^AJF}Js#JG^?B~DH$H+_Bo6n2kkpT;kTpC7=iu8Z_>?I*p_CQJ!Xq-| z**X0|Bl$L@m93KnM8t%*y#Phu2qdy2+Ot;)i?r~YetkwfkSksc4Z4z=rCK_PNC`o3 zId}s?Y$wh{cD3NG0ZJ1gGU{QMeA8618yoIL(~=W@Ey|0lZ_VJ$$Qb@R{-X;N06uZY z55Owy$Q|w(;%6w)%n-N9WyxW-zivmq98LilCY`vvr^x_NU`Yl*osUUKPcoZAd>`$S z-C~p(+L4^_%@3qkshj=`Umtp4JSJZkWz(r|>3HVtn>Yo(8@%C_K=N%`sEW_1hwerZ zfiLpgGcvkYLkiW>FP*q zaeZzOfm{GFkGOc}x((Jtr7YpNZnqD}`Ar6MnP4RnxcWvouIE)@sgC9CdN~)Z!H;mf zbDggpaP)-;M|jptxXt(xH{Bo3XZn$7&wdHVs{ua)r@qgC`L-bnd4%KdY736@jR+Qi z6D>&87whD8Eq(?c{oMPIFjc+RYdG@D^^N0z+eQZTW#~hH5PXE=JU+Ky(G!HDE^rM* zmcgL(kh?{yJ55OG)+&`08eHk2FcQj#Ub?<^+TL~t3 zDggJ9-H!7wCezA$(F!BzY}<>uGz0oF?eZtYS=`9wR>0wrU;knrf0_8hyScvl1@#Sd z6E}Ht18|WqqTd-H+>Kl=3Bc_KT!IRzFCQP`mbjb?o`fElOyrp$@6>s7z4D0T?8oAk aiv(^qk>6bWXbWt7iSIbhr!0Lj`2KGxRV#@A literal 0 HcmV?d00001 diff --git a/target/allwinner/v851s3-fastboot_sl100_front/busybox-init-base-ota-files/usr/bin/run_otg b/target/allwinner/v851s3-fastboot_sl100_front/busybox-init-base-ota-files/usr/bin/run_otg new file mode 100755 index 000000000..7635af91a --- /dev/null +++ b/target/allwinner/v851s3-fastboot_sl100_front/busybox-init-base-ota-files/usr/bin/run_otg @@ -0,0 +1,68 @@ +#!/bin/sh + +MODULES_DIR="/lib/modules/`uname -r`" +#insmod $MODULES_DIR/sunxi_usb_udc.ko +#insmod $MODULES_DIR/sunxi_usbc.ko + +mount -t configfs none /sys/kernel/config +mkdir /sys/kernel/config/usb_gadget/g1 +echo "0x1f3a" > /sys/kernel/config/usb_gadget/g1/idVendor +echo "0x100f" > /sys/kernel/config/usb_gadget/g1/idProduct +mkdir /sys/kernel/config/usb_gadget/g1/strings/0x409 +echo "20080411" > /sys/kernel/config/usb_gadget/g1/strings/0x409/serialnumber +echo "Android" > /sys/kernel/config/usb_gadget/g1/strings/0x409/manufacturer + +mkdir /sys/kernel/config/usb_gadget/g1/functions/uvc.usb0 +mkdir -p /sys/kernel/config/usb_gadget/g1/functions/uvc.usb0/streaming/mjpeg/m/720p +echo 1280 > /sys/kernel/config/usb_gadget/g1/functions/uvc.usb0/streaming/mjpeg/m/720p/wWidth +echo 720 > /sys/kernel/config/usb_gadget/g1/functions/uvc.usb0/streaming/mjpeg/m/720p/wHeight +echo 333333 > /sys/kernel/config/usb_gadget/g1/functions/uvc.usb0/streaming/mjpeg/m/720p/dwFrameInterval +echo 333333 > /sys/kernel/config/usb_gadget/g1/functions/uvc.usb0/streaming/mjpeg/m/720p/dwDefaultFrameInterval +echo 442368000 > /sys/kernel/config/usb_gadget/g1/functions/uvc.usb0/streaming/mjpeg/m/720p/dwMinBitRate +echo 442368000 > /sys/kernel/config/usb_gadget/g1/functions/uvc.usb0/streaming/mjpeg/m/720p/dwMaxBitRate +echo 1843200 > /sys/kernel/config/usb_gadget/g1/functions/uvc.usb0/streaming/mjpeg/m/720p/dwMaxVideoFrameBufferSize +mkdir /sys/kernel/config/usb_gadget/g1/functions/uvc.usb0/streaming/header/h +ln -s /sys/kernel/config/usb_gadget/g1/functions/uvc.usb0/streaming/mjpeg/m/ /sys/kernel/config/usb_gadget/g1/functions/uvc.usb0/streaming/header/h/ +ln -s /sys/kernel/config/usb_gadget/g1/functions/uvc.usb0/streaming/header/h/ /sys/kernel/config/usb_gadget/g1/functions/uvc.usb0/streaming/class/fs +ln -s /sys/kernel/config/usb_gadget/g1/functions/uvc.usb0/streaming/header/h/ /sys/kernel/config/usb_gadget/g1/functions/uvc.usb0/streaming/class/hs +mkdir /sys/kernel/config/usb_gadget/g1/functions/uvc.usb0/control/header/h +ln -s /sys/kernel/config/usb_gadget/g1/functions/uvc.usb0/control/header/h/ /sys/kernel/config/usb_gadget/g1/functions/uvc.usb0/control/class/fs/ +ln -s /sys/kernel/config/usb_gadget/g1/functions/uvc.usb0/control/header/h/ /sys/kernel/config/usb_gadget/g1/functions/uvc.usb0/control/class/ss/ + +mkdir /sys/kernel/config/usb_gadget/g1/functions/ffs.adb +mkdir /sys/kernel/config/usb_gadget/g1/configs/c.1 +echo 0xc0 > /sys/kernel/config/usb_gadget/g1/configs/c.1/bmAttributes +echo 500 > /sys/kernel/config/usb_gadget/g1/configs/c.1/MaxPower +mkdir /sys/kernel/config/usb_gadget/g1/configs/c.1/strings/0x409 +mkdir /sys/kernel/config/usb_gadget/g1/functions/mass_storage.usb0 +ln -s /sys/kernel/config/usb_gadget/g1/functions/mass_storage.usb0/ /sys/kernel/config/usb_gadget/g1/configs/c.1/mass_storage.usb0 +mkdir /dev/usb-ffs +mkdir /dev/usb-ffs/adb +mount -o uid=2000,gid=2000 -t functionfs adb /dev/usb-ffs/adb/ +udc=`ls /sys/class/udc` +isudc=0 +start(){ + while [ 1 ] + do + sleep 1 + otg_role=`cat /sys/devices/platform/soc/usbc0/otg_role` + if [ "$otg_role" = "usb_device" ] + then + if [ $isudc == 0 ] + then + echo $udc > /sys/kernel/config/usb_gadget/g1/UDC + isudc=1 + fi + else + isudc=0 + fi + done +} +start & + +echo > /sys/kernel/config/usb_gadget/g1/UDC +echo 0x100d > /sys/kernel/config/usb_gadget/g1/idProduct +rm /sys/kernel/config/usb_gadget/g1/configs/c.1/mass_storage.usb0 +rm /sys/kernel/config/usb_gadget/g1/configs/c.1/uvc.usb0 +ln -s /sys/kernel/config/usb_gadget/g1/functions/uvc.usb0/ /sys/kernel/config/usb_gadget/g1/configs/c.1/uvc.usb0 +ls /sys/class/udc | xargs echo > /sys/kernel/config/usb_gadget/g1/UDC diff --git a/target/allwinner/v851s3-fastboot_sl100_front/busybox-init-base-ota-files/usr/bin/run_usb_adb b/target/allwinner/v851s3-fastboot_sl100_front/busybox-init-base-ota-files/usr/bin/run_usb_adb new file mode 100755 index 000000000..28208bcd5 --- /dev/null +++ b/target/allwinner/v851s3-fastboot_sl100_front/busybox-init-base-ota-files/usr/bin/run_usb_adb @@ -0,0 +1,52 @@ +#!/bin/sh + +MODULES_DIR="/lib/modules/`uname -r`" + +insmod $MODULES_DIR/configfs.ko +insmod $MODULES_DIR/videobuf2-vmalloc.ko +insmod $MODULES_DIR/usb-common.ko +insmod $MODULES_DIR/usbcore.ko +insmod $MODULES_DIR/sunxi_hci.ko +insmod $MODULES_DIR/ehci-hcd.ko +insmod $MODULES_DIR/ohci-hcd.ko +insmod $MODULES_DIR/udc-core.ko +insmod $MODULES_DIR/libcomposite.ko +insmod $MODULES_DIR/sunxi_usb_udc.ko +insmod $MODULES_DIR/usb_f_fs.ko +insmod $MODULES_DIR/usb_f_mass_storage.ko +insmod $MODULES_DIR/usb_f_hid.ko +insmod $MODULES_DIR/usb_f_uvc.ko +insmod $MODULES_DIR/sunxi_usbc.ko + +if [ -f /lib/modules/4.9.191/videobuf2-vmalloc.ko ];then +insmod $MODULES_DIR/videobuf2-vmalloc.ko +fi +if [ -f /lib/modules/4.9.191/usb_f_uvc.ko ];then +insmod $MODULES_DIR/usb_f_uvc.ko +fi +if [ -f /lib/modules/4.9.191/u_audio.ko ];then +insmod $MODULES_DIR/u_audio.ko +fi +if [ -f /lib/modules/4.9.191/usb_f_uac1.ko ];then +insmod $MODULES_DIR/usb_f_uac1.ko +fi +if [ -f /lib/modules/4.9.191/uvcvideo.ko ];then +insmod $MODULES_DIR/uvcvideo.ko +fi +if [ -f /lib/modules/4.9.191/snd-hwdep.ko ];then +insmod $MODULES_DIR/snd-hwdep.ko +fi +if [ -f /lib/modules/4.9.191/snd-rawmidi.ko ];then +insmod $MODULES_DIR/snd-rawmidi.ko +fi +if [ -f /lib/modules/4.9.191/snd-usbmidi-lib.ko ];then +insmod $MODULES_DIR/snd-usbmidi-lib.ko +fi +if [ -f /lib/modules/4.9.191/snd-usb-audio.ko ];then +insmod $MODULES_DIR/snd-usb-audio.ko +fi + +cat /sys/devices/platform/soc/usbc0/usb_device +setusbconfig adb +adbd > /dev/null & + diff --git a/target/allwinner/v851s3-fastboot_sl100_front/busybox-init-base-ota-files/usr/bin/run_usb_disk b/target/allwinner/v851s3-fastboot_sl100_front/busybox-init-base-ota-files/usr/bin/run_usb_disk new file mode 100755 index 000000000..33f0fecf8 --- /dev/null +++ b/target/allwinner/v851s3-fastboot_sl100_front/busybox-init-base-ota-files/usr/bin/run_usb_disk @@ -0,0 +1,37 @@ +#!/bin/sh + +MODULES_DIR="/lib/modules/`uname -r`" + +insmod $MODULES_DIR/configfs.ko +insmod $MODULES_DIR/usb-common.ko +insmod $MODULES_DIR/usbcore.ko +insmod $MODULES_DIR/sunxi_hci.ko +insmod $MODULES_DIR/ehci-hcd.ko +insmod $MODULES_DIR/ohci-hcd.ko +insmod $MODULES_DIR/udc-core.ko +insmod $MODULES_DIR/libcomposite.ko +insmod $MODULES_DIR/sunxi_usb_udc.ko +insmod $MODULES_DIR/usb_f_fs.ko +insmod $MODULES_DIR/usb_f_mass_storage.ko +insmod $MODULES_DIR/usb_f_hid.ko +insmod $MODULES_DIR/sunxi_usbc.ko + +insmod $MODULES_DIR/scsi_mod.ko +insmod $MODULES_DIR/sd_mod.ko +insmod $MODULES_DIR/usb-storage.ko +insmod $MODULES_DIR/uas.ko +insmod $MODULES_DIR/ums-realtek.ko +insmod $MODULES_DIR/ums-datafab.ko +insmod $MODULES_DIR/ums-freecom.ko +insmod $MODULES_DIR/ums-isd200.ko +insmod $MODULES_DIR/ums-usbat.ko +insmod $MODULES_DIR/ums-sddr09.ko +insmod $MODULES_DIR/ums-sddr55.ko +insmod $MODULES_DIR/ums-jumpshot.ko +insmod $MODULES_DIR/ums-alauda.ko +insmod $MODULES_DIR/ums-karma.ko +insmod $MODULES_DIR/ums-cypress.ko +insmod $MODULES_DIR/ums-eneub6250.ko + +cat /sys/devices/platform/soc/usbc0/usb_host + diff --git a/target/allwinner/v851s3-fastboot_sl100_front/busybox-init-base-ota-files/usr/bin/setusbconfig b/target/allwinner/v851s3-fastboot_sl100_front/busybox-init-base-ota-files/usr/bin/setusbconfig new file mode 100755 index 000000000..40d6f98f0 --- /dev/null +++ b/target/allwinner/v851s3-fastboot_sl100_front/busybox-init-base-ota-files/usr/bin/setusbconfig @@ -0,0 +1,345 @@ +#!/bin/sh + +name=`basename $0` + +usage() { + echo "$name Usage:" + echo "" + echo "$name [function]" + echo "function: mtp, support MTP function" + echo " adb, support adb function" + echo " uvc, support uvc function" + echo " uvc,uac1 support uvc and uac1 function" + echo " rndis support rndis function" + echo "example:" + echo "$name uvc" + echo "" +} + +enable_adb() { + [ -d /sys/kernel/config/usb_gadget/g1/functions/ffs.adb ] || { + mkdir /sys/kernel/config/usb_gadget/g1/functions/ffs.adb + } + echo "Tina ADB" > /sys/kernel/config/usb_gadget/g1/strings/0x409/product + ln -s /sys/kernel/config/usb_gadget/g1/functions/ffs.adb/ /sys/kernel/config/usb_gadget/g1/configs/c.1/ffs.adb + + [ -d /dev/usb-ffs/adb ] || { + mkdir -p /dev/usb-ffs + mkdir /dev/usb-ffs/adb + mount -o uid=2000,gid=2000 -t functionfs adb /dev/usb-ffs/adb/ + } +} + +enable_mtp() { + mtp_name=mtp.gs0 + mtp_ffs=false + kv=`uname -r` + kv=${kv:0:1} + if [ "x$kv" = "x5" ]; then + mtp_ffs=true + mtp_name=ffs.mtp + fi + [ -d /sys/kernel/config/usb_gadget/g1/functions/$mtp_name ] || { + mkdir /sys/kernel/config/usb_gadget/g1/functions/$mtp_name + } + if [ "x$mtp_ffs" = "xtrue" ]; then + [ -d /dev/usb-ffs/mtp ] || { + mkdir -p /dev/usb-ffs + mkdir /dev/usb-ffs/mtp + mount -o rmode=0770,fmode=0660,uid=1024,gid=1024,no_disconnect=1 -t functionfs mtp /dev/usb-ffs/mtp/ + } + fi + echo "Tina MTP" > /sys/kernel/config/usb_gadget/g1/strings/0x409/product + echo 1 > /sys/kernel/config/usb_gadget/g1/os_desc/use + ln -s /sys/kernel/config/usb_gadget/g1/functions/$mtp_name/ /sys/kernel/config/usb_gadget/g1/configs/c.1/$mtp_name + if [ "x$mtp_ffs" = "xtrue" ]; then + MtpTools -f connect + sleep .500 + fi +} + +uvc_create_frame() +{ + format=$1 + name=$2 + width=$3 + height=$4 + frameindex=$5 + + dir=streaming/$format/$name/${height}p + mkdir -p $dir + echo $width > $dir/wWidth + echo $height > $dir/wHeight + echo $(($width * $height * 2 )) > $dir/dwMaxVideoFrameBufferSize + #20,30fps + #cat < $dir/dwFrameInterval +#500000 +#333333 +#EOF + + #30fps + echo 333333 > $dir/dwFrameInterval + echo 333333 > $dir/dwDefaultFrameInterval + echo $(($width * $height * 2 * 30 * 8)) > $dir/dwMinBitRate + echo $(($width * $height * 2 * 30 * 8)) > $dir/dwMaxBitRate + echo $frameindex > $dir/bFrameIndex +} + +enable_uvc() +{ + cd /sys/kernel/config/usb_gadget/g1/functions + mkdir uvc.usb0 + cd uvc.usb0 + + uvc_create_frame mjpeg m 1920 1080 1 + uvc_create_frame mjpeg m 1280 720 2 + uvc_create_frame mjpeg m 640 480 3 + uvc_create_frame uncompressed u 320 240 1 + uvc_create_frame h264 h 1920 1080 1 + uvc_create_frame h264 h 1280 720 2 + + mkdir -p streaming/header/h + + ln -s streaming/mjpeg/m/ streaming/header/h/ + ln -s streaming/uncompressed/u/ streaming/header/h/ + ln -s streaming/h264/h/ streaming/header/h/ + + ln -s streaming/header/h/ streaming/class/fs + ln -s streaming/header/h/ streaming/class/hs + + mkdir -p control/header/h + + ln -s control/header/h/ control/class/fs/ + ln -s control/header/h/ control/class/ss/ + + #echo 3072 > streaming_maxpacket + + ln -s /sys/kernel/config/usb_gadget/g1/functions/uvc.usb0/ /sys/kernel/config/usb_gadget/g1/configs/c.1/ +} + +udc_controller=`ls /sys/class/udc` + +set_usb_function() { +# 1:function +# 2:idVendor +# 3:idProduct +# + + [ -d /sys/kernel/config/usb_gadget ] || { + mount -t configfs none /sys/kernel/config + mkdir /sys/kernel/config/usb_gadget/g1 + mkdir /sys/kernel/config/usb_gadget/g1/strings/0x409 + echo "Allwinner Technology Inc." > /sys/kernel/config/usb_gadget/g1/strings/0x409/manufacturer + echo "Tina" > /sys/kernel/config/usb_gadget/g1/strings/0x409/product + } + [ -d /sys/kernel/config/usb_gadget/g1/configs/c.1 ] || { + mkdir /sys/kernel/config/usb_gadget/g1/configs/c.1 + echo 0xc0 > /sys/kernel/config/usb_gadget/g1/configs/c.1/bmAttributes + echo 500 > /sys/kernel/config/usb_gadget/g1/configs/c.1/MaxPower + mkdir /sys/kernel/config/usb_gadget/g1/configs/c.1/strings/0x409 + } + + rm -f /sys/kernel/config/usb_gadget/g1/configs/c.1/ffs.adb + rm -f /sys/kernel/config/usb_gadget/g1/configs/c.1/ffs.mtp + rm -f /sys/kernel/config/usb_gadget/g1/configs/c.1/mtp.gs0 + rm -f /sys/kernel/config/usb_gadget/g1/configs/c.1/f1 + rm -f /sys/kernel/config/usb_gadget/g1/configs/c.1/rndis.usb0 + rm -f /sys/kernel/config/usb_gadget/g1/configs/c.1/uac1.usb0 + rm -f /sys/kernel/config/usb_gadget/g1/configs/c.1/accessory.usb0 + rm -f /sys/kernel/config/usb_gadget/g1/configs/c.1/hid.usb0 + rm -f /sys/kernel/config/usb_gadget/g1/configs/c.1/hid.usb1 + rm -f /sys/kernel/config/usb_gadget/g1/configs/c.1/loopback.usb0 + rm -f /sys/kernel/config/usb_gadget/g1/configs/c.1/gser.usb0 + rm -f /sys/kernel/config/usb_gadget/g1/configs/c.1/printer.usb0 + rm -f /sys/kernel/config/usb_gadget/g1/configs/c.1/uvc.usb0 + rm -f /sys/kernel/config/usb_gadget/g1/configs/c.1/mass_storage.usb0 + rm -rf /sys/kernel/config/usb_gadget/g1/functions/uvc.usb0/streaming/header/h/ + rm -rf /sys/kernel/config/usb_gadget/g1/functions/uvc.usb0/streaming/class/fs + rm -rf /sys/kernel/config/usb_gadget/g1/functions/uvc.usb0/streaming/class/hs + rm -rf /sys/kernel/config/usb_gadget/g1/functions/uvc.usb0/control/class/fs/ + rm -rf /sys/kernel/config/usb_gadget/g1/functions/uvc.usb0/control/class/ss/ + rm -rf /sys/kernel/config/usb_gadget/g1/functions/uvc.usb0/streaming/mjpeg/m + rm -rf /sys/kernel/config/usb_gadget/g1/functions/uvc.usb0/streaming/mjpeg/ + rm -rf /sys/kernel/config/usb_gadget/g1/functions/uvc.usb0/streaming/uncompressed/ + + echo $2 > /sys/kernel/config/usb_gadget/g1/idVendor + echo $3 > /sys/kernel/config/usb_gadget/g1/idProduct + + if [ $1 == "none" ]; then + return + elif [ $1 == "mtp" ]; then + enable_mtp + elif [ $1 == "adb" ]; then + enable_adb + elif [ $1 == "mass_storage" ]; then + [ -d /sys/kernel/config/usb_gadget/g1/functions/mass_storage.usb0 ] || { + mkdir /sys/kernel/config/usb_gadget/g1/functions/mass_storage.usb0 + echo Tina > /sys/kernel/config/usb_gadget/g1/functions/mass_storage.usb0/lun.0/inquiry_string + } + ln -s /sys/kernel/config/usb_gadget/g1/functions/mass_storage.usb0/ /sys/kernel/config/usb_gadget/g1/configs/c.1/f1 + + #echo "/dev/by-name/UDISK" > /sys/kernel/config/usb_gadget/g1/functions/mass_storage.usb0/lun.0/file + elif [ $1 == "uac1" ]; then + [ -d /sys/kernel/config/usb_gadget/g1/functions/uac1.usb0 ] || { + mkdir /sys/kernel/config/usb_gadget/g1/functions/uac1.usb0 + } + echo 0x1 > /sys/kernel/config/usb_gadget/g1/functions/uac1.usb0/p_chmask + echo 0x1 > /sys/kernel/config/usb_gadget/g1/functions/uac1.usb0/c_chmask + echo 16000 > /sys/kernel/config/usb_gadget/g1/functions/uac1.usb0/p_srate + echo 16000 > /sys/kernel/config/usb_gadget/g1/functions/uac1.usb0/c_srate + echo "Tina UAC1" > /sys/kernel/config/usb_gadget/g1/strings/0x409/product + ln -s /sys/kernel/config/usb_gadget/g1/functions/uac1.usb0/ /sys/kernel/config/usb_gadget/g1/configs/c.1/uac1.usb0 + elif [ $1 == "uvc" ]; then + echo N > /sys/module/usb_f_uvc/parameters/bulk_streaming_ep + [ $4 == "bulk" ] && { + echo Y > /sys/module/usb_f_uvc/parameters/bulk_streaming_ep + } + echo 0xef > /sys/kernel/config/usb_gadget/g1/bDeviceClass + echo 0x02 > /sys/kernel/config/usb_gadget/g1/bDeviceSubClass + echo 0x01 > /sys/kernel/config/usb_gadget/g1/bDeviceProtocol + echo "Tina UVC" > /sys/kernel/config/usb_gadget/g1/strings/0x409/product + + #echo 0x150 > /sys/kernel/config/usb_gadget/g1/functions/uvc.usb0/control/header/h/bcdUVC + + enable_uvc + elif [ $1 == "uvc,uac1" ]; then + echo Y > /sys/module/usb_f_uvc/parameters/bulk_streaming_ep + echo 0xef > /sys/kernel/config/usb_gadget/g1/bDeviceClass + echo 0x02 > /sys/kernel/config/usb_gadget/g1/bDeviceSubClass + echo 0x01 > /sys/kernel/config/usb_gadget/g1/bDeviceProtocol + echo "Tina UVC" > /sys/kernel/config/usb_gadget/g1/strings/0x409/product + + enable_uvc + [ -d /sys/kernel/config/usb_gadget/g1/functions/uac1.usb0 ] || { + mkdir /sys/kernel/config/usb_gadget/g1/functions/uac1.usb0 + } + # enable PC capture only ISOC(IN) + echo 0x1 > /sys/kernel/config/usb_gadget/g1/functions/uac1.usb0/p_chmask + echo 0x1 > /sys/kernel/config/usb_gadget/g1/functions/uac1.usb0/c_chmask + echo 16000 > /sys/kernel/config/usb_gadget/g1/functions/uac1.usb0/p_srate + echo 16000 > /sys/kernel/config/usb_gadget/g1/functions/uac1.usb0/c_srate + echo "Tina UVC UAC1" > /sys/kernel/config/usb_gadget/g1/strings/0x409/product + ln -s /sys/kernel/config/usb_gadget/g1/functions/uac1.usb0/ /sys/kernel/config/usb_gadget/g1/configs/c.1/uac1.usb0 + elif [ $1 == "adb,uvc" -o $1 == "uvc,adb" ]; then + echo 0xef > /sys/kernel/config/usb_gadget/g1/bDeviceClass + echo 0x02 > /sys/kernel/config/usb_gadget/g1/bDeviceSubClass + echo 0x01 > /sys/kernel/config/usb_gadget/g1/bDeviceProtocol + echo "Tina ADB&UVC" > /sys/kernel/config/usb_gadget/g1/strings/0x409/product + + enable_uvc + enable_adb + elif [ $1 == "adb,uac1" -o $1 == "uac1,adb" ]; then + echo 0xef > /sys/kernel/config/usb_gadget/g1/bDeviceClass + echo 0x02 > /sys/kernel/config/usb_gadget/g1/bDeviceSubClass + echo 0x01 > /sys/kernel/config/usb_gadget/g1/bDeviceProtocol + [ -d /sys/kernel/config/usb_gadget/g1/functions/uac1.usb0 ] || { + mkdir /sys/kernel/config/usb_gadget/g1/functions/uac1.usb0 + } + echo 0x1 > /sys/kernel/config/usb_gadget/g1/functions/uac1.usb0/p_chmask + echo 0x1 > /sys/kernel/config/usb_gadget/g1/functions/uac1.usb0/c_chmask + echo 16000 > /sys/kernel/config/usb_gadget/g1/functions/uac1.usb0/p_srate + echo 16000 > /sys/kernel/config/usb_gadget/g1/functions/uac1.usb0/c_srate + ln -s /sys/kernel/config/usb_gadget/g1/functions/uac1.usb0/ /sys/kernel/config/usb_gadget/g1/configs/c.1/uac1.usb0 + + enable_adb + echo "Tina ADB&UAC1" > /sys/kernel/config/usb_gadget/g1/strings/0x409/product + elif [ $1 == "rndis" ]; then + mkdir /sys/kernel/config/usb_gadget/g1/functions/rndis.usb0 + echo "Tina RNDIS" > /sys/kernel/config/usb_gadget/g1/strings/0x409/product + ln -s /sys/kernel/config/usb_gadget/g1/functions/rndis.usb0/ /sys/kernel/config/usb_gadget/g1/configs/c.1/rndis.usb0 + ls /sys/class/udc/ | xargs echo > /sys/kernel/config/usb_gadget/g1/UDC + elif [ $1 == "adb,rndis" ]; then + [ -d /sys/kernel/config/usb_gadget/g1/functions/rndis.usb0] || { + mkdir /sys/kernel/config/usb_gadget/g1/functions/rndis.usb0 + } + ln -s /sys/kernel/config/usb_gadget/g1/functions/rndis.usb0/ /sys/kernel/config/usb_gadget/g1/configs/c.1/rndis.usb0 + ls /sys/class/udc/ | xargs echo > /sys/kernel/config/usb_gadget/g1/UDC + enable_adb + echo 0xef > /sys/kernel/config/usb_gadget/g1/bDeviceClass + echo 0x02 > /sys/kernel/config/usb_gadget/g1/bDeviceSubClass + echo 0x01 > /sys/kernel/config/usb_gadget/g1/bDeviceProtocol + echo "Tina ADB,RNDIS" > /sys/kernel/config/usb_gadget/g1/strings/0x409/product + fi + + echo $udc_controller > /sys/kernel/config/usb_gadget/g1/UDC +} + +if [ $# -lt 1 ]; then + echo "Lack of arg!" + usage + exit +fi + +# idVendor, idProduct only for test +if [ $1 == "none" ]; then + set_usb_function none 0x1f3a 0x1001 + return +fi +if [ $1 == "adb" ]; then + set_usb_function adb 0x18d1 0xD002 + return +fi +if [ $1 == "mtp" ]; then + set_usb_function mtp 0x045E 0x00C9 + return +fi +if [ $1 == "uac1" ]; then + if [ $# == 3 ]; then + set_usb_function uac1 $2 $3 + else + set_usb_function uac1 0x1d61 0x0101 + fi + return +fi +if [ $1 == "mass_storage" ]; then + set_usb_function mass_storage 0x1f3a 0x1000 + return +fi +if [ $1 == "uvc" ]; then + if [ $2 == "bulk" ]; then + set_usb_function uvc 0x09a1 0x0026 bulk + else + set_usb_function uvc 0x09a1 0x0026 + fi + return +fi +if [ $1 == "uac1,uvc" -o $1 == "uvc,uac1" ]; then + #set_usb_function uvc,uac1 0x1943 0x2263 + #set_usb_function uvc,uac1 0x09a1 0x0026 + if [ $# == 3 ]; then + set_usb_function uvc,uac1 $2 $3 + else + set_usb_function uvc,uac1 0x09a1 0x002A + fi + return +fi +if [ $1 == "adb,uvc" -o $1 == "uvc,adb" ]; then + set_usb_function adb,uvc 0x18d1 0xD002 + return +fi +if [ $1 == "adb,uac1" -o $1 == "uac1,adb" ]; then + if [ $# == 3 ];then + set_usb_function adb,uac1 $2 $3 + else + set_usb_function adb,uac1 0x18d1 0xD002 + fi + return +fi +if [ $1 == "rndis" ]; then +# MODULES_DIR="/lib/modules/`uname -r`" +# insmod $MODULES_DIR/sunxi_usb_udc.ko + if [ $# == 3 ]; then + set_usb_function rndis $2 $3 + else + set_usb_function rndis 0x0525 0xa4a2 + fi +fi +if [ $1 == "adb,rndis" ]; then +# MODULES_DIR="/lib/modules/`uname -r`" +# insmod $MODULES_DIR/sunxi_usb_udc.ko + if [ $# == 3 ]; then + set_usb_function adb,rndis $2 $3 + else + set_usb_function adb,rndis 0x0525 0xa4a2 + fi +fi diff --git a/target/allwinner/v851s3-fastboot_sl100_front/defconfig b/target/allwinner/v851s3-fastboot_sl100_front/defconfig index fca8a0c90..5d0072cf6 100755 --- a/target/allwinner/v851s3-fastboot_sl100_front/defconfig +++ b/target/allwinner/v851s3-fastboot_sl100_front/defconfig @@ -1466,7 +1466,7 @@ CONFIG_BUSYBOX_CONFIG_EXPR_MATH_SUPPORT_64=y # CONFIG_BUSYBOX_CONFIG_FACTOR is not set # CONFIG_BUSYBOX_CONFIG_FALSE is not set # CONFIG_BUSYBOX_CONFIG_FOLD is not set -# CONFIG_BUSYBOX_CONFIG_FSYNC is not set +CONFIG_BUSYBOX_CONFIG_FSYNC=y # CONFIG_BUSYBOX_CONFIG_HEAD is not set # CONFIG_BUSYBOX_CONFIG_HOSTID is not set # CONFIG_BUSYBOX_CONFIG_ID is not set @@ -1754,7 +1754,7 @@ CONFIG_BUSYBOX_CONFIG_FLOCK=y CONFIG_BUSYBOX_CONFIG_HEXDUMP=y # CONFIG_BUSYBOX_CONFIG_FEATURE_HEXDUMP_REVERSE is not set # CONFIG_BUSYBOX_CONFIG_HD is not set -# CONFIG_BUSYBOX_CONFIG_XXD is not set +CONFIG_BUSYBOX_CONFIG_XXD=y CONFIG_BUSYBOX_CONFIG_HWCLOCK=y # CONFIG_BUSYBOX_CONFIG_FEATURE_HWCLOCK_LONG_OPTIONS is not set # CONFIG_BUSYBOX_CONFIG_FEATURE_HWCLOCK_ADJTIME_FHS is not set @@ -2424,6 +2424,11 @@ CONFIG_rt_media_demo=y # CONFIG_PACKAGE_demo_codec_parallel is not set # CONFIG_PACKAGE_demo_video_muxer is not set +# +# rt_media-uvc +# +CONFIG_PACKAGE_rt_media-uvc=y + # # smart_card # @@ -2489,7 +2494,7 @@ CONFIG_PACKAGE_libawnn_full=y # CONFIG_PACKAGE_mtop is not set # CONFIG_PACKAGE_nativepower is not set # CONFIG_PACKAGE_nativepower_utils is not set -# CONFIG_PACKAGE_ota-burnboot is not set +CONFIG_PACKAGE_ota-burnboot=y # CONFIG_PACKAGE_ota-fastboot is not set # CONFIG_PACKAGE_powerkey is not set # CONFIG_PACKAGE_pqd is not set @@ -2499,12 +2504,185 @@ CONFIG_PACKAGE_libawnn_full=y # CONFIG_PACKAGE_recovery-mode is not set # CONFIG_PACKAGE_resample is not set # CONFIG_PACKAGE_resnet50-demo is not set -CONFIG_PACKAGE_rt_media-uvc=y # CONFIG_PACKAGE_snapcast is not set # CONFIG_PACKAGE_stress-ng is not set # CONFIG_PACKAGE_sunxiCamera is not set # CONFIG_PACKAGE_sunxiCamera_demo is not set -# CONFIG_PACKAGE_swupdate is not set +CONFIG_PACKAGE_swupdate=y +CONFIG_SWUPDATE_CUSTOM=y +CONFIG_SWUPDATE_DEFAULT_HAVE_DOT_CONFIG=y +# CONFIG_SWUPDATE_DEFAULT_CURL is not set +# CONFIG_SWUPDATE_DEFAULT_CURL_SSL is not set +# CONFIG_SWUPDATE_DEFAULT_SYSTEMD is not set +CONFIG_SWUPDATE_DEFAULT_SCRIPTS=y +# CONFIG_SWUPDATE_DEFAULT_HW_COMPATIBILITY is not set +CONFIG_SWUPDATE_DEFAULT_SW_VERSIONS_FILE="/etc/sw-versions" +CONFIG_SWUPDATE_DEFAULT_SOCKET_CTRL_PATH="" +CONFIG_SWUPDATE_DEFAULT_SOCKET_PROGRESS_PATH="" +CONFIG_SWUPDATE_DEFAULT_SOCKET_REMOTE_HANDLER_DIRECTORY="/tmp/" +# CONFIG_SWUPDATE_DEFAULT_MTD is not set +# CONFIG_SWUPDATE_DEFAULT_LUA is not set +# CONFIG_SWUPDATE_DEFAULT_FEATURE_SYSLOG is not set +CONFIG_SWUPDATE_DEFAULT_CROSS_COMPILE="" +CONFIG_SWUPDATE_DEFAULT_SYSROOT="" +CONFIG_SWUPDATE_DEFAULT_EXTRA_CFLAGS="" +CONFIG_SWUPDATE_DEFAULT_EXTRA_LDFLAGS="" +CONFIG_SWUPDATE_DEFAULT_EXTRA_LDLIBS="" +# CONFIG_SWUPDATE_DEFAULT_DEBUG is not set +# CONFIG_SWUPDATE_DEFAULT_WERROR is not set +# CONFIG_SWUPDATE_DEFAULT_NOCLEANUP is not set +# CONFIG_SWUPDATE_DEFAULT_BOOTLOADER_EBG is not set +CONFIG_SWUPDATE_DEFAULT_UBOOT=y +# CONFIG_SWUPDATE_DEFAULT_BOOTLOADER_NONE is not set +# CONFIG_SWUPDATE_DEFAULT_BOOTLOADER_GRUB is not set +CONFIG_SWUPDATE_DEFAULT_UBOOT_FWENV="/etc/fw_env.config" +# CONFIG_SWUPDATE_DEFAULT_UBOOT_NEWAPI is not set +# CONFIG_SWUPDATE_DEFAULT_SSL_IMPL_NONE is not set +CONFIG_SWUPDATE_DEFAULT_SSL_IMPL_OPENSSL=y +# CONFIG_SWUPDATE_DEFAULT_SSL_IMPL_MBEDTLS is not set +# CONFIG_SWUPDATE_DEFAULT_DOWNLOAD is not set +# CONFIG_SWUPDATE_DEFAULT_DOWNLOAD_SSL is not set +# CONFIG_SWUPDATE_DEFAULT_CHANNEL_CURL is not set +# CONFIG_SWUPDATE_DEFAULT_HASH_VERIFY is not set +# CONFIG_SWUPDATE_DEFAULT_SIGNED_IMAGES is not set +# CONFIG_SWUPDATE_DEFAULT_ENCRYPTED_IMAGES is not set +# CONFIG_SWUPDATE_DEFAULT_SURICATTA is not set +# CONFIG_SWUPDATE_DEFAULT_WEBSERVER is not set +CONFIG_SWUPDATE_DEFAULT_GUNZIP=y +# CONFIG_SWUPDATE_DEFAULT_ZSTD is not set +CONFIG_SWUPDATE_DEFAULT_LIBCONFIG=y +CONFIG_SWUPDATE_DEFAULT_PARSERROOT="" +# CONFIG_SWUPDATE_DEFAULT_JSON is not set +# CONFIG_SWUPDATE_DEFAULT_SETSWDESCRIPTION is not set +# CONFIG_SWUPDATE_DEFAULT_UBIVOL is not set +CONFIG_SWUPDATE_DEFAULT_UBIVIDOFFSET=2048 +CONFIG_SWUPDATE_DEFAULT_RAW=y +# CONFIG_SWUPDATE_DEFAULT_RDIFFHANDLER is not set +CONFIG_SWUPDATE_DEFAULT_SHELLSCRIPTHANDLER=y +# CONFIG_SWUPDATE_DEFAULT_ARCHIVE is not set +# CONFIG_SWUPDATE_DEFAULT_REMOTE_HANDLER is not set +# CONFIG_SWUPDATE_DEFAULT_SWUFORWARDER_HANDLER is not set +CONFIG_SWUPDATE_DEFAULT_BOOTLOADERHANDLER=y +CONFIG_SWUPDATE_DEFAULT_AWBOOT_HANDLER=y +# CONFIG_SWUPDATE_DEFAULT_UCFWHANDLER is not set +CONFIG_SWUPDATE_CONFIG_HAVE_LINUX=y +# CONFIG_SWUPDATE_CONFIG_HAVE_FREEBSD is not set +CONFIG_SWUPDATE_CONFIG_HAVE_DOT_CONFIG=y +CONFIG_SWUPDATE_CONFIG_HAVE_LUA=y +CONFIG_SWUPDATE_CONFIG_HAVE_LIBCONFIG=y +CONFIG_SWUPDATE_CONFIG_HAVE_LIBARCHIVE=y +CONFIG_SWUPDATE_CONFIG_HAVE_LIBCURL=y +CONFIG_SWUPDATE_CONFIG_HAVE_LIBGPIOD=y +CONFIG_SWUPDATE_CONFIG_HAVE_LIBMTD=y +CONFIG_SWUPDATE_CONFIG_HAVE_LIBUBI=y +CONFIG_SWUPDATE_CONFIG_HAVE_LIBUBOOTENV=y +CONFIG_SWUPDATE_CONFIG_HAVE_LIBEBGENV=y +CONFIG_SWUPDATE_CONFIG_HAVE_LIBZEROMQ=y +CONFIG_SWUPDATE_CONFIG_HAVE_ZLIB=y +CONFIG_SWUPDATE_CONFIG_HAVE_ZSTD=y +CONFIG_SWUPDATE_CONFIG_HAVE_LIBSSL=y +CONFIG_SWUPDATE_CONFIG_HAVE_LIBCRYPTO=y +CONFIG_SWUPDATE_CONFIG_HAVE_MBEDTLS=y +CONFIG_SWUPDATE_CONFIG_HAVE_JSON_C=y +CONFIG_SWUPDATE_CONFIG_HAVE_LIBWEBSOCKETS=y +# CONFIG_SWUPDATE_CONFIG_HAVE_URIPARSER is not set + +# +# Swupdate Settings +# + +# +# General Configuration +# +# CONFIG_SWUPDATE_CONFIG_CURL is not set +# CONFIG_SWUPDATE_CONFIG_CURL_SSL is not set +# CONFIG_SWUPDATE_CONFIG_SYSTEMD is not set +CONFIG_SWUPDATE_CONFIG_SCRIPTS=y +# CONFIG_SWUPDATE_CONFIG_HW_COMPATIBILITY is not set +CONFIG_SWUPDATE_CONFIG_SW_VERSIONS_FILE="/etc/sw-versions" + +# +# Socket Paths +# +CONFIG_SWUPDATE_CONFIG_SOCKET_CTRL_PATH="" +CONFIG_SWUPDATE_CONFIG_SOCKET_PROGRESS_PATH="" +CONFIG_SWUPDATE_CONFIG_SOCKET_REMOTE_HANDLER_DIRECTORY="/tmp/" +# CONFIG_SWUPDATE_CONFIG_MTD is not set +# CONFIG_SWUPDATE_CONFIG_LUA is not set +# CONFIG_SWUPDATE_CONFIG_FEATURE_SYSLOG is not set + +# +# Build Options +# +CONFIG_SWUPDATE_CONFIG_CROSS_COMPILE="" +CONFIG_SWUPDATE_CONFIG_SYSROOT="" +CONFIG_SWUPDATE_CONFIG_EXTRA_CFLAGS="" +CONFIG_SWUPDATE_CONFIG_EXTRA_LDFLAGS="" +CONFIG_SWUPDATE_CONFIG_EXTRA_LDLIBS="" + +# +# Debugging Options +# +# CONFIG_SWUPDATE_CONFIG_DEBUG is not set +# CONFIG_SWUPDATE_CONFIG_WERROR is not set +# CONFIG_SWUPDATE_CONFIG_NOCLEANUP is not set +# CONFIG_SWUPDATE_CONFIG_BOOTLOADER_EBG is not set +CONFIG_SWUPDATE_CONFIG_UBOOT=y +# CONFIG_SWUPDATE_CONFIG_BOOTLOADER_NONE is not set +# CONFIG_SWUPDATE_CONFIG_BOOTLOADER_GRUB is not set +CONFIG_SWUPDATE_CONFIG_UBOOT_FWENV="/etc/fw_env.config" +# CONFIG_SWUPDATE_CONFIG_UBOOT_NEWAPI is not set +CONFIG_SWUPDATE_CONFIG_SSL_IMPL_NONE=y +# CONFIG_SWUPDATE_CONFIG_SSL_IMPL_OPENSSL is not set +# CONFIG_SWUPDATE_CONFIG_SSL_IMPL_MBEDTLS is not set +# CONFIG_SWUPDATE_CONFIG_DOWNLOAD is not set + +# +# Hash checking needs an SSL implementation +# + +# +# Image signature verification needs an SSL implementation +# + +# +# Image encryption needs an SSL implementation +# +# CONFIG_SWUPDATE_CONFIG_SURICATTA is not set +# CONFIG_WEBSERVER is not set +CONFIG_SWUPDATE_CONFIG_GUNZIP=y +# CONFIG_SWUPDATE_CONFIG_ZSTD is not set + +# +# Parser Features +# +CONFIG_SWUPDATE_CONFIG_LIBCONFIG=y +CONFIG_SWUPDATE_CONFIG_PARSERROOT="" +# CONFIG_SWUPDATE_CONFIG_JSON is not set +# CONFIG_SWUPDATE_CONFIG_SETSWDESCRIPTION is not set + +# +# Image Handlers +# +CONFIG_SWUPDATE_CONFIG_RAW=y +# CONFIG_SWUPDATE_CONFIG_RDIFFHANDLER is not set +CONFIG_SWUPDATE_CONFIG_SHELLSCRIPTHANDLER=y +# CONFIG_SWUPDATE_CONFIG_ARCHIVE is not set +# CONFIG_SWUPDATE_CONFIG_REMOTE_HANDLER is not set + +# +# swuforward handler needs json-c and curl +# +CONFIG_SWUPDATE_CONFIG_BOOTLOADERHANDLER=y +CONFIG_SWUPDATE_CONFIG_AWBOOT_HANDLER=y +# CONFIG_SWUPDATE_CONFIG_UCFWHANDLER is not set + +# +# Reduce size +# +# CONFIG_SWUPDATE_CONFIG_REMOVE_CLIENT is not set +# CONFIG_SWUPDATE_CONFIG_REMOVE_PROGRESS is not set +# CONFIG_SWUPDATE_CONFIG_REMOVE_AUTORUN is not set # CONFIG_PACKAGE_tconfigs is not set # CONFIG_PACKAGE_thermal_pwm is not set # CONFIG_PACKAGE_tina-app-upgrade is not set @@ -3017,7 +3195,12 @@ CONFIG_PACKAGE_kmod-usb=y # CONFIG_PACKAGE_kmod-fb-sys-fops is not set # CONFIG_PACKAGE_kmod-fbcon is not set # CONFIG_PACKAGE_kmod-ge8300-km-opencl is not set -# CONFIG_PACKAGE_kmod-video-core is not set +CONFIG_PACKAGE_kmod-video-core=y +# CONFIG_PACKAGE_kmod-video-cpia2 is not set +# CONFIG_PACKAGE_kmod-video-gspca-core is not set +# CONFIG_PACKAGE_kmod-video-pwc is not set +# CONFIG_PACKAGE_kmod-video-uvc is not set +CONFIG_PACKAGE_kmod-video-videobuf2=y CONFIG_PACKAGE_kmod-vin-v4l2=y # @@ -3511,7 +3694,7 @@ CONFIG_PACKAGE_libblkid=y # CONFIG_PACKAGE_libcap-ng is not set # CONFIG_PACKAGE_libcares is not set # CONFIG_PACKAGE_libcharset is not set -# CONFIG_PACKAGE_libconfig is not set +CONFIG_PACKAGE_libconfig=y # CONFIG_PACKAGE_libcroco is not set # CONFIG_PACKAGE_libcurl is not set # CONFIG_PACKAGE_libdaemon is not set @@ -4521,7 +4704,7 @@ CONFIG_STRACE_NONE=y # CONFIG_PACKAGE_tinyalsa-utils is not set # CONFIG_PACKAGE_uart_led is not set # CONFIG_PACKAGE_uart_test is not set -# CONFIG_PACKAGE_uboot-envtools is not set +CONFIG_PACKAGE_uboot-envtools=y # CONFIG_PACKAGE_ugps is not set # CONFIG_PACKAGE_usb-modeswitch is not set # CONFIG_PACKAGE_usbreset is not set diff --git a/target/allwinner/v851s3-fastboot_sl100_front/defconfig_ota b/target/allwinner/v851s3-fastboot_sl100_front/defconfig_ota new file mode 100755 index 000000000..3197b56c2 --- /dev/null +++ b/target/allwinner/v851s3-fastboot_sl100_front/defconfig_ota @@ -0,0 +1,4492 @@ +# +# Automatically generated file; DO NOT EDIT. +# Tina Configuration +# +CONFIG_MODULES=y +CONFIG_HAVE_DOT_CONFIG=y +# CONFIG_TARGET_v851s_fastboot_sl100_back is not set +CONFIG_TARGET_v851s3_fastboot_sl100_front=y +CONFIG_TARGET_v851s3_fastboot_sl100_front_=y +CONFIG_TARGET_BOARD="v851s3-fastboot_sl100_front" +CONFIG_DEFAULT_TARGET_OPTIMIZATION="-Os -pipe -march=armv7-a -mtune=cortex-a7 -mfpu=neon" +CONFIG_CPU_TYPE="cortex-a7+neon" +CONFIG_LINUX_4_9=y +CONFIG_PLATFORM_v851s3=y +CONFIG_DEFAULT_base-files=y +CONFIG_DEFAULT_busybox=y +CONFIG_DEFAULT_dropbear=y +CONFIG_DEFAULT_fstools=y +CONFIG_DEFAULT_libc=y +CONFIG_DEFAULT_libgcc=y +CONFIG_DEFAULT_logd=y +CONFIG_DEFAULT_mtd=y +CONFIG_DEFAULT_netifd=y +CONFIG_DEFAULT_opkg=y +CONFIG_DEFAULT_uci=y +CONFIG_DEFAULT_uclient-fetch=y +CONFIG_HAS_FPU=y +CONFIG_AUDIO_SUPPORT=y +CONFIG_GPIO_SUPPORT=y +CONFIG_USB_SUPPORT=y +CONFIG_RTC_SUPPORT=y +CONFIG_USES_DEVICETREE=y +CONFIG_USES_EXT4=y +CONFIG_arm=y +CONFIG_ARCH="arm" + +# +# Target Images +# +CONFIG_TARGET_ROOTFS_INITRAMFS=y +# CONFIG_TARGET_INITRAMFS_COMPRESSION_NONE is not set +# CONFIG_TARGET_INITRAMFS_COMPRESSION_GZIP is not set +# CONFIG_TARGET_INITRAMFS_COMPRESSION_BZIP2 is not set +# CONFIG_TARGET_INITRAMFS_COMPRESSION_LZMA is not set +# CONFIG_TARGET_INITRAMFS_COMPRESSION_LZO is not set +# CONFIG_TARGET_INITRAMFS_COMPRESSION_LZ4 is not set +CONFIG_TARGET_INITRAMFS_COMPRESSION_XZ=y +CONFIG_EXTERNAL_CPIO="" + +# +# Root filesystem archives +# +# CONFIG_TARGET_ROOTFS_CPIOGZ is not set +# CONFIG_TARGET_ROOTFS_TARGZ is not set + +# +# Root filesystem images +# +# CONFIG_TARGET_ROOTFS_EXT4FS is not set +# CONFIG_TARGET_ROOTFS_JFFS2 is not set +# CONFIG_TARGET_ROOTFS_EROFS is not set +CONFIG_TARGET_ROOTFS_SQUASHFS=y +CONFIG_ROOTFS_SQUASHFS_XZ=y +# CONFIG_ROOTFS_SQUASHFS_LZ4 is not set +# CONFIG_ROOTFS_SQUASHFS_ZLIB is not set +# CONFIG_USR_SQUASHFS_FOLLOW_ROOTFS is not set +CONFIG_USR_SQUASHFS_XZ=y +# CONFIG_USR_SQUASHFS_LZ4 is not set +# CONFIG_USR_SQUASHFS_ZLIB is not set +CONFIG_KERNEL_SQUASHFS_XZ=y +CONFIG_TARGET_SQUASHFS_BLOCK_SIZE=256 +CONFIG_TARGET_UBIFS_FREE_SPACE_FIXUP=y +CONFIG_TARGET_UBIFS_JOURNAL_SIZE="" + +# +# Image Options +# +# CONFIG_SUNXI_SD_BOOT_PART is not set +# CONFIG_SUNXI_SD_BOOT_KERNEL_FORMAT_UIMAGE is not set +CONFIG_SUNXI_SD_BOOT_KERNEL_FORMAT_BOOTIMG=y +# CONFIG_SUNXI_MKBOOTIMG_WITH_COMPRESS_KERNEL is not set +# CONFIG_SUNXI_MKBOOTIMG_ADD_DTB is not set +CONFIG_SUNXI_SMALL_STORAGE_OTA=y +CONFIG_SUNXI_MOVE_KO_TO_USR=y +# CONFIG_SUNXI_RECOVERY_INITRAMFS_PART is not set +# CONFIG_SUNXI_RECOVERY_INITRAMFS_KERNEL_FORMAT_UIMAGE is not set +CONFIG_SUNXI_RECOVERY_INITRAMFS_KERNEL_FORMAT_BOOTIMG=y +# CONFIG_SUNXI_SEPARATE_APP_FROM_ROOTFS is not set +# CONFIG_SUNXI_SEPARATE_DATA_FROM_ROOTFS is not set +CONFIG_CUSTOMIZE_IMAGE_NAME=y +# CONFIG_SUNXI_BOOT_IMAGE_NAME_SUFFIX_NONE is not set +CONFIG_SUNXI_BOOT_IMAGE_NAME_SUFFIX_RECOVERY=y +# CONFIG_SUNXI_BOOT_IMAGE_NAME_SUFFIX_RAMFS is not set +# CONFIG_SUNXI_ROOTFS_IMAGE_NAME_SUFFIX_NONE is not set +CONFIG_SUNXI_ROOTFS_IMAGE_NAME_SUFFIX_RECOVERY=y +# CONFIG_SUNXI_ROOTFS_IMAGE_NAME_SUFFIX_RAMFS is not set +CONFIG_CUSTOMIZE_CONFIG_FILE=y +# CONFIG_KERNEL_CONFIG_FILE_SUFFIX_NONE is not set +CONFIG_KERNEL_CONFIG_FILE_SUFFIX_RECOVERY=y +# CONFIG_KERNEL_CONFIG_FILE_SUFFIX_RAMFS is not set +# CONFIG_SUPPORT_PACK_OUT_OF_TINA is not set +CONFIG_TARGET_ROOTFS_INCLUDE_UIMAGE=y +CONFIG_TARGET_ROOTFS_INCLUDE_ZIMAGE=y +CONFIG_TARGET_ROOTFS_INCLUDE_FIT=y + +# +# Kernel Image Compression Mode setting +# +CONFIG_TARGET_KERNEL_COMPRESSION_MODE=y +# CONFIG_KERNEL_KERNEL_GZIP is not set +# CONFIG_KERNEL_KERNEL_LZMA is not set +# CONFIG_KERNEL_KERNEL_XZ is not set +# CONFIG_KERNEL_KERNEL_LZO is not set +CONFIG_KERNEL_KERNEL_LZ4=y + +# +# Downsize root filesystem +# +CONFIG_REDUCE_ROOTFS_SIZE=y + +# +# Optimize kernel size +# +# CONFIG_REDUCE_KERNEL_SIZE is not set + +# +# Boot Time Optimization +# + +# +# Global build settings +# +# CONFIG_ALL_KMODS is not set +# CONFIG_ALL is not set +# CONFIG_SIGNED_PACKAGES is not set + +# +# Security options +# +# CONFIG_USE_SELINUX is not set +# CONFIG_USE_DM_VERITY is not set +# CONFIG_USE_UBOOT_VERIFY_SQUASHFS is not set + +# +# General build options +# +CONFIG_DISPLAY_SUPPORT=y +CONFIG_BUILD_PATENTED=y +# CONFIG_BUILD_NLS is not set +CONFIG_SHADOW_PASSWORDS=y +CONFIG_CLEAN_IPKG=y +# CONFIG_COLLECT_KERNEL_DEBUG is not set + +# +# Kernel build options +# +# CONFIG_KERNEL_GENERIC_DEBUG_ONOFF is not set +CONFIG_KERNEL_BUILD_USER="" +CONFIG_KERNEL_BUILD_DOMAIN="" +CONFIG_KERNEL_PRINTK=y +# CONFIG_KERNEL_SWAP is not set +# CONFIG_KERNEL_DEBUG_FS is not set +# CONFIG_KERNEL_HW_PERF_EVENTS is not set +# CONFIG_KERNEL_PERF_EVENTS is not set +# CONFIG_KERNEL_FRAME_POINTER is not set +# CONFIG_KERNEL_PROFILING is not set +# CONFIG_KERNEL_KALLSYMS is not set +# CONFIG_KERNEL_FTRACE is not set +# CONFIG_KERNEL_DEBUG_KERNEL is not set +# CONFIG_KERNEL_DEBUG_INFO is not set +# CONFIG_KERNEL_DEBUG_LL_UART_NONE is not set +# CONFIG_KERNEL_DEBUG_LL is not set +# CONFIG_KERNEL_DYNAMIC_DEBUG is not set +# CONFIG_KERNEL_EARLY_PRINTK is not set +# CONFIG_KERNEL_KPROBES is not set +# CONFIG_KERNEL_AIO is not set +# CONFIG_KERNEL_DIRECT_IO is not set +# CONFIG_KERNEL_FHANDLE is not set +# CONFIG_KERNEL_FANOTIFY is not set +# CONFIG_KERNEL_BLK_DEV_BSG is not set +# CONFIG_KERNEL_MAGIC_SYSRQ is not set +# CONFIG_KERNEL_ELF_CORE is not set +# CONFIG_KERNEL_PROVE_LOCKING is not set +CONFIG_KERNEL_PRINTK_TIME=y +# CONFIG_KERNEL_SLABINFO is not set +# CONFIG_KERNEL_PROC_PAGE_MONITOR is not set +CONFIG_KERNEL_PROC_SYSCTL=y +# CONFIG_KERNEL_KEXEC is not set +# CONFIG_USE_RFKILL is not set +# CONFIG_USE_SPARSE is not set +CONFIG_KERNEL_DEVTMPFS=y +CONFIG_KERNEL_DEVTMPFS_MOUNT=y +# CONFIG_KERNEL_CGROUPS is not set +# CONFIG_KERNEL_NAMESPACES is not set +# CONFIG_KERNEL_LXC_MISC is not set +# CONFIG_KERNEL_SECCOMP_FILTER is not set +# CONFIG_KERNEL_SECCOMP is not set +# CONFIG_KERNEL_IPV6 is not set +# CONFIG_KERNEL_IP_PNP is not set + +# +# Package build options +# +CONFIG_DEBUG=y +# CONFIG_IPV6 is not set +CONFIG_PKG_BUILD_PARALLEL=y +CONFIG_PKG_BUILD_USE_JOBSERVER=y + +# +# Stripping options +# +# CONFIG_NO_STRIP is not set +CONFIG_USE_STRIP=y +# CONFIG_USE_SSTRIP is not set +CONFIG_STRIP_ARGS="--strip-all" +# CONFIG_STRIP_KERNEL_EXPORTS is not set +CONFIG_USE_MKLIBS=y +CONFIG_USE_UCLIBCXX=y +# CONFIG_USE_LIBSTDCXX is not set + +# +# Hardening build options +# +CONFIG_PKG_CHECK_FORMAT_SECURITY=y +# CONFIG_PKG_ASLR_PIE is not set +CONFIG_PKG_CC_STACKPROTECTOR_NONE=y +# CONFIG_PKG_CC_STACKPROTECTOR_ALL is not set +CONFIG_KERNEL_CC_STACKPROTECTOR_NONE=y +# CONFIG_KERNEL_CC_STACKPROTECTOR_REGULAR is not set +CONFIG_PKG_FORTIFY_SOURCE_NONE=y +# CONFIG_PKG_FORTIFY_SOURCE_1 is not set +# CONFIG_PKG_FORTIFY_SOURCE_2 is not set +# CONFIG_PKG_RELRO_NONE is not set +# CONFIG_PKG_RELRO_PARTIAL is not set +CONFIG_PKG_RELRO_FULL=y +CONFIG_SUNXI_MAKE_REDUNDANT_ENV=y +CONFIG_SUNXI_REDUNDANT_ENV_SIZE="0x1000" +# CONFIG_SYSTEM_INIT_PROCD is not set +CONFIG_SYSTEM_INIT_BUSYBOX=y +# CONFIG_DEVEL is not set +# CONFIG_BROKEN is not set +CONFIG_LOCALMIRROR="" +CONFIG_AUTOREBUILD=y +CONFIG_BUILD_SUFFIX="" +CONFIG_TARGET_ROOTFS_DIR="" +# CONFIG_CCACHE is not set +CONFIG_EXTRA_OPTIMIZATION="-fno-caller-saves -fno-plt" +CONFIG_TARGET_OPTIMIZATION="-Os -pipe -march=armv7-a -mtune=cortex-a7 -mfpu=neon" +# CONFIG_UPDATE_TOOLCHAIN is not set +# CONFIG_EXTRA_TARGET_ARCH is not set +CONFIG_EXTRA_BINUTILS_CONFIG_OPTIONS="" +CONFIG_EXTRA_GCC_CONFIG_OPTIONS="" +# CONFIG_SJLJ_EXCEPTIONS is not set +# CONFIG_INSTALL_LIBGCJ is not set +# CONFIG_INSTALL_GFORTRAN is not set +# CONFIG_INSIGHT is not set +CONFIG_TOOLCHAIN_LIBC="musl" +CONFIG_USE_MUSL=y +CONFIG_USE_EXTERNAL_LIBC=y +# CONFIG_BINUTILS_VERSION_2_25 is not set +# CONFIG_BINUTILS_VERSION_2_26 is not set +CONFIG_BINUTILS_VERSION_2_27=y +CONFIG_BINUTILS_VERSION_2_28=y +CONFIG_BINUTILS_VERSION="2.27" +# CONFIG_GCC_VERSION_5_2_LINARO is not set +# CONFIG_GCC_VERSION_5_3_1 is not set +CONFIG_GCC_VERSION_6_4_LINARO=y +CONFIG_GCC_VERSION_7_4_LINARO=y +CONFIG_GCC_VERSION_8_3_0=y +CONFIG_GCC_VERSION="linaro-6.4-2017.11" +CONFIG_MUSL_VERSION="1.1.24" +CONFIG_LIBC="musl" +CONFIG_LIBC_VERSION="1.1.24" +CONFIG_TARGET_SUFFIX="muslgnueabi" +CONFIG_EXTERNAL_TOOLCHAIN=y +CONFIG_IMAGEOPT=y +# CONFIG_PREINITOPT is not set +CONFIG_TARGET_PREINIT_SUPPRESS_STDERR=y +CONFIG_TARGET_PREINIT_TIMEOUT=2 +# CONFIG_TARGET_PREINIT_SHOW_NETMSG is not set +# CONFIG_TARGET_PREINIT_SUPPRESS_FAILSAFE_NETMSG is not set +CONFIG_TARGET_PREINIT_IFNAME="" +CONFIG_TARGET_PREINIT_IP="192.168.1.1" +CONFIG_TARGET_PREINIT_NETMASK="255.255.255.0" +CONFIG_TARGET_PREINIT_BROADCAST="192.168.1.255" +# CONFIG_INITOPT is not set +CONFIG_TARGET_INIT_PATH="/usr/sbin:/usr/bin:/sbin:/bin" +CONFIG_TARGET_INIT_ENV="" +CONFIG_TARGET_INIT_CMD="/sbin/init" +CONFIG_TARGET_INIT_SUPPRESS_STDERR=y +CONFIG_PER_FEED_REPO=y +CONFIG_PER_FEED_REPO_ADD_DISABLED=y +CONFIG_PER_FEED_REPO_ADD_COMMENTED=y +# CONFIG_FEED_packages is not set +# CONFIG_FEED_luci is not set +# CONFIG_FEED_routing is not set +# CONFIG_FEED_telephony is not set +# CONFIG_FEED_management is not set +# CONFIG_FEED_targets is not set +# CONFIG_SMIMEOPT is not set +CONFIG_OPKGSMIME_PASSPHRASE=y + +# +# Package features +# +CONFIG_FEATURE_drawing-backend_DirectFB=y + +# +# Base system +# +CONFIG_PACKAGE_busybox=y +CONFIG_BUSYBOX_CUSTOM=y +CONFIG_BUSYBOX_DEFAULT_HAVE_DOT_CONFIG=y +# CONFIG_BUSYBOX_DEFAULT_DESKTOP is not set +# CONFIG_BUSYBOX_DEFAULT_EXTRA_COMPAT is not set +# CONFIG_BUSYBOX_DEFAULT_FEDORA_COMPAT is not set +CONFIG_BUSYBOX_DEFAULT_INCLUDE_SUSv2=y +# CONFIG_BUSYBOX_DEFAULT_USE_PORTABLE_CODE is not set +CONFIG_BUSYBOX_DEFAULT_PLATFORM_LINUX=y +CONFIG_BUSYBOX_DEFAULT_SHOW_USAGE=y +CONFIG_BUSYBOX_DEFAULT_FEATURE_VERBOSE_USAGE=y +CONFIG_BUSYBOX_DEFAULT_FEATURE_COMPRESS_USAGE=y +# CONFIG_BUSYBOX_DEFAULT_BUSYBOX is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_INSTALLER is not set +# CONFIG_BUSYBOX_DEFAULT_INSTALL_NO_USR is not set +# CONFIG_BUSYBOX_DEFAULT_PAM is not set +CONFIG_BUSYBOX_DEFAULT_LONG_OPTS=y +CONFIG_BUSYBOX_DEFAULT_FEATURE_DEVPTS=y +# CONFIG_BUSYBOX_DEFAULT_FEATURE_CLEAN_UP is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_UTMP is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_WTMP is not set +CONFIG_BUSYBOX_DEFAULT_FEATURE_PIDFILE=y +CONFIG_BUSYBOX_DEFAULT_PID_FILE_PATH="/var/run" +CONFIG_BUSYBOX_DEFAULT_FEATURE_SUID=y +# CONFIG_BUSYBOX_DEFAULT_FEATURE_SUID_CONFIG is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_SUID_CONFIG_QUIET is not set +# CONFIG_BUSYBOX_DEFAULT_SELINUX is not set +CONFIG_BUSYBOX_DEFAULT_FEATURE_PREFER_APPLETS=y +CONFIG_BUSYBOX_DEFAULT_BUSYBOX_EXEC_PATH="/proc/self/exe" +CONFIG_BUSYBOX_DEFAULT_FEATURE_SYSLOG=y +# CONFIG_BUSYBOX_DEFAULT_FEATURE_HAVE_RPC is not set +# CONFIG_BUSYBOX_DEFAULT_STATIC is not set +# CONFIG_BUSYBOX_DEFAULT_PIE is not set +# CONFIG_BUSYBOX_DEFAULT_NOMMU is not set +# CONFIG_BUSYBOX_DEFAULT_BUILD_LIBBUSYBOX is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_INDIVIDUAL is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_SHARED_BUSYBOX is not set +CONFIG_BUSYBOX_DEFAULT_LFS=y +CONFIG_BUSYBOX_DEFAULT_CROSS_COMPILER_PREFIX="" +CONFIG_BUSYBOX_DEFAULT_SYSROOT="" +CONFIG_BUSYBOX_DEFAULT_EXTRA_CFLAGS="" +CONFIG_BUSYBOX_DEFAULT_EXTRA_LDFLAGS="" +CONFIG_BUSYBOX_DEFAULT_EXTRA_LDLIBS="" +CONFIG_BUSYBOX_DEFAULT_INSTALL_APPLET_SYMLINKS=y +# CONFIG_BUSYBOX_DEFAULT_INSTALL_APPLET_HARDLINKS is not set +# CONFIG_BUSYBOX_DEFAULT_INSTALL_APPLET_SCRIPT_WRAPPERS is not set +# CONFIG_BUSYBOX_DEFAULT_INSTALL_APPLET_DONT is not set +# CONFIG_BUSYBOX_DEFAULT_INSTALL_SH_APPLET_SYMLINK is not set +# CONFIG_BUSYBOX_DEFAULT_INSTALL_SH_APPLET_HARDLINK is not set +# CONFIG_BUSYBOX_DEFAULT_INSTALL_SH_APPLET_SCRIPT_WRAPPER is not set +CONFIG_BUSYBOX_DEFAULT_PREFIX="./_install" +# CONFIG_BUSYBOX_DEFAULT_DEBUG is not set +# CONFIG_BUSYBOX_DEFAULT_DEBUG_PESSIMIZE is not set +# CONFIG_BUSYBOX_DEFAULT_DEBUG_SANITIZE is not set +# CONFIG_BUSYBOX_DEFAULT_UNIT_TEST is not set +# CONFIG_BUSYBOX_DEFAULT_WERROR is not set +CONFIG_BUSYBOX_DEFAULT_NO_DEBUG_LIB=y +# CONFIG_BUSYBOX_DEFAULT_DMALLOC is not set +# CONFIG_BUSYBOX_DEFAULT_EFENCE is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_USE_BSS_TAIL is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_RTMINMAX is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_BUFFERS_USE_MALLOC is not set +CONFIG_BUSYBOX_DEFAULT_FEATURE_BUFFERS_GO_ON_STACK=y +# CONFIG_BUSYBOX_DEFAULT_FEATURE_BUFFERS_GO_IN_BSS is not set +CONFIG_BUSYBOX_DEFAULT_PASSWORD_MINLEN=6 +CONFIG_BUSYBOX_DEFAULT_MD5_SMALL=1 +CONFIG_BUSYBOX_DEFAULT_SHA3_SMALL=1 +CONFIG_BUSYBOX_DEFAULT_FEATURE_FAST_TOP=y +# CONFIG_BUSYBOX_DEFAULT_FEATURE_ETC_NETWORKS is not set +CONFIG_BUSYBOX_DEFAULT_FEATURE_EDITING=y +CONFIG_BUSYBOX_DEFAULT_FEATURE_EDITING_MAX_LEN=512 +# CONFIG_BUSYBOX_DEFAULT_FEATURE_EDITING_VI is not set +CONFIG_BUSYBOX_DEFAULT_FEATURE_EDITING_HISTORY=256 +# CONFIG_BUSYBOX_DEFAULT_FEATURE_EDITING_SAVEHISTORY is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_EDITING_SAVE_ON_EXIT is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_REVERSE_SEARCH is not set +CONFIG_BUSYBOX_DEFAULT_FEATURE_TAB_COMPLETION=y +# CONFIG_BUSYBOX_DEFAULT_FEATURE_USERNAME_COMPLETION is not set +CONFIG_BUSYBOX_DEFAULT_FEATURE_EDITING_FANCY_PROMPT=y +# CONFIG_BUSYBOX_DEFAULT_FEATURE_EDITING_ASK_TERMINAL is not set +# CONFIG_BUSYBOX_DEFAULT_LOCALE_SUPPORT is not set +# CONFIG_BUSYBOX_DEFAULT_UNICODE_SUPPORT is not set +# CONFIG_BUSYBOX_DEFAULT_UNICODE_USING_LOCALE is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_CHECK_UNICODE_IN_ENV is not set +CONFIG_BUSYBOX_DEFAULT_SUBST_WCHAR=0 +CONFIG_BUSYBOX_DEFAULT_LAST_SUPPORTED_WCHAR=0 +# CONFIG_BUSYBOX_DEFAULT_UNICODE_COMBINING_WCHARS is not set +# CONFIG_BUSYBOX_DEFAULT_UNICODE_WIDE_WCHARS is not set +# CONFIG_BUSYBOX_DEFAULT_UNICODE_BIDI_SUPPORT is not set +# CONFIG_BUSYBOX_DEFAULT_UNICODE_NEUTRAL_TABLE is not set +# CONFIG_BUSYBOX_DEFAULT_UNICODE_PRESERVE_BROKEN is not set +CONFIG_BUSYBOX_DEFAULT_FEATURE_NON_POSIX_CP=y +# CONFIG_BUSYBOX_DEFAULT_FEATURE_VERBOSE_CP_MESSAGE is not set +CONFIG_BUSYBOX_DEFAULT_FEATURE_USE_SENDFILE=y +CONFIG_BUSYBOX_DEFAULT_FEATURE_COPYBUF_KB=4 +# CONFIG_BUSYBOX_DEFAULT_FEATURE_SKIP_ROOTFS is not set +# CONFIG_BUSYBOX_DEFAULT_MONOTONIC_SYSCALL is not set +CONFIG_BUSYBOX_DEFAULT_IOCTL_HEX2STR_ERROR=y +# CONFIG_BUSYBOX_DEFAULT_FEATURE_HWIB is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_SEAMLESS_XZ is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_SEAMLESS_LZMA is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_SEAMLESS_BZ2 is not set +CONFIG_BUSYBOX_DEFAULT_FEATURE_SEAMLESS_GZ=y +# CONFIG_BUSYBOX_DEFAULT_FEATURE_SEAMLESS_Z is not set +# CONFIG_BUSYBOX_DEFAULT_AR is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_AR_LONG_FILENAMES is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_AR_CREATE is not set +# CONFIG_BUSYBOX_DEFAULT_UNCOMPRESS is not set +CONFIG_BUSYBOX_DEFAULT_GUNZIP=y +CONFIG_BUSYBOX_DEFAULT_ZCAT=y +# CONFIG_BUSYBOX_DEFAULT_FEATURE_GUNZIP_LONG_OPTIONS is not set +CONFIG_BUSYBOX_DEFAULT_BUNZIP2=y +CONFIG_BUSYBOX_DEFAULT_BZCAT=y +# CONFIG_BUSYBOX_DEFAULT_UNLZMA is not set +# CONFIG_BUSYBOX_DEFAULT_LZCAT is not set +# CONFIG_BUSYBOX_DEFAULT_LZMA is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_LZMA_FAST is not set +# CONFIG_BUSYBOX_DEFAULT_UNXZ is not set +# CONFIG_BUSYBOX_DEFAULT_XZCAT is not set +# CONFIG_BUSYBOX_DEFAULT_XZ is not set +# CONFIG_BUSYBOX_DEFAULT_BZIP2 is not set +CONFIG_BUSYBOX_DEFAULT_FEATURE_BZIP2_DECOMPRESS=y +# CONFIG_BUSYBOX_DEFAULT_CPIO is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_CPIO_O is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_CPIO_P is not set +# CONFIG_BUSYBOX_DEFAULT_DPKG is not set +# CONFIG_BUSYBOX_DEFAULT_DPKG_DEB is not set +CONFIG_BUSYBOX_DEFAULT_GZIP=y +# CONFIG_BUSYBOX_DEFAULT_FEATURE_GZIP_LONG_OPTIONS is not set +CONFIG_BUSYBOX_DEFAULT_GZIP_FAST=0 +# CONFIG_BUSYBOX_DEFAULT_FEATURE_GZIP_LEVELS is not set +CONFIG_BUSYBOX_DEFAULT_FEATURE_GZIP_DECOMPRESS=y +# CONFIG_BUSYBOX_DEFAULT_LZOP is not set +# CONFIG_BUSYBOX_DEFAULT_UNLZOP is not set +# CONFIG_BUSYBOX_DEFAULT_LZOPCAT is not set +# CONFIG_BUSYBOX_DEFAULT_LZOP_COMPR_HIGH is not set +# CONFIG_BUSYBOX_DEFAULT_RPM is not set +# CONFIG_BUSYBOX_DEFAULT_RPM2CPIO is not set +CONFIG_BUSYBOX_DEFAULT_TAR=y +CONFIG_BUSYBOX_DEFAULT_FEATURE_TAR_CREATE=y +# CONFIG_BUSYBOX_DEFAULT_FEATURE_TAR_AUTODETECT is not set +CONFIG_BUSYBOX_DEFAULT_FEATURE_TAR_FROM=y +# CONFIG_BUSYBOX_DEFAULT_FEATURE_TAR_OLDGNU_COMPATIBILITY is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_TAR_OLDSUN_COMPATIBILITY is not set +CONFIG_BUSYBOX_DEFAULT_FEATURE_TAR_GNU_EXTENSIONS=y +# CONFIG_BUSYBOX_DEFAULT_FEATURE_TAR_LONG_OPTIONS is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_TAR_TO_COMMAND is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_TAR_UNAME_GNAME is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_TAR_NOPRESERVE_TIME is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_TAR_SELINUX is not set +# CONFIG_BUSYBOX_DEFAULT_UNZIP is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_UNZIP_CDF is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_UNZIP_BZIP2 is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_UNZIP_LZMA is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_UNZIP_XZ is not set +CONFIG_BUSYBOX_DEFAULT_BASENAME=y +CONFIG_BUSYBOX_DEFAULT_CAT=y +# CONFIG_BUSYBOX_DEFAULT_FEATURE_CATV is not set +CONFIG_BUSYBOX_DEFAULT_CHGRP=y +CONFIG_BUSYBOX_DEFAULT_CHMOD=y +CONFIG_BUSYBOX_DEFAULT_CHOWN=y +# CONFIG_BUSYBOX_DEFAULT_FEATURE_CHOWN_LONG_OPTIONS is not set +CONFIG_BUSYBOX_DEFAULT_CHROOT=y +# CONFIG_BUSYBOX_DEFAULT_CKSUM is not set +# CONFIG_BUSYBOX_DEFAULT_COMM is not set +CONFIG_BUSYBOX_DEFAULT_CP=y +# CONFIG_BUSYBOX_DEFAULT_FEATURE_CP_LONG_OPTIONS is not set +CONFIG_BUSYBOX_DEFAULT_CUT=y +CONFIG_BUSYBOX_DEFAULT_DATE=y +CONFIG_BUSYBOX_DEFAULT_FEATURE_DATE_ISOFMT=y +# CONFIG_BUSYBOX_DEFAULT_FEATURE_DATE_NANO is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_DATE_COMPAT is not set +CONFIG_BUSYBOX_DEFAULT_DD=y +CONFIG_BUSYBOX_DEFAULT_FEATURE_DD_SIGNAL_HANDLING=y +# CONFIG_BUSYBOX_DEFAULT_FEATURE_DD_THIRD_STATUS_LINE is not set +CONFIG_BUSYBOX_DEFAULT_FEATURE_DD_IBS_OBS=y +# CONFIG_BUSYBOX_DEFAULT_FEATURE_DD_STATUS is not set +CONFIG_BUSYBOX_DEFAULT_DF=y +# CONFIG_BUSYBOX_DEFAULT_FEATURE_DF_FANCY is not set +CONFIG_BUSYBOX_DEFAULT_DIRNAME=y +# CONFIG_BUSYBOX_DEFAULT_DOS2UNIX is not set +# CONFIG_BUSYBOX_DEFAULT_UNIX2DOS is not set +CONFIG_BUSYBOX_DEFAULT_DU=y +CONFIG_BUSYBOX_DEFAULT_FEATURE_DU_DEFAULT_BLOCKSIZE_1K=y +CONFIG_BUSYBOX_DEFAULT_ECHO=y +CONFIG_BUSYBOX_DEFAULT_FEATURE_FANCY_ECHO=y +CONFIG_BUSYBOX_DEFAULT_ENV=y +# CONFIG_BUSYBOX_DEFAULT_FEATURE_ENV_LONG_OPTIONS is not set +# CONFIG_BUSYBOX_DEFAULT_EXPAND is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_EXPAND_LONG_OPTIONS is not set +# CONFIG_BUSYBOX_DEFAULT_UNEXPAND is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_UNEXPAND_LONG_OPTIONS is not set +CONFIG_BUSYBOX_DEFAULT_EXPR=y +CONFIG_BUSYBOX_DEFAULT_EXPR_MATH_SUPPORT_64=y +# CONFIG_BUSYBOX_DEFAULT_FACTOR is not set +CONFIG_BUSYBOX_DEFAULT_FALSE=y +# CONFIG_BUSYBOX_DEFAULT_FOLD is not set +CONFIG_BUSYBOX_DEFAULT_FSYNC=y +CONFIG_BUSYBOX_DEFAULT_HEAD=y +CONFIG_BUSYBOX_DEFAULT_FEATURE_FANCY_HEAD=y +# CONFIG_BUSYBOX_DEFAULT_HOSTID is not set +CONFIG_BUSYBOX_DEFAULT_ID=y +# CONFIG_BUSYBOX_DEFAULT_GROUPS is not set +# CONFIG_BUSYBOX_DEFAULT_INSTALL is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_INSTALL_LONG_OPTIONS is not set +# CONFIG_BUSYBOX_DEFAULT_LINK is not set +CONFIG_BUSYBOX_DEFAULT_LN=y +# CONFIG_BUSYBOX_DEFAULT_LOGNAME is not set +CONFIG_BUSYBOX_DEFAULT_LS=y +CONFIG_BUSYBOX_DEFAULT_FEATURE_LS_FILETYPES=y +CONFIG_BUSYBOX_DEFAULT_FEATURE_LS_FOLLOWLINKS=y +CONFIG_BUSYBOX_DEFAULT_FEATURE_LS_RECURSIVE=y +CONFIG_BUSYBOX_DEFAULT_FEATURE_LS_WIDTH=y +CONFIG_BUSYBOX_DEFAULT_FEATURE_LS_SORTFILES=y +CONFIG_BUSYBOX_DEFAULT_FEATURE_LS_TIMESTAMPS=y +CONFIG_BUSYBOX_DEFAULT_FEATURE_LS_USERNAME=y +CONFIG_BUSYBOX_DEFAULT_FEATURE_LS_COLOR=y +CONFIG_BUSYBOX_DEFAULT_FEATURE_LS_COLOR_IS_DEFAULT=y +CONFIG_BUSYBOX_DEFAULT_MD5SUM=y +# CONFIG_BUSYBOX_DEFAULT_SHA1SUM is not set +CONFIG_BUSYBOX_DEFAULT_SHA256SUM=y +# CONFIG_BUSYBOX_DEFAULT_SHA512SUM is not set +# CONFIG_BUSYBOX_DEFAULT_SHA3SUM is not set +CONFIG_BUSYBOX_DEFAULT_FEATURE_MD5_SHA1_SUM_CHECK=y +CONFIG_BUSYBOX_DEFAULT_MKDIR=y +# CONFIG_BUSYBOX_DEFAULT_FEATURE_MKDIR_LONG_OPTIONS is not set +CONFIG_BUSYBOX_DEFAULT_MKFIFO=y +CONFIG_BUSYBOX_DEFAULT_MKNOD=y +CONFIG_BUSYBOX_DEFAULT_MV=y +# CONFIG_BUSYBOX_DEFAULT_FEATURE_MV_LONG_OPTIONS is not set +CONFIG_BUSYBOX_DEFAULT_NICE=y +# CONFIG_BUSYBOX_DEFAULT_NL is not set +# CONFIG_BUSYBOX_DEFAULT_NOHUP is not set +# CONFIG_BUSYBOX_DEFAULT_NPROC is not set +# CONFIG_BUSYBOX_DEFAULT_OD is not set +# CONFIG_BUSYBOX_DEFAULT_PASTE is not set +# CONFIG_BUSYBOX_DEFAULT_PRINTENV is not set +CONFIG_BUSYBOX_DEFAULT_PRINTF=y +CONFIG_BUSYBOX_DEFAULT_PWD=y +CONFIG_BUSYBOX_DEFAULT_READLINK=y +CONFIG_BUSYBOX_DEFAULT_FEATURE_READLINK_FOLLOW=y +# CONFIG_BUSYBOX_DEFAULT_REALPATH is not set +CONFIG_BUSYBOX_DEFAULT_RM=y +CONFIG_BUSYBOX_DEFAULT_RMDIR=y +# CONFIG_BUSYBOX_DEFAULT_FEATURE_RMDIR_LONG_OPTIONS is not set +CONFIG_BUSYBOX_DEFAULT_SEQ=y +# CONFIG_BUSYBOX_DEFAULT_SHRED is not set +# CONFIG_BUSYBOX_DEFAULT_SHUF is not set +CONFIG_BUSYBOX_DEFAULT_SLEEP=y +CONFIG_BUSYBOX_DEFAULT_FEATURE_FANCY_SLEEP=y +CONFIG_BUSYBOX_DEFAULT_FEATURE_FLOAT_SLEEP=y +CONFIG_BUSYBOX_DEFAULT_SORT=y +# CONFIG_BUSYBOX_DEFAULT_FEATURE_SORT_BIG is not set +# CONFIG_BUSYBOX_DEFAULT_SPLIT is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_SPLIT_FANCY is not set +# CONFIG_BUSYBOX_DEFAULT_STAT is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_STAT_FORMAT is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_STAT_FILESYSTEM is not set +# CONFIG_BUSYBOX_DEFAULT_STTY is not set +# CONFIG_BUSYBOX_DEFAULT_SUM is not set +CONFIG_BUSYBOX_DEFAULT_SYNC=y +# CONFIG_BUSYBOX_DEFAULT_FEATURE_SYNC_FANCY is not set +# CONFIG_BUSYBOX_DEFAULT_TAC is not set +CONFIG_BUSYBOX_DEFAULT_TAIL=y +CONFIG_BUSYBOX_DEFAULT_FEATURE_FANCY_TAIL=y +CONFIG_BUSYBOX_DEFAULT_TEE=y +CONFIG_BUSYBOX_DEFAULT_FEATURE_TEE_USE_BLOCK_IO=y +CONFIG_BUSYBOX_DEFAULT_TEST=y +CONFIG_BUSYBOX_DEFAULT_TEST1=y +CONFIG_BUSYBOX_DEFAULT_TEST2=y +CONFIG_BUSYBOX_DEFAULT_FEATURE_TEST_64=y +CONFIG_BUSYBOX_DEFAULT_TOUCH=y +# CONFIG_BUSYBOX_DEFAULT_FEATURE_TOUCH_NODEREF is not set +CONFIG_BUSYBOX_DEFAULT_FEATURE_TOUCH_SUSV3=y +CONFIG_BUSYBOX_DEFAULT_TR=y +# CONFIG_BUSYBOX_DEFAULT_FEATURE_TR_CLASSES is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_TR_EQUIV is not set +CONFIG_BUSYBOX_DEFAULT_TRUE=y +# CONFIG_BUSYBOX_DEFAULT_TRUNCATE is not set +# CONFIG_BUSYBOX_DEFAULT_TTY is not set +CONFIG_BUSYBOX_DEFAULT_UNAME=y +CONFIG_BUSYBOX_DEFAULT_UNAME_OSNAME="GNU/Linux" +CONFIG_BUSYBOX_DEFAULT_UNIQ=y +# CONFIG_BUSYBOX_DEFAULT_UNLINK is not set +CONFIG_BUSYBOX_DEFAULT_USLEEP=y +# CONFIG_BUSYBOX_DEFAULT_UUDECODE is not set +# CONFIG_BUSYBOX_DEFAULT_BASE64 is not set +# CONFIG_BUSYBOX_DEFAULT_UUENCODE is not set +CONFIG_BUSYBOX_DEFAULT_WC=y +# CONFIG_BUSYBOX_DEFAULT_FEATURE_WC_LARGE is not set +# CONFIG_BUSYBOX_DEFAULT_WHO is not set +# CONFIG_BUSYBOX_DEFAULT_W is not set +# CONFIG_BUSYBOX_DEFAULT_USERS is not set +# CONFIG_BUSYBOX_DEFAULT_WHOAMI is not set +CONFIG_BUSYBOX_DEFAULT_YES=y +# CONFIG_BUSYBOX_DEFAULT_FEATURE_VERBOSE is not set +CONFIG_BUSYBOX_DEFAULT_FEATURE_PRESERVE_HARDLINKS=y +CONFIG_BUSYBOX_DEFAULT_FEATURE_HUMAN_READABLE=y +# CONFIG_BUSYBOX_DEFAULT_CHVT is not set +CONFIG_BUSYBOX_DEFAULT_CLEAR=y +# CONFIG_BUSYBOX_DEFAULT_DEALLOCVT is not set +# CONFIG_BUSYBOX_DEFAULT_DUMPKMAP is not set +# CONFIG_BUSYBOX_DEFAULT_FGCONSOLE is not set +# CONFIG_BUSYBOX_DEFAULT_KBD_MODE is not set +# CONFIG_BUSYBOX_DEFAULT_LOADFONT is not set +# CONFIG_BUSYBOX_DEFAULT_SETFONT is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_SETFONT_TEXTUAL_MAP is not set +CONFIG_BUSYBOX_DEFAULT_DEFAULT_SETFONT_DIR="" +# CONFIG_BUSYBOX_DEFAULT_FEATURE_LOADFONT_PSF2 is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_LOADFONT_RAW is not set +# CONFIG_BUSYBOX_DEFAULT_LOADKMAP is not set +# CONFIG_BUSYBOX_DEFAULT_OPENVT is not set +CONFIG_BUSYBOX_DEFAULT_RESET=y +# CONFIG_BUSYBOX_DEFAULT_RESIZE is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_RESIZE_PRINT is not set +# CONFIG_BUSYBOX_DEFAULT_SETCONSOLE is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_SETCONSOLE_LONG_OPTIONS is not set +# CONFIG_BUSYBOX_DEFAULT_SETKEYCODES is not set +# CONFIG_BUSYBOX_DEFAULT_SETLOGCONS is not set +# CONFIG_BUSYBOX_DEFAULT_SHOWKEY is not set +CONFIG_BUSYBOX_DEFAULT_MKTEMP=y +# CONFIG_BUSYBOX_DEFAULT_PIPE_PROGRESS is not set +# CONFIG_BUSYBOX_DEFAULT_RUN_PARTS is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_RUN_PARTS_LONG_OPTIONS is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_RUN_PARTS_FANCY is not set +CONFIG_BUSYBOX_DEFAULT_START_STOP_DAEMON=y +# CONFIG_BUSYBOX_DEFAULT_FEATURE_START_STOP_DAEMON_FANCY is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_START_STOP_DAEMON_LONG_OPTIONS is not set +CONFIG_BUSYBOX_DEFAULT_WHICH=y +CONFIG_BUSYBOX_DEFAULT_AWK=y +CONFIG_BUSYBOX_DEFAULT_FEATURE_AWK_LIBM=y +CONFIG_BUSYBOX_DEFAULT_FEATURE_AWK_GNU_EXTENSIONS=y +CONFIG_BUSYBOX_DEFAULT_CMP=y +CONFIG_BUSYBOX_DEFAULT_DIFF=y +CONFIG_BUSYBOX_DEFAULT_FEATURE_DIFF_LONG_OPTIONS=y +CONFIG_BUSYBOX_DEFAULT_FEATURE_DIFF_DIR=y +# CONFIG_BUSYBOX_DEFAULT_ED is not set +# CONFIG_BUSYBOX_DEFAULT_PATCH is not set +CONFIG_BUSYBOX_DEFAULT_SED=y +CONFIG_BUSYBOX_DEFAULT_VI=y +CONFIG_BUSYBOX_DEFAULT_FEATURE_VI_MAX_LEN=1024 +# CONFIG_BUSYBOX_DEFAULT_FEATURE_VI_8BIT is not set +CONFIG_BUSYBOX_DEFAULT_FEATURE_VI_COLON=y +CONFIG_BUSYBOX_DEFAULT_FEATURE_VI_YANKMARK=y +CONFIG_BUSYBOX_DEFAULT_FEATURE_VI_SEARCH=y +# CONFIG_BUSYBOX_DEFAULT_FEATURE_VI_REGEX_SEARCH is not set +CONFIG_BUSYBOX_DEFAULT_FEATURE_VI_USE_SIGNALS=y +CONFIG_BUSYBOX_DEFAULT_FEATURE_VI_DOT_CMD=y +CONFIG_BUSYBOX_DEFAULT_FEATURE_VI_READONLY=y +CONFIG_BUSYBOX_DEFAULT_FEATURE_VI_SETOPTS=y +CONFIG_BUSYBOX_DEFAULT_FEATURE_VI_SET=y +CONFIG_BUSYBOX_DEFAULT_FEATURE_VI_WIN_RESIZE=y +CONFIG_BUSYBOX_DEFAULT_FEATURE_VI_ASK_TERMINAL=y +# CONFIG_BUSYBOX_DEFAULT_FEATURE_VI_UNDO is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_VI_UNDO_QUEUE is not set +CONFIG_BUSYBOX_DEFAULT_FEATURE_VI_UNDO_QUEUE_MAX=0 +CONFIG_BUSYBOX_DEFAULT_FEATURE_ALLOW_EXEC=y +CONFIG_BUSYBOX_DEFAULT_FIND=y +CONFIG_BUSYBOX_DEFAULT_FEATURE_FIND_PRINT0=y +CONFIG_BUSYBOX_DEFAULT_FEATURE_FIND_MTIME=y +# CONFIG_BUSYBOX_DEFAULT_FEATURE_FIND_MMIN is not set +CONFIG_BUSYBOX_DEFAULT_FEATURE_FIND_PERM=y +CONFIG_BUSYBOX_DEFAULT_FEATURE_FIND_TYPE=y +CONFIG_BUSYBOX_DEFAULT_FEATURE_FIND_XDEV=y +CONFIG_BUSYBOX_DEFAULT_FEATURE_FIND_MAXDEPTH=y +CONFIG_BUSYBOX_DEFAULT_FEATURE_FIND_NEWER=y +# CONFIG_BUSYBOX_DEFAULT_FEATURE_FIND_INUM is not set +CONFIG_BUSYBOX_DEFAULT_FEATURE_FIND_EXEC=y +# CONFIG_BUSYBOX_DEFAULT_FEATURE_FIND_EXEC_PLUS is not set +CONFIG_BUSYBOX_DEFAULT_FEATURE_FIND_USER=y +CONFIG_BUSYBOX_DEFAULT_FEATURE_FIND_GROUP=y +CONFIG_BUSYBOX_DEFAULT_FEATURE_FIND_NOT=y +CONFIG_BUSYBOX_DEFAULT_FEATURE_FIND_DEPTH=y +CONFIG_BUSYBOX_DEFAULT_FEATURE_FIND_PAREN=y +CONFIG_BUSYBOX_DEFAULT_FEATURE_FIND_SIZE=y +CONFIG_BUSYBOX_DEFAULT_FEATURE_FIND_PRUNE=y +# CONFIG_BUSYBOX_DEFAULT_FEATURE_FIND_DELETE is not set +CONFIG_BUSYBOX_DEFAULT_FEATURE_FIND_PATH=y +CONFIG_BUSYBOX_DEFAULT_FEATURE_FIND_REGEX=y +# CONFIG_BUSYBOX_DEFAULT_FEATURE_FIND_CONTEXT is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_FIND_LINKS is not set +CONFIG_BUSYBOX_DEFAULT_GREP=y +CONFIG_BUSYBOX_DEFAULT_EGREP=y +CONFIG_BUSYBOX_DEFAULT_FGREP=y +CONFIG_BUSYBOX_DEFAULT_FEATURE_GREP_CONTEXT=y +CONFIG_BUSYBOX_DEFAULT_XARGS=y +CONFIG_BUSYBOX_DEFAULT_FEATURE_XARGS_SUPPORT_CONFIRMATION=y +CONFIG_BUSYBOX_DEFAULT_FEATURE_XARGS_SUPPORT_QUOTES=y +CONFIG_BUSYBOX_DEFAULT_FEATURE_XARGS_SUPPORT_TERMOPT=y +CONFIG_BUSYBOX_DEFAULT_FEATURE_XARGS_SUPPORT_ZERO_TERM=y +# CONFIG_BUSYBOX_DEFAULT_FEATURE_XARGS_SUPPORT_REPL_STR is not set +# CONFIG_BUSYBOX_DEFAULT_BOOTCHARTD is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_BOOTCHARTD_BLOATED_HEADER is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_BOOTCHARTD_CONFIG_FILE is not set +CONFIG_BUSYBOX_DEFAULT_HALT=y +CONFIG_BUSYBOX_DEFAULT_POWEROFF=y +CONFIG_BUSYBOX_DEFAULT_REBOOT=y +# CONFIG_BUSYBOX_DEFAULT_FEATURE_CALL_TELINIT is not set +CONFIG_BUSYBOX_DEFAULT_TELINIT_PATH="" +CONFIG_BUSYBOX_DEFAULT_INIT=y +# CONFIG_BUSYBOX_DEFAULT_LINUXRC is not set +CONFIG_BUSYBOX_DEFAULT_FEATURE_USE_INITTAB=y +# CONFIG_BUSYBOX_DEFAULT_FEATURE_KILL_REMOVED is not set +CONFIG_BUSYBOX_DEFAULT_FEATURE_KILL_DELAY=0 +CONFIG_BUSYBOX_DEFAULT_FEATURE_INIT_SCTTY=y +CONFIG_BUSYBOX_DEFAULT_FEATURE_INIT_SYSLOG=y +CONFIG_BUSYBOX_DEFAULT_FEATURE_INIT_QUIET=y +CONFIG_BUSYBOX_DEFAULT_FEATURE_INIT_COREDUMPS=y +CONFIG_BUSYBOX_DEFAULT_INIT_TERMINAL_TYPE="" +# CONFIG_BUSYBOX_DEFAULT_FEATURE_INIT_MODIFY_CMDLINE is not set +# CONFIG_BUSYBOX_DEFAULT_MESG is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_MESG_ENABLE_ONLY_GROUP is not set +CONFIG_BUSYBOX_DEFAULT_FEATURE_SHADOWPASSWDS=y +# CONFIG_BUSYBOX_DEFAULT_USE_BB_PWD_GRP is not set +# CONFIG_BUSYBOX_DEFAULT_USE_BB_SHADOW is not set +# CONFIG_BUSYBOX_DEFAULT_USE_BB_CRYPT is not set +# CONFIG_BUSYBOX_DEFAULT_USE_BB_CRYPT_SHA is not set +# CONFIG_BUSYBOX_DEFAULT_ADD_SHELL is not set +# CONFIG_BUSYBOX_DEFAULT_REMOVE_SHELL is not set +# CONFIG_BUSYBOX_DEFAULT_ADDGROUP is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_ADDGROUP_LONG_OPTIONS is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_ADDUSER_TO_GROUP is not set +# CONFIG_BUSYBOX_DEFAULT_ADDUSER is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_ADDUSER_LONG_OPTIONS is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_CHECK_NAMES is not set +CONFIG_BUSYBOX_DEFAULT_LAST_ID=0 +CONFIG_BUSYBOX_DEFAULT_FIRST_SYSTEM_ID=0 +CONFIG_BUSYBOX_DEFAULT_LAST_SYSTEM_ID=0 +# CONFIG_BUSYBOX_DEFAULT_CHPASSWD is not set +CONFIG_BUSYBOX_DEFAULT_FEATURE_DEFAULT_PASSWD_ALGO="md5" +# CONFIG_BUSYBOX_DEFAULT_CRYPTPW is not set +# CONFIG_BUSYBOX_DEFAULT_MKPASSWD is not set +# CONFIG_BUSYBOX_DEFAULT_DELUSER is not set +# CONFIG_BUSYBOX_DEFAULT_DELGROUP is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_DEL_USER_FROM_GROUP is not set +# CONFIG_BUSYBOX_DEFAULT_GETTY is not set +CONFIG_BUSYBOX_DEFAULT_LOGIN=y +CONFIG_BUSYBOX_DEFAULT_LOGIN_SESSION_AS_CHILD=y +# CONFIG_BUSYBOX_DEFAULT_LOGIN_SCRIPTS is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_NOLOGIN is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_SECURETTY is not set +CONFIG_BUSYBOX_DEFAULT_PASSWD=y +CONFIG_BUSYBOX_DEFAULT_FEATURE_PASSWD_WEAK_CHECK=y +# CONFIG_BUSYBOX_DEFAULT_SU is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_SU_SYSLOG is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_SU_CHECKS_SHELLS is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_SU_BLANK_PW_NEEDS_SECURE_TTY is not set +# CONFIG_BUSYBOX_DEFAULT_SULOGIN is not set +# CONFIG_BUSYBOX_DEFAULT_VLOCK is not set +# CONFIG_BUSYBOX_DEFAULT_CHATTR is not set +# CONFIG_BUSYBOX_DEFAULT_FSCK is not set +# CONFIG_BUSYBOX_DEFAULT_LSATTR is not set +# CONFIG_BUSYBOX_DEFAULT_TUNE2FS is not set +# CONFIG_BUSYBOX_DEFAULT_MODPROBE_SMALL is not set +# CONFIG_BUSYBOX_DEFAULT_DEPMOD is not set +CONFIG_BUSYBOX_DEFAULT_INSMOD=y +CONFIG_BUSYBOX_DEFAULT_LSMOD=y +CONFIG_BUSYBOX_DEFAULT_FEATURE_LSMOD_PRETTY_2_6_OUTPUT=y +# CONFIG_BUSYBOX_DEFAULT_MODINFO is not set +# CONFIG_BUSYBOX_DEFAULT_MODPROBE is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_MODPROBE_BLACKLIST is not set +CONFIG_BUSYBOX_DEFAULT_RMMOD=y +# CONFIG_BUSYBOX_DEFAULT_FEATURE_CMDLINE_MODULE_OPTIONS is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_MODPROBE_SMALL_CHECK_ALREADY_LOADED is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_2_4_MODULES is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_INSMOD_VERSION_CHECKING is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_INSMOD_KSYMOOPS_SYMBOLS is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_INSMOD_LOADINKMEM is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_INSMOD_LOAD_MAP is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_INSMOD_LOAD_MAP_FULL is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_CHECK_TAINTED_MODULE is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_INSMOD_TRY_MMAP is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_MODUTILS_ALIAS is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_MODUTILS_SYMBOLS is not set +CONFIG_BUSYBOX_DEFAULT_DEFAULT_MODULES_DIR="" +CONFIG_BUSYBOX_DEFAULT_DEFAULT_DEPMOD_FILE="" +# CONFIG_BUSYBOX_DEFAULT_ACPID is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_ACPID_COMPAT is not set +# CONFIG_BUSYBOX_DEFAULT_BLKDISCARD is not set +# CONFIG_BUSYBOX_DEFAULT_BLKID is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_BLKID_TYPE is not set +# CONFIG_BUSYBOX_DEFAULT_BLOCKDEV is not set +# CONFIG_BUSYBOX_DEFAULT_CAL is not set +CONFIG_BUSYBOX_DEFAULT_DMESG=y +CONFIG_BUSYBOX_DEFAULT_FEATURE_DMESG_PRETTY=y +# CONFIG_BUSYBOX_DEFAULT_FALLOCATE is not set +# CONFIG_BUSYBOX_DEFAULT_FATATTR is not set +# CONFIG_BUSYBOX_DEFAULT_FBSET is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_FBSET_FANCY is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_FBSET_READMODE is not set +# CONFIG_BUSYBOX_DEFAULT_FDFORMAT is not set +# CONFIG_BUSYBOX_DEFAULT_FDISK is not set +# CONFIG_BUSYBOX_DEFAULT_FDISK_SUPPORT_LARGE_DISKS is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_FDISK_WRITABLE is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_AIX_LABEL is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_SGI_LABEL is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_SUN_LABEL is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_OSF_LABEL is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_GPT_LABEL is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_FDISK_ADVANCED is not set +# CONFIG_BUSYBOX_DEFAULT_FINDFS is not set +CONFIG_BUSYBOX_DEFAULT_FLOCK=y +# CONFIG_BUSYBOX_DEFAULT_FDFLUSH is not set +# CONFIG_BUSYBOX_DEFAULT_FREERAMDISK is not set +# CONFIG_BUSYBOX_DEFAULT_FSCK_MINIX is not set +# CONFIG_BUSYBOX_DEFAULT_FSFREEZE is not set +# CONFIG_BUSYBOX_DEFAULT_FSTRIM is not set +# CONFIG_BUSYBOX_DEFAULT_GETOPT is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_GETOPT_LONG is not set +CONFIG_BUSYBOX_DEFAULT_HEXDUMP=y +# CONFIG_BUSYBOX_DEFAULT_FEATURE_HEXDUMP_REVERSE is not set +# CONFIG_BUSYBOX_DEFAULT_HD is not set +# CONFIG_BUSYBOX_DEFAULT_XXD is not set +CONFIG_BUSYBOX_DEFAULT_HWCLOCK=y +# CONFIG_BUSYBOX_DEFAULT_FEATURE_HWCLOCK_LONG_OPTIONS is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_HWCLOCK_ADJTIME_FHS is not set +# CONFIG_BUSYBOX_DEFAULT_IPCRM is not set +# CONFIG_BUSYBOX_DEFAULT_IPCS is not set +# CONFIG_BUSYBOX_DEFAULT_LOSETUP is not set +# CONFIG_BUSYBOX_DEFAULT_LSPCI is not set +# CONFIG_BUSYBOX_DEFAULT_LSUSB is not set +CONFIG_BUSYBOX_DEFAULT_MDEV=y +CONFIG_BUSYBOX_DEFAULT_FEATURE_MDEV_CONF=y +CONFIG_BUSYBOX_DEFAULT_FEATURE_MDEV_RENAME=y +CONFIG_BUSYBOX_DEFAULT_FEATURE_MDEV_RENAME_REGEXP=y +CONFIG_BUSYBOX_DEFAULT_FEATURE_MDEV_EXEC=y +CONFIG_BUSYBOX_DEFAULT_FEATURE_MDEV_LOAD_FIRMWARE=y +# CONFIG_BUSYBOX_DEFAULT_MKE2FS is not set +# CONFIG_BUSYBOX_DEFAULT_MKFS_EXT2 is not set +# CONFIG_BUSYBOX_DEFAULT_MKFS_MINIX is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_MINIX2 is not set +# CONFIG_BUSYBOX_DEFAULT_MKFS_REISER is not set +# CONFIG_BUSYBOX_DEFAULT_MKDOSFS is not set +# CONFIG_BUSYBOX_DEFAULT_MKFS_VFAT is not set +CONFIG_BUSYBOX_DEFAULT_MKSWAP=y +# CONFIG_BUSYBOX_DEFAULT_FEATURE_MKSWAP_UUID is not set +# CONFIG_BUSYBOX_DEFAULT_MORE is not set +CONFIG_BUSYBOX_DEFAULT_MOUNT=y +# CONFIG_BUSYBOX_DEFAULT_FEATURE_MOUNT_FAKE is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_MOUNT_VERBOSE is not set +CONFIG_BUSYBOX_DEFAULT_FEATURE_MOUNT_HELPERS=y +# CONFIG_BUSYBOX_DEFAULT_FEATURE_MOUNT_LABEL is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_MOUNT_NFS is not set +CONFIG_BUSYBOX_DEFAULT_FEATURE_MOUNT_CIFS=y +CONFIG_BUSYBOX_DEFAULT_FEATURE_MOUNT_FLAGS=y +CONFIG_BUSYBOX_DEFAULT_FEATURE_MOUNT_FSTAB=y +# CONFIG_BUSYBOX_DEFAULT_FEATURE_MOUNT_OTHERTAB is not set +# CONFIG_BUSYBOX_DEFAULT_NSENTER is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_NSENTER_LONG_OPTS is not set +CONFIG_BUSYBOX_DEFAULT_PIVOT_ROOT=y +# CONFIG_BUSYBOX_DEFAULT_RDATE is not set +# CONFIG_BUSYBOX_DEFAULT_RDEV is not set +# CONFIG_BUSYBOX_DEFAULT_READPROFILE is not set +# CONFIG_BUSYBOX_DEFAULT_REV is not set +# CONFIG_BUSYBOX_DEFAULT_RTCWAKE is not set +# CONFIG_BUSYBOX_DEFAULT_SCRIPT is not set +# CONFIG_BUSYBOX_DEFAULT_SCRIPTREPLAY is not set +# CONFIG_BUSYBOX_DEFAULT_SETARCH is not set +# CONFIG_BUSYBOX_DEFAULT_LINUX32 is not set +# CONFIG_BUSYBOX_DEFAULT_LINUX64 is not set +# CONFIG_BUSYBOX_DEFAULT_SETPRIV is not set +# CONFIG_BUSYBOX_DEFAULT_SWAPON is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_SWAPON_DISCARD is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_SWAPON_PRI is not set +# CONFIG_BUSYBOX_DEFAULT_SWAPOFF is not set +CONFIG_BUSYBOX_DEFAULT_SWITCH_ROOT=y +# CONFIG_BUSYBOX_DEFAULT_UEVENT is not set +CONFIG_BUSYBOX_DEFAULT_UMOUNT=y +CONFIG_BUSYBOX_DEFAULT_FEATURE_UMOUNT_ALL=y +# CONFIG_BUSYBOX_DEFAULT_UNSHARE is not set +CONFIG_BUSYBOX_DEFAULT_FEATURE_MOUNT_LOOP=y +# CONFIG_BUSYBOX_DEFAULT_FEATURE_MOUNT_LOOP_CREATE is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_MTAB_SUPPORT is not set +# CONFIG_BUSYBOX_DEFAULT_VOLUMEID is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_VOLUMEID_BCACHE is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_VOLUMEID_BTRFS is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_VOLUMEID_CRAMFS is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_VOLUMEID_EXFAT is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_VOLUMEID_EXT is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_VOLUMEID_F2FS is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_VOLUMEID_FAT is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_VOLUMEID_HFS is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_VOLUMEID_ISO9660 is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_VOLUMEID_JFS is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_VOLUMEID_LINUXRAID is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_VOLUMEID_LINUXSWAP is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_VOLUMEID_LUKS is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_VOLUMEID_NILFS is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_VOLUMEID_NTFS is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_VOLUMEID_OCFS2 is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_VOLUMEID_REISERFS is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_VOLUMEID_ROMFS is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_VOLUMEID_SQUASHFS is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_VOLUMEID_SYSV is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_VOLUMEID_UBIFS is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_VOLUMEID_UDF is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_VOLUMEID_XFS is not set +# CONFIG_BUSYBOX_DEFAULT_ADJTIMEX is not set +# CONFIG_BUSYBOX_DEFAULT_BBCONFIG is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_COMPRESS_BBCONFIG is not set +# CONFIG_BUSYBOX_DEFAULT_BEEP is not set +CONFIG_BUSYBOX_DEFAULT_FEATURE_BEEP_FREQ=0 +CONFIG_BUSYBOX_DEFAULT_FEATURE_BEEP_LENGTH_MS=0 +# CONFIG_BUSYBOX_DEFAULT_CHAT is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_CHAT_NOFAIL is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_CHAT_TTY_HIFI is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_CHAT_IMPLICIT_CR is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_CHAT_SWALLOW_OPTS is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_CHAT_SEND_ESCAPES is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_CHAT_VAR_ABORT_LEN is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_CHAT_CLR_ABORT is not set +# CONFIG_BUSYBOX_DEFAULT_CHRT is not set +# CONFIG_BUSYBOX_DEFAULT_CONSPY is not set +CONFIG_BUSYBOX_DEFAULT_CROND=y +# CONFIG_BUSYBOX_DEFAULT_FEATURE_CROND_D is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_CROND_CALL_SENDMAIL is not set +CONFIG_BUSYBOX_DEFAULT_FEATURE_CROND_DIR="/etc" +CONFIG_BUSYBOX_DEFAULT_CRONTAB=y +# CONFIG_BUSYBOX_DEFAULT_DC is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_DC_LIBM is not set +# CONFIG_BUSYBOX_DEFAULT_DEVFSD is not set +# CONFIG_BUSYBOX_DEFAULT_DEVFSD_MODLOAD is not set +# CONFIG_BUSYBOX_DEFAULT_DEVFSD_FG_NP is not set +# CONFIG_BUSYBOX_DEFAULT_DEVFSD_VERBOSE is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_DEVFS is not set +# CONFIG_BUSYBOX_DEFAULT_DEVMEM is not set +# CONFIG_BUSYBOX_DEFAULT_EJECT is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_EJECT_SCSI is not set +# CONFIG_BUSYBOX_DEFAULT_FBSPLASH is not set +# CONFIG_BUSYBOX_DEFAULT_FLASH_ERASEALL is not set +# CONFIG_BUSYBOX_DEFAULT_FLASH_LOCK is not set +# CONFIG_BUSYBOX_DEFAULT_FLASH_UNLOCK is not set +# CONFIG_BUSYBOX_DEFAULT_FLASHCP is not set +# CONFIG_BUSYBOX_DEFAULT_HDPARM is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_HDPARM_GET_IDENTITY is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_HDPARM_HDIO_SCAN_HWIF is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_HDPARM_HDIO_UNREGISTER_HWIF is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_HDPARM_HDIO_DRIVE_RESET is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_HDPARM_HDIO_TRISTATE_HWIF is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_HDPARM_HDIO_GETSET_DMA is not set +# CONFIG_BUSYBOX_DEFAULT_I2CGET is not set +# CONFIG_BUSYBOX_DEFAULT_I2CSET is not set +# CONFIG_BUSYBOX_DEFAULT_I2CDUMP is not set +# CONFIG_BUSYBOX_DEFAULT_I2CDETECT is not set +# CONFIG_BUSYBOX_DEFAULT_INOTIFYD is not set +# CONFIG_BUSYBOX_DEFAULT_IONICE is not set +# CONFIG_BUSYBOX_DEFAULT_LAST is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_LAST_FANCY is not set +CONFIG_BUSYBOX_DEFAULT_LESS=y +CONFIG_BUSYBOX_DEFAULT_FEATURE_LESS_MAXLINES=9999999 +# CONFIG_BUSYBOX_DEFAULT_FEATURE_LESS_BRACKETS is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_LESS_FLAGS is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_LESS_TRUNCATE is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_LESS_MARKS is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_LESS_REGEXP is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_LESS_WINCH is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_LESS_ASK_TERMINAL is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_LESS_DASHCMD is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_LESS_LINENUMS is not set +CONFIG_BUSYBOX_DEFAULT_LOCK=y +# CONFIG_BUSYBOX_DEFAULT_LSSCSI is not set +# CONFIG_BUSYBOX_DEFAULT_MAKEDEVS is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_MAKEDEVS_LEAF is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_MAKEDEVS_TABLE is not set +# CONFIG_BUSYBOX_DEFAULT_MAN is not set +# CONFIG_BUSYBOX_DEFAULT_MICROCOM is not set +# CONFIG_BUSYBOX_DEFAULT_MOUNTPOINT is not set +# CONFIG_BUSYBOX_DEFAULT_MT is not set +# CONFIG_BUSYBOX_DEFAULT_NANDWRITE is not set +# CONFIG_BUSYBOX_DEFAULT_NANDDUMP is not set +# CONFIG_BUSYBOX_DEFAULT_PARTPROBE is not set +# CONFIG_BUSYBOX_DEFAULT_RAIDAUTORUN is not set +# CONFIG_BUSYBOX_DEFAULT_READAHEAD is not set +# CONFIG_BUSYBOX_DEFAULT_RFKILL is not set +# CONFIG_BUSYBOX_DEFAULT_RUNLEVEL is not set +# CONFIG_BUSYBOX_DEFAULT_RX is not set +# CONFIG_BUSYBOX_DEFAULT_SETSERIAL is not set +# CONFIG_BUSYBOX_DEFAULT_SETSID is not set +CONFIG_BUSYBOX_DEFAULT_STRINGS=y +# CONFIG_BUSYBOX_DEFAULT_TASKSET is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_TASKSET_FANCY is not set +CONFIG_BUSYBOX_DEFAULT_TIME=y +# CONFIG_BUSYBOX_DEFAULT_TIMEOUT is not set +# CONFIG_BUSYBOX_DEFAULT_TTYSIZE is not set +# CONFIG_BUSYBOX_DEFAULT_UBIATTACH is not set +# CONFIG_BUSYBOX_DEFAULT_UBIDETACH is not set +# CONFIG_BUSYBOX_DEFAULT_UBIMKVOL is not set +# CONFIG_BUSYBOX_DEFAULT_UBIRMVOL is not set +# CONFIG_BUSYBOX_DEFAULT_UBIRSVOL is not set +# CONFIG_BUSYBOX_DEFAULT_UBIUPDATEVOL is not set +# CONFIG_BUSYBOX_DEFAULT_UBIRENAME is not set +# CONFIG_BUSYBOX_DEFAULT_VOLNAME is not set +# CONFIG_BUSYBOX_DEFAULT_WALL is not set +CONFIG_BUSYBOX_DEFAULT_WATCHDOG=y +CONFIG_BUSYBOX_DEFAULT_FEATURE_IPV6=y +# CONFIG_BUSYBOX_DEFAULT_FEATURE_UNIX_LOCAL is not set +CONFIG_BUSYBOX_DEFAULT_FEATURE_PREFER_IPV4_ADDRESS=y +CONFIG_BUSYBOX_DEFAULT_VERBOSE_RESOLUTION_ERRORS=y +# CONFIG_BUSYBOX_DEFAULT_ARP is not set +# CONFIG_BUSYBOX_DEFAULT_ARPING is not set +CONFIG_BUSYBOX_DEFAULT_BRCTL=y +CONFIG_BUSYBOX_DEFAULT_FEATURE_BRCTL_FANCY=y +CONFIG_BUSYBOX_DEFAULT_FEATURE_BRCTL_SHOW=y +# CONFIG_BUSYBOX_DEFAULT_DNSD is not set +# CONFIG_BUSYBOX_DEFAULT_ETHER_WAKE is not set +# CONFIG_BUSYBOX_DEFAULT_FTPD is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_FTPD_WRITE is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_FTPD_ACCEPT_BROKEN_LIST is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_FTPD_AUTHENTICATION is not set +# CONFIG_BUSYBOX_DEFAULT_FTPGET is not set +# CONFIG_BUSYBOX_DEFAULT_FTPPUT is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_FTPGETPUT_LONG_OPTIONS is not set +CONFIG_BUSYBOX_DEFAULT_HOSTNAME=y +# CONFIG_BUSYBOX_DEFAULT_DNSDOMAINNAME is not set +# CONFIG_BUSYBOX_DEFAULT_HTTPD is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_HTTPD_RANGES is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_HTTPD_SETUID is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_HTTPD_BASIC_AUTH is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_HTTPD_AUTH_MD5 is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_HTTPD_CGI is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_HTTPD_CONFIG_WITH_SCRIPT_INTERPR is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_HTTPD_SET_REMOTE_PORT_TO_ENV is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_HTTPD_ENCODE_URL_STR is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_HTTPD_ERROR_PAGES is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_HTTPD_PROXY is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_HTTPD_GZIP is not set +CONFIG_BUSYBOX_DEFAULT_IFCONFIG=y +CONFIG_BUSYBOX_DEFAULT_FEATURE_IFCONFIG_STATUS=y +# CONFIG_BUSYBOX_DEFAULT_FEATURE_IFCONFIG_SLIP is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_IFCONFIG_MEMSTART_IOADDR_IRQ is not set +CONFIG_BUSYBOX_DEFAULT_FEATURE_IFCONFIG_HW=y +CONFIG_BUSYBOX_DEFAULT_FEATURE_IFCONFIG_BROADCAST_PLUS=y +# CONFIG_BUSYBOX_DEFAULT_IFENSLAVE is not set +# CONFIG_BUSYBOX_DEFAULT_IFPLUGD is not set +# CONFIG_BUSYBOX_DEFAULT_IFUP is not set +# CONFIG_BUSYBOX_DEFAULT_IFDOWN is not set +CONFIG_BUSYBOX_DEFAULT_IFUPDOWN_IFSTATE_PATH="" +# CONFIG_BUSYBOX_DEFAULT_FEATURE_IFUPDOWN_IP is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_IFUPDOWN_IPV4 is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_IFUPDOWN_IPV6 is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_IFUPDOWN_MAPPING is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_IFUPDOWN_EXTERNAL_DHCP is not set +# CONFIG_BUSYBOX_DEFAULT_INETD is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_INETD_SUPPORT_BUILTIN_ECHO is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_INETD_SUPPORT_BUILTIN_DISCARD is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_INETD_SUPPORT_BUILTIN_TIME is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_INETD_SUPPORT_BUILTIN_DAYTIME is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_INETD_SUPPORT_BUILTIN_CHARGEN is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_INETD_RPC is not set +CONFIG_BUSYBOX_DEFAULT_IP=y +# CONFIG_BUSYBOX_DEFAULT_IPADDR is not set +# CONFIG_BUSYBOX_DEFAULT_IPLINK is not set +# CONFIG_BUSYBOX_DEFAULT_IPROUTE is not set +# CONFIG_BUSYBOX_DEFAULT_IPTUNNEL is not set +# CONFIG_BUSYBOX_DEFAULT_IPRULE is not set +# CONFIG_BUSYBOX_DEFAULT_IPNEIGH is not set +CONFIG_BUSYBOX_DEFAULT_FEATURE_IP_ADDRESS=y +CONFIG_BUSYBOX_DEFAULT_FEATURE_IP_LINK=y +CONFIG_BUSYBOX_DEFAULT_FEATURE_IP_ROUTE=y +CONFIG_BUSYBOX_DEFAULT_FEATURE_IP_ROUTE_DIR="/etc/iproute2" +# CONFIG_BUSYBOX_DEFAULT_FEATURE_IP_TUNNEL is not set +CONFIG_BUSYBOX_DEFAULT_FEATURE_IP_RULE=y +CONFIG_BUSYBOX_DEFAULT_FEATURE_IP_NEIGH=y +# CONFIG_BUSYBOX_DEFAULT_FEATURE_IP_RARE_PROTOCOLS is not set +# CONFIG_BUSYBOX_DEFAULT_IPCALC is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_IPCALC_FANCY is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_IPCALC_LONG_OPTIONS is not set +# CONFIG_BUSYBOX_DEFAULT_FAKEIDENTD is not set +# CONFIG_BUSYBOX_DEFAULT_NAMEIF is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_NAMEIF_EXTENDED is not set +# CONFIG_BUSYBOX_DEFAULT_NBDCLIENT is not set +CONFIG_BUSYBOX_DEFAULT_NC=y +# CONFIG_BUSYBOX_DEFAULT_NC_SERVER is not set +# CONFIG_BUSYBOX_DEFAULT_NC_EXTRA is not set +# CONFIG_BUSYBOX_DEFAULT_NC_110_COMPAT is not set +CONFIG_BUSYBOX_DEFAULT_NETMSG=y +CONFIG_BUSYBOX_DEFAULT_NETSTAT=y +CONFIG_BUSYBOX_DEFAULT_FEATURE_NETSTAT_WIDE=y +CONFIG_BUSYBOX_DEFAULT_FEATURE_NETSTAT_PRG=y +# CONFIG_BUSYBOX_DEFAULT_NSLOOKUP is not set +CONFIG_BUSYBOX_DEFAULT_NSLOOKUP_OPENWRT=y +# CONFIG_BUSYBOX_DEFAULT_FEATURE_NSLOOKUP_OPENWRT_LONG_OPTIONS is not set +CONFIG_BUSYBOX_DEFAULT_NTPD=y +CONFIG_BUSYBOX_DEFAULT_FEATURE_NTPD_SERVER=y +# CONFIG_BUSYBOX_DEFAULT_FEATURE_NTPD_CONF is not set +CONFIG_BUSYBOX_DEFAULT_PING=y +CONFIG_BUSYBOX_DEFAULT_PING6=y +CONFIG_BUSYBOX_DEFAULT_FEATURE_FANCY_PING=y +# CONFIG_BUSYBOX_DEFAULT_PSCAN is not set +CONFIG_BUSYBOX_DEFAULT_ROUTE=y +# CONFIG_BUSYBOX_DEFAULT_SLATTACH is not set +# CONFIG_BUSYBOX_DEFAULT_SSL_CLIENT is not set +# CONFIG_BUSYBOX_DEFAULT_TCPSVD is not set +# CONFIG_BUSYBOX_DEFAULT_UDPSVD is not set +# CONFIG_BUSYBOX_DEFAULT_TELNET is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_TELNET_TTYPE is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_TELNET_AUTOLOGIN is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_TELNET_WIDTH is not set +# CONFIG_BUSYBOX_DEFAULT_TELNETD is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_TELNETD_STANDALONE is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_TELNETD_INETD_WAIT is not set +# CONFIG_BUSYBOX_DEFAULT_TFTP is not set +# CONFIG_BUSYBOX_DEFAULT_TFTPD is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_TFTP_GET is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_TFTP_PUT is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_TFTP_BLOCKSIZE is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_TFTP_PROGRESS_BAR is not set +# CONFIG_BUSYBOX_DEFAULT_TFTP_DEBUG is not set +# CONFIG_BUSYBOX_DEFAULT_TLS is not set +CONFIG_BUSYBOX_DEFAULT_TRACEROUTE=y +CONFIG_BUSYBOX_DEFAULT_TRACEROUTE6=y +CONFIG_BUSYBOX_DEFAULT_FEATURE_TRACEROUTE_VERBOSE=y +# CONFIG_BUSYBOX_DEFAULT_FEATURE_TRACEROUTE_USE_ICMP is not set +# CONFIG_BUSYBOX_DEFAULT_TUNCTL is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_TUNCTL_UG is not set +# CONFIG_BUSYBOX_DEFAULT_VCONFIG is not set +CONFIG_BUSYBOX_DEFAULT_WGET=y +CONFIG_BUSYBOX_DEFAULT_FEATURE_WGET_STATUSBAR=y +# CONFIG_BUSYBOX_DEFAULT_FEATURE_WGET_AUTHENTICATION is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_WGET_LONG_OPTIONS is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_WGET_TIMEOUT is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_WGET_HTTPS is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_WGET_OPENSSL is not set +# CONFIG_BUSYBOX_DEFAULT_WHOIS is not set +# CONFIG_BUSYBOX_DEFAULT_ZCIP is not set +# CONFIG_BUSYBOX_DEFAULT_UDHCPC6 is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_UDHCPC6_RFC3646 is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_UDHCPC6_RFC4704 is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_UDHCPC6_RFC4833 is not set +# CONFIG_BUSYBOX_DEFAULT_UDHCPD is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_UDHCPD_WRITE_LEASES_EARLY is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_UDHCPD_BASE_IP_ON_MAC is not set +CONFIG_BUSYBOX_DEFAULT_DHCPD_LEASES_FILE="" +# CONFIG_BUSYBOX_DEFAULT_DUMPLEASES is not set +# CONFIG_BUSYBOX_DEFAULT_DHCPRELAY is not set +CONFIG_BUSYBOX_DEFAULT_UDHCPC=y +# CONFIG_BUSYBOX_DEFAULT_FEATURE_UDHCPC_ARPING is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_UDHCPC_SANITIZEOPT is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_UDHCP_PORT is not set +CONFIG_BUSYBOX_DEFAULT_UDHCP_DEBUG=0 +CONFIG_BUSYBOX_DEFAULT_FEATURE_UDHCP_RFC3397=y +# CONFIG_BUSYBOX_DEFAULT_FEATURE_UDHCP_8021Q is not set +CONFIG_BUSYBOX_DEFAULT_UDHCPC_DEFAULT_SCRIPT="/usr/share/udhcpc/default.script" +CONFIG_BUSYBOX_DEFAULT_UDHCPC_SLACK_FOR_BUGGY_SERVERS=80 +CONFIG_BUSYBOX_DEFAULT_IFUPDOWN_UDHCPC_CMD_OPTIONS="" +# CONFIG_BUSYBOX_DEFAULT_LPD is not set +# CONFIG_BUSYBOX_DEFAULT_LPR is not set +# CONFIG_BUSYBOX_DEFAULT_LPQ is not set +# CONFIG_BUSYBOX_DEFAULT_MAKEMIME is not set +# CONFIG_BUSYBOX_DEFAULT_POPMAILDIR is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_POPMAILDIR_DELIVERY is not set +# CONFIG_BUSYBOX_DEFAULT_REFORMIME is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_REFORMIME_COMPAT is not set +# CONFIG_BUSYBOX_DEFAULT_SENDMAIL is not set +CONFIG_BUSYBOX_DEFAULT_FEATURE_MIME_CHARSET="" +CONFIG_BUSYBOX_DEFAULT_FREE=y +# CONFIG_BUSYBOX_DEFAULT_FUSER is not set +# CONFIG_BUSYBOX_DEFAULT_IOSTAT is not set +CONFIG_BUSYBOX_DEFAULT_KILL=y +CONFIG_BUSYBOX_DEFAULT_KILLALL=y +# CONFIG_BUSYBOX_DEFAULT_KILLALL5 is not set +# CONFIG_BUSYBOX_DEFAULT_LSOF is not set +# CONFIG_BUSYBOX_DEFAULT_MPSTAT is not set +# CONFIG_BUSYBOX_DEFAULT_NMETER is not set +CONFIG_BUSYBOX_DEFAULT_PGREP=y +# CONFIG_BUSYBOX_DEFAULT_PKILL is not set +CONFIG_BUSYBOX_DEFAULT_PIDOF=y +# CONFIG_BUSYBOX_DEFAULT_FEATURE_PIDOF_SINGLE is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_PIDOF_OMIT is not set +# CONFIG_BUSYBOX_DEFAULT_PMAP is not set +# CONFIG_BUSYBOX_DEFAULT_POWERTOP is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_POWERTOP_INTERACTIVE is not set +CONFIG_BUSYBOX_DEFAULT_PS=y +CONFIG_BUSYBOX_DEFAULT_FEATURE_PS_WIDE=y +# CONFIG_BUSYBOX_DEFAULT_FEATURE_PS_LONG is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_PS_TIME is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_PS_ADDITIONAL_COLUMNS is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_PS_UNUSUAL_SYSTEMS is not set +# CONFIG_BUSYBOX_DEFAULT_PSTREE is not set +# CONFIG_BUSYBOX_DEFAULT_PWDX is not set +# CONFIG_BUSYBOX_DEFAULT_RENICE is not set +# CONFIG_BUSYBOX_DEFAULT_SMEMCAP is not set +CONFIG_BUSYBOX_DEFAULT_BB_SYSCTL=y +CONFIG_BUSYBOX_DEFAULT_TOP=y +# CONFIG_BUSYBOX_DEFAULT_FEATURE_TOP_INTERACTIVE is not set +CONFIG_BUSYBOX_DEFAULT_FEATURE_TOP_CPU_USAGE_PERCENTAGE=y +CONFIG_BUSYBOX_DEFAULT_FEATURE_TOP_CPU_GLOBAL_PERCENTS=y +# CONFIG_BUSYBOX_DEFAULT_FEATURE_TOP_SMP_CPU is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_TOP_DECIMALS is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_TOP_SMP_PROCESS is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_TOPMEM is not set +CONFIG_BUSYBOX_DEFAULT_UPTIME=y +# CONFIG_BUSYBOX_DEFAULT_FEATURE_UPTIME_UTMP_SUPPORT is not set +# CONFIG_BUSYBOX_DEFAULT_WATCH is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_SHOW_THREADS is not set +# CONFIG_BUSYBOX_DEFAULT_CHPST is not set +# CONFIG_BUSYBOX_DEFAULT_SETUIDGID is not set +# CONFIG_BUSYBOX_DEFAULT_ENVUIDGID is not set +# CONFIG_BUSYBOX_DEFAULT_ENVDIR is not set +# CONFIG_BUSYBOX_DEFAULT_SOFTLIMIT is not set +# CONFIG_BUSYBOX_DEFAULT_RUNSV is not set +# CONFIG_BUSYBOX_DEFAULT_RUNSVDIR is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_RUNSVDIR_LOG is not set +# CONFIG_BUSYBOX_DEFAULT_SV is not set +CONFIG_BUSYBOX_DEFAULT_SV_DEFAULT_SERVICE_DIR="" +# CONFIG_BUSYBOX_DEFAULT_SVC is not set +# CONFIG_BUSYBOX_DEFAULT_SVLOGD is not set +# CONFIG_BUSYBOX_DEFAULT_CHCON is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_CHCON_LONG_OPTIONS is not set +# CONFIG_BUSYBOX_DEFAULT_GETENFORCE is not set +# CONFIG_BUSYBOX_DEFAULT_GETSEBOOL is not set +# CONFIG_BUSYBOX_DEFAULT_LOAD_POLICY is not set +# CONFIG_BUSYBOX_DEFAULT_MATCHPATHCON is not set +# CONFIG_BUSYBOX_DEFAULT_RUNCON is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_RUNCON_LONG_OPTIONS is not set +# CONFIG_BUSYBOX_DEFAULT_SELINUXENABLED is not set +# CONFIG_BUSYBOX_DEFAULT_SESTATUS is not set +# CONFIG_BUSYBOX_DEFAULT_SETENFORCE is not set +# CONFIG_BUSYBOX_DEFAULT_SETFILES is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_SETFILES_CHECK_OPTION is not set +# CONFIG_BUSYBOX_DEFAULT_RESTORECON is not set +# CONFIG_BUSYBOX_DEFAULT_SETSEBOOL is not set +CONFIG_BUSYBOX_DEFAULT_SH_IS_ASH=y +# CONFIG_BUSYBOX_DEFAULT_SH_IS_HUSH is not set +# CONFIG_BUSYBOX_DEFAULT_SH_IS_NONE is not set +# CONFIG_BUSYBOX_DEFAULT_BASH_IS_ASH is not set +# CONFIG_BUSYBOX_DEFAULT_BASH_IS_HUSH is not set +CONFIG_BUSYBOX_DEFAULT_BASH_IS_NONE=y +CONFIG_BUSYBOX_DEFAULT_ASH=y +# CONFIG_BUSYBOX_DEFAULT_ASH_OPTIMIZE_FOR_SIZE is not set +CONFIG_BUSYBOX_DEFAULT_ASH_INTERNAL_GLOB=y +CONFIG_BUSYBOX_DEFAULT_ASH_BASH_COMPAT=y +CONFIG_BUSYBOX_DEFAULT_ASH_JOB_CONTROL=y +CONFIG_BUSYBOX_DEFAULT_ASH_ALIAS=y +# CONFIG_BUSYBOX_DEFAULT_ASH_RANDOM_SUPPORT is not set +CONFIG_BUSYBOX_DEFAULT_ASH_EXPAND_PRMT=y +# CONFIG_BUSYBOX_DEFAULT_ASH_IDLE_TIMEOUT is not set +# CONFIG_BUSYBOX_DEFAULT_ASH_MAIL is not set +CONFIG_BUSYBOX_DEFAULT_ASH_ECHO=y +CONFIG_BUSYBOX_DEFAULT_ASH_PRINTF=y +CONFIG_BUSYBOX_DEFAULT_ASH_TEST=y +# CONFIG_BUSYBOX_DEFAULT_ASH_HELP is not set +CONFIG_BUSYBOX_DEFAULT_ASH_GETOPTS=y +CONFIG_BUSYBOX_DEFAULT_ASH_CMDCMD=y +# CONFIG_BUSYBOX_DEFAULT_CTTYHACK is not set +# CONFIG_BUSYBOX_DEFAULT_HUSH is not set +# CONFIG_BUSYBOX_DEFAULT_HUSH_BASH_COMPAT is not set +# CONFIG_BUSYBOX_DEFAULT_HUSH_BRACE_EXPANSION is not set +# CONFIG_BUSYBOX_DEFAULT_HUSH_HELP is not set +# CONFIG_BUSYBOX_DEFAULT_HUSH_INTERACTIVE is not set +# CONFIG_BUSYBOX_DEFAULT_HUSH_SAVEHISTORY is not set +# CONFIG_BUSYBOX_DEFAULT_HUSH_JOB is not set +# CONFIG_BUSYBOX_DEFAULT_HUSH_TICK is not set +# CONFIG_BUSYBOX_DEFAULT_HUSH_IF is not set +# CONFIG_BUSYBOX_DEFAULT_HUSH_LOOPS is not set +# CONFIG_BUSYBOX_DEFAULT_HUSH_CASE is not set +# CONFIG_BUSYBOX_DEFAULT_HUSH_FUNCTIONS is not set +# CONFIG_BUSYBOX_DEFAULT_HUSH_LOCAL is not set +# CONFIG_BUSYBOX_DEFAULT_HUSH_RANDOM_SUPPORT is not set +# CONFIG_BUSYBOX_DEFAULT_HUSH_MODE_X is not set +# CONFIG_BUSYBOX_DEFAULT_HUSH_ECHO is not set +# CONFIG_BUSYBOX_DEFAULT_HUSH_PRINTF is not set +# CONFIG_BUSYBOX_DEFAULT_HUSH_TEST is not set +# CONFIG_BUSYBOX_DEFAULT_HUSH_EXPORT is not set +# CONFIG_BUSYBOX_DEFAULT_HUSH_EXPORT_N is not set +# CONFIG_BUSYBOX_DEFAULT_HUSH_KILL is not set +# CONFIG_BUSYBOX_DEFAULT_HUSH_WAIT is not set +# CONFIG_BUSYBOX_DEFAULT_HUSH_TRAP is not set +# CONFIG_BUSYBOX_DEFAULT_HUSH_TYPE is not set +# CONFIG_BUSYBOX_DEFAULT_HUSH_READ is not set +# CONFIG_BUSYBOX_DEFAULT_HUSH_SET is not set +# CONFIG_BUSYBOX_DEFAULT_HUSH_UNSET is not set +# CONFIG_BUSYBOX_DEFAULT_HUSH_ULIMIT is not set +# CONFIG_BUSYBOX_DEFAULT_HUSH_UMASK is not set +# CONFIG_BUSYBOX_DEFAULT_HUSH_MEMLEAK is not set +# CONFIG_BUSYBOX_DEFAULT_MSH is not set +CONFIG_BUSYBOX_DEFAULT_FEATURE_SH_MATH=y +CONFIG_BUSYBOX_DEFAULT_FEATURE_SH_MATH_64=y +# CONFIG_BUSYBOX_DEFAULT_FEATURE_SH_EXTRA_QUIET is not set +# CONFIG_BUSYBOX_DEFAULT_FEATURE_SH_STANDALONE is not set +CONFIG_BUSYBOX_DEFAULT_FEATURE_SH_NOFORK=y +# CONFIG_BUSYBOX_DEFAULT_FEATURE_SH_HISTFILESIZE is not set +CONFIG_BUSYBOX_DEFAULT_KLOGD=y +# CONFIG_BUSYBOX_DEFAULT_FEATURE_KLOGD_KLOGCTL is not set +CONFIG_BUSYBOX_DEFAULT_LOGGER=y +CONFIG_BUSYBOX_DEFAULT_LOGREAD=y +CONFIG_BUSYBOX_DEFAULT_FEATURE_LOGREAD_REDUCED_LOCKING=y +CONFIG_BUSYBOX_DEFAULT_SYSLOGD=y +CONFIG_BUSYBOX_DEFAULT_FEATURE_ROTATE_LOGFILE=y +CONFIG_BUSYBOX_DEFAULT_FEATURE_REMOTE_LOG=y +CONFIG_BUSYBOX_DEFAULT_FEATURE_SYSLOGD_DUP=y +CONFIG_BUSYBOX_DEFAULT_FEATURE_SYSLOGD_CFG=y +CONFIG_BUSYBOX_DEFAULT_FEATURE_SYSLOGD_READ_BUFFER_SIZE=256 +CONFIG_BUSYBOX_DEFAULT_FEATURE_IPC_SYSLOG=y +CONFIG_BUSYBOX_DEFAULT_FEATURE_IPC_SYSLOG_BUFFER_SIZE=4 +CONFIG_BUSYBOX_DEFAULT_FEATURE_KMSG_SYSLOG=y +CONFIG_BUSYBOX_CONFIG_HAVE_DOT_CONFIG=y + +# +# Busybox Settings +# +# CONFIG_BUSYBOX_CONFIG_DESKTOP is not set +# CONFIG_BUSYBOX_CONFIG_EXTRA_COMPAT is not set +# CONFIG_BUSYBOX_CONFIG_FEDORA_COMPAT is not set +# CONFIG_BUSYBOX_CONFIG_INCLUDE_SUSv2 is not set +# CONFIG_BUSYBOX_CONFIG_USE_PORTABLE_CODE is not set +# CONFIG_BUSYBOX_CONFIG_SHOW_USAGE is not set +# CONFIG_BUSYBOX_CONFIG_BUSYBOX is not set +# CONFIG_BUSYBOX_CONFIG_INSTALL_NO_USR is not set +# CONFIG_BUSYBOX_CONFIG_PAM is not set +CONFIG_BUSYBOX_CONFIG_LONG_OPTS=y +CONFIG_BUSYBOX_CONFIG_FEATURE_DEVPTS=y +# CONFIG_BUSYBOX_CONFIG_FEATURE_CLEAN_UP is not set +# CONFIG_BUSYBOX_CONFIG_FEATURE_UTMP is not set +CONFIG_BUSYBOX_CONFIG_FEATURE_PIDFILE=y +CONFIG_BUSYBOX_CONFIG_PID_FILE_PATH="/var/run" +CONFIG_BUSYBOX_CONFIG_FEATURE_SUID=y +# CONFIG_BUSYBOX_CONFIG_FEATURE_SUID_CONFIG is not set +# CONFIG_BUSYBOX_CONFIG_SELINUX is not set +CONFIG_BUSYBOX_CONFIG_FEATURE_PREFER_APPLETS=y +CONFIG_BUSYBOX_CONFIG_BUSYBOX_EXEC_PATH="/proc/self/exe" +CONFIG_BUSYBOX_CONFIG_FEATURE_SYSLOG=y +# CONFIG_BUSYBOX_CONFIG_FEATURE_HAVE_RPC is not set +CONFIG_BUSYBOX_CONFIG_PLATFORM_LINUX=y + +# +# Build Options +# +# CONFIG_BUSYBOX_CONFIG_STATIC is not set +# CONFIG_BUSYBOX_CONFIG_PIE is not set +# CONFIG_BUSYBOX_CONFIG_NOMMU is not set +CONFIG_BUSYBOX_CONFIG_LFS=y +CONFIG_BUSYBOX_CONFIG_CROSS_COMPILER_PREFIX="" +CONFIG_BUSYBOX_CONFIG_SYSROOT="" +CONFIG_BUSYBOX_CONFIG_EXTRA_CFLAGS="" +CONFIG_BUSYBOX_CONFIG_EXTRA_LDFLAGS="" +CONFIG_BUSYBOX_CONFIG_EXTRA_LDLIBS="" + +# +# Installation Options ("make install" behavior) +# +CONFIG_BUSYBOX_CONFIG_INSTALL_APPLET_SYMLINKS=y +# CONFIG_BUSYBOX_CONFIG_INSTALL_APPLET_HARDLINKS is not set +# CONFIG_BUSYBOX_CONFIG_INSTALL_APPLET_SCRIPT_WRAPPERS is not set +# CONFIG_BUSYBOX_CONFIG_INSTALL_APPLET_DONT is not set +CONFIG_BUSYBOX_CONFIG_PREFIX="./_install" + +# +# Debugging Options +# +# CONFIG_BUSYBOX_CONFIG_DEBUG is not set +# CONFIG_BUSYBOX_CONFIG_DEBUG_SANITIZE is not set +# CONFIG_BUSYBOX_CONFIG_UNIT_TEST is not set +# CONFIG_BUSYBOX_CONFIG_WERROR is not set +CONFIG_BUSYBOX_CONFIG_NO_DEBUG_LIB=y +# CONFIG_BUSYBOX_CONFIG_DMALLOC is not set +# CONFIG_BUSYBOX_CONFIG_EFENCE is not set + +# +# Busybox Library Tuning +# +# CONFIG_BUSYBOX_CONFIG_FEATURE_USE_BSS_TAIL is not set +# CONFIG_BUSYBOX_CONFIG_FEATURE_RTMINMAX is not set +# CONFIG_BUSYBOX_CONFIG_FEATURE_BUFFERS_USE_MALLOC is not set +CONFIG_BUSYBOX_CONFIG_FEATURE_BUFFERS_GO_ON_STACK=y +# CONFIG_BUSYBOX_CONFIG_FEATURE_BUFFERS_GO_IN_BSS is not set +CONFIG_BUSYBOX_CONFIG_PASSWORD_MINLEN=6 +CONFIG_BUSYBOX_CONFIG_MD5_SMALL=1 +CONFIG_BUSYBOX_CONFIG_SHA3_SMALL=1 +CONFIG_BUSYBOX_CONFIG_FEATURE_FAST_TOP=y +# CONFIG_BUSYBOX_CONFIG_FEATURE_ETC_NETWORKS is not set +CONFIG_BUSYBOX_CONFIG_FEATURE_EDITING=y +CONFIG_BUSYBOX_CONFIG_FEATURE_EDITING_MAX_LEN=512 +# CONFIG_BUSYBOX_CONFIG_FEATURE_EDITING_VI is not set +CONFIG_BUSYBOX_CONFIG_FEATURE_EDITING_HISTORY=256 +# CONFIG_BUSYBOX_CONFIG_FEATURE_EDITING_SAVEHISTORY is not set +# CONFIG_BUSYBOX_CONFIG_FEATURE_REVERSE_SEARCH is not set +CONFIG_BUSYBOX_CONFIG_FEATURE_TAB_COMPLETION=y +# CONFIG_BUSYBOX_CONFIG_FEATURE_USERNAME_COMPLETION is not set +CONFIG_BUSYBOX_CONFIG_FEATURE_EDITING_FANCY_PROMPT=y +# CONFIG_BUSYBOX_CONFIG_FEATURE_EDITING_ASK_TERMINAL is not set +# CONFIG_BUSYBOX_CONFIG_LOCALE_SUPPORT is not set +# CONFIG_BUSYBOX_CONFIG_UNICODE_SUPPORT is not set +CONFIG_BUSYBOX_CONFIG_FEATURE_NON_POSIX_CP=y +# CONFIG_BUSYBOX_CONFIG_FEATURE_VERBOSE_CP_MESSAGE is not set +# CONFIG_BUSYBOX_CONFIG_FEATURE_USE_SENDFILE is not set +CONFIG_BUSYBOX_CONFIG_FEATURE_COPYBUF_KB=4 +# CONFIG_BUSYBOX_CONFIG_FEATURE_SKIP_ROOTFS is not set +# CONFIG_BUSYBOX_CONFIG_MONOTONIC_SYSCALL is not set +CONFIG_BUSYBOX_CONFIG_IOCTL_HEX2STR_ERROR=y +# CONFIG_BUSYBOX_CONFIG_FEATURE_HWIB is not set + +# +# Applets +# + +# +# Archival Utilities +# +# CONFIG_BUSYBOX_CONFIG_FEATURE_SEAMLESS_XZ is not set +# CONFIG_BUSYBOX_CONFIG_FEATURE_SEAMLESS_LZMA is not set +# CONFIG_BUSYBOX_CONFIG_FEATURE_SEAMLESS_BZ2 is not set +# CONFIG_BUSYBOX_CONFIG_FEATURE_SEAMLESS_GZ is not set +# CONFIG_BUSYBOX_CONFIG_FEATURE_SEAMLESS_Z is not set +# CONFIG_BUSYBOX_CONFIG_AR is not set +# CONFIG_BUSYBOX_CONFIG_UNCOMPRESS is not set +# CONFIG_BUSYBOX_CONFIG_GUNZIP is not set +# CONFIG_BUSYBOX_CONFIG_ZCAT is not set +# CONFIG_BUSYBOX_CONFIG_BUNZIP2 is not set +# CONFIG_BUSYBOX_CONFIG_BZCAT is not set +# CONFIG_BUSYBOX_CONFIG_UNLZMA is not set +# CONFIG_BUSYBOX_CONFIG_LZCAT is not set +# CONFIG_BUSYBOX_CONFIG_LZMA is not set +# CONFIG_BUSYBOX_CONFIG_UNXZ is not set +# CONFIG_BUSYBOX_CONFIG_XZCAT is not set +# CONFIG_BUSYBOX_CONFIG_XZ is not set +# CONFIG_BUSYBOX_CONFIG_BZIP2 is not set +# CONFIG_BUSYBOX_CONFIG_CPIO is not set +# CONFIG_BUSYBOX_CONFIG_DPKG is not set +# CONFIG_BUSYBOX_CONFIG_DPKG_DEB is not set +# CONFIG_BUSYBOX_CONFIG_GZIP is not set +# CONFIG_BUSYBOX_CONFIG_LZOP is not set +# CONFIG_BUSYBOX_CONFIG_UNLZOP is not set +# CONFIG_BUSYBOX_CONFIG_LZOPCAT is not set +# CONFIG_BUSYBOX_CONFIG_RPM is not set +# CONFIG_BUSYBOX_CONFIG_RPM2CPIO is not set +# CONFIG_BUSYBOX_CONFIG_TAR is not set +# CONFIG_BUSYBOX_CONFIG_UNZIP is not set + +# +# Coreutils +# +CONFIG_BUSYBOX_CONFIG_BASENAME=y +CONFIG_BUSYBOX_CONFIG_CAT=y +# CONFIG_BUSYBOX_CONFIG_FEATURE_CATV is not set +# CONFIG_BUSYBOX_CONFIG_CHGRP is not set +CONFIG_BUSYBOX_CONFIG_CHMOD=y +CONFIG_BUSYBOX_CONFIG_CHOWN=y +# CONFIG_BUSYBOX_CONFIG_FEATURE_CHOWN_LONG_OPTIONS is not set +CONFIG_BUSYBOX_CONFIG_CHROOT=y +CONFIG_BUSYBOX_CONFIG_CKSUM=y +# CONFIG_BUSYBOX_CONFIG_COMM is not set +CONFIG_BUSYBOX_CONFIG_CP=y +# CONFIG_BUSYBOX_CONFIG_FEATURE_CP_LONG_OPTIONS is not set +CONFIG_BUSYBOX_CONFIG_CUT=y +CONFIG_BUSYBOX_CONFIG_DATE=y +CONFIG_BUSYBOX_CONFIG_FEATURE_DATE_ISOFMT=y +# CONFIG_BUSYBOX_CONFIG_FEATURE_DATE_NANO is not set +# CONFIG_BUSYBOX_CONFIG_FEATURE_DATE_COMPAT is not set +CONFIG_BUSYBOX_CONFIG_DD=y +CONFIG_BUSYBOX_CONFIG_FEATURE_DD_SIGNAL_HANDLING=y +# CONFIG_BUSYBOX_CONFIG_FEATURE_DD_THIRD_STATUS_LINE is not set +CONFIG_BUSYBOX_CONFIG_FEATURE_DD_IBS_OBS=y +# CONFIG_BUSYBOX_CONFIG_FEATURE_DD_STATUS is not set +CONFIG_BUSYBOX_CONFIG_DF=y +CONFIG_BUSYBOX_CONFIG_FEATURE_DF_FANCY=y +CONFIG_BUSYBOX_CONFIG_DIRNAME=y +# CONFIG_BUSYBOX_CONFIG_DOS2UNIX is not set +# CONFIG_BUSYBOX_CONFIG_UNIX2DOS is not set +CONFIG_BUSYBOX_CONFIG_DU=y +CONFIG_BUSYBOX_CONFIG_FEATURE_DU_DEFAULT_BLOCKSIZE_1K=y +CONFIG_BUSYBOX_CONFIG_ECHO=y +CONFIG_BUSYBOX_CONFIG_FEATURE_FANCY_ECHO=y +CONFIG_BUSYBOX_CONFIG_ENV=y +# CONFIG_BUSYBOX_CONFIG_FEATURE_ENV_LONG_OPTIONS is not set +# CONFIG_BUSYBOX_CONFIG_EXPAND is not set +# CONFIG_BUSYBOX_CONFIG_UNEXPAND is not set +CONFIG_BUSYBOX_CONFIG_EXPR=y +CONFIG_BUSYBOX_CONFIG_EXPR_MATH_SUPPORT_64=y +# CONFIG_BUSYBOX_CONFIG_FACTOR is not set +# CONFIG_BUSYBOX_CONFIG_FALSE is not set +# CONFIG_BUSYBOX_CONFIG_FOLD is not set +CONFIG_BUSYBOX_CONFIG_FSYNC=y +# CONFIG_BUSYBOX_CONFIG_HEAD is not set +# CONFIG_BUSYBOX_CONFIG_HOSTID is not set +# CONFIG_BUSYBOX_CONFIG_ID is not set +# CONFIG_BUSYBOX_CONFIG_GROUPS is not set +# CONFIG_BUSYBOX_CONFIG_INSTALL is not set +# CONFIG_BUSYBOX_CONFIG_LINK is not set +CONFIG_BUSYBOX_CONFIG_LN=y +# CONFIG_BUSYBOX_CONFIG_LOGNAME is not set +CONFIG_BUSYBOX_CONFIG_LS=y +# CONFIG_BUSYBOX_CONFIG_FEATURE_LS_FILETYPES is not set +CONFIG_BUSYBOX_CONFIG_FEATURE_LS_FOLLOWLINKS=y +CONFIG_BUSYBOX_CONFIG_FEATURE_LS_RECURSIVE=y +# CONFIG_BUSYBOX_CONFIG_FEATURE_LS_WIDTH is not set +CONFIG_BUSYBOX_CONFIG_FEATURE_LS_SORTFILES=y +CONFIG_BUSYBOX_CONFIG_FEATURE_LS_TIMESTAMPS=y +CONFIG_BUSYBOX_CONFIG_FEATURE_LS_USERNAME=y +# CONFIG_BUSYBOX_CONFIG_FEATURE_LS_COLOR is not set +CONFIG_BUSYBOX_CONFIG_MD5SUM=y +# CONFIG_BUSYBOX_CONFIG_SHA1SUM is not set +# CONFIG_BUSYBOX_CONFIG_SHA256SUM is not set +# CONFIG_BUSYBOX_CONFIG_SHA512SUM is not set +# CONFIG_BUSYBOX_CONFIG_SHA3SUM is not set + +# +# Common options for md5sum, sha1sum, sha256sum, sha512sum, sha3sum +# +CONFIG_BUSYBOX_CONFIG_FEATURE_MD5_SHA1_SUM_CHECK=y +CONFIG_BUSYBOX_CONFIG_MKDIR=y +# CONFIG_BUSYBOX_CONFIG_FEATURE_MKDIR_LONG_OPTIONS is not set +# CONFIG_BUSYBOX_CONFIG_MKFIFO is not set +# CONFIG_BUSYBOX_CONFIG_MKNOD is not set +# CONFIG_BUSYBOX_CONFIG_MKTEMP is not set +CONFIG_BUSYBOX_CONFIG_MV=y +# CONFIG_BUSYBOX_CONFIG_FEATURE_MV_LONG_OPTIONS is not set +# CONFIG_BUSYBOX_CONFIG_NICE is not set +# CONFIG_BUSYBOX_CONFIG_NL is not set +# CONFIG_BUSYBOX_CONFIG_NOHUP is not set +# CONFIG_BUSYBOX_CONFIG_NPROC is not set +# CONFIG_BUSYBOX_CONFIG_OD is not set +# CONFIG_BUSYBOX_CONFIG_PASTE is not set +# CONFIG_BUSYBOX_CONFIG_PRINTENV is not set +# CONFIG_BUSYBOX_CONFIG_PRINTF is not set +CONFIG_BUSYBOX_CONFIG_PWD=y +CONFIG_BUSYBOX_CONFIG_READLINK=y +CONFIG_BUSYBOX_CONFIG_FEATURE_READLINK_FOLLOW=y +# CONFIG_BUSYBOX_CONFIG_REALPATH is not set +CONFIG_BUSYBOX_CONFIG_RM=y +# CONFIG_BUSYBOX_CONFIG_RMDIR is not set +CONFIG_BUSYBOX_CONFIG_SEQ=y +# CONFIG_BUSYBOX_CONFIG_SHRED is not set +# CONFIG_BUSYBOX_CONFIG_SHUF is not set +CONFIG_BUSYBOX_CONFIG_SLEEP=y +CONFIG_BUSYBOX_CONFIG_FEATURE_FANCY_SLEEP=y +CONFIG_BUSYBOX_CONFIG_FEATURE_FLOAT_SLEEP=y +# CONFIG_BUSYBOX_CONFIG_SORT is not set +# CONFIG_BUSYBOX_CONFIG_SPLIT is not set +# CONFIG_BUSYBOX_CONFIG_STAT is not set +# CONFIG_BUSYBOX_CONFIG_STTY is not set +# CONFIG_BUSYBOX_CONFIG_SUM is not set +CONFIG_BUSYBOX_CONFIG_SYNC=y +# CONFIG_BUSYBOX_CONFIG_FEATURE_SYNC_FANCY is not set +# CONFIG_BUSYBOX_CONFIG_TAC is not set +CONFIG_BUSYBOX_CONFIG_TAIL=y +CONFIG_BUSYBOX_CONFIG_FEATURE_FANCY_TAIL=y +# CONFIG_BUSYBOX_CONFIG_TEE is not set +# CONFIG_BUSYBOX_CONFIG_TEST is not set +CONFIG_BUSYBOX_CONFIG_TEST1=y +CONFIG_BUSYBOX_CONFIG_TEST2=y +CONFIG_BUSYBOX_CONFIG_FEATURE_TEST_64=y +# CONFIG_BUSYBOX_CONFIG_TIMEOUT is not set +CONFIG_BUSYBOX_CONFIG_TOUCH=y +# CONFIG_BUSYBOX_CONFIG_FEATURE_TOUCH_NODEREF is not set +# CONFIG_BUSYBOX_CONFIG_FEATURE_TOUCH_SUSV3 is not set +CONFIG_BUSYBOX_CONFIG_TR=y +# CONFIG_BUSYBOX_CONFIG_FEATURE_TR_CLASSES is not set +# CONFIG_BUSYBOX_CONFIG_FEATURE_TR_EQUIV is not set +# CONFIG_BUSYBOX_CONFIG_TRUE is not set +# CONFIG_BUSYBOX_CONFIG_TRUNCATE is not set +# CONFIG_BUSYBOX_CONFIG_TTY is not set +CONFIG_BUSYBOX_CONFIG_UNAME=y +CONFIG_BUSYBOX_CONFIG_UNAME_OSNAME="GNU/Linux" +# CONFIG_BUSYBOX_CONFIG_UNIQ is not set +# CONFIG_BUSYBOX_CONFIG_UNLINK is not set +CONFIG_BUSYBOX_CONFIG_USLEEP=y +# CONFIG_BUSYBOX_CONFIG_UUDECODE is not set +# CONFIG_BUSYBOX_CONFIG_BASE64 is not set +# CONFIG_BUSYBOX_CONFIG_UUENCODE is not set +# CONFIG_BUSYBOX_CONFIG_WC is not set +# CONFIG_BUSYBOX_CONFIG_WHOAMI is not set +# CONFIG_BUSYBOX_CONFIG_YES is not set + +# +# Common options +# +# CONFIG_BUSYBOX_CONFIG_FEATURE_VERBOSE is not set + +# +# Common options for cp and mv +# +CONFIG_BUSYBOX_CONFIG_FEATURE_PRESERVE_HARDLINKS=y + +# +# Common options for df, du, ls +# +CONFIG_BUSYBOX_CONFIG_FEATURE_HUMAN_READABLE=y + +# +# Console Utilities +# +# CONFIG_BUSYBOX_CONFIG_CHVT is not set +# CONFIG_BUSYBOX_CONFIG_CLEAR is not set +# CONFIG_BUSYBOX_CONFIG_DEALLOCVT is not set +# CONFIG_BUSYBOX_CONFIG_DUMPKMAP is not set +# CONFIG_BUSYBOX_CONFIG_FGCONSOLE is not set +# CONFIG_BUSYBOX_CONFIG_KBD_MODE is not set +# CONFIG_BUSYBOX_CONFIG_LOADFONT is not set +# CONFIG_BUSYBOX_CONFIG_SETFONT is not set +# CONFIG_BUSYBOX_CONFIG_LOADKMAP is not set +# CONFIG_BUSYBOX_CONFIG_OPENVT is not set +# CONFIG_BUSYBOX_CONFIG_RESET is not set +# CONFIG_BUSYBOX_CONFIG_RESIZE is not set +# CONFIG_BUSYBOX_CONFIG_SETCONSOLE is not set +# CONFIG_BUSYBOX_CONFIG_SETKEYCODES is not set +# CONFIG_BUSYBOX_CONFIG_SETLOGCONS is not set +# CONFIG_BUSYBOX_CONFIG_SHOWKEY is not set + +# +# Debian Utilities +# +# CONFIG_BUSYBOX_CONFIG_PIPE_PROGRESS is not set +# CONFIG_BUSYBOX_CONFIG_RUN_PARTS is not set +CONFIG_BUSYBOX_CONFIG_START_STOP_DAEMON=y +# CONFIG_BUSYBOX_CONFIG_FEATURE_START_STOP_DAEMON_LONG_OPTIONS is not set +# CONFIG_BUSYBOX_CONFIG_FEATURE_START_STOP_DAEMON_FANCY is not set +# CONFIG_BUSYBOX_CONFIG_WHICH is not set + +# +# Editors +# +CONFIG_BUSYBOX_CONFIG_AWK=y +CONFIG_BUSYBOX_CONFIG_FEATURE_AWK_LIBM=y +CONFIG_BUSYBOX_CONFIG_FEATURE_AWK_GNU_EXTENSIONS=y +# CONFIG_BUSYBOX_CONFIG_CMP is not set +# CONFIG_BUSYBOX_CONFIG_DIFF is not set +# CONFIG_BUSYBOX_CONFIG_ED is not set +# CONFIG_BUSYBOX_CONFIG_PATCH is not set +CONFIG_BUSYBOX_CONFIG_SED=y +# CONFIG_BUSYBOX_CONFIG_VI is not set +CONFIG_BUSYBOX_CONFIG_FEATURE_ALLOW_EXEC=y + +# +# Finding Utilities +# +# CONFIG_BUSYBOX_CONFIG_FIND is not set +CONFIG_BUSYBOX_CONFIG_GREP=y +# CONFIG_BUSYBOX_CONFIG_EGREP is not set +CONFIG_BUSYBOX_CONFIG_FGREP=y +# CONFIG_BUSYBOX_CONFIG_FEATURE_GREP_CONTEXT is not set +CONFIG_BUSYBOX_CONFIG_XARGS=y +CONFIG_BUSYBOX_CONFIG_FEATURE_XARGS_SUPPORT_CONFIRMATION=y +CONFIG_BUSYBOX_CONFIG_FEATURE_XARGS_SUPPORT_QUOTES=y +CONFIG_BUSYBOX_CONFIG_FEATURE_XARGS_SUPPORT_TERMOPT=y +CONFIG_BUSYBOX_CONFIG_FEATURE_XARGS_SUPPORT_ZERO_TERM=y +# CONFIG_BUSYBOX_CONFIG_FEATURE_XARGS_SUPPORT_REPL_STR is not set + +# +# Init Utilities +# +# CONFIG_BUSYBOX_CONFIG_BOOTCHARTD is not set +# CONFIG_BUSYBOX_CONFIG_HALT is not set +CONFIG_BUSYBOX_CONFIG_POWEROFF=y +CONFIG_BUSYBOX_CONFIG_REBOOT=y +CONFIG_BUSYBOX_CONFIG_INIT=y +# CONFIG_BUSYBOX_CONFIG_LINUXRC is not set +CONFIG_BUSYBOX_CONFIG_FEATURE_USE_INITTAB=y +# CONFIG_BUSYBOX_CONFIG_FEATURE_KILL_REMOVED is not set +CONFIG_BUSYBOX_CONFIG_FEATURE_INIT_SCTTY=y +# CONFIG_BUSYBOX_CONFIG_FEATURE_INIT_SYSLOG is not set +CONFIG_BUSYBOX_CONFIG_FEATURE_INIT_QUIET=y +# CONFIG_BUSYBOX_CONFIG_FEATURE_INIT_COREDUMPS is not set +CONFIG_BUSYBOX_CONFIG_INIT_TERMINAL_TYPE="" +# CONFIG_BUSYBOX_CONFIG_FEATURE_INIT_MODIFY_CMDLINE is not set + +# +# Login/Password Management Utilities +# +# CONFIG_BUSYBOX_CONFIG_FEATURE_SHADOWPASSWDS is not set +# CONFIG_BUSYBOX_CONFIG_USE_BB_PWD_GRP is not set +# CONFIG_BUSYBOX_CONFIG_USE_BB_CRYPT is not set +# CONFIG_BUSYBOX_CONFIG_ADD_SHELL is not set +# CONFIG_BUSYBOX_CONFIG_REMOVE_SHELL is not set +# CONFIG_BUSYBOX_CONFIG_ADDGROUP is not set +# CONFIG_BUSYBOX_CONFIG_ADDUSER is not set +# CONFIG_BUSYBOX_CONFIG_CHPASSWD is not set +CONFIG_BUSYBOX_CONFIG_FEATURE_DEFAULT_PASSWD_ALGO="md5" +# CONFIG_BUSYBOX_CONFIG_CRYPTPW is not set +# CONFIG_BUSYBOX_CONFIG_MKPASSWD is not set +# CONFIG_BUSYBOX_CONFIG_DELUSER is not set +# CONFIG_BUSYBOX_CONFIG_DELGROUP is not set +CONFIG_BUSYBOX_CONFIG_GETTY=y +CONFIG_BUSYBOX_CONFIG_LOGIN=y +# CONFIG_BUSYBOX_CONFIG_LOGIN_SESSION_AS_CHILD is not set +# CONFIG_BUSYBOX_CONFIG_LOGIN_SCRIPTS is not set +# CONFIG_BUSYBOX_CONFIG_FEATURE_NOLOGIN is not set +# CONFIG_BUSYBOX_CONFIG_FEATURE_SECURETTY is not set +CONFIG_BUSYBOX_CONFIG_PASSWD=y +# CONFIG_BUSYBOX_CONFIG_FEATURE_PASSWD_WEAK_CHECK is not set +# CONFIG_BUSYBOX_CONFIG_SU is not set +# CONFIG_BUSYBOX_CONFIG_SULOGIN is not set +# CONFIG_BUSYBOX_CONFIG_VLOCK is not set + +# +# Linux Ext2 FS Progs +# +# CONFIG_BUSYBOX_CONFIG_CHATTR is not set +# CONFIG_BUSYBOX_CONFIG_FSCK is not set +# CONFIG_BUSYBOX_CONFIG_LSATTR is not set +# CONFIG_BUSYBOX_CONFIG_TUNE2FS is not set + +# +# Linux Module Utilities +# +# CONFIG_BUSYBOX_CONFIG_MODPROBE_SMALL is not set +# CONFIG_BUSYBOX_CONFIG_DEPMOD is not set +CONFIG_BUSYBOX_CONFIG_INSMOD=y +CONFIG_BUSYBOX_CONFIG_LSMOD=y +CONFIG_BUSYBOX_CONFIG_FEATURE_LSMOD_PRETTY_2_6_OUTPUT=y +# CONFIG_BUSYBOX_CONFIG_MODINFO is not set +CONFIG_BUSYBOX_CONFIG_MODPROBE=y +# CONFIG_BUSYBOX_CONFIG_FEATURE_MODPROBE_BLACKLIST is not set +CONFIG_BUSYBOX_CONFIG_RMMOD=y + +# +# Options common to multiple modutils +# +# CONFIG_BUSYBOX_CONFIG_FEATURE_CMDLINE_MODULE_OPTIONS is not set +# CONFIG_BUSYBOX_CONFIG_FEATURE_2_4_MODULES is not set +# CONFIG_BUSYBOX_CONFIG_FEATURE_CHECK_TAINTED_MODULE is not set +# CONFIG_BUSYBOX_CONFIG_FEATURE_INSMOD_TRY_MMAP is not set +# CONFIG_BUSYBOX_CONFIG_FEATURE_MODUTILS_ALIAS is not set +# CONFIG_BUSYBOX_CONFIG_FEATURE_MODUTILS_SYMBOLS is not set +CONFIG_BUSYBOX_CONFIG_DEFAULT_MODULES_DIR="" +CONFIG_BUSYBOX_CONFIG_DEFAULT_DEPMOD_FILE="" + +# +# Linux System Utilities +# +# CONFIG_BUSYBOX_CONFIG_ACPID is not set +# CONFIG_BUSYBOX_CONFIG_BLKDISCARD is not set +# CONFIG_BUSYBOX_CONFIG_BLKID is not set +# CONFIG_BUSYBOX_CONFIG_BLOCKDEV is not set +# CONFIG_BUSYBOX_CONFIG_CAL is not set +# CONFIG_BUSYBOX_CONFIG_CHRT is not set +CONFIG_BUSYBOX_CONFIG_DMESG=y +CONFIG_BUSYBOX_CONFIG_FEATURE_DMESG_PRETTY=y +# CONFIG_BUSYBOX_CONFIG_EJECT is not set +# CONFIG_BUSYBOX_CONFIG_FALLOCATE is not set +# CONFIG_BUSYBOX_CONFIG_FATATTR is not set +# CONFIG_BUSYBOX_CONFIG_FBSET is not set +# CONFIG_BUSYBOX_CONFIG_FDFORMAT is not set +# CONFIG_BUSYBOX_CONFIG_FDISK is not set +# CONFIG_BUSYBOX_CONFIG_FINDFS is not set +CONFIG_BUSYBOX_CONFIG_FLOCK=y +# CONFIG_BUSYBOX_CONFIG_FDFLUSH is not set +# CONFIG_BUSYBOX_CONFIG_FREERAMDISK is not set +# CONFIG_BUSYBOX_CONFIG_FSCK_MINIX is not set +# CONFIG_BUSYBOX_CONFIG_FSFREEZE is not set +# CONFIG_BUSYBOX_CONFIG_FSTRIM is not set +# CONFIG_BUSYBOX_CONFIG_GETOPT is not set +CONFIG_BUSYBOX_CONFIG_HEXDUMP=y +# CONFIG_BUSYBOX_CONFIG_FEATURE_HEXDUMP_REVERSE is not set +# CONFIG_BUSYBOX_CONFIG_HD is not set +CONFIG_BUSYBOX_CONFIG_XXD=y +CONFIG_BUSYBOX_CONFIG_HWCLOCK=y +# CONFIG_BUSYBOX_CONFIG_FEATURE_HWCLOCK_LONG_OPTIONS is not set +# CONFIG_BUSYBOX_CONFIG_FEATURE_HWCLOCK_ADJTIME_FHS is not set +# CONFIG_BUSYBOX_CONFIG_IONICE is not set +# CONFIG_BUSYBOX_CONFIG_IPCRM is not set +# CONFIG_BUSYBOX_CONFIG_IPCS is not set +CONFIG_BUSYBOX_CONFIG_LOSETUP=y +# CONFIG_BUSYBOX_CONFIG_LSPCI is not set +# CONFIG_BUSYBOX_CONFIG_LSUSB is not set +CONFIG_BUSYBOX_CONFIG_MDEV=y +CONFIG_BUSYBOX_CONFIG_FEATURE_MDEV_CONF=y +CONFIG_BUSYBOX_CONFIG_FEATURE_MDEV_RENAME=y +CONFIG_BUSYBOX_CONFIG_FEATURE_MDEV_RENAME_REGEXP=y +CONFIG_BUSYBOX_CONFIG_FEATURE_MDEV_EXEC=y +# CONFIG_BUSYBOX_CONFIG_FEATURE_MDEV_LOAD_FIRMWARE is not set +# CONFIG_BUSYBOX_CONFIG_MESG is not set +# CONFIG_BUSYBOX_CONFIG_MKE2FS is not set +# CONFIG_BUSYBOX_CONFIG_MKFS_EXT2 is not set +# CONFIG_BUSYBOX_CONFIG_MKFS_MINIX is not set +# CONFIG_BUSYBOX_CONFIG_MKFS_REISER is not set +# CONFIG_BUSYBOX_CONFIG_MKDOSFS is not set +# CONFIG_BUSYBOX_CONFIG_MKFS_VFAT is not set +# CONFIG_BUSYBOX_CONFIG_MKSWAP is not set +# CONFIG_BUSYBOX_CONFIG_MORE is not set +CONFIG_BUSYBOX_CONFIG_MOUNT=y +CONFIG_BUSYBOX_CONFIG_FEATURE_MOUNT_FAKE=y +# CONFIG_BUSYBOX_CONFIG_FEATURE_MOUNT_VERBOSE is not set +# CONFIG_BUSYBOX_CONFIG_FEATURE_MOUNT_HELPERS is not set +# CONFIG_BUSYBOX_CONFIG_FEATURE_MOUNT_LABEL is not set +# CONFIG_BUSYBOX_CONFIG_FEATURE_MOUNT_NFS is not set +# CONFIG_BUSYBOX_CONFIG_FEATURE_MOUNT_CIFS is not set +CONFIG_BUSYBOX_CONFIG_FEATURE_MOUNT_FLAGS=y +CONFIG_BUSYBOX_CONFIG_FEATURE_MOUNT_FSTAB=y +CONFIG_BUSYBOX_CONFIG_FEATURE_MOUNT_OTHERTAB=y +# CONFIG_BUSYBOX_CONFIG_MOUNTPOINT is not set +# CONFIG_BUSYBOX_CONFIG_NSENTER is not set +CONFIG_BUSYBOX_CONFIG_PIVOT_ROOT=y +# CONFIG_BUSYBOX_CONFIG_RDATE is not set +# CONFIG_BUSYBOX_CONFIG_RDEV is not set +# CONFIG_BUSYBOX_CONFIG_READPROFILE is not set +# CONFIG_BUSYBOX_CONFIG_RENICE is not set +# CONFIG_BUSYBOX_CONFIG_REV is not set +# CONFIG_BUSYBOX_CONFIG_RTCWAKE is not set +# CONFIG_BUSYBOX_CONFIG_SCRIPT is not set +# CONFIG_BUSYBOX_CONFIG_SCRIPTREPLAY is not set +# CONFIG_BUSYBOX_CONFIG_SETARCH is not set +# CONFIG_BUSYBOX_CONFIG_LINUX32 is not set +# CONFIG_BUSYBOX_CONFIG_LINUX64 is not set +# CONFIG_BUSYBOX_CONFIG_SETPRIV is not set +CONFIG_BUSYBOX_CONFIG_SETSID=y +# CONFIG_BUSYBOX_CONFIG_SWAPON is not set +# CONFIG_BUSYBOX_CONFIG_SWAPOFF is not set +# CONFIG_BUSYBOX_CONFIG_SWITCH_ROOT is not set +# CONFIG_BUSYBOX_CONFIG_TASKSET is not set +# CONFIG_BUSYBOX_CONFIG_UEVENT is not set +CONFIG_BUSYBOX_CONFIG_UMOUNT=y +CONFIG_BUSYBOX_CONFIG_FEATURE_UMOUNT_ALL=y +# CONFIG_BUSYBOX_CONFIG_UNSHARE is not set + +# +# Common options for mount/umount +# +CONFIG_BUSYBOX_CONFIG_FEATURE_MOUNT_LOOP=y +# CONFIG_BUSYBOX_CONFIG_FEATURE_MOUNT_LOOP_CREATE is not set +# CONFIG_BUSYBOX_CONFIG_FEATURE_MTAB_SUPPORT is not set +# CONFIG_BUSYBOX_CONFIG_VOLUMEID is not set + +# +# Miscellaneous Utilities +# +# CONFIG_BUSYBOX_CONFIG_ADJTIMEX is not set +# CONFIG_BUSYBOX_CONFIG_BBCONFIG is not set +# CONFIG_BUSYBOX_CONFIG_BEEP is not set +# CONFIG_BUSYBOX_CONFIG_CHAT is not set +# CONFIG_BUSYBOX_CONFIG_CONSPY is not set +CONFIG_BUSYBOX_CONFIG_CROND=y +# CONFIG_BUSYBOX_CONFIG_FEATURE_CROND_D is not set +# CONFIG_BUSYBOX_CONFIG_FEATURE_CROND_CALL_SENDMAIL is not set +CONFIG_BUSYBOX_CONFIG_FEATURE_CROND_DIR="/etc" +CONFIG_BUSYBOX_CONFIG_CRONTAB=y +# CONFIG_BUSYBOX_CONFIG_DC is not set +# CONFIG_BUSYBOX_CONFIG_DEVFSD is not set +# CONFIG_BUSYBOX_CONFIG_FEATURE_DEVFS is not set +# CONFIG_BUSYBOX_CONFIG_DEVMEM is not set +# CONFIG_BUSYBOX_CONFIG_FBSPLASH is not set +# CONFIG_BUSYBOX_CONFIG_FLASH_ERASEALL is not set +# CONFIG_BUSYBOX_CONFIG_FLASH_LOCK is not set +# CONFIG_BUSYBOX_CONFIG_FLASH_UNLOCK is not set +# CONFIG_BUSYBOX_CONFIG_FLASHCP is not set +# CONFIG_BUSYBOX_CONFIG_HDPARM is not set +# CONFIG_BUSYBOX_CONFIG_I2CGET is not set +# CONFIG_BUSYBOX_CONFIG_I2CSET is not set +# CONFIG_BUSYBOX_CONFIG_I2CDUMP is not set +# CONFIG_BUSYBOX_CONFIG_I2CDETECT is not set +# CONFIG_BUSYBOX_CONFIG_INOTIFYD is not set +CONFIG_BUSYBOX_CONFIG_LESS=y +CONFIG_BUSYBOX_CONFIG_FEATURE_LESS_MAXLINES=9999999 +# CONFIG_BUSYBOX_CONFIG_FEATURE_LESS_BRACKETS is not set +# CONFIG_BUSYBOX_CONFIG_FEATURE_LESS_FLAGS is not set +# CONFIG_BUSYBOX_CONFIG_FEATURE_LESS_TRUNCATE is not set +# CONFIG_BUSYBOX_CONFIG_FEATURE_LESS_MARKS is not set +# CONFIG_BUSYBOX_CONFIG_FEATURE_LESS_REGEXP is not set +# CONFIG_BUSYBOX_CONFIG_FEATURE_LESS_WINCH is not set +# CONFIG_BUSYBOX_CONFIG_FEATURE_LESS_DASHCMD is not set +CONFIG_BUSYBOX_CONFIG_LOCK=y +# CONFIG_BUSYBOX_CONFIG_LSSCSI is not set +# CONFIG_BUSYBOX_CONFIG_MAKEDEVS is not set +# CONFIG_BUSYBOX_CONFIG_MAN is not set +# CONFIG_BUSYBOX_CONFIG_MICROCOM is not set +# CONFIG_BUSYBOX_CONFIG_MT is not set +# CONFIG_BUSYBOX_CONFIG_NANDWRITE is not set +# CONFIG_BUSYBOX_CONFIG_NANDDUMP is not set +# CONFIG_BUSYBOX_CONFIG_PARTPROBE is not set +# CONFIG_BUSYBOX_CONFIG_RAIDAUTORUN is not set +# CONFIG_BUSYBOX_CONFIG_READAHEAD is not set +# CONFIG_BUSYBOX_CONFIG_RFKILL is not set +# CONFIG_BUSYBOX_CONFIG_RX is not set +# CONFIG_BUSYBOX_CONFIG_SETSERIAL is not set +# CONFIG_BUSYBOX_CONFIG_STRINGS is not set +CONFIG_BUSYBOX_CONFIG_TIME=y +# CONFIG_BUSYBOX_CONFIG_TTYSIZE is not set +# CONFIG_BUSYBOX_CONFIG_UBIATTACH is not set +# CONFIG_BUSYBOX_CONFIG_UBIDETACH is not set +# CONFIG_BUSYBOX_CONFIG_UBIMKVOL is not set +# CONFIG_BUSYBOX_CONFIG_UBIRMVOL is not set +# CONFIG_BUSYBOX_CONFIG_UBIRSVOL is not set +# CONFIG_BUSYBOX_CONFIG_UBIUPDATEVOL is not set +# CONFIG_BUSYBOX_CONFIG_UBIRENAME is not set +# CONFIG_BUSYBOX_CONFIG_VOLNAME is not set +CONFIG_BUSYBOX_CONFIG_WATCHDOG=y + +# +# Networking Utilities +# +# CONFIG_BUSYBOX_CONFIG_FEATURE_IPV6 is not set +# CONFIG_BUSYBOX_CONFIG_FEATURE_UNIX_LOCAL is not set +# CONFIG_BUSYBOX_CONFIG_VERBOSE_RESOLUTION_ERRORS is not set +# CONFIG_BUSYBOX_CONFIG_ARP is not set +# CONFIG_BUSYBOX_CONFIG_ARPING is not set +# CONFIG_BUSYBOX_CONFIG_BRCTL is not set +# CONFIG_BUSYBOX_CONFIG_DNSD is not set +# CONFIG_BUSYBOX_CONFIG_ETHER_WAKE is not set +# CONFIG_BUSYBOX_CONFIG_FTPD is not set +# CONFIG_BUSYBOX_CONFIG_FTPGET is not set +# CONFIG_BUSYBOX_CONFIG_FTPPUT is not set +# CONFIG_BUSYBOX_CONFIG_HOSTNAME is not set +# CONFIG_BUSYBOX_CONFIG_DNSDOMAINNAME is not set +# CONFIG_BUSYBOX_CONFIG_HTTPD is not set +CONFIG_BUSYBOX_CONFIG_IFCONFIG=y +CONFIG_BUSYBOX_CONFIG_FEATURE_IFCONFIG_STATUS=y +# CONFIG_BUSYBOX_CONFIG_FEATURE_IFCONFIG_SLIP is not set +# CONFIG_BUSYBOX_CONFIG_FEATURE_IFCONFIG_MEMSTART_IOADDR_IRQ is not set +CONFIG_BUSYBOX_CONFIG_FEATURE_IFCONFIG_HW=y +CONFIG_BUSYBOX_CONFIG_FEATURE_IFCONFIG_BROADCAST_PLUS=y +# CONFIG_BUSYBOX_CONFIG_IFENSLAVE is not set +# CONFIG_BUSYBOX_CONFIG_IFPLUGD is not set +# CONFIG_BUSYBOX_CONFIG_IFUP is not set +# CONFIG_BUSYBOX_CONFIG_IFDOWN is not set +# CONFIG_BUSYBOX_CONFIG_INETD is not set +# CONFIG_BUSYBOX_CONFIG_IP is not set +# CONFIG_BUSYBOX_CONFIG_IPADDR is not set +# CONFIG_BUSYBOX_CONFIG_IPLINK is not set +# CONFIG_BUSYBOX_CONFIG_IPROUTE is not set +# CONFIG_BUSYBOX_CONFIG_IPTUNNEL is not set +# CONFIG_BUSYBOX_CONFIG_IPRULE is not set +# CONFIG_BUSYBOX_CONFIG_IPNEIGH is not set +# CONFIG_BUSYBOX_CONFIG_IPCALC is not set +# CONFIG_BUSYBOX_CONFIG_FAKEIDENTD is not set +# CONFIG_BUSYBOX_CONFIG_NAMEIF is not set +# CONFIG_BUSYBOX_CONFIG_NBDCLIENT is not set +# CONFIG_BUSYBOX_CONFIG_NC is not set +# CONFIG_BUSYBOX_CONFIG_NETMSG is not set +# CONFIG_BUSYBOX_CONFIG_NETSTAT is not set +# CONFIG_BUSYBOX_CONFIG_NSLOOKUP is not set +# CONFIG_BUSYBOX_CONFIG_NSLOOKUP_OPENWRT is not set +# CONFIG_BUSYBOX_CONFIG_NTPD is not set +CONFIG_BUSYBOX_CONFIG_PING=y +CONFIG_BUSYBOX_CONFIG_FEATURE_FANCY_PING=y +# CONFIG_BUSYBOX_CONFIG_PSCAN is not set +CONFIG_BUSYBOX_CONFIG_ROUTE=y +# CONFIG_BUSYBOX_CONFIG_SLATTACH is not set +# CONFIG_BUSYBOX_CONFIG_SSL_CLIENT is not set +# CONFIG_BUSYBOX_CONFIG_TCPSVD is not set +# CONFIG_BUSYBOX_CONFIG_UDPSVD is not set +# CONFIG_BUSYBOX_CONFIG_TELNET is not set +# CONFIG_BUSYBOX_CONFIG_TELNETD is not set +# CONFIG_BUSYBOX_CONFIG_TFTP is not set +# CONFIG_BUSYBOX_CONFIG_TFTPD is not set +# CONFIG_BUSYBOX_CONFIG_TLS is not set +# CONFIG_BUSYBOX_CONFIG_TRACEROUTE is not set +# CONFIG_BUSYBOX_CONFIG_TUNCTL is not set +# CONFIG_BUSYBOX_CONFIG_VCONFIG is not set +# CONFIG_BUSYBOX_CONFIG_WGET is not set +# CONFIG_BUSYBOX_CONFIG_WHOIS is not set +# CONFIG_BUSYBOX_CONFIG_ZCIP is not set +CONFIG_BUSYBOX_CONFIG_UDHCPD=y +CONFIG_BUSYBOX_CONFIG_FEATURE_UDHCPD_WRITE_LEASES_EARLY=y +# CONFIG_BUSYBOX_CONFIG_FEATURE_UDHCPD_BASE_IP_ON_MAC is not set +CONFIG_BUSYBOX_CONFIG_DHCPD_LEASES_FILE="" +# CONFIG_BUSYBOX_CONFIG_DUMPLEASES is not set +# CONFIG_BUSYBOX_CONFIG_DHCPRELAY is not set +# CONFIG_BUSYBOX_CONFIG_UDHCPC is not set +# CONFIG_BUSYBOX_CONFIG_FEATURE_UDHCP_PORT is not set +CONFIG_BUSYBOX_CONFIG_UDHCP_DEBUG=0 +CONFIG_BUSYBOX_CONFIG_FEATURE_UDHCP_RFC3397=y +# CONFIG_BUSYBOX_CONFIG_FEATURE_UDHCP_8021Q is not set +CONFIG_BUSYBOX_CONFIG_UDHCPC_SLACK_FOR_BUGGY_SERVERS=80 + +# +# Print Utilities +# +# CONFIG_BUSYBOX_CONFIG_LPD is not set +# CONFIG_BUSYBOX_CONFIG_LPR is not set +# CONFIG_BUSYBOX_CONFIG_LPQ is not set + +# +# Mail Utilities +# +# CONFIG_BUSYBOX_CONFIG_MAKEMIME is not set +# CONFIG_BUSYBOX_CONFIG_POPMAILDIR is not set +# CONFIG_BUSYBOX_CONFIG_REFORMIME is not set +# CONFIG_BUSYBOX_CONFIG_SENDMAIL is not set + +# +# Process Utilities +# +# CONFIG_BUSYBOX_CONFIG_FREE is not set +# CONFIG_BUSYBOX_CONFIG_FUSER is not set +# CONFIG_BUSYBOX_CONFIG_IOSTAT is not set +CONFIG_BUSYBOX_CONFIG_KILL=y +CONFIG_BUSYBOX_CONFIG_KILLALL=y +# CONFIG_BUSYBOX_CONFIG_KILLALL5 is not set +CONFIG_BUSYBOX_CONFIG_LSOF=y +# CONFIG_BUSYBOX_CONFIG_MPSTAT is not set +# CONFIG_BUSYBOX_CONFIG_NMETER is not set +# CONFIG_BUSYBOX_CONFIG_PGREP is not set +# CONFIG_BUSYBOX_CONFIG_PKILL is not set +CONFIG_BUSYBOX_CONFIG_PIDOF=y +# CONFIG_BUSYBOX_CONFIG_FEATURE_PIDOF_SINGLE is not set +# CONFIG_BUSYBOX_CONFIG_FEATURE_PIDOF_OMIT is not set +# CONFIG_BUSYBOX_CONFIG_PMAP is not set +# CONFIG_BUSYBOX_CONFIG_POWERTOP is not set +CONFIG_BUSYBOX_CONFIG_PS=y +# CONFIG_BUSYBOX_CONFIG_FEATURE_PS_WIDE is not set +CONFIG_BUSYBOX_CONFIG_FEATURE_PS_LONG=y +# CONFIG_BUSYBOX_CONFIG_PSTREE is not set +# CONFIG_BUSYBOX_CONFIG_PWDX is not set +# CONFIG_BUSYBOX_CONFIG_SMEMCAP is not set +CONFIG_BUSYBOX_CONFIG_BB_SYSCTL=y +CONFIG_BUSYBOX_CONFIG_TOP=y +CONFIG_BUSYBOX_CONFIG_FEATURE_TOP_INTERACTIVE=y +CONFIG_BUSYBOX_CONFIG_FEATURE_TOP_CPU_USAGE_PERCENTAGE=y +CONFIG_BUSYBOX_CONFIG_FEATURE_TOP_CPU_GLOBAL_PERCENTS=y +# CONFIG_BUSYBOX_CONFIG_FEATURE_TOP_SMP_CPU is not set +CONFIG_BUSYBOX_CONFIG_FEATURE_TOP_DECIMALS=y +CONFIG_BUSYBOX_CONFIG_FEATURE_TOP_SMP_PROCESS=y +CONFIG_BUSYBOX_CONFIG_FEATURE_TOPMEM=y +# CONFIG_BUSYBOX_CONFIG_UPTIME is not set +# CONFIG_BUSYBOX_CONFIG_WATCH is not set +CONFIG_BUSYBOX_CONFIG_FEATURE_SHOW_THREADS=y + +# +# Runit Utilities +# +# CONFIG_BUSYBOX_CONFIG_CHPST is not set +# CONFIG_BUSYBOX_CONFIG_SETUIDGID is not set +# CONFIG_BUSYBOX_CONFIG_ENVUIDGID is not set +# CONFIG_BUSYBOX_CONFIG_ENVDIR is not set +# CONFIG_BUSYBOX_CONFIG_SOFTLIMIT is not set +# CONFIG_BUSYBOX_CONFIG_RUNSV is not set +# CONFIG_BUSYBOX_CONFIG_RUNSVDIR is not set +# CONFIG_BUSYBOX_CONFIG_SV is not set +# CONFIG_BUSYBOX_CONFIG_SVC is not set +# CONFIG_BUSYBOX_CONFIG_SVLOGD is not set + +# +# Shells +# +CONFIG_BUSYBOX_CONFIG_SH_IS_ASH=y +# CONFIG_BUSYBOX_CONFIG_SH_IS_HUSH is not set +# CONFIG_BUSYBOX_CONFIG_SH_IS_NONE is not set +CONFIG_BUSYBOX_CONFIG_BASH_IS_ASH=y +# CONFIG_BUSYBOX_CONFIG_BASH_IS_HUSH is not set +# CONFIG_BUSYBOX_CONFIG_BASH_IS_NONE is not set +CONFIG_BUSYBOX_CONFIG_ASH=y +CONFIG_BUSYBOX_CONFIG_ASH_OPTIMIZE_FOR_SIZE=y +# CONFIG_BUSYBOX_CONFIG_ASH_INTERNAL_GLOB is not set +CONFIG_BUSYBOX_CONFIG_ASH_BASH_COMPAT=y +CONFIG_BUSYBOX_CONFIG_ASH_JOB_CONTROL=y +CONFIG_BUSYBOX_CONFIG_ASH_ALIAS=y +CONFIG_BUSYBOX_CONFIG_ASH_RANDOM_SUPPORT=y +# CONFIG_BUSYBOX_CONFIG_ASH_EXPAND_PRMT is not set +# CONFIG_BUSYBOX_CONFIG_ASH_IDLE_TIMEOUT is not set +# CONFIG_BUSYBOX_CONFIG_ASH_MAIL is not set +CONFIG_BUSYBOX_CONFIG_ASH_ECHO=y +CONFIG_BUSYBOX_CONFIG_ASH_PRINTF=y +CONFIG_BUSYBOX_CONFIG_ASH_TEST=y +# CONFIG_BUSYBOX_CONFIG_ASH_HELP is not set +CONFIG_BUSYBOX_CONFIG_ASH_GETOPTS=y +# CONFIG_BUSYBOX_CONFIG_ASH_CMDCMD is not set +# CONFIG_BUSYBOX_CONFIG_CTTYHACK is not set +# CONFIG_BUSYBOX_CONFIG_HUSH is not set +# CONFIG_BUSYBOX_CONFIG_MSH is not set + +# +# Options common to all shells +# +CONFIG_BUSYBOX_CONFIG_FEATURE_SH_MATH=y +CONFIG_BUSYBOX_CONFIG_FEATURE_SH_MATH_64=y +# CONFIG_BUSYBOX_CONFIG_FEATURE_SH_EXTRA_QUIET is not set +# CONFIG_BUSYBOX_CONFIG_FEATURE_SH_STANDALONE is not set +CONFIG_BUSYBOX_CONFIG_FEATURE_SH_NOFORK=y +# CONFIG_BUSYBOX_CONFIG_FEATURE_SH_HISTFILESIZE is not set + +# +# System Logging Utilities +# +# CONFIG_BUSYBOX_CONFIG_KLOGD is not set +# CONFIG_BUSYBOX_CONFIG_LOGGER is not set +# CONFIG_BUSYBOX_CONFIG_LOGREAD is not set +CONFIG_BUSYBOX_CONFIG_SYSLOGD=y +CONFIG_BUSYBOX_CONFIG_FEATURE_ROTATE_LOGFILE=y +# CONFIG_BUSYBOX_CONFIG_FEATURE_REMOTE_LOG is not set +CONFIG_BUSYBOX_CONFIG_FEATURE_SYSLOGD_DUP=y +# CONFIG_BUSYBOX_CONFIG_FEATURE_SYSLOGD_CFG is not set +CONFIG_BUSYBOX_CONFIG_FEATURE_SYSLOGD_READ_BUFFER_SIZE=256 +CONFIG_BUSYBOX_CONFIG_FEATURE_IPC_SYSLOG=y +CONFIG_BUSYBOX_CONFIG_FEATURE_IPC_SYSLOG_BUFFER_SIZE=4 +CONFIG_BUSYBOX_CONFIG_FEATURE_KMSG_SYSLOG=y +# CONFIG_BUSYBOX_SYSLOG_STAMP_KERNEL_FORMAT is not set +CONFIG_PACKAGE_busybox-init-base-files=y +CONFIG_BUSYBOX_INIT_BASE_FILES_OPTIONS=y +CONFIG_BUSYBOX_INIT_BASE_FILES_PATH="busybox-init-base-ota-files" +# CONFIG_BUSYBOX_INIT_BASE_FILES_RC_LOG is not set +# CONFIG_BUSYBOX_INIT_BASE_FILES_RC_LOAD_SCRIPT is not set +# CONFIG_BUSYBOX_INIT_BASE_FILES_RC_MODULES is not set +# CONFIG_PACKAGE_ca-certificates is not set +# CONFIG_PACKAGE_dnsmasq is not set +# CONFIG_PACKAGE_dnsmasq-full is not set +# CONFIG_PACKAGE_dropbear is not set +# CONFIG_PACKAGE_ead is not set +# CONFIG_PACKAGE_eudev is not set +# CONFIG_PACKAGE_firewall is not set +# CONFIG_PACKAGE_jsonfilter is not set +# CONFIG_PACKAGE_libasan is not set +# CONFIG_PACKAGE_libatomic is not set +CONFIG_PACKAGE_libc=y + +# +# Configuration +# +CONFIG_LIBC_ROOT_DIR="TOOLCHAIN_ROOT" +CONFIG_LIBC_FILE_SPEC="./lib/ld{-*.so,-linux*.so.*} ./lib/lib{anl,c,gomp,cidn,crypt,dl,m,nsl,nss_dns,nss_files,resolv,util}{-*.so,.so.*}" +CONFIG_PACKAGE_libgcc=y + +# +# Configuration +# +CONFIG_LIBGCC_ROOT_DIR="TOOLCHAIN_ROOT" +CONFIG_LIBGCC_FILE_SPEC="./lib/libgcc_s.so.*" +# CONFIG_PACKAGE_libgomp is not set +CONFIG_PACKAGE_libpthread=y + +# +# Configuration +# +CONFIG_LIBPTHREAD_ROOT_DIR="TOOLCHAIN_ROOT" +CONFIG_LIBPTHREAD_FILE_SPEC="./lib/libpthread{-*.so,.so.*}" +CONFIG_PACKAGE_librt=y + +# +# Configuration +# +CONFIG_LIBRT_ROOT_DIR="TOOLCHAIN_ROOT" +CONFIG_LIBRT_FILE_SPEC="./lib/librt{-*.so,.so.*}" +CONFIG_PACKAGE_libstdcpp=y + +# +# Configuration +# +CONFIG_LIBSTDCPP_ROOT_DIR="TOOLCHAIN_ROOT" +CONFIG_LIBSTDCPP_FILE_SPEC="./lib/libstdc++.so.*" +# CONFIG_PACKAGE_logd is not set +# CONFIG_PACKAGE_mtd is not set +# CONFIG_PACKAGE_netifd is not set +# CONFIG_PACKAGE_opkg is not set +# CONFIG_PACKAGE_opkg-smime is not set +# CONFIG_PACKAGE_qos-scripts is not set +# CONFIG_PACKAGE_resolveip is not set +# CONFIG_PACKAGE_rpcd is not set +# CONFIG_PACKAGE_swconfig is not set +# CONFIG_PACKAGE_systemd is not set +# CONFIG_PACKAGE_ubox is not set +# CONFIG_PACKAGE_ubus is not set +# CONFIG_PACKAGE_ubusd is not set +# CONFIG_PACKAGE_uci is not set +# CONFIG_PACKAGE_udev is not set +# CONFIG_PACKAGE_usign is not set +# CONFIG_PACKAGE_wireless-tools is not set + +# +# Administration +# +# CONFIG_PACKAGE_syslog-ng is not set + +# +# Allwinner +# + +# +# ALSA UCM for Allwinner +# +# CONFIG_PACKAGE_alsa-ucm-aw-configs is not set +# CONFIG_PACKAGE_alsa-ucm-aw-lib is not set +# CONFIG_PACKAGE_alsa-ucm-aw-utils is not set + +# +# Libraries +# +# CONFIG_PACKAGE_libcutils is not set + +# +# RPBuf +# +# CONFIG_PACKAGE_librpbuf is not set +# CONFIG_PACKAGE_rpbuf_demo is not set +# CONFIG_PACKAGE_rpbuf_test is not set + +# +# Wireless +# +# CONFIG_PACKAGE_btmanager-v4.0 is not set +CONFIG_PACKAGE_wifimanager-v2.0=y + +# +# Wifimanager-v2.0 Configuration +# +# CONFIG_WMG_PROTOCOL_SOFTAP is not set +# CONFIG_WMG_PROTOCOL_BLE is not set +# CONFIG_WMG_PROTOCOL_XCONFIG is not set +# CONFIG_WMG_PROTOCOL_SOUNDWAVE is not set +# CONFIG_WMG_PLATFORM_LINUX is not set +# CONFIG_WMG_PLATFORM_FREERTOS is not set +CONFIG_WMG_PLATFORM_XRLINK=y +CONFIG_WMG_CONFIG_PATH="/etc/wifi" +# CONFIG_WMG_UNREGISTER_CB is not set +# CONFIG_WMG_SUPPORT_EXPAND is not set + +# +# Wifimanager support mode Configuration +# +CONFIG_WMG_SUPPORT_STA_MODE=y +CONFIG_WMG_SUPPORT_AP_MODE=y +CONFIG_WMG_SUPPORT_MONITOR_MODE=y +CONFIG_WMG_SUPPORT_P2P_MODE=y +# CONFIG_WMG_DEFAULT_DEBUG_LV_ERROR is not set +# CONFIG_WMG_DEFAULT_DEBUG_LV_WARN is not set +CONFIG_WMG_DEFAULT_DEBUG_LV_INFO=y +# CONFIG_WMG_DEFAULT_DEBUG_LV_DEBUG is not set +# CONFIG_WMG_DEFAULT_DEBUG_LV_DUMP is not set +# CONFIG_WMG_DEFAULT_DEBUG_LV_EXCE is not set +CONFIG_PACKAGE_wifimanager-v2.0-lib=y +CONFIG_PACKAGE_wifimanager-v2.0-demo=y +CONFIG_PACKAGE_wirelesscommon=y + +# +# basic +# +# CONFIG_PACKAGE_libawlist is not set + +# +# btmanager +# +# CONFIG_PACKAGE_btmanager-core is not set +# CONFIG_PACKAGE_btmanager-demo is not set + +# +# eyesee-mpp +# +# CONFIG_PACKAGE_eyesee-mpp-awcdr is not set +# CONFIG_PACKAGE_eyesee-mpp-cloud is not set +# CONFIG_PACKAGE_eyesee-mpp-custom_aw is not set +# CONFIG_PACKAGE_eyesee-mpp-dragonboard is not set +# CONFIG_PACKAGE_eyesee-mpp-external is not set +# CONFIG_PACKAGE_eyesee-mpp-framework is not set +# CONFIG_PACKAGE_eyesee-mpp-middleware is not set +# CONFIG_PACKAGE_eyesee-mpp-private-onvif is not set +# CONFIG_PACKAGE_eyesee-mpp-private-rtsp is not set +# CONFIG_PACKAGE_eyesee-mpp-system is not set + +# +# rt_media +# +# CONFIG_PACKAGE_rt_media is not set + +# +# rt_media-mpp-demo +# +# CONFIG_PACKAGE_demo_avmuxer is not set +# CONFIG_PACKAGE_demo_codec_parallel is not set +# CONFIG_PACKAGE_demo_video_muxer is not set + +# +# rt_media-uvc +# +# CONFIG_PACKAGE_rt_media-uvc is not set + +# +# smart_card +# +# CONFIG_PACKAGE_smart_card is not set + +# +# smartlinkd +# +# CONFIG_PACKAGE_smartlinkd-demo is not set +# CONFIG_PACKAGE_smartlinkd-lib is not set +# CONFIG_XRADIO_AIRKISS is not set +# CONFIG_XRADIO_SMARTCONFIG is not set +# CONFIG_SOFT_AP is not set +# CONFIG_SOUND_WAVE is not set +# CONFIG_PACKAGE_MtpDaemon is not set +# CONFIG_PACKAGE_aactd is not set +# CONFIG_PACKAGE_aactd-lib is not set +# CONFIG_PACKAGE_adb is not set +# CONFIG_PACKAGE_adbd_auth_service is not set +# CONFIG_PACKAGE_alsa-conf-aw is not set +# CONFIG_PACKAGE_alsa-plugins-aw is not set +# CONFIG_PACKAGE_amp_shell is not set +# CONFIG_PACKAGE_asan_demo is not set +# CONFIG_PACKAGE_awrpaf_demo is not set +# CONFIG_PACKAGE_awrpaf_plugin is not set +# CONFIG_PACKAGE_awsystrace is not set +# CONFIG_PACKAGE_benchmarks is not set +# CONFIG_PACKAGE_boot-play is not set +# CONFIG_PACKAGE_camerademo is not set +# CONFIG_PACKAGE_dsp_debug is not set +# CONFIG_PACKAGE_esp_c_support is not set +# CONFIG_ESP32_ENABLE_TEST is not set +# CONFIG_PACKAGE_facehumandemo is not set +# CONFIG_PACKAGE_falloc-test is not set +# CONFIG_PACKAGE_fast_copy_demo is not set +# CONFIG_PACKAGE_fsck_msdos is not set +# CONFIG_PACKAGE_healthd is not set +# CONFIG_PACKAGE_lenet-demo is not set +# CONFIG_PACKAGE_liballwinner-base is not set +# CONFIG_PACKAGE_liballwinner-ipc is not set +# CONFIG_PACKAGE_libawadbauth is not set +# CONFIG_PACKAGE_libawaiisp is not set +# CONFIG_PACKAGE_libawion is not set +# CONFIG_PACKAGE_libawnn_full is not set +# CONFIG_PACKAGE_libc-benchmark is not set +# CONFIG_PACKAGE_libcamapi is not set +# CONFIG_PACKAGE_libdisplay is not set +# CONFIG_PACKAGE_libminui is not set +# CONFIG_PACKAGE_libsec_key is not set +# CONFIG_PACKAGE_libspeex-lite is not set +# CONFIG_PACKAGE_libsysutils is not set +# CONFIG_PACKAGE_libuapi is not set +# CONFIG_PACKAGE_libutils is not set +# CONFIG_PACKAGE_logwrapper is not set +# CONFIG_PACKAGE_mad-demo is not set +# CONFIG_PACKAGE_memleak_check is not set +# CONFIG_PACKAGE_misc-upgrade is not set +# CONFIG_PACKAGE_msgbox_demo is not set +# CONFIG_PACKAGE_mtdbadblk is not set +# CONFIG_PACKAGE_mtop is not set +# CONFIG_PACKAGE_nativepower is not set +# CONFIG_PACKAGE_nativepower_utils is not set +CONFIG_PACKAGE_ota-burnboot=y +# CONFIG_PACKAGE_ota-fastboot is not set +# CONFIG_PACKAGE_powerkey is not set +# CONFIG_PACKAGE_pqd is not set +# CONFIG_PACKAGE_ptz-TMI8150 is not set +# CONFIG_PACKAGE_ramparser is not set +# CONFIG_PACKAGE_recovery is not set +# CONFIG_PACKAGE_recovery-mode is not set +# CONFIG_PACKAGE_resample is not set +# CONFIG_PACKAGE_resnet50-demo is not set +# CONFIG_PACKAGE_snapcast is not set +# CONFIG_PACKAGE_stress-ng is not set +# CONFIG_PACKAGE_sunxiCamera is not set +# CONFIG_PACKAGE_sunxiCamera_demo is not set +CONFIG_PACKAGE_swupdate=y +CONFIG_SWUPDATE_CUSTOM=y +CONFIG_SWUPDATE_DEFAULT_HAVE_DOT_CONFIG=y +# CONFIG_SWUPDATE_DEFAULT_CURL is not set +# CONFIG_SWUPDATE_DEFAULT_CURL_SSL is not set +# CONFIG_SWUPDATE_DEFAULT_SYSTEMD is not set +CONFIG_SWUPDATE_DEFAULT_SCRIPTS=y +# CONFIG_SWUPDATE_DEFAULT_HW_COMPATIBILITY is not set +CONFIG_SWUPDATE_DEFAULT_SW_VERSIONS_FILE="/etc/sw-versions" +CONFIG_SWUPDATE_DEFAULT_SOCKET_CTRL_PATH="" +CONFIG_SWUPDATE_DEFAULT_SOCKET_PROGRESS_PATH="" +CONFIG_SWUPDATE_DEFAULT_SOCKET_REMOTE_HANDLER_DIRECTORY="/tmp/" +# CONFIG_SWUPDATE_DEFAULT_MTD is not set +# CONFIG_SWUPDATE_DEFAULT_LUA is not set +# CONFIG_SWUPDATE_DEFAULT_FEATURE_SYSLOG is not set +CONFIG_SWUPDATE_DEFAULT_CROSS_COMPILE="" +CONFIG_SWUPDATE_DEFAULT_SYSROOT="" +CONFIG_SWUPDATE_DEFAULT_EXTRA_CFLAGS="" +CONFIG_SWUPDATE_DEFAULT_EXTRA_LDFLAGS="" +CONFIG_SWUPDATE_DEFAULT_EXTRA_LDLIBS="" +# CONFIG_SWUPDATE_DEFAULT_DEBUG is not set +# CONFIG_SWUPDATE_DEFAULT_WERROR is not set +# CONFIG_SWUPDATE_DEFAULT_NOCLEANUP is not set +# CONFIG_SWUPDATE_DEFAULT_BOOTLOADER_EBG is not set +CONFIG_SWUPDATE_DEFAULT_UBOOT=y +# CONFIG_SWUPDATE_DEFAULT_BOOTLOADER_NONE is not set +# CONFIG_SWUPDATE_DEFAULT_BOOTLOADER_GRUB is not set +CONFIG_SWUPDATE_DEFAULT_UBOOT_FWENV="/etc/fw_env.config" +# CONFIG_SWUPDATE_DEFAULT_UBOOT_NEWAPI is not set +# CONFIG_SWUPDATE_DEFAULT_SSL_IMPL_NONE is not set +CONFIG_SWUPDATE_DEFAULT_SSL_IMPL_OPENSSL=y +# CONFIG_SWUPDATE_DEFAULT_SSL_IMPL_MBEDTLS is not set +# CONFIG_SWUPDATE_DEFAULT_DOWNLOAD is not set +# CONFIG_SWUPDATE_DEFAULT_DOWNLOAD_SSL is not set +# CONFIG_SWUPDATE_DEFAULT_CHANNEL_CURL is not set +# CONFIG_SWUPDATE_DEFAULT_HASH_VERIFY is not set +# CONFIG_SWUPDATE_DEFAULT_SIGNED_IMAGES is not set +# CONFIG_SWUPDATE_DEFAULT_ENCRYPTED_IMAGES is not set +# CONFIG_SWUPDATE_DEFAULT_SURICATTA is not set +# CONFIG_SWUPDATE_DEFAULT_WEBSERVER is not set +CONFIG_SWUPDATE_DEFAULT_GUNZIP=y +# CONFIG_SWUPDATE_DEFAULT_ZSTD is not set +CONFIG_SWUPDATE_DEFAULT_LIBCONFIG=y +CONFIG_SWUPDATE_DEFAULT_PARSERROOT="" +# CONFIG_SWUPDATE_DEFAULT_JSON is not set +# CONFIG_SWUPDATE_DEFAULT_SETSWDESCRIPTION is not set +# CONFIG_SWUPDATE_DEFAULT_UBIVOL is not set +CONFIG_SWUPDATE_DEFAULT_UBIVIDOFFSET=2048 +CONFIG_SWUPDATE_DEFAULT_RAW=y +# CONFIG_SWUPDATE_DEFAULT_RDIFFHANDLER is not set +CONFIG_SWUPDATE_DEFAULT_SHELLSCRIPTHANDLER=y +# CONFIG_SWUPDATE_DEFAULT_ARCHIVE is not set +# CONFIG_SWUPDATE_DEFAULT_REMOTE_HANDLER is not set +# CONFIG_SWUPDATE_DEFAULT_SWUFORWARDER_HANDLER is not set +CONFIG_SWUPDATE_DEFAULT_BOOTLOADERHANDLER=y +CONFIG_SWUPDATE_DEFAULT_AWBOOT_HANDLER=y +# CONFIG_SWUPDATE_DEFAULT_UCFWHANDLER is not set +CONFIG_SWUPDATE_CONFIG_HAVE_LINUX=y +# CONFIG_SWUPDATE_CONFIG_HAVE_FREEBSD is not set +CONFIG_SWUPDATE_CONFIG_HAVE_DOT_CONFIG=y +CONFIG_SWUPDATE_CONFIG_HAVE_LUA=y +CONFIG_SWUPDATE_CONFIG_HAVE_LIBCONFIG=y +CONFIG_SWUPDATE_CONFIG_HAVE_LIBARCHIVE=y +CONFIG_SWUPDATE_CONFIG_HAVE_LIBCURL=y +CONFIG_SWUPDATE_CONFIG_HAVE_LIBGPIOD=y +CONFIG_SWUPDATE_CONFIG_HAVE_LIBMTD=y +CONFIG_SWUPDATE_CONFIG_HAVE_LIBUBI=y +CONFIG_SWUPDATE_CONFIG_HAVE_LIBUBOOTENV=y +CONFIG_SWUPDATE_CONFIG_HAVE_LIBEBGENV=y +CONFIG_SWUPDATE_CONFIG_HAVE_LIBZEROMQ=y +CONFIG_SWUPDATE_CONFIG_HAVE_ZLIB=y +CONFIG_SWUPDATE_CONFIG_HAVE_ZSTD=y +CONFIG_SWUPDATE_CONFIG_HAVE_LIBSSL=y +CONFIG_SWUPDATE_CONFIG_HAVE_LIBCRYPTO=y +CONFIG_SWUPDATE_CONFIG_HAVE_MBEDTLS=y +CONFIG_SWUPDATE_CONFIG_HAVE_JSON_C=y +CONFIG_SWUPDATE_CONFIG_HAVE_LIBWEBSOCKETS=y +# CONFIG_SWUPDATE_CONFIG_HAVE_URIPARSER is not set + +# +# Swupdate Settings +# + +# +# General Configuration +# +# CONFIG_SWUPDATE_CONFIG_CURL is not set +# CONFIG_SWUPDATE_CONFIG_CURL_SSL is not set +# CONFIG_SWUPDATE_CONFIG_SYSTEMD is not set +CONFIG_SWUPDATE_CONFIG_SCRIPTS=y +# CONFIG_SWUPDATE_CONFIG_HW_COMPATIBILITY is not set +CONFIG_SWUPDATE_CONFIG_SW_VERSIONS_FILE="/etc/sw-versions" + +# +# Socket Paths +# +CONFIG_SWUPDATE_CONFIG_SOCKET_CTRL_PATH="" +CONFIG_SWUPDATE_CONFIG_SOCKET_PROGRESS_PATH="" +CONFIG_SWUPDATE_CONFIG_SOCKET_REMOTE_HANDLER_DIRECTORY="/tmp/" +# CONFIG_SWUPDATE_CONFIG_MTD is not set +# CONFIG_SWUPDATE_CONFIG_LUA is not set +# CONFIG_SWUPDATE_CONFIG_FEATURE_SYSLOG is not set + +# +# Build Options +# +CONFIG_SWUPDATE_CONFIG_CROSS_COMPILE="" +CONFIG_SWUPDATE_CONFIG_SYSROOT="" +CONFIG_SWUPDATE_CONFIG_EXTRA_CFLAGS="" +CONFIG_SWUPDATE_CONFIG_EXTRA_LDFLAGS="" +CONFIG_SWUPDATE_CONFIG_EXTRA_LDLIBS="" + +# +# Debugging Options +# +# CONFIG_SWUPDATE_CONFIG_DEBUG is not set +# CONFIG_SWUPDATE_CONFIG_WERROR is not set +# CONFIG_SWUPDATE_CONFIG_NOCLEANUP is not set +# CONFIG_SWUPDATE_CONFIG_BOOTLOADER_EBG is not set +CONFIG_SWUPDATE_CONFIG_UBOOT=y +# CONFIG_SWUPDATE_CONFIG_BOOTLOADER_NONE is not set +# CONFIG_SWUPDATE_CONFIG_BOOTLOADER_GRUB is not set +CONFIG_SWUPDATE_CONFIG_UBOOT_FWENV="/etc/fw_env.config" +# CONFIG_SWUPDATE_CONFIG_UBOOT_NEWAPI is not set +CONFIG_SWUPDATE_CONFIG_SSL_IMPL_NONE=y +# CONFIG_SWUPDATE_CONFIG_SSL_IMPL_OPENSSL is not set +# CONFIG_SWUPDATE_CONFIG_SSL_IMPL_MBEDTLS is not set +# CONFIG_SWUPDATE_CONFIG_DOWNLOAD is not set + +# +# Hash checking needs an SSL implementation +# + +# +# Image signature verification needs an SSL implementation +# + +# +# Image encryption needs an SSL implementation +# +# CONFIG_SWUPDATE_CONFIG_SURICATTA is not set +# CONFIG_WEBSERVER is not set +CONFIG_SWUPDATE_CONFIG_GUNZIP=y +# CONFIG_SWUPDATE_CONFIG_ZSTD is not set + +# +# Parser Features +# +CONFIG_SWUPDATE_CONFIG_LIBCONFIG=y +CONFIG_SWUPDATE_CONFIG_PARSERROOT="" +# CONFIG_SWUPDATE_CONFIG_JSON is not set +# CONFIG_SWUPDATE_CONFIG_SETSWDESCRIPTION is not set + +# +# Image Handlers +# +CONFIG_SWUPDATE_CONFIG_RAW=y +# CONFIG_SWUPDATE_CONFIG_RDIFFHANDLER is not set +CONFIG_SWUPDATE_CONFIG_SHELLSCRIPTHANDLER=y +# CONFIG_SWUPDATE_CONFIG_ARCHIVE is not set +# CONFIG_SWUPDATE_CONFIG_REMOTE_HANDLER is not set + +# +# swuforward handler needs json-c and curl +# +CONFIG_SWUPDATE_CONFIG_BOOTLOADERHANDLER=y +CONFIG_SWUPDATE_CONFIG_AWBOOT_HANDLER=y +# CONFIG_SWUPDATE_CONFIG_UCFWHANDLER is not set + +# +# Reduce size +# +# CONFIG_SWUPDATE_CONFIG_REMOVE_CLIENT is not set +# CONFIG_SWUPDATE_CONFIG_REMOVE_PROGRESS is not set +# CONFIG_SWUPDATE_CONFIG_REMOVE_AUTORUN is not set +# CONFIG_PACKAGE_tconfigs is not set +# CONFIG_PACKAGE_thermal_pwm is not set +# CONFIG_PACKAGE_tina-app-upgrade is not set +# CONFIG_PACKAGE_tina-upgrade is not set +# CONFIG_PACKAGE_tinymp3 is not set +# CONFIG_PACKAGE_tofdemo is not set +# CONFIG_PACKAGE_tsc_demo is not set +# CONFIG_PACKAGE_tvd_demo is not set +# CONFIG_PACKAGE_uevent-monitor is not set +# CONFIG_PACKAGE_usb-gadget is not set +# CONFIG_PACKAGE_uvcout is not set +# CONFIG_PACKAGE_viplite-driver is not set +# CONFIG_PACKAGE_wifimanager is not set +# CONFIG_PACKAGE_yolov3 is not set + +# +# Development +# + +# +# Libraries +# +# CONFIG_PACKAGE_zlib-dev is not set +# CONFIG_PACKAGE_ar is not set +# CONFIG_PACKAGE_binutils is not set +# CONFIG_PACKAGE_dmalloc-test is not set +# CONFIG_PACKAGE_dmalloc-utils is not set +# CONFIG_PACKAGE_gdb is not set +# CONFIG_PACKAGE_gdbserver is not set +# CONFIG_PACKAGE_heaptrack is not set +# CONFIG_PACKAGE_libdmalloc is not set +# CONFIG_PACKAGE_objdump is not set +# CONFIG_PACKAGE_trace-cmd is not set +# CONFIG_PACKAGE_trace-cmd-extra is not set +# CONFIG_PACKAGE_valgrind is not set +# CONFIG_PACKAGE_vmtouch is not set + +# +# Firmware +# +# CONFIG_PACKAGE_aic8800-firmware is not set +# CONFIG_PACKAGE_ap6212-firmware is not set +# CONFIG_PACKAGE_ap6212a-firmware is not set +# CONFIG_PACKAGE_ap6212z-firmware is not set +# CONFIG_PACKAGE_ap6236-firmware is not set +# CONFIG_PACKAGE_ap6255-firmware is not set +# CONFIG_PACKAGE_ap6256-firmware is not set +# CONFIG_PACKAGE_ap6330-firmware is not set +# CONFIG_PACKAGE_ap6335-firmware is not set +# CONFIG_PACKAGE_ap6356s-firmware is not set +# CONFIG_PACKAGE_atmel_mxt224s-config is not set +# CONFIG_PACKAGE_cyw43438-firmware is not set +# CONFIG_PACKAGE_esp8089-firmware is not set +# CONFIG_PACKAGE_mrvl8977-firmware-cfgfile is not set +# CONFIG_PACKAGE_qca9377-firmware-cfgfile is not set +# CONFIG_PACKAGE_r528-dsp-firmware is not set +CONFIG_FIRMWARE_PATH="/lib/firmware/" +# CONFIG_XR829_USE_40M_SDD is not set +# CONFIG_PACKAGE_r8723ds-firmware is not set +# CONFIG_PACKAGE_r8822cs-firmware is not set +# CONFIG_PACKAGE_rtl8733bs-firmware is not set +# CONFIG_PACKAGE_rtl8821cs-firmware is not set +# CONFIG_PACKAGE_ssv6155-firmware is not set +# CONFIG_PACKAGE_ssv6158-firmware is not set +# CONFIG_PACKAGE_uwe5622-firmware is not set +# CONFIG_PACKAGE_xr819-firmware is not set +# CONFIG_PACKAGE_xr819a-firmware is not set +# CONFIG_PACKAGE_xr819s-firmware is not set +# CONFIG_PACKAGE_xr829-firmware is not set + +# +# Gui +# + +# +# Directfb +# +# CONFIG_PACKAGE_directfb is not set +# CONFIG_PACKAGE_directfb-examples is not set + +# +# EFL +# +# CONFIG_PACKAGE_efl is not set +# CONFIG_PACKAGE_ephoto is not set +# CONFIG_PACKAGE_terminology is not set + +# +# Flutter +# + +# +# Gtk +# +# CONFIG_PACKAGE_atk is not set +# CONFIG_PACKAGE_gdk-pixbuf is not set +# CONFIG_PACKAGE_granite is not set +# CONFIG_PACKAGE_hicolor-icon-theme is not set +# CONFIG_PACKAGE_libgtk3 is not set +# CONFIG_PACKAGE_midori is not set +# CONFIG_PACKAGE_webkitgtk is not set + +# +# Libs +# +# CONFIG_PACKAGE_harfbuzz is not set +# CONFIG_PACKAGE_lcms2 is not set +# CONFIG_PACKAGE_libcairo is not set +# CONFIG_PACKAGE_libchipmunk is not set +# CONFIG_PACKAGE_libdrm is not set +# CONFIG_PACKAGE_libepoxy is not set +# CONFIG_PACKAGE_libjpeg is not set +# CONFIG_PACKAGE_libpixman is not set +# CONFIG_PACKAGE_libpng is not set +# CONFIG_PACKAGE_librsvg is not set +# CONFIG_PACKAGE_libump is not set +# CONFIG_PACKAGE_libwebp is not set +# CONFIG_PACKAGE_pango is not set +# CONFIG_PACKAGE_rlottie is not set + +# +# Littlevgl +# +# CONFIG_PACKAGE_lv_86_boxes is not set +# CONFIG_PACKAGE_lv_examples is not set +# CONFIG_LVGL8_USE_SUNXIFB_DOUBLE_BUFFER is not set +# CONFIG_LVGL8_USE_SUNXIFB_CACHE is not set +# CONFIG_LVGL8_USE_SUNXIFB_G2D is not set +# CONFIG_LVGL8_USE_SUNXIFB_G2D_ROTATE is not set +# CONFIG_LVGL8_USE_FREETYPE is not set +# CONFIG_LVGL8_USE_RLOTTIE is not set +# CONFIG_LVGL8_USE_HARDWARE_JPEGDECODER is not set +# CONFIG_PACKAGE_lv_g2d_test is not set +# CONFIG_PACKAGE_lv_monitor is not set + +# +# Kernel modules +# + +# +# Block Devices +# +# CONFIG_PACKAGE_kmod-aoe is not set +# CONFIG_PACKAGE_kmod-block2mtd is not set +# CONFIG_PACKAGE_kmod-dm is not set +# CONFIG_PACKAGE_kmod-loop is not set +# CONFIG_PACKAGE_kmod-md-mod is not set +# CONFIG_PACKAGE_kmod-nbd is not set +# CONFIG_PACKAGE_kmod-scsi-cdrom is not set +# CONFIG_PACKAGE_kmod-scsi-core is not set +# CONFIG_PACKAGE_kmod-scsi-generic is not set +# CONFIG_PACKAGE_kmod-scsi-tape is not set + +# +# Cryptographic API modules +# +# CONFIG_PACKAGE_kmod-crypto-aead is not set +# CONFIG_PACKAGE_kmod-crypto-authenc is not set +# CONFIG_PACKAGE_kmod-crypto-cbc is not set +# CONFIG_PACKAGE_kmod-crypto-ccm is not set +# CONFIG_PACKAGE_kmod-crypto-cmac is not set +# CONFIG_PACKAGE_kmod-crypto-crc32c is not set +# CONFIG_PACKAGE_kmod-crypto-ctr is not set +# CONFIG_PACKAGE_kmod-crypto-deflate is not set +# CONFIG_PACKAGE_kmod-crypto-des is not set +# CONFIG_PACKAGE_kmod-crypto-ecb is not set +# CONFIG_PACKAGE_kmod-crypto-echainiv is not set +# CONFIG_PACKAGE_kmod-crypto-fcrypt is not set +# CONFIG_PACKAGE_kmod-crypto-gcm is not set +# CONFIG_PACKAGE_kmod-crypto-gf128 is not set +# CONFIG_PACKAGE_kmod-crypto-ghash is not set +# CONFIG_PACKAGE_kmod-crypto-hash is not set +# CONFIG_PACKAGE_kmod-crypto-hmac is not set +# CONFIG_PACKAGE_kmod-crypto-hw-ccp is not set +# CONFIG_PACKAGE_kmod-crypto-hw-geode is not set +# CONFIG_PACKAGE_kmod-crypto-hw-hifn-795x is not set +# CONFIG_PACKAGE_kmod-crypto-hw-padlock is not set +# CONFIG_PACKAGE_kmod-crypto-hw-talitos is not set +# CONFIG_PACKAGE_kmod-crypto-iv is not set +# CONFIG_PACKAGE_kmod-crypto-manager is not set +# CONFIG_PACKAGE_kmod-crypto-md4 is not set +# CONFIG_PACKAGE_kmod-crypto-md5 is not set +# CONFIG_PACKAGE_kmod-crypto-michael-mic is not set +# CONFIG_PACKAGE_kmod-crypto-misc is not set +# CONFIG_PACKAGE_kmod-crypto-null is not set +# CONFIG_PACKAGE_kmod-crypto-ocf is not set +# CONFIG_PACKAGE_kmod-crypto-pcbc is not set +# CONFIG_PACKAGE_kmod-crypto-pcompress is not set +# CONFIG_PACKAGE_kmod-crypto-rng is not set +# CONFIG_PACKAGE_kmod-crypto-seqiv is not set +# CONFIG_PACKAGE_kmod-crypto-sha1 is not set +# CONFIG_PACKAGE_kmod-crypto-sha256 is not set +# CONFIG_PACKAGE_kmod-crypto-sha512 is not set +# CONFIG_PACKAGE_kmod-crypto-test is not set +# CONFIG_PACKAGE_kmod-crypto-user is not set +# CONFIG_PACKAGE_kmod-crypto-wq is not set +# CONFIG_PACKAGE_kmod-crypto-xts is not set +# CONFIG_PACKAGE_kmod-cryptodev is not set + +# +# DSA Support +# +# CONFIG_PACKAGE_kmod-dsa is not set + +# +# Filesystems +# +# CONFIG_PACKAGE_kmod-fs-afs is not set +# CONFIG_PACKAGE_kmod-fs-autofs4 is not set +# CONFIG_PACKAGE_kmod-fs-btrfs is not set +# CONFIG_PACKAGE_kmod-fs-cifs is not set +# CONFIG_PACKAGE_kmod-fs-configfs is not set +# CONFIG_PACKAGE_kmod-fs-cramfs is not set +# CONFIG_PACKAGE_kmod-fs-exportfs is not set +# CONFIG_PACKAGE_kmod-fs-ext4 is not set +# CONFIG_PACKAGE_kmod-fs-f2fs is not set +# CONFIG_PACKAGE_kmod-fs-fscache is not set +# CONFIG_PACKAGE_kmod-fs-hfs is not set +# CONFIG_PACKAGE_kmod-fs-hfsplus is not set +# CONFIG_PACKAGE_kmod-fs-isofs is not set +# CONFIG_PACKAGE_kmod-fs-jfs is not set +# CONFIG_PACKAGE_kmod-fs-minix is not set +# CONFIG_PACKAGE_kmod-fs-msdos is not set +# CONFIG_PACKAGE_kmod-fs-nfs is not set +# CONFIG_PACKAGE_kmod-fs-nfs-common is not set +# CONFIG_PACKAGE_kmod-fs-nfsd is not set +# CONFIG_PACKAGE_kmod-fs-ntfs is not set +# CONFIG_PACKAGE_kmod-fs-reiserfs is not set +# CONFIG_PACKAGE_kmod-fs-udf is not set +# CONFIG_PACKAGE_kmod-fs-vfat is not set +# CONFIG_PACKAGE_kmod-fs-xfs is not set +# CONFIG_PACKAGE_kmod-fuse is not set + +# +# Hardware Monitoring Support +# +# CONFIG_PACKAGE_kmod-hwmon-core is not set + +# +# I2C support +# +# CONFIG_PACKAGE_kmod-i2c-core is not set +# CONFIG_PACKAGE_kmod-i2c-gpio-custom is not set + +# +# Industrial I/O Modules +# +# CONFIG_PACKAGE_kmod-iio-ad799x is not set +# CONFIG_PACKAGE_kmod-iio-am2315 is not set +# CONFIG_PACKAGE_kmod-iio-bh1750 is not set +# CONFIG_PACKAGE_kmod-iio-bmp280 is not set +# CONFIG_PACKAGE_kmod-iio-bmp280-i2c is not set +# CONFIG_PACKAGE_kmod-iio-bmp280-spi is not set +# CONFIG_PACKAGE_kmod-iio-ccs811 is not set +# CONFIG_PACKAGE_kmod-iio-core is not set +# CONFIG_PACKAGE_kmod-iio-dht11 is not set +# CONFIG_PACKAGE_kmod-iio-hmc5843 is not set +# CONFIG_PACKAGE_kmod-iio-htu21 is not set +# CONFIG_PACKAGE_kmod-iio-si7020 is not set +# CONFIG_PACKAGE_kmod-iio-tsl4531 is not set + +# +# Input modules +# +# CONFIG_PACKAGE_kmod-hid is not set +# CONFIG_PACKAGE_kmod-hid-generic is not set +# CONFIG_PACKAGE_kmod-input-core is not set +# CONFIG_PACKAGE_kmod-input-evdev is not set +# CONFIG_PACKAGE_kmod-input-gpio-encoder is not set +# CONFIG_PACKAGE_kmod-input-gpio-keys is not set +# CONFIG_PACKAGE_kmod-input-gpio-keys-polled is not set +# CONFIG_PACKAGE_kmod-input-joydev is not set +# CONFIG_PACKAGE_kmod-input-matrixkmap is not set +# CONFIG_PACKAGE_kmod-input-polldev is not set +# CONFIG_PACKAGE_kmod-input-uinput is not set +# CONFIG_PACKAGE_kmod-touchscreen-atmel-mxt is not set +# CONFIG_PACKAGE_kmod-touchscreen-cst9220 is not set +# CONFIG_PACKAGE_kmod-touchscreen-focaltech is not set +# CONFIG_PACKAGE_kmod-touchscreen-ft5x is not set +# CONFIG_PACKAGE_kmod-touchscreen-ft6336 is not set +# CONFIG_PACKAGE_kmod-touchscreen-gslx680new is not set +# CONFIG_PACKAGE_kmod-touchscreen-gt82x is not set +# CONFIG_PACKAGE_kmod-touchscreen-tlsc6x is not set + +# +# LED modules +# +# CONFIG_PACKAGE_kmod-leds-gpio is not set +# CONFIG_PACKAGE_kmod-leds-pca963x is not set +# CONFIG_PACKAGE_kmod-ledtrig-default-on is not set +# CONFIG_PACKAGE_kmod-ledtrig-gpio is not set +# CONFIG_PACKAGE_kmod-ledtrig-heartbeat is not set +# CONFIG_PACKAGE_kmod-ledtrig-morse is not set +# CONFIG_PACKAGE_kmod-ledtrig-netdev is not set +# CONFIG_PACKAGE_kmod-ledtrig-oneshot is not set +# CONFIG_PACKAGE_kmod-ledtrig-timer is not set +# CONFIG_PACKAGE_kmod-ledtrig-transient is not set +# CONFIG_PACKAGE_kmod-ledtrig-usbdev is not set + +# +# Libraries +# +# CONFIG_PACKAGE_kmod-lib-cordic is not set +# CONFIG_PACKAGE_kmod-lib-crc-ccitt is not set +# CONFIG_PACKAGE_kmod-lib-crc-itu-t is not set +# CONFIG_PACKAGE_kmod-lib-crc16 is not set +# CONFIG_PACKAGE_kmod-lib-crc32c is not set +# CONFIG_PACKAGE_kmod-lib-crc7 is not set +# CONFIG_PACKAGE_kmod-lib-crc8 is not set +# CONFIG_PACKAGE_kmod-lib-lz4 is not set +# CONFIG_PACKAGE_kmod-lib-lzo is not set +# CONFIG_PACKAGE_kmod-lib-textsearch is not set +# CONFIG_PACKAGE_kmod-lib-zlib is not set + +# +# Native Language Support +# +CONFIG_PACKAGE_kmod-nls-base=y +# CONFIG_PACKAGE_kmod-nls-cp1250 is not set +# CONFIG_PACKAGE_kmod-nls-cp1251 is not set +# CONFIG_PACKAGE_kmod-nls-cp437 is not set +# CONFIG_PACKAGE_kmod-nls-cp775 is not set +# CONFIG_PACKAGE_kmod-nls-cp850 is not set +# CONFIG_PACKAGE_kmod-nls-cp852 is not set +# CONFIG_PACKAGE_kmod-nls-cp862 is not set +# CONFIG_PACKAGE_kmod-nls-cp864 is not set +# CONFIG_PACKAGE_kmod-nls-cp866 is not set +# CONFIG_PACKAGE_kmod-nls-cp932 is not set +# CONFIG_PACKAGE_kmod-nls-iso8859-1 is not set +# CONFIG_PACKAGE_kmod-nls-iso8859-13 is not set +# CONFIG_PACKAGE_kmod-nls-iso8859-15 is not set +# CONFIG_PACKAGE_kmod-nls-iso8859-2 is not set +# CONFIG_PACKAGE_kmod-nls-iso8859-6 is not set +# CONFIG_PACKAGE_kmod-nls-iso8859-8 is not set +# CONFIG_PACKAGE_kmod-nls-koi8r is not set +# CONFIG_PACKAGE_kmod-nls-utf8 is not set + +# +# Netfilter Extensions +# +# CONFIG_PACKAGE_kmod-arptables is not set +# CONFIG_PACKAGE_kmod-ebtables is not set +# CONFIG_PACKAGE_kmod-ipt-account is not set +# CONFIG_PACKAGE_kmod-ipt-chaos is not set +# CONFIG_PACKAGE_kmod-ipt-cluster is not set +# CONFIG_PACKAGE_kmod-ipt-clusterip is not set +# CONFIG_PACKAGE_kmod-ipt-compat-xtables is not set +# CONFIG_PACKAGE_kmod-ipt-condition is not set +# CONFIG_PACKAGE_kmod-ipt-conntrack is not set +# CONFIG_PACKAGE_kmod-ipt-conntrack-extra is not set +# CONFIG_PACKAGE_kmod-ipt-core is not set +# CONFIG_PACKAGE_kmod-ipt-debug is not set +# CONFIG_PACKAGE_kmod-ipt-delude is not set +# CONFIG_PACKAGE_kmod-ipt-dhcpmac is not set +# CONFIG_PACKAGE_kmod-ipt-dnetmap is not set +# CONFIG_PACKAGE_kmod-ipt-extra is not set +# CONFIG_PACKAGE_kmod-ipt-filter is not set +# CONFIG_PACKAGE_kmod-ipt-fuzzy is not set +# CONFIG_PACKAGE_kmod-ipt-geoip is not set +# CONFIG_PACKAGE_kmod-ipt-hashlimit is not set +# CONFIG_PACKAGE_kmod-ipt-iface is not set +# CONFIG_PACKAGE_kmod-ipt-ipmark is not set +# CONFIG_PACKAGE_kmod-ipt-ipopt is not set +# CONFIG_PACKAGE_kmod-ipt-ipp2p is not set +# CONFIG_PACKAGE_kmod-ipt-iprange is not set +# CONFIG_PACKAGE_kmod-ipt-ipsec is not set +# CONFIG_PACKAGE_kmod-ipt-ipset is not set +# CONFIG_PACKAGE_kmod-ipt-ipv4options is not set +# CONFIG_PACKAGE_kmod-ipt-led is not set +# CONFIG_PACKAGE_kmod-ipt-length2 is not set +# CONFIG_PACKAGE_kmod-ipt-logmark is not set +# CONFIG_PACKAGE_kmod-ipt-lscan is not set +# CONFIG_PACKAGE_kmod-ipt-lua is not set +# CONFIG_PACKAGE_kmod-ipt-nat is not set +# CONFIG_PACKAGE_kmod-ipt-nat-extra is not set +# CONFIG_PACKAGE_kmod-ipt-nathelper-rtsp is not set +# CONFIG_PACKAGE_kmod-ipt-nflog is not set +# CONFIG_PACKAGE_kmod-ipt-nfqueue is not set +# CONFIG_PACKAGE_kmod-ipt-psd is not set +# CONFIG_PACKAGE_kmod-ipt-quota2 is not set +# CONFIG_PACKAGE_kmod-ipt-sysrq is not set +# CONFIG_PACKAGE_kmod-ipt-tarpit is not set +# CONFIG_PACKAGE_kmod-ipt-tee is not set +# CONFIG_PACKAGE_kmod-ipt-tproxy is not set +# CONFIG_PACKAGE_kmod-ipt-u32 is not set +# CONFIG_PACKAGE_kmod-ipt-ulog is not set +# CONFIG_PACKAGE_kmod-nf-conntrack is not set +# CONFIG_PACKAGE_kmod-nf-conntrack-netlink is not set +# CONFIG_PACKAGE_kmod-nf-ipt is not set +# CONFIG_PACKAGE_kmod-nf-nat is not set +# CONFIG_PACKAGE_kmod-nf-nathelper is not set +# CONFIG_PACKAGE_kmod-nf-nathelper-extra is not set +# CONFIG_PACKAGE_kmod-nfnetlink is not set +# CONFIG_PACKAGE_kmod-nfnetlink-log is not set +# CONFIG_PACKAGE_kmod-nfnetlink-queue is not set + +# +# Network Devices +# +# CONFIG_PACKAGE_kmod-ifb is not set +# CONFIG_PACKAGE_kmod-siit is not set + +# +# Network Support +# +# CONFIG_PACKAGE_kmod-8021q is not set +# CONFIG_PACKAGE_kmod-appletalk is not set +# CONFIG_PACKAGE_kmod-atm is not set +# CONFIG_PACKAGE_kmod-ax25 is not set +# CONFIG_PACKAGE_kmod-bonding is not set +# CONFIG_PACKAGE_kmod-bridge is not set +# CONFIG_PACKAGE_kmod-capi is not set +# CONFIG_PACKAGE_kmod-dnsresolver is not set +# CONFIG_PACKAGE_kmod-gre is not set +# CONFIG_PACKAGE_kmod-ipip is not set +# CONFIG_PACKAGE_kmod-ipsec is not set +# CONFIG_PACKAGE_kmod-isdn4linux is not set +# CONFIG_PACKAGE_kmod-l2tp is not set +# CONFIG_PACKAGE_kmod-l2tp-eth is not set +# CONFIG_PACKAGE_kmod-l2tp-ip is not set +# CONFIG_PACKAGE_kmod-llc is not set +# CONFIG_PACKAGE_kmod-misdn is not set +# CONFIG_PACKAGE_kmod-mpls is not set +# CONFIG_PACKAGE_kmod-nat46 is not set +# CONFIG_PACKAGE_kmod-netem is not set +# CONFIG_PACKAGE_kmod-pktgen is not set +# CONFIG_PACKAGE_kmod-ppp is not set +# CONFIG_PACKAGE_kmod-sched is not set +# CONFIG_PACKAGE_kmod-sched-connmark is not set +# CONFIG_PACKAGE_kmod-sched-core is not set +# CONFIG_PACKAGE_kmod-sched-esfq is not set +# CONFIG_PACKAGE_kmod-sctp is not set +# CONFIG_PACKAGE_kmod-slip is not set +# CONFIG_PACKAGE_kmod-stp is not set +# CONFIG_PACKAGE_kmod-trelay is not set +# CONFIG_PACKAGE_kmod-tun is not set +# CONFIG_PACKAGE_kmod-udptunnel4 is not set +# CONFIG_PACKAGE_kmod-veth is not set +# CONFIG_PACKAGE_kmod-vxlan is not set + +# +# Other modules +# +# CONFIG_PACKAGE_kmod-audio is not set +# CONFIG_PACKAGE_kmod-button-hotplug is not set +CONFIG_PACKAGE_kmod-fb-disp=y +# CONFIG_PACKAGE_kmod-g2d is not set +# CONFIG_PACKAGE_kmod-gpio-button-hotplug is not set +# CONFIG_PACKAGE_kmod-mmc is not set +# CONFIG_PACKAGE_kmod-mmc-over-gpio is not set +# CONFIG_PACKAGE_kmod-rotary-gpio-custom is not set +# CONFIG_PACKAGE_kmod-rt-media is not set +# CONFIG_PACKAGE_kmod-snd-usb-audio is not set +CONFIG_PACKAGE_kmod-usb=y +# CONFIG_PACKAGE_kmod-usb-disk is not set +# CONFIG_PACKAGE_kmod-usb-uac1 is not set +# CONFIG_PACKAGE_kmod-usb-video-class is not set +# CONFIG_PACKAGE_kmod-uvc is not set + +# +# SPI Support +# +# CONFIG_PACKAGE_kmod-mmc-spi is not set +# CONFIG_PACKAGE_kmod-spi-bitbang is not set +# CONFIG_PACKAGE_kmod-spi-dev is not set +# CONFIG_PACKAGE_kmod-spi-gpio is not set +# CONFIG_PACKAGE_kmod-spi-gpio-custom is not set +# CONFIG_PACKAGE_kmod-spi-gpio-old is not set + +# +# Sound Support +# +# CONFIG_PACKAGE_kmod-sound-core is not set +# CONFIG_PACKAGE_kmod-sound-core-hwdep is not set + +# +# USB Support +# +# CONFIG_PACKAGE_kmod-usb-acm is not set +# CONFIG_PACKAGE_kmod-usb-atm is not set +# CONFIG_PACKAGE_kmod-usb-cm109 is not set +CONFIG_PACKAGE_kmod-usb-core=y +# CONFIG_PACKAGE_kmod-usb-dwc2 is not set +# CONFIG_PACKAGE_kmod-usb-dwc3 is not set +# CONFIG_PACKAGE_kmod-usb-hid is not set +# CONFIG_PACKAGE_kmod-usb-net is not set +# CONFIG_PACKAGE_kmod-usb-ohci is not set +# CONFIG_PACKAGE_kmod-usb-printer is not set +# CONFIG_PACKAGE_kmod-usb-serial is not set +# CONFIG_PACKAGE_kmod-usb-storage is not set +# CONFIG_PACKAGE_kmod-usb-storage-extras is not set +# CONFIG_PACKAGE_kmod-usb-uhci is not set +# CONFIG_PACKAGE_kmod-usb-wdm is not set +# CONFIG_PACKAGE_kmod-usb-yealink is not set +# CONFIG_PACKAGE_kmod-usb2 is not set +# CONFIG_PACKAGE_kmod-usb3 is not set +# CONFIG_PACKAGE_kmod-usbip is not set +# CONFIG_PACKAGE_kmod-usbip-client is not set +# CONFIG_PACKAGE_kmod-usbip-server is not set +# CONFIG_PACKAGE_kmod-usbmon is not set + +# +# Video Support +# +# CONFIG_PACKAGE_kmod-EISE-ISE is not set +# CONFIG_PACKAGE_kmod-backlight-pwm is not set +# CONFIG_PACKAGE_kmod-fb is not set +# CONFIG_PACKAGE_kmod-fb-cfb-copyarea is not set +# CONFIG_PACKAGE_kmod-fb-cfb-fillrect is not set +# CONFIG_PACKAGE_kmod-fb-cfb-imgblt is not set +# CONFIG_PACKAGE_kmod-fb-sys-fops is not set +# CONFIG_PACKAGE_kmod-fbcon is not set +# CONFIG_PACKAGE_kmod-ge8300-km-opencl is not set +# CONFIG_PACKAGE_kmod-video-core is not set +# CONFIG_PACKAGE_kmod-vin-v4l2 is not set + +# +# Virtualization Support +# + +# +# W1 support +# +# CONFIG_PACKAGE_kmod-w1 is not set + +# +# WPAN 802.15.4 Support +# +# CONFIG_PACKAGE_kmod-at86rf230 is not set +# CONFIG_PACKAGE_kmod-cc2520 is not set +# CONFIG_PACKAGE_kmod-fakelb is not set +# CONFIG_PACKAGE_kmod-ieee802154 is not set +# CONFIG_PACKAGE_kmod-ieee802154_6lowpan is not set +# CONFIG_PACKAGE_kmod-mac802154 is not set +# CONFIG_PACKAGE_kmod-mrf24j40 is not set + +# +# Wireless Drivers +# +# CONFIG_PACKAGE_kmod-cfg80211 is not set +# CONFIG_PACKAGE_kmod-esp8089 is not set +# CONFIG_PACKAGE_kmod-net-mrvl8977 is not set +# CONFIG_PACKAGE_kmod-net-qca9377 is not set +# CONFIG_PACKAGE_kmod-net-rtl8188eu is not set +# CONFIG_PACKAGE_kmod-net-rtl8723bs is not set +CONFIG_PACKAGE_kmod-net-xr806=y +# CONFIG_PACKAGE_kmod-net-xr819s is not set +# CONFIG_PACKAGE_kmod-net-xr819s-40M is not set +# CONFIG_PACKAGE_kmod-net-xr829 is not set +# CONFIG_PACKAGE_kmod-net-xr829-40M is not set +# CONFIG_PACKAGE_kmod-sunxi_nna_galcore is not set +# CONFIG_PACKAGE_kmod-sunxi_nna_vip is not set + +# +# Languages +# + +# +# Erlang +# +# CONFIG_PACKAGE_erlang is not set +# CONFIG_PACKAGE_erlang-asn1 is not set +# CONFIG_PACKAGE_erlang-compiler is not set +# CONFIG_PACKAGE_erlang-crypto is not set +# CONFIG_PACKAGE_erlang-hipe is not set +# CONFIG_PACKAGE_erlang-inets is not set +# CONFIG_PACKAGE_erlang-mnesia is not set +# CONFIG_PACKAGE_erlang-runtime-tools is not set +# CONFIG_PACKAGE_erlang-snmp is not set +# CONFIG_PACKAGE_erlang-ssh is not set +# CONFIG_PACKAGE_erlang-ssl is not set +# CONFIG_PACKAGE_erlang-syntax-tools is not set + +# +# Java +# +# CONFIG_PACKAGE_jamvm is not set + +# +# Lua +# +# CONFIG_PACKAGE_dkjson is not set +# CONFIG_PACKAGE_json4lua is not set +# CONFIG_PACKAGE_libiwinfo-lua is not set +# CONFIG_PACKAGE_lpeg is not set +# CONFIG_PACKAGE_lua is not set +# CONFIG_PACKAGE_lua-bencode is not set +# CONFIG_PACKAGE_lua-cjson is not set +# CONFIG_PACKAGE_lua-copas is not set +# CONFIG_PACKAGE_lua-coxpcall is not set +# CONFIG_PACKAGE_lua-lzlib is not set +# CONFIG_PACKAGE_lua-md5 is not set +# CONFIG_PACKAGE_lua-mobdebug is not set +# CONFIG_PACKAGE_lua-mosquitto is not set +# CONFIG_PACKAGE_lua-penlight is not set +# CONFIG_PACKAGE_lua-rings is not set +# CONFIG_PACKAGE_lua-rs232 is not set +# CONFIG_PACKAGE_lua-sha2 is not set +# CONFIG_PACKAGE_lua-wsapi-base is not set +# CONFIG_PACKAGE_lua-wsapi-xavante is not set +# CONFIG_PACKAGE_lua-xavante is not set +# CONFIG_PACKAGE_lua5.3 is not set +# CONFIG_PACKAGE_luabitop is not set +# CONFIG_PACKAGE_luac is not set +# CONFIG_PACKAGE_luac5.3 is not set +# CONFIG_PACKAGE_luaexpat is not set +# CONFIG_PACKAGE_luafilesystem is not set +# CONFIG_PACKAGE_luai2c is not set +# CONFIG_PACKAGE_lualanes is not set +# CONFIG_PACKAGE_luaposix is not set +# CONFIG_PACKAGE_luarocks is not set +# CONFIG_PACKAGE_luasec is not set +# CONFIG_PACKAGE_luasoap is not set +# CONFIG_PACKAGE_luasocket is not set +# CONFIG_PACKAGE_luasql-mysql is not set +# CONFIG_PACKAGE_luasql-pgsql is not set +# CONFIG_PACKAGE_luasql-sqlite3 is not set +# CONFIG_PACKAGE_uuid is not set + +# +# Node.js +# +# CONFIG_PACKAGE_node is not set +# CONFIG_PACKAGE_node-arduino-firmata is not set +# CONFIG_PACKAGE_node-cylon is not set +# CONFIG_PACKAGE_node-cylon-firmata is not set +# CONFIG_PACKAGE_node-cylon-gpio is not set +# CONFIG_PACKAGE_node-cylon-i2c is not set +# CONFIG_PACKAGE_node-hid is not set +# CONFIG_PACKAGE_node-serialport is not set + +# +# PHP +# +# CONFIG_PACKAGE_php5 is not set + +# +# Python +# +# CONFIG_PACKAGE_dbus-python is not set +# CONFIG_PACKAGE_ecdsa is not set +# CONFIG_PACKAGE_micropython is not set +# CONFIG_PACKAGE_micropython-lib is not set +# CONFIG_PACKAGE_paho-mqtt is not set +# CONFIG_PACKAGE_python is not set +# CONFIG_PACKAGE_python-Babel is not set +# CONFIG_PACKAGE_python-Jinja2 is not set +# CONFIG_PACKAGE_python-MarkupSafe is not set +# CONFIG_PACKAGE_python-Pygments is not set +# CONFIG_PACKAGE_python-Sphinx is not set +# CONFIG_PACKAGE_python-alabaster is not set +# CONFIG_PACKAGE_python-attrs is not set +# CONFIG_PACKAGE_python-base is not set +# CONFIG_PACKAGE_python-certifi is not set +# CONFIG_PACKAGE_python-cffi is not set +# CONFIG_PACKAGE_python-chardet is not set +# CONFIG_PACKAGE_python-codecs is not set +# CONFIG_PACKAGE_python-compiler is not set +# CONFIG_PACKAGE_python-crcmod is not set +# CONFIG_PACKAGE_python-crypto is not set +# CONFIG_PACKAGE_python-cryptography is not set +# CONFIG_PACKAGE_python-ctypes is not set +# CONFIG_PACKAGE_python-cython is not set +# CONFIG_PACKAGE_python-dateutil is not set +# CONFIG_PACKAGE_python-db is not set +# CONFIG_PACKAGE_python-decimal is not set +# CONFIG_PACKAGE_python-defusedxml is not set +# CONFIG_PACKAGE_python-dev is not set +# CONFIG_PACKAGE_python-distutils is not set +# CONFIG_PACKAGE_python-dns is not set +# CONFIG_PACKAGE_python-docutils is not set +# CONFIG_PACKAGE_python-egenix-mx-base is not set +# CONFIG_PACKAGE_python-email is not set +# CONFIG_PACKAGE_python-empy is not set +# CONFIG_PACKAGE_python-enum34 is not set +# CONFIG_PACKAGE_python-gdbm is not set +# CONFIG_PACKAGE_python-gmpy is not set +# CONFIG_PACKAGE_python-gmpy2 is not set +# CONFIG_PACKAGE_python-gobject is not set +# CONFIG_PACKAGE_python-idna is not set +# CONFIG_PACKAGE_python-imagesize is not set +# CONFIG_PACKAGE_python-imglib is not set +# CONFIG_PACKAGE_python-ipaddress is not set +# CONFIG_PACKAGE_python-jose is not set +# CONFIG_PACKAGE_python-ldap is not set +# CONFIG_PACKAGE_python-lib2to3 is not set +# CONFIG_PACKAGE_python-libselinux is not set +# CONFIG_PACKAGE_python-light is not set +# CONFIG_PACKAGE_python-logging is not set +# CONFIG_PACKAGE_python-multiprocessing is not set +# CONFIG_PACKAGE_python-mysql is not set +# CONFIG_PACKAGE_python-ncurses is not set +# CONFIG_PACKAGE_python-netifaces is not set +# CONFIG_PACKAGE_python-nose is not set +# CONFIG_PACKAGE_python-numpy is not set +# CONFIG_PACKAGE_python-openssl is not set +# CONFIG_PACKAGE_python-paramiko is not set +# CONFIG_PACKAGE_python-parsley is not set +# CONFIG_PACKAGE_python-pip is not set +# CONFIG_PACKAGE_python-ply is not set +# CONFIG_PACKAGE_python-psycopg2 is not set +# CONFIG_PACKAGE_python-pyasn1 is not set +# CONFIG_PACKAGE_python-pyasn1-modules is not set +# CONFIG_PACKAGE_python-pycparser is not set +# CONFIG_PACKAGE_python-pydoc is not set +# CONFIG_PACKAGE_python-pyopenssl is not set +# CONFIG_PACKAGE_python-pyparsing is not set +# CONFIG_PACKAGE_python-pyptlib is not set +# CONFIG_PACKAGE_python-pyserial is not set +# CONFIG_PACKAGE_python-pytz is not set +# CONFIG_PACKAGE_python-pyyaml is not set +# CONFIG_PACKAGE_python-requests is not set +# CONFIG_PACKAGE_python-sepolgen is not set +# CONFIG_PACKAGE_python-sepolicy is not set +# CONFIG_PACKAGE_python-service-identity is not set +# CONFIG_PACKAGE_python-setuptools is not set +# CONFIG_PACKAGE_python-setuptools_scm is not set +# CONFIG_PACKAGE_python-sip is not set +# CONFIG_PACKAGE_python-six is not set +# CONFIG_PACKAGE_python-snowballstemmer is not set +# CONFIG_PACKAGE_python-sqlite3 is not set +# CONFIG_PACKAGE_python-txsocksx is not set +# CONFIG_PACKAGE_python-unittest is not set +# CONFIG_PACKAGE_python-urllib3 is not set +# CONFIG_PACKAGE_python-xml is not set +# CONFIG_PACKAGE_python-yaml is not set +# CONFIG_PACKAGE_python3 is not set +# CONFIG_PACKAGE_python3-asyncio is not set +# CONFIG_PACKAGE_python3-base is not set +# CONFIG_PACKAGE_python3-bottle is not set +# CONFIG_PACKAGE_python3-codecs is not set +# CONFIG_PACKAGE_python3-ctypes is not set +# CONFIG_PACKAGE_python3-dbm is not set +# CONFIG_PACKAGE_python3-decimal is not set +# CONFIG_PACKAGE_python3-dev is not set +# CONFIG_PACKAGE_python3-distutils is not set +# CONFIG_PACKAGE_python3-email is not set +# CONFIG_PACKAGE_python3-gdbm is not set +# CONFIG_PACKAGE_python3-lib2to3 is not set +# CONFIG_PACKAGE_python3-light is not set +# CONFIG_PACKAGE_python3-logging is not set +# CONFIG_PACKAGE_python3-lzma is not set +# CONFIG_PACKAGE_python3-multiprocessing is not set +# CONFIG_PACKAGE_python3-ncurses is not set +# CONFIG_PACKAGE_python3-openssl is not set +# CONFIG_PACKAGE_python3-pip is not set +# CONFIG_PACKAGE_python3-pydoc is not set +# CONFIG_PACKAGE_python3-setuptools is not set +# CONFIG_PACKAGE_python3-sqlite3 is not set +# CONFIG_PACKAGE_python3-unittest is not set +# CONFIG_PACKAGE_python3-xml is not set +# CONFIG_PACKAGE_simplejson is not set +# CONFIG_PACKAGE_twisted is not set +# CONFIG_PACKAGE_zope-interface is not set + +# +# Ruby +# +# CONFIG_PACKAGE_ruby is not set +# CONFIG_PACKAGE_vala is not set + +# +# Libraries +# + +# +# Compression +# +# CONFIG_PACKAGE_libbz2 is not set +# CONFIG_PACKAGE_liblzma is not set +# CONFIG_PACKAGE_libzstd is not set + +# +# Filesystem +# +# CONFIG_PACKAGE_libattr is not set +# CONFIG_PACKAGE_libext2fs is not set +# CONFIG_PACKAGE_libfuse is not set +# CONFIG_PACKAGE_libsysfs is not set + +# +# Firewall +# +# CONFIG_PACKAGE_libfko is not set +# CONFIG_PACKAGE_libip4tc is not set +# CONFIG_PACKAGE_libip6tc is not set +# CONFIG_PACKAGE_libiptc is not set +# CONFIG_PACKAGE_libxtables is not set + +# +# IoT +# +# CONFIG_PACKAGE_libupm is not set +# CONFIG_PACKAGE_libupm-a110x is not set +# CONFIG_PACKAGE_libupm-ad8232 is not set +# CONFIG_PACKAGE_libupm-adafruitss is not set +# CONFIG_PACKAGE_libupm-adc121c021 is not set +# CONFIG_PACKAGE_libupm-adis16448 is not set +# CONFIG_PACKAGE_libupm-adxl335 is not set +# CONFIG_PACKAGE_libupm-adxl345 is not set +# CONFIG_PACKAGE_libupm-am2315 is not set +# CONFIG_PACKAGE_libupm-apds9002 is not set +# CONFIG_PACKAGE_libupm-at42qt1070 is not set +# CONFIG_PACKAGE_libupm-biss0001 is not set +# CONFIG_PACKAGE_libupm-bmpx8x is not set +# CONFIG_PACKAGE_libupm-buzzer is not set +# CONFIG_PACKAGE_libupm-cjq4435 is not set +# CONFIG_PACKAGE_libupm-ds1307 is not set +# CONFIG_PACKAGE_libupm-ecs1030 is not set +# CONFIG_PACKAGE_libupm-enc03r is not set +# CONFIG_PACKAGE_libupm-flex is not set +# CONFIG_PACKAGE_libupm-gas is not set +# CONFIG_PACKAGE_libupm-gp2y0a is not set +# CONFIG_PACKAGE_libupm-grove is not set +# CONFIG_PACKAGE_libupm-grovecircularled is not set +# CONFIG_PACKAGE_libupm-grovecollision is not set +# CONFIG_PACKAGE_libupm-groveehr is not set +# CONFIG_PACKAGE_libupm-groveeldriver is not set +# CONFIG_PACKAGE_libupm-groveelectromagnet is not set +# CONFIG_PACKAGE_libupm-groveemg is not set +# CONFIG_PACKAGE_libupm-grovegprs is not set +# CONFIG_PACKAGE_libupm-grovegsr is not set +# CONFIG_PACKAGE_libupm-grovelinefinder is not set +# CONFIG_PACKAGE_libupm-grovemd is not set +# CONFIG_PACKAGE_libupm-grovemoisture is not set +# CONFIG_PACKAGE_libupm-groveo2 is not set +# CONFIG_PACKAGE_libupm-grovescam is not set +# CONFIG_PACKAGE_libupm-grovespeaker is not set +# CONFIG_PACKAGE_libupm-grovevdiv is not set +# CONFIG_PACKAGE_libupm-grovewater is not set +# CONFIG_PACKAGE_libupm-grovewfs is not set +# CONFIG_PACKAGE_libupm-guvas12d is not set +# CONFIG_PACKAGE_libupm-h3lis331dl is not set +# CONFIG_PACKAGE_libupm-hcsr04 is not set +# CONFIG_PACKAGE_libupm-hm11 is not set +# CONFIG_PACKAGE_libupm-hmc5883l is not set +# CONFIG_PACKAGE_libupm-hmtrp is not set +# CONFIG_PACKAGE_libupm-hp20x is not set +# CONFIG_PACKAGE_libupm-ht9170 is not set +# CONFIG_PACKAGE_libupm-htu21d is not set +# CONFIG_PACKAGE_libupm-hx711 is not set +# CONFIG_PACKAGE_libupm-i2clcd is not set +# CONFIG_PACKAGE_libupm-ina132 is not set +# CONFIG_PACKAGE_libupm-isd1820 is not set +# CONFIG_PACKAGE_libupm-itg3200 is not set +# CONFIG_PACKAGE_libupm-joystick12 is not set +# CONFIG_PACKAGE_libupm-l298 is not set +# CONFIG_PACKAGE_libupm-ldt0028 is not set +# CONFIG_PACKAGE_libupm-lm35 is not set +# CONFIG_PACKAGE_libupm-lol is not set +# CONFIG_PACKAGE_libupm-loudness is not set +# CONFIG_PACKAGE_libupm-lpd8806 is not set +# CONFIG_PACKAGE_libupm-lsm303 is not set +# CONFIG_PACKAGE_libupm-lsm9ds0 is not set +# CONFIG_PACKAGE_libupm-m24lr64e is not set +# CONFIG_PACKAGE_libupm-max31723 is not set +# CONFIG_PACKAGE_libupm-max31855 is not set +# CONFIG_PACKAGE_libupm-max44000 is not set +# CONFIG_PACKAGE_libupm-max5487 is not set +# CONFIG_PACKAGE_libupm-maxds3231m is not set +# CONFIG_PACKAGE_libupm-maxsonarez is not set +# CONFIG_PACKAGE_libupm-mg811 is not set +# CONFIG_PACKAGE_libupm-mhz16 is not set +# CONFIG_PACKAGE_libupm-mic is not set +# CONFIG_PACKAGE_libupm-mlx90614 is not set +# CONFIG_PACKAGE_libupm-mma7455 is not set +# CONFIG_PACKAGE_libupm-mma7660 is not set +# CONFIG_PACKAGE_libupm-mpl3115a2 is not set +# CONFIG_PACKAGE_libupm-mpr121 is not set +# CONFIG_PACKAGE_libupm-mpu9150 is not set +# CONFIG_PACKAGE_libupm-mq303a is not set +# CONFIG_PACKAGE_libupm-my9221 is not set +# CONFIG_PACKAGE_libupm-nrf24l01 is not set +# CONFIG_PACKAGE_libupm-nrf8001 is not set +# CONFIG_PACKAGE_libupm-nunchuck is not set +# CONFIG_PACKAGE_libupm-otp538u is not set +# CONFIG_PACKAGE_libupm-pn532 is not set +# CONFIG_PACKAGE_libupm-ppd42ns is not set +# CONFIG_PACKAGE_libupm-pulsensor is not set +# CONFIG_PACKAGE_libupm-rfr359f is not set +# CONFIG_PACKAGE_libupm-rgbringcoder is not set +# CONFIG_PACKAGE_libupm-rotaryencoder is not set +# CONFIG_PACKAGE_libupm-rpr220 is not set +# CONFIG_PACKAGE_libupm-servo is not set +# CONFIG_PACKAGE_libupm-si114x is not set +# CONFIG_PACKAGE_libupm-sm130 is not set +# CONFIG_PACKAGE_libupm-st7735 is not set +# CONFIG_PACKAGE_libupm-stepmotor is not set +# CONFIG_PACKAGE_libupm-sx6119 is not set +# CONFIG_PACKAGE_libupm-ta12200 is not set +# CONFIG_PACKAGE_libupm-tcs3414cs is not set +# CONFIG_PACKAGE_libupm-th02 is not set +# CONFIG_PACKAGE_libupm-tm1637 is not set +# CONFIG_PACKAGE_libupm-tsl2561 is not set +# CONFIG_PACKAGE_libupm-ttp223 is not set +# CONFIG_PACKAGE_libupm-ublox6 is not set +# CONFIG_PACKAGE_libupm-uln200xa is not set +# CONFIG_PACKAGE_libupm-waterlevel is not set +# CONFIG_PACKAGE_libupm-wheelencoder is not set +# CONFIG_PACKAGE_libupm-wt5001 is not set +# CONFIG_PACKAGE_libupm-yg1006 is not set +# CONFIG_PACKAGE_libupm-zfm20 is not set + +# +# Languages +# +# CONFIG_PACKAGE_libyaml is not set + +# +# SSL +# +# CONFIG_PACKAGE_libcyassl is not set +# CONFIG_PACKAGE_libgnutls is not set +# CONFIG_PACKAGE_libmbedtls is not set +# CONFIG_PACKAGE_libnss is not set +CONFIG_PACKAGE_libopenssl=y +CONFIG_OPENSSL_WITH_EC=y +# CONFIG_OPENSSL_WITH_EC2M is not set +# CONFIG_OPENSSL_WITH_DTLS is not set +# CONFIG_OPENSSL_WITH_COMPRESSION is not set +CONFIG_OPENSSL_WITH_PSK=y +CONFIG_OPENSSL_WITH_SRP=y +CONFIG_OPENSSL_WITH_DEPRECATED=y +# CONFIG_OPENSSL_OPTIMIZE_SPEED is not set +CONFIG_OPENSSL_WITH_ASM=y +# CONFIG_OPENSSL_OTHER_OPTIONS is not set +CONFIG_OPENSSL_WITH_RSA=y +CONFIG_OPENSSL_WITH_DES=y +# CONFIG_OPENSSL_ENGINE is not set +# CONFIG_OPENSSL_ENGINE_CRYPTO is not set +# CONFIG_OPENSSL_LEAST_ALG is not set +CONFIG_OPENSSL_COMPAT_API="1.1.0" +# CONFIG_PACKAGE_libpolarssl is not set + +# +# Sound +# +# CONFIG_PACKAGE_liblo is not set + +# +# database +# +# CONFIG_PACKAGE_libpq is not set +# CONFIG_PACKAGE_libsqlite3 is not set + +# +# gnome +# +# CONFIG_PACKAGE_glib-networking is not set +# CONFIG_PACKAGE_glib2 is not set +# CONFIG_PACKAGE_gmime is not set +# CONFIG_PACKAGE_libsoup is not set +# CONFIG_PACKAGE_totem-pl-parser is not set +# CONFIG_PACKAGE_DBoW2 is not set +# CONFIG_PACKAGE_OpenBLAS is not set +# CONFIG_PACKAGE_SQLiteCpp is not set +# CONFIG_PACKAGE_abseil-cpp is not set +# CONFIG_PACKAGE_af-alg is not set +# CONFIG_PACKAGE_alsa-lib is not set +# CONFIG_PACKAGE_alsa-plugins is not set +# CONFIG_PACKAGE_argp-standalone is not set +# CONFIG_PACKAGE_bluez-libs is not set +# CONFIG_PACKAGE_boost is not set +# CONFIG_PACKAGE_breakpad-libs is not set +# CONFIG_PACKAGE_bullet is not set +# CONFIG_PACKAGE_cJSON is not set +# CONFIG_PACKAGE_civetweb is not set +# CONFIG_PACKAGE_eigen is not set +# CONFIG_PACKAGE_ell is not set +# CONFIG_PACKAGE_enchant is not set +# CONFIG_PACKAGE_flann is not set +# CONFIG_PACKAGE_gflags is not set +# CONFIG_PACKAGE_glog is not set +# CONFIG_PACKAGE_gperftools is not set +# CONFIG_PACKAGE_icu is not set +# CONFIG_PACKAGE_libao is not set +# CONFIG_PACKAGE_libapr is not set +# CONFIG_PACKAGE_libaprutil is not set +# CONFIG_PACKAGE_libatomic_ops is not set +# CONFIG_PACKAGE_libaudit is not set +# CONFIG_PACKAGE_libavahi-client is not set +# CONFIG_PACKAGE_libavahi-compat-libdnssd is not set +# CONFIG_PACKAGE_libavahi-dbus-support is not set +# CONFIG_PACKAGE_libavahi-nodbus-support is not set +# CONFIG_PACKAGE_libawrpaf is not set +# CONFIG_PACKAGE_libb64 is not set +# CONFIG_PACKAGE_libbfd is not set +# CONFIG_PACKAGE_libblkid is not set +# CONFIG_PACKAGE_libblobmsg-json is not set +# CONFIG_PACKAGE_libcap is not set +# CONFIG_PACKAGE_libcap-ng is not set +# CONFIG_PACKAGE_libcares is not set +# CONFIG_PACKAGE_libcharset is not set +CONFIG_PACKAGE_libconfig=y +# CONFIG_PACKAGE_libcroco is not set +# CONFIG_PACKAGE_libcurl is not set +# CONFIG_PACKAGE_libdaemon is not set +# CONFIG_PACKAGE_libdb47 is not set +# CONFIG_PACKAGE_libdb47xx is not set +# CONFIG_PACKAGE_libelf1 is not set +# CONFIG_PACKAGE_libdbus is not set +# CONFIG_PACKAGE_libdevmapper is not set +# CONFIG_PACKAGE_libev is not set +# CONFIG_PACKAGE_libevdev is not set +# CONFIG_PACKAGE_libevent2 is not set +# CONFIG_PACKAGE_libevent2-core is not set +# CONFIG_PACKAGE_libevent2-extra is not set +# CONFIG_PACKAGE_libevent2-openssl is not set +# CONFIG_PACKAGE_libevent2-pthreads is not set +# CONFIG_PACKAGE_libeventlog is not set +# CONFIG_PACKAGE_libexif is not set +# CONFIG_PACKAGE_libexpat is not set +# CONFIG_PACKAGE_libexslt is not set +# CONFIG_PACKAGE_libffi is not set +# CONFIG_PACKAGE_libflac is not set +# CONFIG_PACKAGE_libfreetype is not set +# CONFIG_PACKAGE_libfribidi is not set +# CONFIG_PACKAGE_libgcrypt is not set +# CONFIG_PACKAGE_libgd is not set +# CONFIG_PACKAGE_libgdbm is not set +# CONFIG_PACKAGE_libgee is not set +# CONFIG_PACKAGE_libgmp is not set +# CONFIG_PACKAGE_libgpg-error is not set +# CONFIG_PACKAGE_libgps is not set +# CONFIG_PACKAGE_libhttp-parser is not set +# CONFIG_PACKAGE_libical is not set +# CONFIG_PACKAGE_libiconv is not set +# CONFIG_PACKAGE_libiconv-full is not set +# CONFIG_PACKAGE_libid3tag is not set +# CONFIG_PACKAGE_libinput is not set +# CONFIG_PACKAGE_libintl is not set +# CONFIG_PACKAGE_libintl-full is not set +# CONFIG_PACKAGE_libiw is not set +# CONFIG_PACKAGE_libiwinfo is not set +# CONFIG_PACKAGE_libjansson is not set +# CONFIG_PACKAGE_libjson-c is not set +# CONFIG_PACKAGE_libkmod is not set +# CONFIG_PACKAGE_libltdl is not set +# CONFIG_PACKAGE_liblua is not set +# CONFIG_PACKAGE_liblua5.3 is not set +# CONFIG_PACKAGE_liblz4 is not set +# CONFIG_PACKAGE_liblzo is not set +# CONFIG_PACKAGE_libmad is not set +# CONFIG_PACKAGE_libmcrypt is not set +# CONFIG_PACKAGE_libmicrohttpd is not set +# CONFIG_PACKAGE_libmnl is not set +# CONFIG_PACKAGE_libmodbus is not set +# CONFIG_PACKAGE_libmosquitto is not set +# CONFIG_PACKAGE_libmosquitto-nossl is not set +# CONFIG_PACKAGE_libmosquittopp is not set +# CONFIG_PACKAGE_libmount is not set +# CONFIG_PACKAGE_libmraa is not set +# CONFIG_PACKAGE_libmysqlclient is not set +# CONFIG_PACKAGE_libmysqlclient-r is not set +# CONFIG_PACKAGE_libncurses is not set +# CONFIG_PACKAGE_libncursesw is not set +# CONFIG_PACKAGE_libnetfilter-conntrack is not set +# CONFIG_PACKAGE_libnetfilter-cthelper is not set +# CONFIG_PACKAGE_libnetfilter-cttimeout is not set +# CONFIG_PACKAGE_libnetfilter-log is not set +# CONFIG_PACKAGE_libnetfilter-queue is not set +# CONFIG_PACKAGE_libnetsnmp is not set +# CONFIG_PACKAGE_libnettle is not set +# CONFIG_PACKAGE_libnfnetlink is not set +# CONFIG_PACKAGE_libnftnl is not set +# CONFIG_PACKAGE_libnghttp2 is not set +# CONFIG_PACKAGE_libnl is not set +# CONFIG_PACKAGE_libnl-core is not set +# CONFIG_PACKAGE_libnl-genl is not set +# CONFIG_PACKAGE_libnl-nf is not set +# CONFIG_PACKAGE_libnl-route is not set +CONFIG_PACKAGE_libnl-tiny=y +# CONFIG_PACKAGE_libogg is not set +# CONFIG_PACKAGE_liboil is not set +# CONFIG_PACKAGE_libopcodes is not set +# CONFIG_PACKAGE_libopenldap is not set +# CONFIG_PACKAGE_liboping is not set +# CONFIG_PACKAGE_libopus is not set +# CONFIG_PACKAGE_libpam is not set +# CONFIG_PACKAGE_libpcap is not set +# CONFIG_PACKAGE_libpcre is not set +# CONFIG_PACKAGE_libpcre16 is not set +# CONFIG_PACKAGE_libpcrecpp is not set +# CONFIG_PACKAGE_libpopt is not set +# CONFIG_PACKAGE_libprotobuf-c is not set +# CONFIG_PACKAGE_libqrencode is not set +# CONFIG_PACKAGE_libradcli is not set +# CONFIG_PACKAGE_libreadline is not set +# CONFIG_PACKAGE_libroxml is not set +# CONFIG_PACKAGE_librpc is not set +# CONFIG_PACKAGE_librrd1 is not set +# CONFIG_PACKAGE_librsync is not set +# CONFIG_PACKAGE_librtlsdr is not set +# CONFIG_PACKAGE_libruby is not set +# CONFIG_PACKAGE_libsamplerate is not set +# CONFIG_PACKAGE_libsasl2 is not set +# CONFIG_PACKAGE_libscenemanager is not set +# CONFIG_PACKAGE_libseccomp is not set +# CONFIG_PACKAGE_libsecret is not set +# CONFIG_PACKAGE_libselinux is not set +# CONFIG_PACKAGE_libselinux-utils is not set +# CONFIG_PACKAGE_libsemanage is not set +# CONFIG_PACKAGE_libsensors is not set +# CONFIG_PACKAGE_libsepol is not set +# CONFIG_PACKAGE_libsmartcols is not set +# CONFIG_PACKAGE_libsndfile is not set +# CONFIG_PACKAGE_libsocket_db is not set +# CONFIG_PACKAGE_libsocks is not set +# CONFIG_PACKAGE_libsodium is not set +# CONFIG_PACKAGE_libsoxr is not set +# CONFIG_PACKAGE_libspeex is not set +# CONFIG_PACKAGE_libspeexdsp is not set +# CONFIG_PACKAGE_libssh is not set +# CONFIG_PACKAGE_libtalloc is not set +# CONFIG_PACKAGE_libtasn1 is not set +# CONFIG_PACKAGE_libtheora is not set +# CONFIG_PACKAGE_libtinyxml is not set +# CONFIG_PACKAGE_libubox is not set +# CONFIG_PACKAGE_libubox-lua is not set +# CONFIG_PACKAGE_libubus is not set +# CONFIG_PACKAGE_libubus-lua is not set +# CONFIG_PACKAGE_libuci is not set +# CONFIG_PACKAGE_libuci-lua is not set +# CONFIG_PACKAGE_libuclient is not set +# CONFIG_PACKAGE_libugpio is not set +# CONFIG_PACKAGE_libunwind is not set +# CONFIG_PACKAGE_libusb-1.0 is not set +# CONFIG_PACKAGE_libusb-compat is not set +# CONFIG_PACKAGE_libustream-cyassl is not set +# CONFIG_PACKAGE_libustream-mbedtls is not set +# CONFIG_PACKAGE_libustream-openssl is not set +# CONFIG_PACKAGE_libuuid is not set +# CONFIG_PACKAGE_libv4l is not set +# CONFIG_PACKAGE_libvorbis is not set +# CONFIG_PACKAGE_libvorbisidec is not set +# CONFIG_PACKAGE_libvpx is not set +# CONFIG_PACKAGE_libwebsockets-cyassl is not set +# CONFIG_PACKAGE_libwebsockets-openssl is not set +# CONFIG_PACKAGE_libxkbcommon is not set +# CONFIG_PACKAGE_libxml2 is not set +# CONFIG_PACKAGE_libxslt is not set +# CONFIG_PACKAGE_libzmq-curve is not set +# CONFIG_PACKAGE_libzmq-nc is not set +# CONFIG_PACKAGE_linux-atm is not set +# CONFIG_PACKAGE_lz4 is not set +# CONFIG_PACKAGE_mtdev is not set +# CONFIG_PACKAGE_musl-fts is not set +# CONFIG_PACKAGE_nspr is not set +# CONFIG_PACKAGE_opencv is not set +# CONFIG_PACKAGE_p11-kit is not set +# CONFIG_PACKAGE_pcl is not set +# CONFIG_PACKAGE_poco is not set +# CONFIG_PACKAGE_portaudio is not set +# CONFIG_PACKAGE_protobuf is not set +# CONFIG_PACKAGE_qhull is not set +# CONFIG_PACKAGE_rapidjson is not set +# CONFIG_PACKAGE_sbc is not set +# CONFIG_PACKAGE_tbb is not set +# CONFIG_PACKAGE_tcmalloc is not set +# CONFIG_PACKAGE_tcmalloc-minimal is not set +# CONFIG_PACKAGE_terminfo is not set +# CONFIG_PACKAGE_tinyalsa-lib is not set +# CONFIG_PACKAGE_tinyxml2 is not set +# CONFIG_PACKAGE_tslib is not set +CONFIG_PACKAGE_uclibcxx=y +# CONFIG_PACKAGE_uriparser is not set +# CONFIG_PACKAGE_uvoice is not set +# CONFIG_PACKAGE_x264 is not set +# CONFIG_PACKAGE_xkeyboard-config is not set +# CONFIG_PACKAGE_yaml-cpp is not set +CONFIG_PACKAGE_zlib=y + +# +# LuCI +# + +# +# 1. Collections +# +# CONFIG_PACKAGE_luci is not set +# CONFIG_PACKAGE_luci-ssl is not set + +# +# 2. Modules +# +# CONFIG_PACKAGE_luci-base is not set +# CONFIG_LUCI_SRCDIET is not set + +# +# Translations +# +# CONFIG_LUCI_LANG_uk is not set +# CONFIG_LUCI_LANG_hu is not set +# CONFIG_LUCI_LANG_pt is not set +# CONFIG_LUCI_LANG_ro is not set +# CONFIG_LUCI_LANG_en is not set +# CONFIG_LUCI_LANG_el is not set +# CONFIG_LUCI_LANG_sk is not set +# CONFIG_LUCI_LANG_ru is not set +# CONFIG_LUCI_LANG_vi is not set +# CONFIG_LUCI_LANG_de is not set +# CONFIG_LUCI_LANG_no is not set +# CONFIG_LUCI_LANG_ms is not set +# CONFIG_LUCI_LANG_pl is not set +# CONFIG_LUCI_LANG_zh-cn is not set +# CONFIG_LUCI_LANG_he is not set +# CONFIG_LUCI_LANG_zh-tw is not set +# CONFIG_LUCI_LANG_tr is not set +# CONFIG_LUCI_LANG_sv is not set +# CONFIG_LUCI_LANG_ja is not set +# CONFIG_LUCI_LANG_pt-br is not set +# CONFIG_LUCI_LANG_ca is not set +# CONFIG_LUCI_LANG_es is not set +# CONFIG_LUCI_LANG_cs is not set +# CONFIG_LUCI_LANG_fr is not set +# CONFIG_LUCI_LANG_it is not set +# CONFIG_PACKAGE_luci-mod-admin-full is not set +# CONFIG_PACKAGE_luci-mod-dongle is not set +# CONFIG_PACKAGE_luci-mod-failsafe is not set +# CONFIG_PACKAGE_luci-mod-freifunk is not set +# CONFIG_PACKAGE_luci-mod-rpc is not set + +# +# 3. Applications +# +# CONFIG_PACKAGE_luci-app-adblock is not set +# CONFIG_PACKAGE_luci-app-ahcp is not set +# CONFIG_PACKAGE_luci-app-asterisk is not set +# CONFIG_PACKAGE_luci-app-bird4 is not set +# CONFIG_PACKAGE_luci-app-bird6 is not set +# CONFIG_PACKAGE_luci-app-commands is not set +# CONFIG_PACKAGE_luci-app-ddns is not set +# CONFIG_PACKAGE_luci-app-diag-core is not set +# CONFIG_PACKAGE_luci-app-dump1090 is not set +# CONFIG_PACKAGE_luci-app-firewall is not set +# CONFIG_PACKAGE_luci-app-freifunk-diagnostics is not set +# CONFIG_PACKAGE_luci-app-freifunk-policyrouting is not set +# CONFIG_PACKAGE_luci-app-freifunk-widgets is not set +# CONFIG_PACKAGE_luci-app-fwknopd is not set +# CONFIG_PACKAGE_luci-app-hd-idle is not set +# CONFIG_PACKAGE_luci-app-hnet is not set +# CONFIG_PACKAGE_luci-app-meshwizard is not set +# CONFIG_PACKAGE_luci-app-minidlna is not set +# CONFIG_PACKAGE_luci-app-mjpg-streamer is not set +# CONFIG_PACKAGE_luci-app-mmc-over-gpio is not set +# CONFIG_PACKAGE_luci-app-ntpc is not set +# CONFIG_PACKAGE_luci-app-ocserv is not set +# CONFIG_PACKAGE_luci-app-olsr is not set +# CONFIG_PACKAGE_luci-app-olsr-services is not set +# CONFIG_PACKAGE_luci-app-olsr-viz is not set +# CONFIG_PACKAGE_luci-app-openvpn is not set +# CONFIG_PACKAGE_luci-app-p910nd is not set +# CONFIG_PACKAGE_luci-app-pbx is not set +# CONFIG_PACKAGE_luci-app-pbx-voicemail is not set +# CONFIG_PACKAGE_luci-app-polipo is not set +# CONFIG_PACKAGE_luci-app-privoxy is not set +# CONFIG_PACKAGE_luci-app-qos is not set +# CONFIG_PACKAGE_luci-app-radicale is not set +# CONFIG_PACKAGE_luci-app-samba is not set +# CONFIG_PACKAGE_luci-app-shadowsocks-libev is not set +# CONFIG_PACKAGE_luci-app-shairplay is not set +# CONFIG_PACKAGE_luci-app-shairport is not set +# CONFIG_PACKAGE_luci-app-siitwizard is not set +# CONFIG_PACKAGE_luci-app-statistics is not set +# CONFIG_PACKAGE_luci-app-tinyproxy is not set +# CONFIG_PACKAGE_luci-app-transmission is not set +# CONFIG_PACKAGE_luci-app-udpxy is not set +# CONFIG_PACKAGE_luci-app-uhttpd is not set +# CONFIG_PACKAGE_luci-app-upnp is not set +# CONFIG_PACKAGE_luci-app-vnstat is not set +# CONFIG_PACKAGE_luci-app-watchcat is not set +# CONFIG_PACKAGE_luci-app-wol is not set +# CONFIG_PACKAGE_luci-app-wshaper is not set + +# +# 4. Themes +# +# CONFIG_PACKAGE_luci-theme-bootstrap is not set +# CONFIG_PACKAGE_luci-theme-freifunk-generic is not set +# CONFIG_PACKAGE_luci-theme-material is not set +# CONFIG_PACKAGE_luci-theme-openwrt is not set + +# +# 5. Protocols +# +# CONFIG_PACKAGE_luci-proto-3g is not set +# CONFIG_PACKAGE_luci-proto-ipv6 is not set +# CONFIG_PACKAGE_luci-proto-openconnect is not set +# CONFIG_PACKAGE_luci-proto-ppp is not set +# CONFIG_PACKAGE_luci-proto-relay is not set +# CONFIG_PACKAGE_luci-proto-vpnc is not set + +# +# 6. Libraries +# +# CONFIG_PACKAGE_luci-lib-httpclient is not set +# CONFIG_PACKAGE_luci-lib-ip is not set +# CONFIG_PACKAGE_luci-lib-json is not set +# CONFIG_PACKAGE_luci-lib-jsonc is not set +# CONFIG_PACKAGE_luci-lib-luaneightbl is not set +# CONFIG_PACKAGE_luci-lib-nixio is not set +# CONFIG_PACKAGE_luci-lib-px5g is not set + +# +# 9. Freifunk +# +# CONFIG_PACKAGE_freifunk-common is not set +# CONFIG_PACKAGE_freifunk-firewall is not set +# CONFIG_PACKAGE_freifunk-policyrouting is not set +# CONFIG_PACKAGE_meshwizard is not set + +# +# Multimedia +# + +# +# PulseAudio +# +# CONFIG_PACKAGE_pulseaudio-daemon is not set +# CONFIG_PACKAGE_pulseaudio-profiles is not set +# CONFIG_PACKAGE_pulseaudio-utils is not set +# CONFIG_PACKAGE_bluez-alsa is not set +# CONFIG_PACKAGE_bluez-alsa-3.1 is not set +# CONFIG_PACKAGE_fdk-aac is not set +# CONFIG_PACKAGE_gst-omx is not set +# CONFIG_PACKAGE_gst1-libav is not set +# CONFIG_PACKAGE_gstreamer1-libs is not set +# CONFIG_PACKAGE_gstreamer1-plugins-aw is not set +# CONFIG_PACKAGE_gstreamer1-plugins-bad is not set +# CONFIG_PACKAGE_gstreamer1-plugins-base is not set +# CONFIG_PACKAGE_gstreamer1-plugins-good is not set +# CONFIG_PACKAGE_gstreamer1-plugins-ugly is not set +# CONFIG_PACKAGE_gstreamer1-utils is not set +# CONFIG_PACKAGE_live is not set +# CONFIG_PACKAGE_mjpg-streamer is not set +# CONFIG_PACKAGE_sdl is not set + +# +# Network +# + +# +# Captive Portals +# + +# +# File Transfer +# +# CONFIG_PACKAGE_curl is not set +# CONFIG_PACKAGE_wget is not set +# CONFIG_PACKAGE_wget-nossl is not set + +# +# Firewall +# +# CONFIG_PACKAGE_arptables is not set +# CONFIG_PACKAGE_conntrack is not set +# CONFIG_PACKAGE_conntrackd is not set +# CONFIG_PACKAGE_ebtables is not set +# CONFIG_PACKAGE_fwknop is not set +# CONFIG_PACKAGE_fwknopd is not set +# CONFIG_PACKAGE_iptables is not set +# CONFIG_PACKAGE_miniupnpd is not set + +# +# IP Addresses and Names +# +# CONFIG_PACKAGE_avahi-autoipd is not set +# CONFIG_PACKAGE_avahi-dbus-daemon is not set +# CONFIG_PACKAGE_avahi-nodbus-daemon is not set +# CONFIG_PACKAGE_ddns-scripts is not set +# CONFIG_PACKAGE_mdns-utils is not set +# CONFIG_PACKAGE_mdnsd is not set +# CONFIG_PACKAGE_mdnsresponder is not set +# CONFIG_PACKAGE_ohybridproxy is not set +# CONFIG_PACKAGE_zonestitcher is not set + +# +# Linux ATM tools +# +# CONFIG_PACKAGE_atm-aread is not set +# CONFIG_PACKAGE_atm-atmaddr is not set +# CONFIG_PACKAGE_atm-atmdiag is not set +# CONFIG_PACKAGE_atm-atmdump is not set +# CONFIG_PACKAGE_atm-atmloop is not set +# CONFIG_PACKAGE_atm-atmsigd is not set +# CONFIG_PACKAGE_atm-atmswitch is not set +# CONFIG_PACKAGE_atm-atmtcp is not set +# CONFIG_PACKAGE_atm-awrite is not set +# CONFIG_PACKAGE_atm-bus is not set +# CONFIG_PACKAGE_atm-debug-tools is not set +# CONFIG_PACKAGE_atm-diagnostics is not set +# CONFIG_PACKAGE_atm-esi is not set +# CONFIG_PACKAGE_atm-ilmid is not set +# CONFIG_PACKAGE_atm-ilmidiag is not set +# CONFIG_PACKAGE_atm-lecs is not set +# CONFIG_PACKAGE_atm-les is not set +# CONFIG_PACKAGE_atm-mpcd is not set +# CONFIG_PACKAGE_atm-saaldump is not set +# CONFIG_PACKAGE_atm-sonetdiag is not set +# CONFIG_PACKAGE_atm-svc_recv is not set +# CONFIG_PACKAGE_atm-svc_send is not set +# CONFIG_PACKAGE_atm-tools is not set +# CONFIG_PACKAGE_atm-ttcp_atm is not set +# CONFIG_PACKAGE_atm-zeppelin is not set +# CONFIG_PACKAGE_br2684ctl is not set + +# +# OLSR.org network framework +# +# CONFIG_PACKAGE_oonf-dlep-proxy is not set +# CONFIG_PACKAGE_oonf-dlep-radio is not set +# CONFIG_PACKAGE_oonf-init-scripts is not set +# CONFIG_PACKAGE_oonf-olsrd2 is not set + +# +# Printing +# +# CONFIG_PACKAGE_p910nd is not set + +# +# Routing and Redirection +# +# CONFIG_PACKAGE_babel-pinger is not set +# CONFIG_PACKAGE_babeld is not set +# CONFIG_PACKAGE_bird4 is not set +# CONFIG_PACKAGE_bird4-uci is not set +# CONFIG_PACKAGE_bird6 is not set +# CONFIG_PACKAGE_bird6-uci is not set +# CONFIG_PACKAGE_birdc4 is not set +# CONFIG_PACKAGE_birdc6 is not set +# CONFIG_PACKAGE_birdcl4 is not set +# CONFIG_PACKAGE_birdcl6 is not set +# CONFIG_PACKAGE_bmx7 is not set +# CONFIG_PACKAGE_cjdns-tests is not set +# CONFIG_PACKAGE_genl is not set +# CONFIG_PACKAGE_igmpproxy is not set +# CONFIG_PACKAGE_ip is not set +# CONFIG_PACKAGE_ip-bridge is not set +# CONFIG_PACKAGE_ip-full is not set +# CONFIG_PACKAGE_lldpd is not set +# CONFIG_PACKAGE_mcproxy is not set +# CONFIG_PACKAGE_olsrd is not set +# CONFIG_PACKAGE_quagga is not set +# CONFIG_PACKAGE_relayd is not set +# CONFIG_PACKAGE_smcroute is not set +# CONFIG_PACKAGE_ss is not set +# CONFIG_PACKAGE_tc is not set + +# +# SSH +# +# CONFIG_PACKAGE_openssh-client is not set +# CONFIG_PACKAGE_openssh-client-utils is not set +# CONFIG_PACKAGE_openssh-keygen is not set +# CONFIG_PACKAGE_openssh-moduli is not set +# CONFIG_PACKAGE_openssh-server is not set +# CONFIG_PACKAGE_openssh-server-pam is not set +# CONFIG_PACKAGE_openssh-sftp-client is not set +# CONFIG_PACKAGE_openssh-sftp-server is not set + +# +# THC-IPv6 attack and analyzing toolkit +# +# CONFIG_PACKAGE_thc-ipv6-address6 is not set +# CONFIG_PACKAGE_thc-ipv6-alive6 is not set +# CONFIG_PACKAGE_thc-ipv6-covert-send6 is not set +# CONFIG_PACKAGE_thc-ipv6-covert-send6d is not set +# CONFIG_PACKAGE_thc-ipv6-denial6 is not set +# CONFIG_PACKAGE_thc-ipv6-detect-new-ip6 is not set +# CONFIG_PACKAGE_thc-ipv6-detect-sniffer6 is not set +# CONFIG_PACKAGE_thc-ipv6-dnsdict6 is not set +# CONFIG_PACKAGE_thc-ipv6-dnsrevenum6 is not set +# CONFIG_PACKAGE_thc-ipv6-dos-new-ip6 is not set +# CONFIG_PACKAGE_thc-ipv6-dump-router6 is not set +# CONFIG_PACKAGE_thc-ipv6-exploit6 is not set +# CONFIG_PACKAGE_thc-ipv6-fake-advertise6 is not set +# CONFIG_PACKAGE_thc-ipv6-fake-dhcps6 is not set +# CONFIG_PACKAGE_thc-ipv6-fake-dns6d is not set +# CONFIG_PACKAGE_thc-ipv6-fake-dnsupdate6 is not set +# CONFIG_PACKAGE_thc-ipv6-fake-mipv6 is not set +# CONFIG_PACKAGE_thc-ipv6-fake-mld26 is not set +# CONFIG_PACKAGE_thc-ipv6-fake-mld6 is not set +# CONFIG_PACKAGE_thc-ipv6-fake-mldrouter6 is not set +# CONFIG_PACKAGE_thc-ipv6-fake-router26 is not set +# CONFIG_PACKAGE_thc-ipv6-fake-router6 is not set +# CONFIG_PACKAGE_thc-ipv6-fake-solicitate6 is not set +# CONFIG_PACKAGE_thc-ipv6-flood-advertise6 is not set +# CONFIG_PACKAGE_thc-ipv6-flood-dhcpc6 is not set +# CONFIG_PACKAGE_thc-ipv6-flood-mld26 is not set +# CONFIG_PACKAGE_thc-ipv6-flood-mld6 is not set +# CONFIG_PACKAGE_thc-ipv6-flood-mldrouter6 is not set +# CONFIG_PACKAGE_thc-ipv6-flood-router26 is not set +# CONFIG_PACKAGE_thc-ipv6-flood-router6 is not set +# CONFIG_PACKAGE_thc-ipv6-flood-solicitate6 is not set +# CONFIG_PACKAGE_thc-ipv6-fragmentation6 is not set +# CONFIG_PACKAGE_thc-ipv6-fuzz-dhcpc6 is not set +# CONFIG_PACKAGE_thc-ipv6-fuzz-dhcps6 is not set +# CONFIG_PACKAGE_thc-ipv6-fuzz-ip6 is not set +# CONFIG_PACKAGE_thc-ipv6-implementation6 is not set +# CONFIG_PACKAGE_thc-ipv6-implementation6d is not set +# CONFIG_PACKAGE_thc-ipv6-inverse-lookup6 is not set +# CONFIG_PACKAGE_thc-ipv6-kill-router6 is not set +# CONFIG_PACKAGE_thc-ipv6-ndpexhaust6 is not set +# CONFIG_PACKAGE_thc-ipv6-node-query6 is not set +# CONFIG_PACKAGE_thc-ipv6-parasite6 is not set +# CONFIG_PACKAGE_thc-ipv6-passive-discovery6 is not set +# CONFIG_PACKAGE_thc-ipv6-randicmp6 is not set +# CONFIG_PACKAGE_thc-ipv6-redir6 is not set +# CONFIG_PACKAGE_thc-ipv6-rsmurf6 is not set +# CONFIG_PACKAGE_thc-ipv6-sendpees6 is not set +# CONFIG_PACKAGE_thc-ipv6-sendpeesmp6 is not set +# CONFIG_PACKAGE_thc-ipv6-smurf6 is not set +# CONFIG_PACKAGE_thc-ipv6-thcping6 is not set +# CONFIG_PACKAGE_thc-ipv6-toobig6 is not set +# CONFIG_PACKAGE_thc-ipv6-trace6 is not set + +# +# Time Synchronization +# +# CONFIG_PACKAGE_ntp-keygen is not set +# CONFIG_PACKAGE_ntp-utils is not set +# CONFIG_PACKAGE_ntpclient is not set +# CONFIG_PACKAGE_ntpd is not set +# CONFIG_PACKAGE_ntpdate is not set + +# +# VPN +# +# CONFIG_PACKAGE_ocserv is not set +# CONFIG_PACKAGE_openconnect is not set +# CONFIG_PACKAGE_openvpn-easy-rsa is not set +# CONFIG_PACKAGE_openvpn-nossl is not set +# CONFIG_PACKAGE_openvpn-openssl is not set +# CONFIG_PACKAGE_openvpn-polarssl is not set +# CONFIG_PACKAGE_vpnc is not set +# CONFIG_PACKAGE_vpnc-scripts is not set + +# +# Web Servers/Proxies +# +# CONFIG_PACKAGE_apache is not set +# CONFIG_PACKAGE_polipo is not set +# CONFIG_PACKAGE_privoxy is not set +# CONFIG_PACKAGE_sockd is not set +# CONFIG_PACKAGE_socksify is not set +# CONFIG_PACKAGE_tinyproxy is not set +# CONFIG_PACKAGE_uhttpd is not set +# CONFIG_PACKAGE_uhttpd_debug is not set + +# +# WirelessAPD +# +# CONFIG_PACKAGE_eapol-test-openssl is not set +# CONFIG_PACKAGE_eapol-test-wolfssl is not set +# CONFIG_PACKAGE_eapol-test is not set +# CONFIG_PACKAGE_hostapd-basic is not set +# CONFIG_PACKAGE_hostapd-basic-openssl is not set +# CONFIG_PACKAGE_hostapd-basic-wolfssl is not set +CONFIG_PACKAGE_hostapd-common=y +# CONFIG_PACKAGE_hostapd-mini is not set +# CONFIG_PACKAGE_hostapd-openssl is not set +# CONFIG_PACKAGE_hostapd-wolfssl is not set +# CONFIG_PACKAGE_wpa-supplicant-basic is not set +# CONFIG_PACKAGE_wpa-supplicant-mini is not set +# CONFIG_PACKAGE_wpa-supplicant-openssl is not set +# CONFIG_PACKAGE_wpa-supplicant-wolfssl is not set +# CONFIG_PACKAGE_wpa-supplicant is not set +# CONFIG_WPA_WOLFSSL is not set +# CONFIG_DRIVER_WEXT_SUPPORT is not set +# CONFIG_DRIVER_11N_SUPPORT is not set +# CONFIG_DRIVER_11AC_SUPPORT is not set +# CONFIG_DRIVER_11AX_SUPPORT is not set +# CONFIG_WPA_ENABLE_WEP is not set +# CONFIG_PACKAGE_wpad is not set +# CONFIG_PACKAGE_wpad-basic is not set +# CONFIG_PACKAGE_wpad-basic-openssl is not set +# CONFIG_PACKAGE_wpad-basic-wolfssl is not set +# CONFIG_PACKAGE_wpad-mini is not set +# CONFIG_PACKAGE_wpad-openssl is not set +# CONFIG_PACKAGE_wpad-wolfssl is not set +# CONFIG_PACKAGE_hostapd is not set +# CONFIG_PACKAGE_464xlat is not set +# CONFIG_PACKAGE_adblock is not set +# CONFIG_PACKAGE_ahcpd is not set +# CONFIG_PACKAGE_alfred is not set +# CONFIG_PACKAGE_alljoyn is not set +# CONFIG_PACKAGE_authsae is not set +# CONFIG_PACKAGE_chat is not set +# CONFIG_PACKAGE_etherwake is not set +# CONFIG_PACKAGE_ethtool is not set +# CONFIG_PACKAGE_gpsd is not set +# CONFIG_PACKAGE_gpsd-clients is not set +# CONFIG_PACKAGE_gre is not set +# CONFIG_PACKAGE_hnet-full is not set +# CONFIG_PACKAGE_hnet-full-l2tp is not set +# CONFIG_PACKAGE_hnet-full-secure is not set +# CONFIG_PACKAGE_hnetd-nossl is not set +# CONFIG_PACKAGE_hnetd-openssl is not set +# CONFIG_PACKAGE_iftop is not set +# CONFIG_PACKAGE_iotivity is not set +# CONFIG_PACKAGE_iotivity-cpp is not set +# CONFIG_PACKAGE_iotivity-example-garage is not set +# CONFIG_PACKAGE_iotivity-example-simple is not set +# CONFIG_PACKAGE_iotivity-oic-middle is not set +# CONFIG_PACKAGE_iotivity-resource-container-hue is not set +# CONFIG_PACKAGE_iotivity-resource-container-lib is not set +# CONFIG_PACKAGE_iotivity-resource-container-sample is not set +# CONFIG_PACKAGE_iotivity-resource-directory-lib is not set +CONFIG_PACKAGE_iperf=y +# CONFIG_PACKAGE_iperf3 is not set +# CONFIG_PACKAGE_ipip is not set +# CONFIG_PACKAGE_ipset is not set +# CONFIG_PACKAGE_ipset-dns is not set +# CONFIG_PACKAGE_iputils-arping is not set +# CONFIG_PACKAGE_iputils-clockdiff is not set +# CONFIG_PACKAGE_iputils-ping is not set +# CONFIG_PACKAGE_iputils-tftpd is not set +# CONFIG_PACKAGE_iputils-tracepath is not set +# CONFIG_PACKAGE_iw is not set +# CONFIG_PACKAGE_mdns is not set +# CONFIG_PACKAGE_minimalist-pcproxy is not set +# CONFIG_PACKAGE_mosquitto is not set +# CONFIG_PACKAGE_mosquitto-client is not set +# CONFIG_PACKAGE_mosquitto-client-nossl is not set +# CONFIG_PACKAGE_mosquitto-nossl is not set +# CONFIG_PACKAGE_mtr is not set +# CONFIG_PACKAGE_ndppd is not set +# CONFIG_PACKAGE_netperf is not set +# CONFIG_PACKAGE_nghttp-tools is not set +# CONFIG_PACKAGE_noping is not set +# CONFIG_PACKAGE_nut is not set +# CONFIG_PACKAGE_odhcpd is not set +# CONFIG_PACKAGE_omcproxy is not set +# CONFIG_PACKAGE_openldap-server is not set +# CONFIG_PACKAGE_oping is not set +# CONFIG_PACKAGE_ppp is not set +# CONFIG_PACKAGE_ppp-multilink is not set +# CONFIG_PACKAGE_rssileds is not set +# CONFIG_PACKAGE_samba36-client is not set +# CONFIG_PACKAGE_samba36-server is not set +# CONFIG_PACKAGE_snmp-utils is not set +# CONFIG_PACKAGE_snmpd is not set +# CONFIG_PACKAGE_snmpd-static is not set +# CONFIG_PACKAGE_soloscli is not set +# CONFIG_PACKAGE_tcpdump is not set +# CONFIG_PACKAGE_tcpdump-mini is not set +# CONFIG_PACKAGE_uclient-fetch is not set +# CONFIG_PACKAGE_udpxy is not set +# CONFIG_PACKAGE_umbim is not set +# CONFIG_PACKAGE_uqmi is not set +# CONFIG_PACKAGE_vnstat is not set +# CONFIG_PACKAGE_vti is not set +# CONFIG_PACKAGE_wpa_supplicant_rtl is not set +# CONFIG_PACKAGE_wpan-tools is not set +# CONFIG_PACKAGE_wshaper is not set +# CONFIG_PACKAGE_wwan is not set + +# +# Neural Network +# + +# +# MNN +# +# CONFIG_PACKAGE_MNN-benchmark is not set +# CONFIG_PACKAGE_libMNN is not set + +# +# ncnn +# +# CONFIG_PACKAGE_libncnn is not set +# CONFIG_PACKAGE_ncnn-benchmark is not set + +# +# Security +# + +# +# Device Mapper +# +# CONFIG_PACKAGE_cryptsetup is not set +# CONFIG_PACKAGE_dm-crypt is not set +# CONFIG_PACKAGE_dm-verity is not set + +# +# OPTEE +# + +# +# SELINUX +# + +# +# Sound +# +# CONFIG_PACKAGE_liblo-utils is not set +# CONFIG_PACKAGE_shairplay is not set +# CONFIG_PACKAGE_shairport is not set +# CONFIG_PACKAGE_shairport-sync-mini is not set +# CONFIG_PACKAGE_shairport-sync-openssl is not set +# CONFIG_PACKAGE_shairport-sync-polarssl is not set + +# +# TestTools +# + +# +# testapk +# +# CONFIG_PACKAGE_audiotest is not set +# CONFIG_PACKAGE_rwcheck is not set +# CONFIG_PACKAGE_rwdev is not set +# CONFIG_PACKAGE_rwspeed is not set +# CONFIG_PACKAGE_tinatest is not set + +# +# TestUnit +# +# CONFIG_PACKAGE_testunit is not set + +# +# Utilities +# + +# +# Compression +# +# CONFIG_PACKAGE_bzip2 is not set +# CONFIG_PACKAGE_xz-utils is not set +# CONFIG_PACKAGE_zstd is not set + +# +# Disc +# +# CONFIG_PACKAGE_lvm2 is not set + +# +# Encryption +# +# CONFIG_PACKAGE_certtool is not set +# CONFIG_PACKAGE_gnutls-utils is not set + +# +# Filesystem +# +# CONFIG_PACKAGE_attr is not set +# CONFIG_PACKAGE_badblocks is not set +# CONFIG_PACKAGE_chattr is not set +# CONFIG_PACKAGE_debugfs is not set +# CONFIG_PACKAGE_dumpe2fs is not set +# CONFIG_PACKAGE_e2freefrag is not set +# CONFIG_PACKAGE_e2fsprogs is not set +# CONFIG_PACKAGE_exfat-dump is not set +# CONFIG_PACKAGE_exfat-fsck is not set +# CONFIG_PACKAGE_exfat-mkfs is not set +# CONFIG_PACKAGE_exfat-tune is not set +# CONFIG_PACKAGE_exfat2img is not set +# CONFIG_PACKAGE_filefrag is not set +# CONFIG_PACKAGE_fuse-utils is not set +# CONFIG_PACKAGE_lsattr is not set +# CONFIG_PACKAGE_newfs_msdos is not set +# CONFIG_PACKAGE_ntfs-3g is not set +# CONFIG_PACKAGE_ntfs-3g-low is not set +# CONFIG_PACKAGE_ntfs-3g-utils is not set +# CONFIG_PACKAGE_ntfsprogs_ntfs-3g is not set +# CONFIG_PACKAGE_resize2fs is not set +# CONFIG_PACKAGE_sysfsutils is not set +# CONFIG_PACKAGE_tune2fs is not set +# CONFIG_PACKAGE_xfs-fsck is not set +# CONFIG_PACKAGE_xfs-growfs is not set +# CONFIG_PACKAGE_xfs-mkfs is not set + +# +# Shells +# +# CONFIG_PACKAGE_bash is not set + +# +# Terminal +# +# CONFIG_PACKAGE_agetty is not set +# CONFIG_PACKAGE_minicom is not set +# CONFIG_PACKAGE_script-utils is not set +# CONFIG_PACKAGE_setterm is not set +# CONFIG_PACKAGE_wall is not set + +# +# Zoneinfo +# +# CONFIG_PACKAGE_zoneinfo-africa is not set +# CONFIG_PACKAGE_zoneinfo-all is not set +# CONFIG_PACKAGE_zoneinfo-asia is not set +# CONFIG_PACKAGE_zoneinfo-atlantic is not set +# CONFIG_PACKAGE_zoneinfo-australia-nz is not set +# CONFIG_PACKAGE_zoneinfo-core is not set +# CONFIG_PACKAGE_zoneinfo-europe is not set +# CONFIG_PACKAGE_zoneinfo-india is not set +# CONFIG_PACKAGE_zoneinfo-northamerica is not set +# CONFIG_PACKAGE_zoneinfo-pacific is not set +# CONFIG_PACKAGE_zoneinfo-poles is not set +# CONFIG_PACKAGE_zoneinfo-simple is not set +# CONFIG_PACKAGE_zoneinfo-southamerica is not set + +# +# adpcm_and_wav_tools +# +# CONFIG_PACKAGE_adpcmDecodeDemo is not set +# CONFIG_PACKAGE_adpcmEncodeDemo is not set +# CONFIG_PACKAGE_createAdpcmAndWavDemo is not set +# CONFIG_PACKAGE_muxWavDemo is not set +# CONFIG_PACKAGE_parseWavDemo is not set + +# +# database +# +# CONFIG_PACKAGE_mysql-server is not set +# CONFIG_PACKAGE_pgsql-cli is not set +# CONFIG_PACKAGE_pgsql-server is not set +# CONFIG_PACKAGE_sqlite3-cli is not set + +# +# disc +# +# CONFIG_PACKAGE_blkdiscard is not set +# CONFIG_PACKAGE_blkid is not set +# CONFIG_PACKAGE_cfdisk is not set +# CONFIG_PACKAGE_fdisk is not set +# CONFIG_PACKAGE_findfs is not set +# CONFIG_PACKAGE_hd-idle is not set +# CONFIG_PACKAGE_lsblk is not set +# CONFIG_PACKAGE_partx-utils is not set +# CONFIG_PACKAGE_sfdisk is not set +# CONFIG_PACKAGE_swap-utils is not set +# CONFIG_PACKAGE_wipefs is not set + +# +# gpu-sample +# +# CONFIG_PACKAGE_opencl_demo is not set +# CONFIG_PACKAGE_opengles_demo is not set + +# +# rf test tool +# +# CONFIG_PACKAGE_aic8800-rftest is not set +# CONFIG_PACKAGE_broadcom-rftest is not set +# CONFIG_PACKAGE_realtek-rftest is not set +# CONFIG_PACKAGE_ssv6x5x-rftest is not set +# CONFIG_PACKAGE_xr819-rftest is not set +# CONFIG_PACKAGE_xr819s-rftest is not set +# CONFIG_PACKAGE_xr829-rftest is not set + +# +# rtk_hciattach +# +# CONFIG_PACKAGE_rtk_hciattach is not set +# CONFIG_PACKAGE_ShaderYUVtoRGB is not set +# CONFIG_PACKAGE_alsa-utils is not set +# CONFIG_PACKAGE_alsa-utils-seq is not set +# CONFIG_PACKAGE_alsa-utils-tests is not set +# CONFIG_PACKAGE_audit is not set +# CONFIG_PACKAGE_bluez-daemon is not set +# CONFIG_XR829_BT is not set +# CONFIG_PACKAGE_bluez-utils is not set +# CONFIG_PACKAGE_bluez-utils-extra is not set +# CONFIG_PACKAGE_brcm_patchram_plus is not set +# CONFIG_PACKAGE_breakpad-utils is not set +# CONFIG_PACKAGE_bsdiff is not set +# CONFIG_PACKAGE_bspatch is not set +# CONFIG_PACKAGE_cal is not set +# CONFIG_PACKAGE_checkpolicy is not set +# CONFIG_PACKAGE_collectd is not set +# CONFIG_PACKAGE_comgt is not set +# CONFIG_PACKAGE_comgt-directip is not set +# CONFIG_PACKAGE_comgt-ncm is not set +# CONFIG_PACKAGE_cpu_monitor is not set +# CONFIG_PACKAGE_cpulimit-ng is not set +# CONFIG_PACKAGE_cxdish is not set +# CONFIG_PACKAGE_dbus is not set +# CONFIG_PACKAGE_dmesg is not set +# CONFIG_PACKAGE_dropbearconvert is not set +# CONFIG_PACKAGE_dump1090 is not set +# CONFIG_PACKAGE_fbtest is not set +# CONFIG_PACKAGE_fbviewer is not set +# CONFIG_PACKAGE_flock is not set +# CONFIG_PACKAGE_fontconfig is not set +# CONFIG_PACKAGE_g2d_demo is not set +# CONFIG_PACKAGE_getevent is not set +# CONFIG_PACKAGE_getopt is not set +# CONFIG_PACKAGE_googletest is not set +# CONFIG_PACKAGE_gpio_ir_test is not set +# CONFIG_PACKAGE_gpioctl-sysfs is not set +# CONFIG_PACKAGE_htop is not set +# CONFIG_PACKAGE_hwclock is not set +# CONFIG_PACKAGE_i2c-tools is not set +# CONFIG_PACKAGE_iconv is not set +# CONFIG_PACKAGE_iozone3 is not set +# CONFIG_PACKAGE_iwcap is not set +# CONFIG_PACKAGE_iwinfo is not set +# CONFIG_PACKAGE_jpeg-tools is not set +# CONFIG_PACKAGE_jshn is not set +# CONFIG_PACKAGE_kmod is not set +# CONFIG_PACKAGE_led_test is not set +# CONFIG_PACKAGE_libc-bench is not set +# CONFIG_PACKAGE_libc-testsuite is not set +# CONFIG_PACKAGE_libjson-script is not set +# CONFIG_PACKAGE_lm-sensors is not set +# CONFIG_PACKAGE_lm-sensors-detect is not set +# CONFIG_PACKAGE_lmbench is not set +# CONFIG_PACKAGE_logger is not set +# CONFIG_PACKAGE_logrotate is not set +# CONFIG_PACKAGE_look is not set +# CONFIG_PACKAGE_losetup is not set +# CONFIG_PACKAGE_lrzsz is not set +# CONFIG_PACKAGE_luajit is not set +# CONFIG_PACKAGE_maccalc is not set +# CONFIG_PACKAGE_mcookie is not set +# CONFIG_PACKAGE_mdadm is not set +# CONFIG_PACKAGE_memtester is not set +# CONFIG_PACKAGE_midea-uart is not set +# CONFIG_PACKAGE_mmc-utils is not set +# CONFIG_PACKAGE_mount-utils is not set +# CONFIG_PACKAGE_mountd is not set +# CONFIG_PACKAGE_mtd-utils is not set +# CONFIG_PACKAGE_mtools is not set +# CONFIG_PACKAGE_namei is not set +# CONFIG_PACKAGE_nbench-byte is not set +# CONFIG_PACKAGE_nss-utils is not set +# CONFIG_PACKAGE_ocf-crypto-headers is not set +# CONFIG_PACKAGE_openldap-utils is not set +# CONFIG_PACKAGE_openmp-test is not set +# CONFIG_PACKAGE_openssl-util is not set +# CONFIG_PACKAGE_openssl-util-test is not set +# CONFIG_PACKAGE_owipcalc is not set +# CONFIG_PACKAGE_policycoreutils is not set +# CONFIG_PACKAGE_prlimit is not set +# CONFIG_PACKAGE_procps is not set +# CONFIG_PACKAGE_procps-ng is not set +# CONFIG_PACKAGE_px5g is not set +# CONFIG_PACKAGE_px5g-standalone is not set +# CONFIG_PACKAGE_qrencode is not set +# CONFIG_PACKAGE_rename is not set +# CONFIG_PACKAGE_rrdcgi1 is not set +# CONFIG_PACKAGE_rrdtool1 is not set +# CONFIG_PACKAGE_rt-tests is not set +# CONFIG_PACKAGE_rtl-sdr is not set +# CONFIG_PACKAGE_selinux-audit2allow is not set +# CONFIG_PACKAGE_selinux-chcat is not set +# CONFIG_PACKAGE_selinux-semanage is not set +# CONFIG_PACKAGE_sgx544-opencl-test is not set +# CONFIG_PACKAGE_shadow-utils is not set +# CONFIG_PACKAGE_spidev-test is not set +# CONFIG_PACKAGE_strace is not set +CONFIG_STRACE_NONE=y +# CONFIG_STRACE_LIBDW is not set +# CONFIG_STRACE_LIBUNWIND is not set +# CONFIG_PACKAGE_stress is not set +# CONFIG_PACKAGE_sysbench is not set +# CONFIG_PACKAGE_sysstat is not set +# CONFIG_PACKAGE_tinyalsa-utils is not set +# CONFIG_PACKAGE_uart_led is not set +# CONFIG_PACKAGE_uart_test is not set +CONFIG_PACKAGE_uboot-envtools=y +# CONFIG_PACKAGE_ugps is not set +# CONFIG_PACKAGE_usb-modeswitch is not set +# CONFIG_PACKAGE_usbreset is not set +# CONFIG_PACKAGE_usbutils is not set +# CONFIG_PACKAGE_util-macros is not set +# CONFIG_PACKAGE_uuidd is not set +# CONFIG_PACKAGE_uuidgen is not set +# CONFIG_PACKAGE_v4l-utils is not set +# CONFIG_PACKAGE_view1090 is not set +# CONFIG_PACKAGE_watchcat is not set +# CONFIG_PACKAGE_whereis is not set +# CONFIG_PACKAGE_xmltest is not set +# CONFIG_PACKAGE_xsltproc is not set +# CONFIG_PACKAGE_yuview is not set diff --git a/target/allwinner/v851s3-fastboot_sl100_front/modules.mk b/target/allwinner/v851s3-fastboot_sl100_front/modules.mk index cd8d7dbbd..0dcf47cf9 100755 --- a/target/allwinner/v851s3-fastboot_sl100_front/modules.mk +++ b/target/allwinner/v851s3-fastboot_sl100_front/modules.mk @@ -104,12 +104,12 @@ define KernelPackage/usb FILES+=$(LINUX_DIR)/drivers/usb/gadget/function/usb_f_fs.ko FILES+=$(LINUX_DIR)/drivers/usb/gadget/function/usb_f_mass_storage.ko FILES+=$(LINUX_DIR)/drivers/usb/gadget/function/usb_f_hid.ko - FILES+=$(LINUX_DIR)/drivers/usb/gadget/function/usb_f_uvc.ko + #FILES+=$(LINUX_DIR)/drivers/usb/gadget/function/usb_f_uvc.ko FILES+=$(LINUX_DIR)/drivers/usb/gadget/udc/udc-core.ko - FILES+=$(LINUX_DIR)/drivers/usb/gadget/function/u_audio.ko - FILES+=$(LINUX_DIR)/drivers/usb/gadget/function/usb_f_uac1.ko + #FILES+=$(LINUX_DIR)/drivers/usb/gadget/function/u_audio.ko + #FILES+=$(LINUX_DIR)/drivers/usb/gadget/function/usb_f_uac1.ko FILES+=$(LINUX_DIR)/fs/configfs/configfs.ko - FILES+=$(LINUX_DIR)/drivers/media/v4l2-core/videobuf2-vmalloc.ko + #FILES+=$(LINUX_DIR)/drivers/media/v4l2-core/videobuf2-vmalloc.ko AUTOLOAD:=$(call AutoProbe, usbcore.ko ohci-hcd.ko sunxi_hci.ko ehci-hcd.ko usb-common.ko sunxi_usbc.ko sunxi_usb_udc.ko libcomposite.ko usb_f_fs.ko usb_f_mass_storage.ko usb_f_hid.ko udc-core.ko configfs.ko) endef @@ -166,9 +166,10 @@ define KernelPackage/audio FILES+=$(LINUX_DIR)/sound/core/snd.ko FILES+=$(LINUX_DIR)/sound/core/snd-pcm.ko FILES+=$(LINUX_DIR)/sound/core/snd-timer.ko - FILES+=$(LINUX_DIR)/drivers/usb/gadget/function/u_audio.ko - FILES+=$(LINUX_DIR)/drivers/usb/gadget/function/usb_f_uac1.ko - AUTOLOAD:=$(call AutoProbe, soundcore.ko snd-soc-core.ko snd_soc_sunxi_pcm.ko snd_soc_sunxi_aaudio.ko snd_soc_sunxi_machine.ko snd_soc_sunxi_internal_codec.ko snd_soc_sunxi_component_rxsync.ko snd_soc_sunxi_daudio.ko snd-pcm-dmaengine.ko snd.ko snd-pcm.ko snd-timer.ko u_audio.ko usb_f_uac1.ko) + #FILES+=$(LINUX_DIR)/drivers/usb/gadget/function/u_audio.ko + #FILES+=$(LINUX_DIR)/drivers/usb/gadget/function/usb_f_uac1.ko + #AUTOLOAD:=$(call AutoProbe, soundcore.ko snd-soc-core.ko snd_soc_sunxi_pcm.ko snd_soc_sunxi_aaudio.ko snd_soc_sunxi_machine.ko snd_soc_sunxi_internal_codec.ko snd_soc_sunxi_component_rxsync.ko snd_soc_sunxi_daudio.ko snd-pcm-dmaengine.ko snd.ko snd-pcm.ko snd-timer.ko u_audio.ko usb_f_uac1.ko) + AUTOLOAD:=$(call AutoProbe, soundcore.ko snd-soc-core.ko snd_soc_sunxi_pcm.ko snd_soc_sunxi_aaudio.ko snd_soc_sunxi_machine.ko snd_soc_sunxi_internal_codec.ko snd_soc_sunxi_component_rxsync.ko snd_soc_sunxi_daudio.ko snd-pcm-dmaengine.ko snd.ko snd-pcm.ko snd-timer.ko) endef define KernelPackage/audio/description diff --git a/target/allwinner/v851s3-fastboot_sl100_front/swupdate/sw-description b/target/allwinner/v851s3-fastboot_sl100_front/swupdate/sw-description index 285bb2b3f..3d79e6735 100755 --- a/target/allwinner/v851s3-fastboot_sl100_front/swupdate/sw-description +++ b/target/allwinner/v851s3-fastboot_sl100_front/swupdate/sw-description @@ -9,7 +9,7 @@ software = upgrade_recovery = { /* upgrade recovery */ images: ( - { + /*{ filename = "recovery"; device = "/dev/by-name/recovery"; installed-directly = true; @@ -21,7 +21,7 @@ software = { filename = "boot0"; type = "awboot0"; - } + }*/ ); /* change swu_mode to upgrade_kernel,boot_partition to recovery & reboot*/ bootenv: ( diff --git a/target/allwinner/v851s3-fastboot_sl100_front/swupdate/sw-subimgs.cfg b/target/allwinner/v851s3-fastboot_sl100_front/swupdate/sw-subimgs.cfg index ac1bf7e95..dd630dc71 100755 --- a/target/allwinner/v851s3-fastboot_sl100_front/swupdate/sw-subimgs.cfg +++ b/target/allwinner/v851s3-fastboot_sl100_front/swupdate/sw-subimgs.cfg @@ -1,8 +1,8 @@ swota_file_list=( ${TINA_BUILD_TOP=}/target/allwinner/${TARGET_BOARD}/swupdate/sw-description out/${TARGET_BOARD}/boot_initramfs_recovery.img:recovery -out/${TARGET_BOARD}/uboot.img:uboot -out/${TARGET_BOARD}/boot0.img:boot0 +#out/${TARGET_BOARD}/uboot.img:uboot +#out/${TARGET_BOARD}/boot0.img:boot0 out/${TARGET_BOARD}/boot.img:kernel out/${TARGET_BOARD}/rootfs.img:rootfs out/${TARGET_BOARD}/usr.img:usr