Compare commits
No commits in common. "15.6" and "master" have entirely different histories.
906
.config
906
.config
@ -1,906 +0,0 @@
|
||||
#
|
||||
# Automatically generated file; DO NOT EDIT.
|
||||
# ArtInChip Luban SDK Configuration
|
||||
#
|
||||
BR2_HAVE_DOT_CONFIG=y
|
||||
BR2_JLEVEL=0
|
||||
BR2_DEFCONFIG="$(CONFIG_DIR)/defconfig"
|
||||
BR2_DL_DIR="$(TOPDIR)/dl"
|
||||
BR2_PACKAGES_DIR="$(TOPDIR)/source"
|
||||
BR2_PREBUILT_DIR="$(TOPDIR)/prebuilt"
|
||||
BR2_HOST_DIR="$(BASE_DIR)/host"
|
||||
BR2_SHARED_STATIC_LIBS=y
|
||||
BR2_WGET="wget --passive-ftp -nd -t 3"
|
||||
BR2_SVN="svn --non-interactive"
|
||||
BR2_BZR="bzr"
|
||||
BR2_GIT="git"
|
||||
BR2_CVS="cvs"
|
||||
BR2_LOCALFILES="cp"
|
||||
BR2_SCP="scp"
|
||||
BR2_OPENSSH="ssh"
|
||||
BR2_HG="hg"
|
||||
BR2_ZCAT="gzip -d -c"
|
||||
BR2_BZCAT="bzcat"
|
||||
BR2_XZCAT="xzcat"
|
||||
BR2_LZCAT="lzip -d -c"
|
||||
BR2_TAR_OPTIONS=""
|
||||
|
||||
#
|
||||
# Target options
|
||||
#
|
||||
BR2_ARCH_IS_64=y
|
||||
BR2_ARCH_HAS_MMU_OPTIONAL=y
|
||||
BR2_riscv=y
|
||||
BR2_ARCH_HAS_TOOLCHAIN_BUILDROOT=y
|
||||
BR2_ARCH_NEEDS_GCC_AT_LEAST_4_8=y
|
||||
BR2_ARCH_NEEDS_GCC_AT_LEAST_4_9=y
|
||||
BR2_ARCH_NEEDS_GCC_AT_LEAST_5=y
|
||||
BR2_ARCH_NEEDS_GCC_AT_LEAST_6=y
|
||||
BR2_ARCH_NEEDS_GCC_AT_LEAST_7=y
|
||||
BR2_ARCH="riscv64"
|
||||
BR2_ENDIAN="LITTLE"
|
||||
BR2_GCC_TARGET_ABI="lp64d"
|
||||
BR2_BINFMT_SUPPORTS_SHARED=y
|
||||
BR2_READELF_ARCH_NAME="RISC-V"
|
||||
BR2_BINFMT_ELF=y
|
||||
BR2_RISCV_ISA_RVI=y
|
||||
BR2_RISCV_ISA_RVM=y
|
||||
BR2_RISCV_ISA_RVA=y
|
||||
BR2_RISCV_ISA_RVF=y
|
||||
BR2_RISCV_ISA_RVD=y
|
||||
BR2_RISCV_ISA_RVC=y
|
||||
BR2_RISCV_ISA_RVXTHEAD=y
|
||||
# BR2_riscv32_gcxthead is not set
|
||||
# BR2_riscv32_gcvxthead is not set
|
||||
BR2_riscv64_gcxthead=y
|
||||
# BR2_riscv64_gcvxthead is not set
|
||||
BR2_RISCV_64=y
|
||||
BR2_RISCV_ABI_LP64D=y
|
||||
LUBAN_CHIP_D211=y
|
||||
LUBAN_BOARD_D211_PER1_MMC=y
|
||||
# LUBAN_BOARD_D211_PER2_SPINOR is not set
|
||||
# LUBAN_BOARD_D211_PER2_SPINAND is not set
|
||||
# LUBAN_BOARD_D211_DEMO is not set
|
||||
# LUBAN_BOARD_D211_DEMO88_NAND is not set
|
||||
# LUBAN_BOARD_D211_PER1_MMC_SECURE_BOOT is not set
|
||||
# LUBAN_BOARD_D211_OTA is not set
|
||||
# LUBAN_BOARD_D211_DEMO100_NAND is not set
|
||||
# LUBAN_BOARD_D211_DEMO128_NAND is not set
|
||||
# LUBAN_BOARD_D211_OTA_EMMC is not set
|
||||
# LUBAN_BOARD_D211_DEMO88_NOR is not set
|
||||
# LUBAN_BOARD_D211_DEMO88_NOR_MUSL is not set
|
||||
# LUBAN_BOARD_D211_QC128_MMC is not set
|
||||
# LUBAN_BOARD_D211_AISHOOT88_NOR is not set
|
||||
LUBAN_BOARD_OF_D211="per1"
|
||||
LUBAN_CHIP_NAME="d211"
|
||||
LUBAN_BOARD_NAME="per1"
|
||||
|
||||
#
|
||||
# Toolchain
|
||||
#
|
||||
BR2_TOOLCHAIN=y
|
||||
BR2_USE_MMU=y
|
||||
BR2_TOOLCHAIN_EXTERNAL=y
|
||||
BR2_TOOLCHAIN_EXTERNAL_CUSTOM=y
|
||||
BR2_TOOLCHAIN_EXTERNAL_DOWNLOAD=y
|
||||
BR2_PACKAGE_HAS_TOOLCHAIN_EXTERNAL=y
|
||||
BR2_PACKAGE_PROVIDES_TOOLCHAIN_EXTERNAL="toolchain-external-custom"
|
||||
BR2_TOOLCHAIN_EXTERNAL_PREFIX="$(ARCH)-linux"
|
||||
BR2_TOOLCHAIN_EXTERNAL_URL=""
|
||||
BR2_TOOLCHAIN_EXTERNAL_REL_BIN_PATH="bin"
|
||||
BR2_TOOLCHAIN_EXTERNAL_CUSTOM_PREFIX="$(ARCH)-linux"
|
||||
BR2_TOOLCHAIN_EXTERNAL_GCC_11=y
|
||||
# BR2_TOOLCHAIN_EXTERNAL_GCC_10 is not set
|
||||
# BR2_TOOLCHAIN_EXTERNAL_GCC_9 is not set
|
||||
# BR2_TOOLCHAIN_EXTERNAL_GCC_8 is not set
|
||||
# BR2_TOOLCHAIN_EXTERNAL_GCC_7 is not set
|
||||
# BR2_TOOLCHAIN_EXTERNAL_GCC_6 is not set
|
||||
# BR2_TOOLCHAIN_EXTERNAL_GCC_5 is not set
|
||||
# BR2_TOOLCHAIN_EXTERNAL_GCC_4_9 is not set
|
||||
# BR2_TOOLCHAIN_EXTERNAL_GCC_4_8 is not set
|
||||
# BR2_TOOLCHAIN_EXTERNAL_GCC_4_7 is not set
|
||||
# BR2_TOOLCHAIN_EXTERNAL_GCC_4_6 is not set
|
||||
# BR2_TOOLCHAIN_EXTERNAL_GCC_4_5 is not set
|
||||
# BR2_TOOLCHAIN_EXTERNAL_GCC_4_4 is not set
|
||||
# BR2_TOOLCHAIN_EXTERNAL_GCC_4_3 is not set
|
||||
# BR2_TOOLCHAIN_EXTERNAL_GCC_OLD is not set
|
||||
# BR2_TOOLCHAIN_EXTERNAL_HEADERS_5_15 is not set
|
||||
# BR2_TOOLCHAIN_EXTERNAL_HEADERS_5_14 is not set
|
||||
# BR2_TOOLCHAIN_EXTERNAL_HEADERS_5_13 is not set
|
||||
# BR2_TOOLCHAIN_EXTERNAL_HEADERS_5_12 is not set
|
||||
# BR2_TOOLCHAIN_EXTERNAL_HEADERS_5_11 is not set
|
||||
BR2_TOOLCHAIN_EXTERNAL_HEADERS_5_10=y
|
||||
# BR2_TOOLCHAIN_EXTERNAL_HEADERS_5_9 is not set
|
||||
# BR2_TOOLCHAIN_EXTERNAL_HEADERS_5_8 is not set
|
||||
# BR2_TOOLCHAIN_EXTERNAL_HEADERS_5_7 is not set
|
||||
# BR2_TOOLCHAIN_EXTERNAL_HEADERS_5_6 is not set
|
||||
# BR2_TOOLCHAIN_EXTERNAL_HEADERS_5_5 is not set
|
||||
# BR2_TOOLCHAIN_EXTERNAL_HEADERS_5_4 is not set
|
||||
# BR2_TOOLCHAIN_EXTERNAL_HEADERS_5_3 is not set
|
||||
# BR2_TOOLCHAIN_EXTERNAL_HEADERS_5_2 is not set
|
||||
# BR2_TOOLCHAIN_EXTERNAL_HEADERS_5_1 is not set
|
||||
# BR2_TOOLCHAIN_EXTERNAL_HEADERS_5_0 is not set
|
||||
# BR2_TOOLCHAIN_EXTERNAL_HEADERS_4_20 is not set
|
||||
# BR2_TOOLCHAIN_EXTERNAL_HEADERS_4_19 is not set
|
||||
# BR2_TOOLCHAIN_EXTERNAL_HEADERS_4_18 is not set
|
||||
# BR2_TOOLCHAIN_EXTERNAL_HEADERS_4_17 is not set
|
||||
# BR2_TOOLCHAIN_EXTERNAL_HEADERS_4_16 is not set
|
||||
# BR2_TOOLCHAIN_EXTERNAL_HEADERS_4_15 is not set
|
||||
# BR2_TOOLCHAIN_EXTERNAL_HEADERS_4_14 is not set
|
||||
# BR2_TOOLCHAIN_EXTERNAL_HEADERS_4_13 is not set
|
||||
# BR2_TOOLCHAIN_EXTERNAL_HEADERS_4_12 is not set
|
||||
# BR2_TOOLCHAIN_EXTERNAL_HEADERS_4_11 is not set
|
||||
# BR2_TOOLCHAIN_EXTERNAL_HEADERS_4_10 is not set
|
||||
# BR2_TOOLCHAIN_EXTERNAL_HEADERS_4_9 is not set
|
||||
# BR2_TOOLCHAIN_EXTERNAL_HEADERS_4_8 is not set
|
||||
# BR2_TOOLCHAIN_EXTERNAL_HEADERS_4_7 is not set
|
||||
# BR2_TOOLCHAIN_EXTERNAL_HEADERS_4_6 is not set
|
||||
# BR2_TOOLCHAIN_EXTERNAL_HEADERS_4_5 is not set
|
||||
# BR2_TOOLCHAIN_EXTERNAL_HEADERS_4_4 is not set
|
||||
# BR2_TOOLCHAIN_EXTERNAL_HEADERS_4_3 is not set
|
||||
# BR2_TOOLCHAIN_EXTERNAL_HEADERS_4_2 is not set
|
||||
# BR2_TOOLCHAIN_EXTERNAL_HEADERS_4_1 is not set
|
||||
# BR2_TOOLCHAIN_EXTERNAL_HEADERS_4_0 is not set
|
||||
# BR2_TOOLCHAIN_EXTERNAL_HEADERS_3_19 is not set
|
||||
# BR2_TOOLCHAIN_EXTERNAL_HEADERS_3_18 is not set
|
||||
# BR2_TOOLCHAIN_EXTERNAL_HEADERS_3_17 is not set
|
||||
# BR2_TOOLCHAIN_EXTERNAL_HEADERS_3_16 is not set
|
||||
# BR2_TOOLCHAIN_EXTERNAL_HEADERS_3_15 is not set
|
||||
# BR2_TOOLCHAIN_EXTERNAL_HEADERS_3_14 is not set
|
||||
# BR2_TOOLCHAIN_EXTERNAL_HEADERS_3_13 is not set
|
||||
# BR2_TOOLCHAIN_EXTERNAL_HEADERS_3_12 is not set
|
||||
# BR2_TOOLCHAIN_EXTERNAL_HEADERS_3_11 is not set
|
||||
# BR2_TOOLCHAIN_EXTERNAL_HEADERS_3_10 is not set
|
||||
# BR2_TOOLCHAIN_EXTERNAL_HEADERS_3_9 is not set
|
||||
# BR2_TOOLCHAIN_EXTERNAL_HEADERS_3_8 is not set
|
||||
# BR2_TOOLCHAIN_EXTERNAL_HEADERS_3_7 is not set
|
||||
# BR2_TOOLCHAIN_EXTERNAL_HEADERS_3_6 is not set
|
||||
# BR2_TOOLCHAIN_EXTERNAL_HEADERS_3_5 is not set
|
||||
# BR2_TOOLCHAIN_EXTERNAL_HEADERS_3_4 is not set
|
||||
# BR2_TOOLCHAIN_EXTERNAL_HEADERS_3_3 is not set
|
||||
# BR2_TOOLCHAIN_EXTERNAL_HEADERS_3_2 is not set
|
||||
# BR2_TOOLCHAIN_EXTERNAL_HEADERS_3_1 is not set
|
||||
# BR2_TOOLCHAIN_EXTERNAL_HEADERS_3_0 is not set
|
||||
# BR2_TOOLCHAIN_EXTERNAL_HEADERS_REALLY_OLD is not set
|
||||
BR2_TOOLCHAIN_EXTERNAL_CUSTOM_UCLIBC=y
|
||||
# BR2_TOOLCHAIN_EXTERNAL_CUSTOM_GLIBC is not set
|
||||
# BR2_TOOLCHAIN_EXTERNAL_CUSTOM_MUSL is not set
|
||||
BR2_TARGET_OPTIMIZATION=""
|
||||
|
||||
#
|
||||
# Advance setting
|
||||
#
|
||||
# BR2_TOOLCHAIN_EXTERNAL_WCHAR is not set
|
||||
# BR2_TOOLCHAIN_EXTERNAL_LOCALE is not set
|
||||
BR2_TOOLCHAIN_EXTERNAL_HAS_THREADS=y
|
||||
BR2_TOOLCHAIN_EXTERNAL_HAS_THREADS_DEBUG=y
|
||||
BR2_TOOLCHAIN_EXTERNAL_HAS_THREADS_NPTL=y
|
||||
# BR2_TOOLCHAIN_EXTERNAL_HAS_SSP is not set
|
||||
# BR2_TOOLCHAIN_EXTERNAL_INET_RPC is not set
|
||||
BR2_TOOLCHAIN_EXTERNAL_CXX=y
|
||||
# BR2_TOOLCHAIN_EXTERNAL_GDB_SERVER_COPY is not set
|
||||
BR2_TOOLCHAIN_EXTRA_LIBS=""
|
||||
BR2_TOOLCHAIN_SUPPORTS_ALWAYS_LOCKFREE_ATOMIC_INTS=y
|
||||
BR2_INSTALL_LIBSTDCPP=y
|
||||
BR2_TOOLCHAIN_HAS_THREADS=y
|
||||
BR2_TOOLCHAIN_HAS_THREADS_DEBUG=y
|
||||
BR2_TOOLCHAIN_HAS_THREADS_NPTL=y
|
||||
BR2_TOOLCHAIN_HAS_SYNC_4=y
|
||||
BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_0=y
|
||||
BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_1=y
|
||||
BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_2=y
|
||||
BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_3=y
|
||||
BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_4=y
|
||||
BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_5=y
|
||||
BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_6=y
|
||||
BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_7=y
|
||||
BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_8=y
|
||||
BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_9=y
|
||||
BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_10=y
|
||||
BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_11=y
|
||||
BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_12=y
|
||||
BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_13=y
|
||||
BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_14=y
|
||||
BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_15=y
|
||||
BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_16=y
|
||||
BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_17=y
|
||||
BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_18=y
|
||||
BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_19=y
|
||||
BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_0=y
|
||||
BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_1=y
|
||||
BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_2=y
|
||||
BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_3=y
|
||||
BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_4=y
|
||||
BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_5=y
|
||||
BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_6=y
|
||||
BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_7=y
|
||||
BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_8=y
|
||||
BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9=y
|
||||
BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_10=y
|
||||
BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_11=y
|
||||
BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_12=y
|
||||
BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_13=y
|
||||
BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_14=y
|
||||
BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_15=y
|
||||
BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_16=y
|
||||
BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_17=y
|
||||
BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_18=y
|
||||
BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_19=y
|
||||
BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_20=y
|
||||
BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_0=y
|
||||
BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_1=y
|
||||
BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_2=y
|
||||
BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_3=y
|
||||
BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4=y
|
||||
BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_5=y
|
||||
BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_6=y
|
||||
BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_7=y
|
||||
BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_8=y
|
||||
BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_9=y
|
||||
BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_10=y
|
||||
BR2_HOST_GCC_AT_LEAST_4_9=y
|
||||
BR2_HOST_GCC_AT_LEAST_5=y
|
||||
BR2_HOST_GCC_AT_LEAST_6=y
|
||||
|
||||
#
|
||||
# Build options
|
||||
#
|
||||
BR2_MAKE_WITH_MULTI_THREAD=y
|
||||
# BR2_OPTIMIZE_0 is not set
|
||||
# BR2_OPTIMIZE_1 is not set
|
||||
# BR2_OPTIMIZE_2 is not set
|
||||
# BR2_OPTIMIZE_3 is not set
|
||||
BR2_OPTIMIZE_S=y
|
||||
# BR2_ENABLE_DEBUG is not set
|
||||
BR2_STRIP_strip=y
|
||||
BR2_STRIP_EXCLUDE_FILES=""
|
||||
BR2_STRIP_EXCLUDE_DIRS=""
|
||||
# BR2_FORCE_BUILD_FROM_SOURCE is not set
|
||||
# BR2_GENERATE_PREBUILT_TARBALL is not set
|
||||
|
||||
#
|
||||
# System configuration
|
||||
#
|
||||
BR2_TARGET_GENERIC_HOSTNAME="aic"
|
||||
BR2_TARGET_GENERIC_ISSUE="Welcome to ArtInChip Luban Linux"
|
||||
BR2_TARGET_ENABLE_ROOT_LOGIN=y
|
||||
BR2_TARGET_GENERIC_ROOT_PASSWD=""
|
||||
BR2_SYSTEM_DHCP=""
|
||||
# BR2_TARGET_TZ_INFO is not set
|
||||
BR2_ROOTFS_USERS_TABLES=""
|
||||
BR2_ROOTFS_OVERLAY="target/$(LUBAN_CHIP_NAME)/$(LUBAN_BOARD_NAME)/rootfs_overlay"
|
||||
BR2_ROOTFS_POST_BUILD_SCRIPT=""
|
||||
BR2_ROOTFS_POST_FAKEROOT_SCRIPT=""
|
||||
BR2_ROOTFS_POST_IMAGE_SCRIPT=""
|
||||
|
||||
#
|
||||
# Advance setting
|
||||
#
|
||||
BR2_ROOTFS_SKELETON_DEFAULT=y
|
||||
BR2_INIT_BUSYBOX=y
|
||||
# BR2_INIT_SYSV is not set
|
||||
# BR2_INIT_NONE is not set
|
||||
BR2_TARGET_INSTALL_ETC_CONFIG=y
|
||||
BR2_ENABLE_LOCALE_PURGE=y
|
||||
BR2_ENABLE_LOCALE_WHITELIST="C en_US"
|
||||
|
||||
#
|
||||
# NLS support needs a toolchain w/ wchar, dynamic library
|
||||
#
|
||||
BR2_TARGET_GENERIC_GETTY=y
|
||||
BR2_TARGET_GENERIC_GETTY_PORT="console"
|
||||
BR2_TARGET_GENERIC_GETTY_BAUDRATE_KEEP=y
|
||||
# BR2_TARGET_GENERIC_GETTY_BAUDRATE_9600 is not set
|
||||
# BR2_TARGET_GENERIC_GETTY_BAUDRATE_19200 is not set
|
||||
# BR2_TARGET_GENERIC_GETTY_BAUDRATE_38400 is not set
|
||||
# BR2_TARGET_GENERIC_GETTY_BAUDRATE_57600 is not set
|
||||
# BR2_TARGET_GENERIC_GETTY_BAUDRATE_115200 is not set
|
||||
BR2_TARGET_GENERIC_GETTY_BAUDRATE="0"
|
||||
BR2_TARGET_GENERIC_GETTY_TERM="vt100"
|
||||
BR2_TARGET_GENERIC_GETTY_OPTIONS=""
|
||||
# BR2_ROOTFS_DEVICE_CREATION_STATIC is not set
|
||||
BR2_ROOTFS_DEVICE_CREATION_DYNAMIC_DEVTMPFS=y
|
||||
# BR2_ROOTFS_DEVICE_CREATION_DYNAMIC_MDEV is not set
|
||||
# BR2_ROOTFS_DEVICE_CREATION_DYNAMIC_EUDEV is not set
|
||||
BR2_ROOTFS_DEVICE_TABLE="package/system/device_table.txt"
|
||||
# BR2_ROOTFS_DEVICE_TABLE_SUPPORTS_EXTENDED_ATTRIBUTES is not set
|
||||
# BR2_ROOTFS_MERGED_USR is not set
|
||||
BR2_TARGET_GENERIC_PASSWD_SHA256=y
|
||||
# BR2_TARGET_GENERIC_PASSWD_SHA512 is not set
|
||||
BR2_SYSTEM_BIN_SH_BUSYBOX=y
|
||||
|
||||
#
|
||||
# bash, dash, mksh, zsh need BR2_PACKAGE_BUSYBOX_SHOW_OTHERS
|
||||
#
|
||||
# BR2_SYSTEM_BIN_SH_NONE is not set
|
||||
# BR2_TARGET_GENERIC_REMOUNT_ROOTFS_RW is not set
|
||||
BR2_TARGET_GENERIC_PASSWD_METHOD="sha-256"
|
||||
BR2_SYSTEM_DEFAULT_PATH="/bin:/sbin:/usr/bin:/usr/sbin"
|
||||
|
||||
#
|
||||
# Filesystem images
|
||||
#
|
||||
|
||||
#
|
||||
# RootFS images
|
||||
#
|
||||
# BR2_TARGET_ROOTFS_EXT2 is not set
|
||||
# BR2_TARGET_ROOTFS_CPIO is not set
|
||||
# BR2_TARGET_ROOTFS_INITRAMFS is not set
|
||||
# BR2_TARGET_ROOTFS_JFFS2 is not set
|
||||
# BR2_TARGET_ROOTFS_SQUASHFS is not set
|
||||
BR2_TARGET_ROOTFS_TAR=y
|
||||
BR2_TARGET_ROOTFS_TAR_NONE=y
|
||||
# BR2_TARGET_ROOTFS_TAR_GZIP is not set
|
||||
# BR2_TARGET_ROOTFS_TAR_BZIP2 is not set
|
||||
# BR2_TARGET_ROOTFS_TAR_LZ4 is not set
|
||||
# BR2_TARGET_ROOTFS_TAR_LZMA is not set
|
||||
# BR2_TARGET_ROOTFS_TAR_LZO is not set
|
||||
# BR2_TARGET_ROOTFS_TAR_XZ is not set
|
||||
BR2_TARGET_ROOTFS_TAR_OPTIONS=""
|
||||
BR2_UBI_DEVICE_SPI_NAND_2K_128K=y
|
||||
BR2_UBI_DEVICE_SPI_NAND_4K_256K=y
|
||||
BR2_UBI_PARAM_ALL_SPI_NAND=y
|
||||
# BR2_UBI_PARAM_SPI_NAND_2K_128K is not set
|
||||
# BR2_UBI_PARAM_SPI_NAND_4K_256K is not set
|
||||
# BR2_UBI_PARAM_USER_CUSTOM is not set
|
||||
# BR2_TARGET_ROOTFS_UBI is not set
|
||||
# BR2_TARGET_ROOTFS_UBIFS is not set
|
||||
# BR2_TARGET_USERFS1 is not set
|
||||
# BR2_TARGET_USERFS2 is not set
|
||||
# BR2_TARGET_USERFS3 is not set
|
||||
# BR2_GENERATE_BURNER_IMAGE is not set
|
||||
# BR2_GENERATE_IMAGE_AUTO_CALCULATE_SIZE is not set
|
||||
|
||||
#
|
||||
# Bootloader
|
||||
#
|
||||
|
||||
#
|
||||
# OpenSBI
|
||||
#
|
||||
BR2_PACKAGE_OPENSBI=y
|
||||
# BR2_PACKAGE_OPENSBI_USE_PREBUILT is not set
|
||||
BR2_PACKAGE_OPENSBI_FW_TEXT_BASE=0x40000000
|
||||
|
||||
#
|
||||
# U-Boot
|
||||
#
|
||||
BR2_TARGET_UBOOT=y
|
||||
BR2_TARGET_UBOOT_VERSION="2021.10"
|
||||
BR2_TARGET_UBOOT_USE_DEFCONFIG=y
|
||||
BR2_TARGET_UBOOT_BOARD_DEFCONFIG=""
|
||||
|
||||
#
|
||||
# Advance setting
|
||||
#
|
||||
BR2_TARGET_UBOOT_NEEDS_PYTHON_NONE=y
|
||||
# BR2_TARGET_UBOOT_NEEDS_PYTHON2 is not set
|
||||
# BR2_TARGET_UBOOT_NEEDS_PYTHON3 is not set
|
||||
BR2_TARGET_UBOOT_NEEDS_OPENSSL=y
|
||||
BR2_TARGET_UBOOT_NEEDS_OPENSBI=y
|
||||
|
||||
#
|
||||
# U-Boot binary format
|
||||
#
|
||||
BR2_TARGET_UBOOT_FORMAT_BIN=y
|
||||
# BR2_TARGET_UBOOT_FORMAT_DTB is not set
|
||||
# BR2_TARGET_UBOOT_FORMAT_DTB_BIN is not set
|
||||
# BR2_TARGET_UBOOT_FORMAT_NODTB_BIN is not set
|
||||
# BR2_TARGET_UBOOT_FORMAT_NAND_BIN is not set
|
||||
# BR2_TARGET_UBOOT_FORMAT_ELF is not set
|
||||
# BR2_TARGET_UBOOT_FORMAT_IMG is not set
|
||||
# BR2_TARGET_UBOOT_FORMAT_DTB_IMG is not set
|
||||
# BR2_TARGET_UBOOT_FORMAT_ITB is not set
|
||||
# BR2_TARGET_UBOOT_FORMAT_CUSTOM is not set
|
||||
# BR2_TARGET_UBOOT_SPL is not set
|
||||
BR2_TARGET_UBOOT_CUSTOM_MAKEOPTS=""
|
||||
|
||||
#
|
||||
# Linux kernel
|
||||
#
|
||||
BR2_LINUX_KERNEL=y
|
||||
BR2_LINUX_KERNEL_CUSTOM_VERSION=y
|
||||
BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE=""
|
||||
BR2_LINUX_KERNEL_VERSION=""
|
||||
BR2_LINUX_KERNEL_USE_DEFCONFIG=y
|
||||
BR2_LINUX_KERNEL_DEFCONFIG=""
|
||||
|
||||
#
|
||||
# Advance setting
|
||||
#
|
||||
BR2_LINUX_KERNEL_CUSTOM_LOGO_PATH=""
|
||||
BR2_LINUX_KERNEL_IMAGE=y
|
||||
# BR2_LINUX_KERNEL_IMAGEBZ2 is not set
|
||||
# BR2_LINUX_KERNEL_IMAGEGZ is not set
|
||||
# BR2_LINUX_KERNEL_IMAGELZ4 is not set
|
||||
# BR2_LINUX_KERNEL_IMAGEXZ is not set
|
||||
# BR2_LINUX_KERNEL_IMAGELZMA is not set
|
||||
# BR2_LINUX_KERNEL_IMAGELZO is not set
|
||||
# BR2_LINUX_KERNEL_VMLINUX is not set
|
||||
# BR2_LINUX_KERNEL_IMAGE_TARGET_CUSTOM is not set
|
||||
|
||||
#
|
||||
# Linux Kernel Tools
|
||||
#
|
||||
|
||||
#
|
||||
# bpftool needs a uClibc or glibc toolchain w/ wchar, dynamic library, threads
|
||||
#
|
||||
# BR2_PACKAGE_LINUX_TOOLS_CPUPOWER is not set
|
||||
# BR2_PACKAGE_LINUX_TOOLS_GPIO is not set
|
||||
# BR2_PACKAGE_LINUX_TOOLS_SPI is not set
|
||||
# BR2_PACKAGE_LINUX_TOOLS_IIO is not set
|
||||
# BR2_PACKAGE_LINUX_TOOLS_PCI is not set
|
||||
# BR2_PACKAGE_LINUX_TOOLS_PERF is not set
|
||||
# BR2_PACKAGE_LINUX_TOOLS_TMON is not set
|
||||
# BR2_PACKAGE_LINUX_TOOLS_TESTUSB is not set
|
||||
|
||||
#
|
||||
# ArtInChip packages
|
||||
#
|
||||
BR2_PACKAGE_OPENSSL_HWENGINE=y
|
||||
# BR2_PACKAGE_OPENSSL_HWENGINE_USE_PREBUILT is not set
|
||||
BR2_PACKAGE_AIC_AUTHORIZATION=y
|
||||
# BR2_PACKAGE_AIC_AUTHORIZATION_USE_PREBUILT is not set
|
||||
BR2_PACKAGE_AIC_MPP=y
|
||||
# BR2_PACKAGE_AIC_MPP_USE_PREBUILT is not set
|
||||
BR2_PACKAGE_AIC_MPP_MIDDLEWARE=y
|
||||
# BR2_PACKAGE_AIC_MPP_AAC_DECODER is not set
|
||||
# BR2_PACKAGE_AIC_MPP_WAV_DEMUXER is not set
|
||||
# BR2_PACKAGE_AIC_MPP_AVI_DEMUXER is not set
|
||||
# BR2_PACKAGE_AIC_MPP_MKV_DEMUXER is not set
|
||||
# BR2_PACKAGE_AIC_MPP_TS_DEMUXER is not set
|
||||
# BR2_PACKAGE_AIC_MPP_FLV_DEMUXER is not set
|
||||
# BR2_PACKAGE_AIC_MPP_RTSP_DEMUXER is not set
|
||||
BR2_PACKAGE_AIC_LOGO=y
|
||||
BR2_PACKAGE_LIBUSERID=y
|
||||
# BR2_PACKAGE_LIBUSERID_USE_PREBUILT is not set
|
||||
# BR2_PACKAGE_GST1_PLUGINS_AIC is not set
|
||||
# BR2_PACKAGE_AWTK_UI is not set
|
||||
# BR2_PACKAGE_LVGL_UI is not set
|
||||
BR2_PACKAGE_AICP_DEC=y
|
||||
BR2_PACKAGE_AIC_MEM=y
|
||||
BR2_PACKAGE_AIC_MEM_USE_PREBUILT=y
|
||||
# BR2_PACKAGE_WIFIMANAGER is not set
|
||||
# BR2_PACKAGE_P2P_AUTO is not set
|
||||
# BR2_PACKAGE_HTTP_WIFICONFIG is not set
|
||||
|
||||
#
|
||||
# Sample code
|
||||
#
|
||||
BR2_PACKAGE_TEST_MTOP=y
|
||||
# BR2_PACKAGE_TEST_MTOP_USE_PREBUILT is not set
|
||||
BR2_PACKAGE_TEST_CE=y
|
||||
# BR2_PACKAGE_TEST_CE_USE_PREBUILT is not set
|
||||
BR2_PACKAGE_TEST_DMA_BUF=y
|
||||
# BR2_PACKAGE_TEST_DMA_BUF_USE_PREBUILT is not set
|
||||
BR2_PACKAGE_TEST_DVP=y
|
||||
# BR2_PACKAGE_TEST_DVP_USE_PREBUILT is not set
|
||||
BR2_PACKAGE_TEST_FB=y
|
||||
# BR2_PACKAGE_TEST_FB_USE_PREBUILT is not set
|
||||
BR2_PACKAGE_TEST_TOUCHSCREEN=y
|
||||
# BR2_PACKAGE_TEST_TOUCHSCREEN_USE_PREBUILT is not set
|
||||
BR2_PACKAGE_TEST_UART=y
|
||||
# BR2_PACKAGE_TEST_UART_USE_PREBUILT is not set
|
||||
BR2_PACKAGE_TEST_WATCHDOG=y
|
||||
# BR2_PACKAGE_TEST_WATCHDOG_USE_PREBUILT is not set
|
||||
# BR2_PACKAGE_TEST_LIBMAD is not set
|
||||
BR2_PACKAGE_TEST_CLOCK=y
|
||||
# BR2_PACKAGE_TEST_CLOCK_USE_PREBUILT is not set
|
||||
BR2_PACKAGE_TEST_KEYADC=y
|
||||
# BR2_PACKAGE_TEST_KEYADC_USE_PREBUILT is not set
|
||||
# BR2_PACKAGE_TEST_BATTERY is not set
|
||||
BR2_PACKAGE_REG_DUMP=y
|
||||
# BR2_PACKAGE_REG_DUMP_USE_PREBUILT is not set
|
||||
BR2_PACKAGE_TEST_GPIO=y
|
||||
# BR2_PACKAGE_TEST_GPIO_USE_PREBUILT is not set
|
||||
BR2_PACKAGE_TEST_CAN=y
|
||||
# BR2_PACKAGE_TEST_CAN_USE_PREBUILT is not set
|
||||
BR2_PACKAGE_TEST_ETH=y
|
||||
# BR2_PACKAGE_TEST_ETH_USE_PREBUILT is not set
|
||||
BR2_PACKAGE_TEST_AUDIO=y
|
||||
# BR2_PACKAGE_TEST_AUDIO_USE_PREBUILT is not set
|
||||
BR2_PACKAGE_TEST_BLKDEV=y
|
||||
# BR2_PACKAGE_TEST_BLKDEV_USE_PREBUILT is not set
|
||||
# BR2_PACKAGE_TEST_TP2825 is not set
|
||||
# BR2_PACKAGE_TEST_PM_MBOX is not set
|
||||
BR2_PACKAGE_TEST_EFUSE=y
|
||||
# BR2_PACKAGE_TEST_EFUSE_USE_PREBUILT is not set
|
||||
BR2_PACKAGE_TEST_COREDUMP=y
|
||||
# BR2_PACKAGE_TEST_COREDUMP_USE_PREBUILT is not set
|
||||
|
||||
#
|
||||
# Launchers
|
||||
#
|
||||
# BR2_PACKAGE_QTLAUNCHER is not set
|
||||
|
||||
#
|
||||
# Vendor packages
|
||||
#
|
||||
# BR2_PACKAGE_MSNLINK is not set
|
||||
# BR2_PACKAGE_ZJINNOVA is not set
|
||||
# BR2_PACKAGE_CARBIT is not set
|
||||
|
||||
#
|
||||
# Third-party packages
|
||||
#
|
||||
|
||||
#
|
||||
# ************************ System ******************************
|
||||
#
|
||||
BR2_PACKAGE_BUSYBOX=y
|
||||
BR2_PACKAGE_BUSYBOX_USE_PREBUILT=y
|
||||
BR2_PACKAGE_BUSYBOX_CONFIG="package/third-party/busybox/busybox.config"
|
||||
BR2_PACKAGE_BUSYBOX_CONFIG_FRAGMENT_FILES=""
|
||||
# BR2_PACKAGE_BUSYBOX_SHOW_OTHERS is not set
|
||||
# BR2_PACKAGE_BUSYBOX_INDIVIDUAL_BINARIES is not set
|
||||
# BR2_PACKAGE_BUSYBOX_WATCHDOG is not set
|
||||
BR2_PACKAGE_INITSCRIPTS=y
|
||||
# BR2_PACKAGE_KMOD is not set
|
||||
BR2_PACKAGE_SKELETON=y
|
||||
BR2_PACKAGE_HAS_SKELETON=y
|
||||
BR2_PACKAGE_PROVIDES_SKELETON="skeleton-init-sysv"
|
||||
BR2_PACKAGE_SKELETON_INIT_COMMON=y
|
||||
BR2_PACKAGE_SKELETON_INIT_SYSV=y
|
||||
# BR2_PACKAGE_UTIL_LINUX is not set
|
||||
# BR2_PACKAGE_GPERF is not set
|
||||
|
||||
#
|
||||
# eudev needs eudev /dev management
|
||||
#
|
||||
|
||||
#
|
||||
# eudev needs a toolchain w/ wchar, dynamic library
|
||||
#
|
||||
# BR2_PACKAGE_GMP is not set
|
||||
BR2_PACKAGE_GDB_ARCH_SUPPORTS=y
|
||||
|
||||
#
|
||||
# gdb/gdbserver >= 8.x needs a toolchain w/ C++, gcc >= 4.8
|
||||
#
|
||||
|
||||
#
|
||||
# binutils needs a toolchain w/ wchar
|
||||
#
|
||||
# BR2_PACKAGE_SQLITE is not set
|
||||
BR2_PACKAGE_LIBATOMIC_OPS_ARCH_SUPPORTS=y
|
||||
# BR2_PACKAGE_LIBATOMIC_OPS is not set
|
||||
# BR2_PACKAGE_LIBPTHREAD_STUBS is not set
|
||||
# BR2_PACKAGE_LIBDAEMON is not set
|
||||
|
||||
#
|
||||
# ************************ Multimedia **************************
|
||||
#
|
||||
BR2_PACKAGE_ALSA_LIB=y
|
||||
BR2_PACKAGE_ALSA_LIB_USE_PREBUILT=y
|
||||
BR2_PACKAGE_ALSA_LIB_DEVDIR="/dev/snd"
|
||||
BR2_PACKAGE_ALSA_LIB_PCM_PLUGINS="all"
|
||||
BR2_PACKAGE_ALSA_LIB_CTL_PLUGINS="all"
|
||||
BR2_PACKAGE_ALSA_LIB_ALOAD=y
|
||||
BR2_PACKAGE_ALSA_LIB_MIXER=y
|
||||
BR2_PACKAGE_ALSA_LIB_PCM=y
|
||||
BR2_PACKAGE_ALSA_LIB_RAWMIDI=y
|
||||
BR2_PACKAGE_ALSA_LIB_HWDEP=y
|
||||
BR2_PACKAGE_ALSA_LIB_SEQ=y
|
||||
BR2_PACKAGE_ALSA_LIB_UCM=y
|
||||
BR2_PACKAGE_ALSA_LIB_ALISP=y
|
||||
BR2_PACKAGE_ALSA_LIB_OLD_SYMBOLS=y
|
||||
# BR2_PACKAGE_ALSA_UTILS is not set
|
||||
BR2_PACKAGE_PULSEAUDIO_HAS_ATOMIC=y
|
||||
|
||||
#
|
||||
# pulseaudio needs a toolchain w/ wchar, threads, dynamic library
|
||||
#
|
||||
# BR2_PACKAGE_LIBSAMPLERATE is not set
|
||||
|
||||
#
|
||||
# directfb needs a glibc or uClibc toolchain w/ C++, NPTL, gcc >= 4.5, dynamic library
|
||||
#
|
||||
# BR2_PACKAGE_FREETYPE is not set
|
||||
# BR2_PACKAGE_FONTCONFIG is not set
|
||||
# BR2_PACKAGE_JPEG is not set
|
||||
# BR2_PACKAGE_LIBPNG is not set
|
||||
# BR2_PACKAGE_LIBSNDFILE is not set
|
||||
# BR2_PACKAGE_QT is not set
|
||||
BR2_PACKAGE_QT5_JSCORE_AVAILABLE=y
|
||||
|
||||
#
|
||||
# Qt5 needs host g++ >= 5.0, and a toolchain w/ gcc >= 5.0, wchar, NPTL, C++, dynamic library
|
||||
#
|
||||
|
||||
#
|
||||
# gstreamer 1.x needs a toolchain w/ wchar, threads
|
||||
#
|
||||
# BR2_PACKAGE_FBDUMP is not set
|
||||
# BR2_PACKAGE_LIBDRM is not set
|
||||
# BR2_PACKAGE_LIBMAD is not set
|
||||
# BR2_PACKAGE_SBC is not set
|
||||
# BR2_PACKAGE_FFMPEG is not set
|
||||
# BR2_PACKAGE_CAIRO is not set
|
||||
# BR2_PACKAGE_PIXMAN is not set
|
||||
# BR2_PACKAGE_FAAD2 is not set
|
||||
# BR2_PACKAGE_LAME is not set
|
||||
# BR2_PACKAGE_MPG123 is not set
|
||||
# BR2_PACKAGE_LIBPJSIP is not set
|
||||
# BR2_PACKAGE_V4L_UTILS is not set
|
||||
|
||||
#
|
||||
# ************************ Network *****************************
|
||||
#
|
||||
# BR2_PACKAGE_LIBMODBUS is not set
|
||||
# BR2_PACKAGE_CAN_UTILS is not set
|
||||
# BR2_PACKAGE_ETHTOOL is not set
|
||||
# BR2_PACKAGE_IPROUTE2 is not set
|
||||
# BR2_PACKAGE_IPERF3 is not set
|
||||
# BR2_PACKAGE_LIBMNL is not set
|
||||
# BR2_PACKAGE_LIBNL is not set
|
||||
# BR2_PACKAGE_LIBTIRPC is not set
|
||||
# BR2_PACKAGE_NETPERF is not set
|
||||
# BR2_PACKAGE_WPA_SUPPLICANT is not set
|
||||
# BR2_PACKAGE_WIRELESS_TOOLS is not set
|
||||
# BR2_PACKAGE_PPPD is not set
|
||||
# BR2_PACKAGE_LIBPCAP is not set
|
||||
# BR2_PACKAGE_HOSTAPD is not set
|
||||
# BR2_PACKAGE_AIC8800_FW is not set
|
||||
# BR2_PACKAGE_ASR5505S_FW is not set
|
||||
# BR2_PACKAGE_TCPDUMP is not set
|
||||
# BR2_PACKAGE_AVAHI is not set
|
||||
|
||||
#
|
||||
# ************************ Security ****************************
|
||||
#
|
||||
|
||||
#
|
||||
# libselinux needs a toolchain w/ threads, dynamic library, gcc >= 5
|
||||
#
|
||||
|
||||
#
|
||||
# libsepol needs a toolchain w/ threads, gcc >= 5
|
||||
#
|
||||
# BR2_PACKAGE_LIBSRTP is not set
|
||||
BR2_PACKAGE_LIBKCAPI=y
|
||||
BR2_PACKAGE_LIBKCAPI_USE_PREBUILT=y
|
||||
BR2_PACKAGE_LIBKCAPI_ASYM=y
|
||||
# BR2_PACKAGE_LIBKCAPI_DGSTAPP is not set
|
||||
# BR2_PACKAGE_LIBKCAPI_ENCAPP is not set
|
||||
# BR2_PACKAGE_LIBKCAPI_HASHER is not set
|
||||
# BR2_PACKAGE_LIBKCAPI_KPP is not set
|
||||
# BR2_PACKAGE_LIBKCAPI_RNGAPP is not set
|
||||
# BR2_PACKAGE_LIBKCAPI_SPEED is not set
|
||||
# BR2_PACKAGE_LIBKCAPI_TEST is not set
|
||||
# BR2_PACKAGE_OPENSSL is not set
|
||||
BR2_PACKAGE_PROVIDES_HOST_OPENSSL="host-libopenssl"
|
||||
# BR2_PACKAGE_CRYPTSETUP is not set
|
||||
|
||||
#
|
||||
# linux-pam needs a toolchain w/ wchar, locale, dynamic library
|
||||
#
|
||||
# BR2_PACKAGE_FSCRYPT is not set
|
||||
|
||||
#
|
||||
# ************************ Memory ******************************
|
||||
#
|
||||
# BR2_PACKAGE_E2FSPROGS is not set
|
||||
# BR2_PACKAGE_IOZONE is not set
|
||||
# BR2_PACKAGE_MEMTESTER is not set
|
||||
# BR2_PACKAGE_MTD is not set
|
||||
# BR2_PACKAGE_SQUASHFS is not set
|
||||
|
||||
#
|
||||
# ************************ Connectivity ************************
|
||||
#
|
||||
BR2_PACKAGE_TSLIB=y
|
||||
BR2_PACKAGE_TSLIB_USE_PREBUILT=y
|
||||
# BR2_PACKAGE_LIBGPIOD is not set
|
||||
|
||||
#
|
||||
# ************* Debugging, profiling and benchmark *************
|
||||
#
|
||||
# BR2_PACKAGE_TRACE_CMD is not set
|
||||
|
||||
#
|
||||
# ************************ Other Tools *************************
|
||||
#
|
||||
# BR2_PACKAGE_ACL is not set
|
||||
|
||||
#
|
||||
# bluez-alsa needs a toolchain w/ wchar, NPTL, headers >= 3.4, dynamic library, gcc >= 4.9
|
||||
#
|
||||
# BR2_PACKAGE_BLUEZ5_UTILS_HEADERS is not set
|
||||
|
||||
#
|
||||
# bluez5-utils needs a toolchain w/ wchar, threads, headers >= 3.4, dynamic library
|
||||
#
|
||||
# BR2_PACKAGE_NCURSES is not set
|
||||
# BR2_PACKAGE_PKGCONF is not set
|
||||
# BR2_PACKAGE_ATTR is not set
|
||||
# BR2_PACKAGE_DBUS is not set
|
||||
# BR2_PACKAGE_EXPAT is not set
|
||||
# BR2_PACKAGE_FLEX is not set
|
||||
# BR2_PACKAGE_GETTEXT is not set
|
||||
BR2_PACKAGE_PROVIDES_HOST_GETTEXT="host-gettext-tiny"
|
||||
# BR2_PACKAGE_JSON_C is not set
|
||||
# BR2_PACKAGE_LIBAIO is not set
|
||||
# BR2_PACKAGE_LIBARGON2 is not set
|
||||
# BR2_PACKAGE_LIBFFI is not set
|
||||
|
||||
#
|
||||
# libglib2 needs a toolchain w/ wchar, threads
|
||||
#
|
||||
# BR2_PACKAGE_LIBTOOL is not set
|
||||
# BR2_PACKAGE_LVM2 is not set
|
||||
# BR2_PACKAGE_ANDROID_TOOLS is not set
|
||||
# BR2_PACKAGE_BZIP2 is not set
|
||||
# BR2_PACKAGE_LRZSZ is not set
|
||||
# BR2_PACKAGE_LZ4 is not set
|
||||
# BR2_PACKAGE_LZIP is not set
|
||||
# BR2_PACKAGE_LZO is not set
|
||||
# BR2_PACKAGE_LZOP is not set
|
||||
# BR2_PACKAGE_PCRE is not set
|
||||
# BR2_PACKAGE_PCRE2 is not set
|
||||
# BR2_PACKAGE_POPT is not set
|
||||
# BR2_PACKAGE_READLINE is not set
|
||||
# BR2_PACKAGE_XZ is not set
|
||||
BR2_PACKAGE_ZLIB=y
|
||||
BR2_PACKAGE_ZLIB_USE_PREBUILT=y
|
||||
BR2_PACKAGE_LIBZLIB_USE_PREBUILT=y
|
||||
BR2_PACKAGE_ZLIB_NG_USE_PREBUILT=y
|
||||
BR2_PACKAGE_LIBZLIB=y
|
||||
BR2_PACKAGE_HAS_ZLIB=y
|
||||
BR2_PACKAGE_PROVIDES_ZLIB="libzlib"
|
||||
BR2_PACKAGE_PROVIDES_HOST_ZLIB="host-libzlib"
|
||||
# BR2_PACKAGE_ZSTD is not set
|
||||
# BR2_PACKAGE_PYTHON_SETUPTOOLS is not set
|
||||
BR2_PACKAGE_UBOOT_TOOLS=y
|
||||
BR2_PACKAGE_UBOOT_TOOLS_USE_PREBUILT=y
|
||||
BR2_PACKAGE_LIBUBOOTENV=y
|
||||
BR2_PACKAGE_LIBUBOOTENV_USE_PREBUILT=y
|
||||
BR2_PACKAGE_LIBCONFIG=y
|
||||
BR2_PACKAGE_LIBCONFIG_USE_PREBUILT=y
|
||||
BR2_PACKAGE_LIBCURL=y
|
||||
BR2_PACKAGE_LIBCURL_USE_PREBUILT=y
|
||||
# BR2_PACKAGE_LIBCURL_CURL is not set
|
||||
# BR2_PACKAGE_LIBCURL_VERBOSE is not set
|
||||
BR2_PACKAGE_LIBCURL_PROXY_SUPPORT=y
|
||||
BR2_PACKAGE_LIBCURL_COOKIES_SUPPORT=y
|
||||
BR2_PACKAGE_LIBCURL_EXTRA_PROTOCOLS_FEATURES=y
|
||||
BR2_PACKAGE_LIBCURL_TLS_NONE=y
|
||||
BR2_PACKAGE_SWUPDATE=y
|
||||
BR2_PACKAGE_SWUPDATE_USE_PREBUILT=y
|
||||
BR2_PACKAGE_SWUPDATE_CONFIG="package/third-party/swupdate/luban_swupdate.config"
|
||||
|
||||
#
|
||||
# swupdate usb needs systemd
|
||||
#
|
||||
BR2_PACKAGE_SWUPDATE_WEBSERVER=y
|
||||
BR2_PACKAGE_SWUPDATE_INSTALL_WEBSITE=y
|
||||
# BR2_PACKAGE_PERL is not set
|
||||
# BR2_PACKAGE_OPENSSH is not set
|
||||
# BR2_PACKAGE_CJSON is not set
|
||||
# BR2_PACKAGE_LIVE555 is not set
|
||||
# BR2_PACKAGE_RTL8733BS_BT_FW is not set
|
||||
# BR2_PACKAGE_RTL8733BU_BT_FW is not set
|
||||
|
||||
#
|
||||
# ************************ MTP Tools *************************
|
||||
#
|
||||
# BR2_PACKAGE_LIBFUSE is not set
|
||||
# BR2_PACKAGE_LIBICONV is not set
|
||||
|
||||
#
|
||||
# libusb needs a toolchain w/ threads, gcc >= 4.9
|
||||
#
|
||||
# BR2_PACKAGE_MTPFS is not set
|
||||
# BR2_PACKAGE_UMTPRD is not set
|
||||
# BR2_PACKAGE_LIBMTP is not set
|
||||
|
||||
#
|
||||
# Host utilities
|
||||
#
|
||||
|
||||
#
|
||||
# ************************ System ******************************
|
||||
#
|
||||
BR2_PACKAGE_HOST_GO_TARGET_ARCH_SUPPORTS=y
|
||||
BR2_PACKAGE_HOST_GO_TARGET_ARCH_SUPPORTS_USE_PREBUILT=y
|
||||
BR2_PACKAGE_HOST_GO_TARGET_CGO_LINKING_SUPPORTS=y
|
||||
BR2_PACKAGE_HOST_GO_HOST_ARCH_SUPPORTS=y
|
||||
BR2_PACKAGE_HOST_GO_BOOTSTRAP_ARCH_SUPPORTS=y
|
||||
BR2_PACKAGE_HOST_GO_BOOTSTRAP_ARCH_SUPPORTS_USE_PREBUILT=y
|
||||
# BR2_PACKAGE_HOST_COREUTILS is not set
|
||||
BR2_PACKAGE_HOST_FAKEROOT=y
|
||||
BR2_PACKAGE_HOST_FAKEROOT_USE_PREBUILT=y
|
||||
BR2_PACKAGE_HOST_KMOD=y
|
||||
BR2_PACKAGE_HOST_KMOD_USE_PREBUILT=y
|
||||
# BR2_PACKAGE_HOST_KMOD_GZ is not set
|
||||
# BR2_PACKAGE_HOST_KMOD_ZSTD is not set
|
||||
# BR2_PACKAGE_HOST_KMOD_XZ is not set
|
||||
BR2_PACKAGE_HOST_MAKEDEVS=y
|
||||
BR2_PACKAGE_HOST_MAKEDEVS_USE_PREBUILT=y
|
||||
BR2_PACKAGE_HOST_MKPASSWD=y
|
||||
BR2_PACKAGE_HOST_MKPASSWD_USE_PREBUILT=y
|
||||
BR2_PACKAGE_HOST_UBOOT_TOOLS=y
|
||||
BR2_PACKAGE_HOST_UBOOT_TOOLS_USE_PREBUILT=y
|
||||
# BR2_PACKAGE_HOST_UTIL_LINUX is not set
|
||||
BR2_PACKAGE_HOST_ZIC=y
|
||||
BR2_PACKAGE_HOST_ZIC_USE_PREBUILT=y
|
||||
BR2_PACKAGE_HOST_GDB_ARCH_SUPPORTS=y
|
||||
|
||||
#
|
||||
# Host GDB Options
|
||||
#
|
||||
# BR2_PACKAGE_HOST_GDB is not set
|
||||
|
||||
#
|
||||
# Binutils Options
|
||||
#
|
||||
BR2_PACKAGE_HOST_BINUTILS_SUPPORTS_CFI=y
|
||||
# BR2_BINUTILS_VERSION_2_37_X is not set
|
||||
BR2_BINUTILS_VERSION_2_38_X=y
|
||||
# BR2_BINUTILS_VERSION_2_39_X is not set
|
||||
BR2_BINUTILS_VERSION="2.38"
|
||||
BR2_BINUTILS_EXTRA_CONFIG_OPTIONS=""
|
||||
|
||||
#
|
||||
# ************************ Storage/Memory **********************
|
||||
#
|
||||
# BR2_PACKAGE_HOST_E2FSPROGS is not set
|
||||
# BR2_PACKAGE_HOST_MTD is not set
|
||||
# BR2_PACKAGE_HOST_SQUASHFS is not set
|
||||
|
||||
#
|
||||
# ************************ Security ****************************
|
||||
#
|
||||
# BR2_PACKAGE_HOST_CRYPTSETUP is not set
|
||||
|
||||
#
|
||||
# ************************ Multimedia **************************
|
||||
#
|
||||
|
||||
#
|
||||
# ************************ Compression *************************
|
||||
#
|
||||
# BR2_PACKAGE_HOST_TAR is not set
|
||||
# BR2_PACKAGE_HOST_BZIP2 is not set
|
||||
# BR2_PACKAGE_HOST_GZIP is not set
|
||||
# BR2_PACKAGE_HOST_LZ4 is not set
|
||||
# BR2_PACKAGE_HOST_LZMA is not set
|
||||
# BR2_PACKAGE_HOST_LZO is not set
|
||||
# BR2_PACKAGE_HOST_LZOP is not set
|
||||
# BR2_PACKAGE_HOST_XZ is not set
|
||||
# BR2_PACKAGE_HOST_LIBZLIB is not set
|
||||
# BR2_PACKAGE_HOST_ZSTD is not set
|
||||
|
||||
#
|
||||
# ************************ Tools *******************************
|
||||
#
|
||||
# BR2_PACKAGE_HOST_ANDROID_TOOLS is not set
|
||||
# BR2_PACKAGE_HOST_ACL is not set
|
||||
# BR2_PACKAGE_HOST_ATTR is not set
|
||||
BR2_PACKAGE_HOST_AUTOCONF=y
|
||||
BR2_PACKAGE_HOST_AUTOCONF_USE_PREBUILT=y
|
||||
# BR2_PACKAGE_HOST_AUTOCONF_ARCHIVE is not set
|
||||
BR2_PACKAGE_HOST_AUTOMAKE=y
|
||||
BR2_PACKAGE_HOST_AUTOMAKE_USE_PREBUILT=y
|
||||
BR2_PACKAGE_HOST_BISON=y
|
||||
BR2_PACKAGE_HOST_BISON_USE_PREBUILT=y
|
||||
# BR2_PACKAGE_HOST_CMAKE is not set
|
||||
# BR2_PACKAGE_HOST_FLEX is not set
|
||||
# BR2_PACKAGE_HOST_LIBTOOL is not set
|
||||
# BR2_PACKAGE_HOST_MAKE is not set
|
||||
# BR2_PACKAGE_HOST_MESON is not set
|
||||
# BR2_PACKAGE_HOST_NINJA is not set
|
||||
# BR2_PACKAGE_HOST_PKGCONF is not set
|
||||
BR2_PACKAGE_HOST_PATCHELF=y
|
||||
BR2_PACKAGE_HOST_PATCHELF_USE_PREBUILT=y
|
||||
# BR2_PACKAGE_HOST_PYTHON3 is not set
|
||||
BR2_PACKAGE_HOST_PYTHON3_FDT=y
|
||||
BR2_PACKAGE_HOST_PYTHON3_FDT_USE_PREBUILT=y
|
||||
BR2_PACKAGE_HOST_PYTHON3_PYCRYPTODOMEX=y
|
||||
BR2_PACKAGE_HOST_PYTHON3_PYCRYPTODOMEX_USE_PREBUILT=y
|
||||
# BR2_PACKAGE_HOST_SWIG is not set
|
||||
|
||||
#
|
||||
# Firmwares
|
||||
#
|
||||
61
clean.sh
61
clean.sh
@ -1,61 +0,0 @@
|
||||
make distclean
|
||||
#rm source/uboot-2021.10/include/configs/image_cfg.json
|
||||
rm -fr output/*
|
||||
rm tools/scripts/Cryptodome/Cipher/AES.pyc
|
||||
rm tools/scripts/Cryptodome/Cipher/__init__.pyc
|
||||
rm tools/scripts/Cryptodome/Cipher/_mode_cbc.pyc
|
||||
rm tools/scripts/Cryptodome/Cipher/_mode_ccm.pyc
|
||||
rm tools/scripts/Cryptodome/Cipher/_mode_cfb.pyc
|
||||
rm tools/scripts/Cryptodome/Cipher/_mode_ctr.pyc
|
||||
rm tools/scripts/Cryptodome/Cipher/_mode_eax.pyc
|
||||
rm tools/scripts/Cryptodome/Cipher/_mode_ecb.pyc
|
||||
rm tools/scripts/Cryptodome/Cipher/_mode_gcm.pyc
|
||||
rm tools/scripts/Cryptodome/Cipher/_mode_ocb.pyc
|
||||
rm tools/scripts/Cryptodome/Cipher/_mode_ofb.pyc
|
||||
rm tools/scripts/Cryptodome/Cipher/_mode_openpgp.pyc
|
||||
rm tools/scripts/Cryptodome/Cipher/_mode_siv.pyc
|
||||
rm tools/scripts/Cryptodome/Hash/BLAKE2s.pyc
|
||||
rm tools/scripts/Cryptodome/Hash/CMAC.pyc
|
||||
rm tools/scripts/Cryptodome/Hash/HMAC.pyc
|
||||
rm tools/scripts/Cryptodome/Hash/MD5.pyc
|
||||
rm tools/scripts/Cryptodome/Hash/SHA1.pyc
|
||||
rm tools/scripts/Cryptodome/Hash/SHA256.pyc
|
||||
rm tools/scripts/Cryptodome/Hash/__init__.pyc
|
||||
rm tools/scripts/Cryptodome/Math/Numbers.pyc
|
||||
rm tools/scripts/Cryptodome/Math/Primality.pyc
|
||||
rm tools/scripts/Cryptodome/Math/_IntegerBase.pyc
|
||||
rm tools/scripts/Cryptodome/Math/_IntegerGMP.pyc
|
||||
rm tools/scripts/Cryptodome/Math/__init__.pyc
|
||||
rm tools/scripts/Cryptodome/Protocol/KDF.pyc
|
||||
rm tools/scripts/Cryptodome/Protocol/__init__.pyc
|
||||
rm tools/scripts/Cryptodome/PublicKey/RSA.pyc
|
||||
rm tools/scripts/Cryptodome/PublicKey/__init__.pyc
|
||||
rm tools/scripts/Cryptodome/Random/__init__.pyc
|
||||
rm tools/scripts/Cryptodome/Signature/PKCS1_v1_5.pyc
|
||||
rm tools/scripts/Cryptodome/Signature/__init__.pyc
|
||||
rm tools/scripts/Cryptodome/Signature/pkcs1_15.pyc
|
||||
rm tools/scripts/Cryptodome/Util/__init__.pyc
|
||||
rm tools/scripts/Cryptodome/Util/_cpu_features.pyc
|
||||
rm tools/scripts/Cryptodome/Util/_file_system.pyc
|
||||
rm tools/scripts/Cryptodome/Util/_raw_api.pyc
|
||||
rm tools/scripts/Cryptodome/Util/asn1.pyc
|
||||
rm tools/scripts/Cryptodome/Util/number.pyc
|
||||
rm tools/scripts/Cryptodome/Util/py3compat.pyc
|
||||
rm tools/scripts/Cryptodome/Util/strxor.pyc
|
||||
rm tools/scripts/Cryptodome/__init__.pyc
|
||||
rm tools/scripts/asn1crypto/__init__.pyc
|
||||
rm tools/scripts/asn1crypto/_errors.pyc
|
||||
rm tools/scripts/asn1crypto/_iri.pyc
|
||||
rm tools/scripts/asn1crypto/_ordereddict.pyc
|
||||
rm tools/scripts/asn1crypto/_teletex_codec.pyc
|
||||
rm tools/scripts/asn1crypto/_types.pyc
|
||||
rm tools/scripts/asn1crypto/core.pyc
|
||||
rm tools/scripts/asn1crypto/parser.pyc
|
||||
rm tools/scripts/asn1crypto/util.pyc
|
||||
rm tools/scripts/asn1crypto/version.pyc
|
||||
rm tools/scripts/gmssl/__init__.pyc
|
||||
rm tools/scripts/gmssl/func.pyc
|
||||
rm tools/scripts/gmssl/sm2.pyc
|
||||
rm tools/scripts/gmssl/sm3.pyc
|
||||
rm tools/scripts/gmssl/sm4.pyc
|
||||
|
||||
@ -1 +0,0 @@
|
||||
https://aicdoc.artinchip.com/topics/sdk/wifi/wifi-rtl8821cs-luban.html
|
||||
@ -1,7 +1,7 @@
|
||||
#
|
||||
# Automatically generated make config: don't edit
|
||||
# Busybox version: 1.34.1
|
||||
# Wed Apr 15 10:32:02 2026
|
||||
# Tue Nov 21 10:34:55 2023
|
||||
#
|
||||
CONFIG_HAVE_DOT_CONFIG=y
|
||||
|
||||
@ -936,10 +936,10 @@ CONFIG_FEATURE_NETSTAT_PRG=y
|
||||
# CONFIG_NSLOOKUP is not set
|
||||
# CONFIG_FEATURE_NSLOOKUP_BIG is not set
|
||||
# CONFIG_FEATURE_NSLOOKUP_LONG_OPTIONS is not set
|
||||
CONFIG_NTPD=y
|
||||
CONFIG_FEATURE_NTPD_SERVER=y
|
||||
CONFIG_FEATURE_NTPD_CONF=y
|
||||
CONFIG_FEATURE_NTP_AUTH=y
|
||||
# CONFIG_NTPD is not set
|
||||
# CONFIG_FEATURE_NTPD_SERVER is not set
|
||||
# CONFIG_FEATURE_NTPD_CONF is not set
|
||||
# CONFIG_FEATURE_NTP_AUTH is not set
|
||||
CONFIG_PING=y
|
||||
# CONFIG_PING6 is not set
|
||||
CONFIG_FEATURE_FANCY_PING=y
|
||||
|
||||
1
package/third-party/initscripts/init.d/rcS
vendored
1
package/third-party/initscripts/init.d/rcS
vendored
@ -25,4 +25,3 @@ for i in /etc/init.d/S??* ;do
|
||||
esac
|
||||
done
|
||||
|
||||
/data/bin/e_player &
|
||||
|
||||
11
package/third-party/swupdate/swupdate.mk
vendored
11
package/third-party/swupdate/swupdate.mk
vendored
@ -288,15 +288,4 @@ define SWUPDATE_INSTALL_INIT_SYSV
|
||||
$(TARGET_DIR)/usr/lib/swupdate
|
||||
endef
|
||||
|
||||
# When BR2_PACKAGE_SWUPDATE_USE_PREBUILT is enabled, the package infrastructure
|
||||
# installs files from the prebuilt tarball into TARGET_DIR/STAGING_DIR.
|
||||
# Ensure our local helper scripts override any prebuilt versions.
|
||||
define SWUPDATE_OVERWRITE_HELPER_SCRIPTS
|
||||
$(INSTALL) -D -m 755 $(SWUPDATE_PKGDIR)/swupdate_cmd.sh \
|
||||
$(TARGET_DIR)/usr/lib/swupdate/swupdate_cmd.sh
|
||||
$(INSTALL) -D -m 755 $(SWUPDATE_PKGDIR)/swupdate_end.sh \
|
||||
$(TARGET_DIR)/usr/lib/swupdate/swupdate_end.sh
|
||||
endef
|
||||
SWUPDATE_POST_INSTALL_TARGET_HOOKS += SWUPDATE_OVERWRITE_HELPER_SCRIPTS
|
||||
|
||||
$(eval $(kconfig-package))
|
||||
|
||||
4
package/third-party/swupdate/swupdate_cmd.sh
vendored
4
package/third-party/swupdate/swupdate_cmd.sh
vendored
@ -29,8 +29,8 @@ swupdate_cmd()
|
||||
|
||||
echo "###now do swupdate###"
|
||||
|
||||
echo "##swupdate -v $swu_param -e "$swu_boardname,$swu_entry" ##"
|
||||
swupdate -v $swu_param -e "$swu_boardname,$swu_entry"
|
||||
echo "##swupdate -v$swu_param -e "$swu_boardname,$swu_entry" ##"
|
||||
swupdate -v$swu_param -e "$swu_boardname,$swu_entry"
|
||||
|
||||
swu_reboot=$(fw_printenv -n swu_reboot 2>/dev/null)
|
||||
echo "swu_reboot: ##$swu_reboot##"
|
||||
|
||||
@ -569,21 +569,10 @@ $(BUILD_DIR)/%/.stamp_prebuilt_rsynced:
|
||||
$(Q)touch $@
|
||||
$(BUILD_DIR)/%/.stamp_prebuilt_patched:
|
||||
$(Q)touch $@
|
||||
#$(BUILD_DIR)/%/.stamp_prebuilt_extracted:
|
||||
# @$(call MESSAGE,"Extracting prebuilt binary tarball")
|
||||
# $($(PKG)_PREBUILT_EXTRACT_CMDS)
|
||||
# @tools/support/scripts/fix-prebuilt-rpath.sh $($(PKG)_NAME) $($(PKG)_BASENAME) $($(PKG)_DIR)
|
||||
# $(Q)touch $@
|
||||
$(BUILD_DIR)/%/.stamp_prebuilt_extracted:
|
||||
@$(call MESSAGE,"Extracting prebuilt binary tarball: $($(PKG)_NAME)")
|
||||
# 创建解压目录,避免tar解压失败
|
||||
$(Q)mkdir -p $(BUILD_DIR)/$($(PKG)_BASENAME)
|
||||
# 执行解压命令(添加容错参数,输出详细日志)
|
||||
$(Q)$($(PKG)_PREBUILT_EXTRACT_CMDS) 2>&1 | tee $(BUILD_DIR)/$($(PKG)_BASENAME)/tar_extract.log || \
|
||||
(echo "WARN: Extract failed, skip error files..." && true)
|
||||
# 修复预编译包的RPATH(运行时库路径)
|
||||
@$(call MESSAGE,"Extracting prebuilt binary tarball")
|
||||
$($(PKG)_PREBUILT_EXTRACT_CMDS)
|
||||
@tools/support/scripts/fix-prebuilt-rpath.sh $($(PKG)_NAME) $($(PKG)_BASENAME) $($(PKG)_DIR)
|
||||
# 生成标记文件,避免重复执行
|
||||
$(Q)touch $@
|
||||
|
||||
# Remove package sources
|
||||
|
||||
Binary file not shown.
@ -94,14 +94,11 @@ CONFIG_NET_ARTINCHIP_MAC=y
|
||||
# CONFIG_NET_VENDOR_WIZNET is not set
|
||||
# CONFIG_NET_VENDOR_XILINX is not set
|
||||
CONFIG_REALTEK_PHY=y
|
||||
# CONFIG_RTL_CARDS is not set
|
||||
CONFIG_AIC_WLAN_SUPPORT=y
|
||||
CONFIG_AIC8800_WLAN_SUPPORT=m
|
||||
CONFIG_AIC8800_BTLPM_SUPPORT=m
|
||||
CONFIG_INPUT_EVDEV=y
|
||||
CONFIG_KEYBOARD_GPIO=y
|
||||
CONFIG_INPUT_TOUCHSCREEN=y
|
||||
CONFIG_TOUCHSCREEN_ARTINCHIP=y
|
||||
CONFIG_TOUCHSCREEN_GT9XX=y
|
||||
# CONFIG_LEGACY_PTYS is not set
|
||||
CONFIG_SERIAL_8250=y
|
||||
# CONFIG_SERIAL_8250_DEPRECATED_OPTIONS is not set
|
||||
@ -130,12 +127,11 @@ CONFIG_FB=y
|
||||
CONFIG_BACKLIGHT_CLASS_DEVICE=y
|
||||
CONFIG_BACKLIGHT_PWM=y
|
||||
CONFIG_BACKLIGHT_GPIO=y
|
||||
CONFIG_LT8911EXB=y
|
||||
CONFIG_ARTINCHIP_GE=y
|
||||
CONFIG_ARTINCHIP_VE=y
|
||||
CONFIG_ARTINCHIP_FB=y
|
||||
CONFIG_AIC_DISP_MIPI_DSI=y
|
||||
CONFIG_AIC_PANEL_DSI_SIMPLE=y
|
||||
CONFIG_AIC_DISP_LVDS=y
|
||||
CONFIG_AIC_PANEL_LVDS_GENERAL=y
|
||||
CONFIG_SOUND=y
|
||||
CONFIG_SND=y
|
||||
CONFIG_SND_SOC=y
|
||||
@ -201,8 +197,8 @@ CONFIG_CRYPTO_STATS=y
|
||||
CONFIG_CRYPTO_USER_API_AKCIPHER=y
|
||||
CONFIG_CRYPTO_DEV_ARTINCHIP_CE=y
|
||||
CONFIG_DMA_CMA=y
|
||||
CONFIG_CMA_SIZE_MBYTES=52
|
||||
CONFIG_CMA_MPP_SIZE_MBYTES=28
|
||||
CONFIG_CMA_SIZE_MBYTES=24
|
||||
CONFIG_CMA_MPP_SIZE_MBYTES=16
|
||||
CONFIG_PRINTK_TIME=y
|
||||
CONFIG_DEBUG_INFO=y
|
||||
CONFIG_DEBUG_FS=y
|
||||
|
||||
@ -46,15 +46,10 @@ extern int aicwf_dbg_level_bsp;
|
||||
|
||||
#define AICWF_LOG "AICWFDBG("
|
||||
|
||||
//#define AICWFDBG(level, args, arg...) \
|
||||
do { \
|
||||
if (aicwf_dbg_level_bsp & level) { \
|
||||
printk(AICWF_LOG#level")\t" args, ##arg); \
|
||||
} \
|
||||
} while (0)
|
||||
#define AICWFDBG(level, args, arg...) \
|
||||
do { \
|
||||
if (aicwf_dbg_level_bsp & level) { \
|
||||
printk(AICWF_LOG#level")\t" args, ##arg); \
|
||||
} \
|
||||
} while (0)
|
||||
|
||||
|
||||
@ -20,15 +20,10 @@ void rwnx_data_dump(char* tag, void* data, unsigned long len);
|
||||
|
||||
#define AICWF_LOG "AICWFDBG("
|
||||
|
||||
//#define AICWFDBG(level, args, arg...) \
|
||||
do { \
|
||||
if (aicwf_dbg_level & level) { \
|
||||
printk(AICWF_LOG#level")\t" args, ##arg); \
|
||||
} \
|
||||
} while (0)
|
||||
#define AICWFDBG(level, args, arg...) \
|
||||
do { \
|
||||
if (aicwf_dbg_level & level) { \
|
||||
printk(AICWF_LOG#level")\t" args, ##arg); \
|
||||
} \
|
||||
} while (0)
|
||||
|
||||
|
||||
@ -24,7 +24,6 @@ source "drivers/video/fbdev/Kconfig"
|
||||
endmenu
|
||||
|
||||
source "drivers/video/backlight/Kconfig"
|
||||
source "drivers/video/lt8911exb/Kconfig"
|
||||
|
||||
config VGASTATE
|
||||
tristate
|
||||
|
||||
@ -9,7 +9,6 @@ obj-y += backlight/
|
||||
|
||||
obj-y += fbdev/
|
||||
obj-y += artinchip/
|
||||
obj-y += lt8911exb/
|
||||
|
||||
obj-$(CONFIG_VIDEOMODE_HELPERS) += display_timing.o videomode.o
|
||||
ifeq ($(CONFIG_OF),y)
|
||||
|
||||
@ -71,15 +71,15 @@ static struct aic_panel_funcs panel_funcs = {
|
||||
|
||||
/* Init the videomode parameter, dts will override the initial value. */
|
||||
static struct videomode panel_vm = {
|
||||
.pixelclock = 150 * 1000 * 1000,
|
||||
.hactive = 1920,
|
||||
.hfront_porch = 188,
|
||||
.hback_porch = 148,
|
||||
.hsync_len = 44,
|
||||
.vactive = 1080,
|
||||
.vfront_porch = 4,
|
||||
.vback_porch = 36,
|
||||
.vsync_len = 5,
|
||||
.pixelclock = 130000000,
|
||||
.hactive = 1200,
|
||||
.hfront_porch = 160,
|
||||
.hback_porch = 160,
|
||||
.hsync_len = 40,
|
||||
.vactive = 1920,
|
||||
.vfront_porch = 10,
|
||||
.vback_porch = 20,
|
||||
.vsync_len = 8,
|
||||
.flags = DISPLAY_FLAGS_HSYNC_LOW | DISPLAY_FLAGS_VSYNC_LOW |
|
||||
DISPLAY_FLAGS_DE_HIGH | DISPLAY_FLAGS_PIXDATA_POSEDGE
|
||||
};
|
||||
|
||||
@ -1,10 +0,0 @@
|
||||
|
||||
config LT8911EXB
|
||||
tristate "LT8911EXB Driver"
|
||||
default n
|
||||
help
|
||||
Control LT8911EXB Chip
|
||||
Select m:build as a separate module;
|
||||
Select y:Build into the kernel
|
||||
Select n:Not build
|
||||
|
||||
@ -1,32 +0,0 @@
|
||||
#include "include/include.h"
|
||||
|
||||
bool g_irq_flag = 0;
|
||||
|
||||
|
||||
int LT8911EXB_Main(void *data)
|
||||
{
|
||||
|
||||
printk("LT8911EXB Init Start:");
|
||||
|
||||
LT8911_Reset();
|
||||
msleep(100);
|
||||
LT8911_ChipID();
|
||||
LT8911_SetVideoTiming(&video);
|
||||
LT8911_Init(&video);
|
||||
LT8911_LinkTrain();
|
||||
|
||||
LT8911_LinkTrainResultCheck();
|
||||
LT8911_video_check() ;
|
||||
LT8911_pcr_mk_printk();
|
||||
LT8911_htotal_stable_printk();
|
||||
|
||||
|
||||
while(!atomic_read(&thread_should_stop))
|
||||
{
|
||||
LT8911_MainLoop(&video);
|
||||
msleep(500);
|
||||
|
||||
}
|
||||
return 0;
|
||||
|
||||
}
|
||||
@ -1,283 +0,0 @@
|
||||
#include "include/include.h"
|
||||
|
||||
|
||||
struct _lt8911exb *lt8911exb;
|
||||
static struct task_struct *kthread_obj;
|
||||
atomic_t thread_should_stop = ATOMIC_INIT(0);
|
||||
char *ChipName = "lt8911exb"; //Define Lontium Chip Name
|
||||
static int major = 0;
|
||||
static struct cdev chip_cdev;
|
||||
static struct class *chip_class;
|
||||
|
||||
|
||||
|
||||
static int chip_open(struct inode *inode, struct file *filp)
|
||||
{
|
||||
printk("chip open\n");
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
||||
static int chip_close (struct inode *node, struct file *file)
|
||||
{
|
||||
printk("chip close\n");
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
||||
static ssize_t chip_read(struct file *filp, char __user *buf, size_t cnt, loff_t *offt)
|
||||
{
|
||||
Chip_Control_Args parameter;
|
||||
|
||||
if (copy_from_user(¶meter, buf, sizeof(parameter))) {
|
||||
return -EFAULT;
|
||||
}
|
||||
|
||||
parameter.value = HDMI_ReadI2C_Byte(parameter.address);
|
||||
|
||||
if (copy_to_user(buf, ¶meter, sizeof(parameter))) {
|
||||
return -EFAULT;
|
||||
}
|
||||
|
||||
return sizeof(parameter);
|
||||
|
||||
}
|
||||
|
||||
static ssize_t chip_write(struct file *filp, const char __user *buf, size_t cnt, loff_t *offt)
|
||||
{
|
||||
Chip_Control_Args parameter;
|
||||
|
||||
if (copy_from_user(¶meter, buf, sizeof(parameter))) {
|
||||
return -EFAULT;
|
||||
}
|
||||
|
||||
HDMI_WriteI2C_Byte(parameter.address, parameter.value);
|
||||
|
||||
return sizeof(parameter);
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
static struct file_operations chip_drv = {
|
||||
.owner = THIS_MODULE,
|
||||
.open = chip_open,
|
||||
.release = chip_close,
|
||||
.read = chip_read,
|
||||
.write = chip_write,
|
||||
};
|
||||
|
||||
|
||||
|
||||
static int chip_dev_init(void)
|
||||
{
|
||||
int ret;
|
||||
dev_t devid;
|
||||
|
||||
ret = alloc_chrdev_region(&devid, 0, 1, ChipName);
|
||||
if (ret < 0) {
|
||||
return ret;
|
||||
}
|
||||
|
||||
major = MAJOR(devid);
|
||||
cdev_init(&chip_cdev, &chip_drv);
|
||||
cdev_add(&chip_cdev, devid, 1);
|
||||
chip_class = class_create(THIS_MODULE, "chip_class");
|
||||
if (IS_ERR(chip_class)) {
|
||||
unregister_chrdev(major, ChipName);
|
||||
return -1;
|
||||
}
|
||||
|
||||
device_create(chip_class, NULL, MKDEV(major, 0), NULL, ChipName); /* /dev/ChipName */
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
||||
static void chip_dev_exit(void)
|
||||
{
|
||||
device_destroy(chip_class, MKDEV(major, 0));
|
||||
class_destroy(chip_class);
|
||||
cdev_del(&chip_cdev);
|
||||
unregister_chrdev_region(MKDEV(major,0), 1);
|
||||
}
|
||||
|
||||
|
||||
|
||||
static const struct regmap_range chip_ranges[] = {
|
||||
{ .range_min = 0, .range_max = 0xffff },
|
||||
};
|
||||
|
||||
static const struct regmap_access_table chip_table = {
|
||||
.yes_ranges = chip_ranges,
|
||||
.n_yes_ranges = ARRAY_SIZE(chip_ranges),
|
||||
};
|
||||
|
||||
static const struct regmap_config chip_regmap_config = {
|
||||
.reg_bits = 8,
|
||||
.val_bits = 8,
|
||||
.volatile_table = &chip_table,
|
||||
.cache_type = REGCACHE_NONE,
|
||||
};
|
||||
|
||||
|
||||
|
||||
/*
|
||||
* devm_gpiod_get_optional - If this fails, NULL is returned and no error pointer.
|
||||
*
|
||||
* devm_gpiod_get - If this fails, an error pointer is returned, usually ERR_PTR(-ENOENT).
|
||||
*
|
||||
* The devm_gpiod_get function is recommended for practical use.
|
||||
*/
|
||||
static int chip_parse_dts(struct device *dev)
|
||||
{
|
||||
|
||||
//Gets the handle to power gpio in dts
|
||||
|
||||
lt8911exb->power_gpio=devm_gpiod_get_optional(dev, "power", GPIOD_OUT_LOW);
|
||||
if (IS_ERR(lt8911exb->power_gpio)) {
|
||||
dev_err(dev, "Failed to get power GPIO\n");
|
||||
return PTR_ERR(lt8911exb->power_gpio);
|
||||
}
|
||||
|
||||
|
||||
//Gets the handle to reset gpio in dts
|
||||
|
||||
lt8911exb->reset_gpio=devm_gpiod_get_optional(dev, "reset", GPIOD_OUT_LOW);
|
||||
if (IS_ERR(lt8911exb->reset_gpio)) {
|
||||
dev_err(dev, "Failed to get reset GPIO\n");
|
||||
return PTR_ERR(lt8911exb->reset_gpio);
|
||||
}
|
||||
|
||||
|
||||
// Additional GPIO pins can be added here if needed
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
||||
static int chip_probe(struct i2c_client *client, const struct i2c_device_id *id)
|
||||
{
|
||||
int ret;
|
||||
|
||||
chip_dev_init();
|
||||
|
||||
lt8911exb = devm_kzalloc(&client->dev, sizeof(*lt8911exb), GFP_KERNEL);
|
||||
if (lt8911exb == NULL)
|
||||
return -ENOMEM;
|
||||
|
||||
lt8911exb->trans_i2c = client;
|
||||
|
||||
lt8911exb->dev = &client->dev;
|
||||
|
||||
lt8911exb->chip_regmap = devm_regmap_init_i2c(client, &chip_regmap_config);
|
||||
if (IS_ERR(lt8911exb->chip_regmap)) {
|
||||
dev_err(&client->dev, "Failed to initialize regmap\n");
|
||||
return PTR_ERR(lt8911exb->chip_regmap);
|
||||
}
|
||||
|
||||
ret = chip_parse_dts(lt8911exb->dev);
|
||||
if (ret<0){
|
||||
dev_err(&client->dev, "Failed to parse device tree\n");
|
||||
return ret;
|
||||
}
|
||||
|
||||
i2c_set_clientdata(client, lt8911exb);
|
||||
|
||||
kthread_obj = kthread_run(LT8911EXB_Main, NULL, "LT8911EXB_kthread");
|
||||
if (IS_ERR(kthread_obj)) {
|
||||
kthread_obj = NULL;
|
||||
chip_dev_exit();
|
||||
dev_err(&client->dev, "Failed to create kernel thread\n");
|
||||
return PTR_ERR(kthread_obj);
|
||||
}
|
||||
|
||||
return 0;
|
||||
|
||||
}
|
||||
|
||||
static int chip_remove(struct i2c_client *client)
|
||||
{
|
||||
|
||||
if (kthread_obj) {
|
||||
atomic_set(&thread_should_stop, 1);
|
||||
kthread_stop(kthread_obj);
|
||||
kthread_obj = NULL;
|
||||
}
|
||||
|
||||
chip_dev_exit();
|
||||
|
||||
printk("driver removed\n");
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
||||
static int chip_suspend(struct device *dev)
|
||||
{
|
||||
|
||||
//power off
|
||||
atomic_set(&thread_should_stop, 1);
|
||||
kthread_stop(kthread_obj);
|
||||
msleep(5);
|
||||
gpiod_set_value(lt8911exb->power_gpio,0);
|
||||
printk(KERN_INFO "lt8911exb Suspend");
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
||||
|
||||
static int chip_resume(struct device *dev)
|
||||
{
|
||||
|
||||
//power on
|
||||
gpiod_set_value(lt8911exb->power_gpio,1);
|
||||
msleep(5);
|
||||
atomic_set(&thread_should_stop, 0);
|
||||
kthread_obj = kthread_run(LT8911EXB_Main, NULL, "LT8911EXB_kthread");
|
||||
printk(KERN_INFO "lt8911exb Resume");
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
||||
static const struct dev_pm_ops chip_pm_ops = {
|
||||
.suspend = chip_suspend,
|
||||
.resume = chip_resume,
|
||||
};
|
||||
|
||||
|
||||
|
||||
|
||||
static const struct i2c_device_id chip_ids[] = {
|
||||
{"lt8911exb", 0},
|
||||
{ }
|
||||
};
|
||||
MODULE_DEVICE_TABLE(i2c, chip_ids);
|
||||
|
||||
|
||||
static const struct of_device_id chip_id_table[] = {
|
||||
{.compatible = "lontium,lt8911exb"},
|
||||
{ }
|
||||
};
|
||||
MODULE_DEVICE_TABLE(of, chip_id_table);
|
||||
|
||||
|
||||
static struct i2c_driver chip_driver = {
|
||||
.driver = {
|
||||
.owner = THIS_MODULE,
|
||||
.name = "lt8911exb",
|
||||
.pm = &chip_pm_ops,
|
||||
.of_match_table = chip_id_table,
|
||||
|
||||
},
|
||||
.probe = chip_probe,
|
||||
.remove = chip_remove,
|
||||
.id_table = chip_ids,
|
||||
};
|
||||
|
||||
|
||||
module_i2c_driver(chip_driver);
|
||||
|
||||
MODULE_LICENSE("GPL");
|
||||
MODULE_DESCRIPTION("LT8911EXB driver");
|
||||
MODULE_AUTHOR("Tony <syyang@lontium.com>");
|
||||
@ -1,5 +0,0 @@
|
||||
|
||||
lt8911exb-y := LontiumDrv.o LT8911EXB_Main.o OcmI2cMaster.o lt8911.o
|
||||
|
||||
obj-$(CONFIG_LT8911EXB) += lt8911exb.o
|
||||
|
||||
@ -1,72 +0,0 @@
|
||||
#include "include/include.h"
|
||||
|
||||
|
||||
|
||||
static unsigned char g_ucLogLevel = LOG_DEBUG;
|
||||
static char *messageTypeStr[] = {"DEBUG","INFO","WARN", "ERROR","CRIT"};
|
||||
|
||||
//void Ocm_PrintLevel_Set(unsigned char ucLvl)
|
||||
//{
|
||||
// g_ucLogLevel = ucLvl;
|
||||
//}
|
||||
|
||||
void LTLog(unsigned char ucLvl, const char *fmt, ...)
|
||||
{
|
||||
char buf[MAX_NUMBER_BYTES] = {0};
|
||||
va_list args;
|
||||
if (ucLvl > LOG_NOTRACE)
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
//打印大于等于该级别的字符串
|
||||
if(ucLvl >= g_ucLogLevel)
|
||||
{
|
||||
va_start(args, fmt);
|
||||
vsprintf(buf, fmt, args);
|
||||
va_end(args);
|
||||
//左对齐5个字符
|
||||
printk("\n[%-5s] %s", messageTypeStr[ucLvl], buf);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
int HDMI_WriteI2C_Byte(u8 addr,u8 data)
|
||||
{
|
||||
int ret = 0;
|
||||
|
||||
|
||||
ret = regmap_write(lt8911exb->chip_regmap, addr, data);
|
||||
|
||||
if (ret < 0) {
|
||||
printk("regmap_write error: (0x%02x 0x%02x 0x%02x) %d",
|
||||
lt8911exb->trans_i2c->addr, addr, data, ret);
|
||||
return ret;
|
||||
}
|
||||
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
int HDMI_ReadI2C_Byte(u8 addr)
|
||||
{
|
||||
int ret = 0;
|
||||
unsigned int val = 0;
|
||||
|
||||
ret = regmap_read(lt8911exb->chip_regmap, addr, &val);
|
||||
|
||||
if (ret < 0) {
|
||||
printk("regmap_read error: (0x%02x 0x%02x) %d",
|
||||
lt8911exb->trans_i2c->addr, addr, ret);
|
||||
|
||||
return ret;
|
||||
}
|
||||
|
||||
return (u8)val;
|
||||
}
|
||||
|
||||
|
||||
EXPORT_SYMBOL(HDMI_WriteI2C_Byte);
|
||||
EXPORT_SYMBOL(HDMI_ReadI2C_Byte);
|
||||
Binary file not shown.
Binary file not shown.
@ -1,11 +0,0 @@
|
||||
#ifndef _LT8911EXB_MAIN_H_
|
||||
#define _LT8911EXB_MAIN_H_
|
||||
|
||||
|
||||
|
||||
|
||||
extern bool g_irq_flag;
|
||||
extern int LT8911EXB_Main(void *data);
|
||||
|
||||
|
||||
#endif
|
||||
@ -1,27 +0,0 @@
|
||||
#ifndef _LONTIUMDRV_H_
|
||||
#define _LONTIUMDRV_H_
|
||||
|
||||
|
||||
struct _lt8911exb{
|
||||
struct device *dev;
|
||||
struct mutex ocm_lock;
|
||||
struct gpio_desc *reset_gpio;
|
||||
struct gpio_desc *power_gpio;
|
||||
struct i2c_client *trans_i2c;
|
||||
struct regmap *chip_regmap;
|
||||
};
|
||||
|
||||
|
||||
|
||||
typedef struct
|
||||
{
|
||||
u8 address; // 寄存器地址
|
||||
u8 value; // 寄存器值
|
||||
} Chip_Control_Args;
|
||||
|
||||
|
||||
extern struct _lt8911exb *lt8911exb;
|
||||
extern atomic_t thread_should_stop;
|
||||
|
||||
|
||||
#endif
|
||||
@ -1,22 +0,0 @@
|
||||
#ifndef _OCMI2CMASTER_H_
|
||||
#define _OCMI2CMASTER_H_
|
||||
|
||||
#define MAX_NUMBER_BYTES 128
|
||||
|
||||
typedef enum
|
||||
{
|
||||
LOG_DEBUG =0x00,
|
||||
LOG_INFO,
|
||||
LOG_WARN,
|
||||
LOG_ERROR,
|
||||
LOG_CRITICAL,
|
||||
LOG_NOTRACE,
|
||||
} LT_LogLevel;
|
||||
|
||||
void LTLog(unsigned char ucLvl, const char *fmt, ...);
|
||||
|
||||
|
||||
extern int HDMI_WriteI2C_Byte(u8 addr,u8 data);
|
||||
extern int HDMI_ReadI2C_Byte(u8 addr);
|
||||
|
||||
#endif
|
||||
@ -1,39 +0,0 @@
|
||||
#ifndef _INCLUDE_H_
|
||||
#define _INCLUDE_H_
|
||||
|
||||
#include <linux/module.h>
|
||||
#include <linux/i2c.h>
|
||||
#include <linux/regmap.h>
|
||||
#include <linux/gpio.h>
|
||||
#include <linux/kobject.h>
|
||||
#include <linux/sysfs.h>
|
||||
#include <linux/printk.h>
|
||||
|
||||
#include <linux/miscdevice.h>
|
||||
#include <linux/kernel.h>
|
||||
#include <linux/major.h>
|
||||
#include <linux/mutex.h>
|
||||
#include <linux/proc_fs.h>
|
||||
#include <linux/seq_file.h>
|
||||
#include <linux/stat.h>
|
||||
#include <linux/init.h>
|
||||
#include <linux/device.h>
|
||||
#include <linux/tty.h>
|
||||
#include <linux/kmod.h>
|
||||
#include <linux/gfp.h>
|
||||
#include <linux/module.h>
|
||||
|
||||
#include <linux/kthread.h>
|
||||
#include <linux/atomic.h>
|
||||
|
||||
|
||||
#include "type.h"
|
||||
#include "LontiumDrv.h"
|
||||
|
||||
#include "LT8911EXB_Main.h"
|
||||
#include "lt8911.h"
|
||||
|
||||
#include "OcmI2cMaster.h"
|
||||
|
||||
|
||||
#endif
|
||||
@ -1,72 +0,0 @@
|
||||
#ifndef _LT8911EXB_H_
|
||||
#define _LT8911EXB_H_
|
||||
|
||||
//////////////////////LT8911 Config///////////////////
|
||||
//#define _1920x1200_eDP_Panel_
|
||||
#define _1080P_eDP_Panel_
|
||||
//#define _1366x768_eDP_Panel_
|
||||
//#define _1280x800_eDP_Panel_
|
||||
//#define _1600x900_eDP_Panel_
|
||||
|
||||
#define SCRAMBLE_MODE 0x00 //0x80: edp, 0x00: dp
|
||||
|
||||
//#define sync_polarity 0x00 //0x00: no_adj; 0x20: vs_adj; 0x10: hs_adj; 0x30: H/Vs adj;
|
||||
|
||||
//#define _6bit_
|
||||
|
||||
//#define _dither_enable_
|
||||
|
||||
#define _eDP_2G7_
|
||||
//#define _eDP_1G62_
|
||||
|
||||
#define _link_train_enable_
|
||||
|
||||
//////////option for debug///////////
|
||||
//#define _read_edid_
|
||||
//#define _EDP_Pattern_
|
||||
//#define _Msa_Active_Only_
|
||||
#define _pcr_mk_printk_
|
||||
#define _htotal_stable_check_
|
||||
|
||||
//#define _gpio_sync_output_
|
||||
//#define sync_source 0x01 //gpio output lvds Rx sync
|
||||
#define sync_source 0x02 //gpio output lvds portA sync
|
||||
//#define sync_source 0x03 //gpio output lvds portB sync
|
||||
//gpio2: de, gpio3: vs, gpio4: hs.
|
||||
|
||||
struct video_timing{
|
||||
u16 hfp;
|
||||
u16 hs;
|
||||
u16 hbp;
|
||||
u16 hact;
|
||||
u16 htotal;
|
||||
u16 vfp;
|
||||
u16 vs;
|
||||
u16 vbp;
|
||||
u16 vact;
|
||||
u16 vtotal;
|
||||
u32 pclk_khz;
|
||||
};
|
||||
|
||||
struct Lane_No{
|
||||
u8 swing_high_byte;
|
||||
u8 swing_low_byte;
|
||||
u8 emph_high_byte;
|
||||
u8 emph_low_byte;
|
||||
};
|
||||
|
||||
|
||||
extern struct video_timing video;
|
||||
|
||||
extern void LT8911_Reset(void);
|
||||
extern void LT8911_ChipID(void);
|
||||
extern void LT8911_SetVideoTiming(struct video_timing *video_format);
|
||||
extern void LT8911_Init(struct video_timing *video_format);
|
||||
extern void LT8911_LinkTrain(void);
|
||||
extern void LT8911_LinkTrainResultCheck(void);
|
||||
extern void LT8911_video_check(void);
|
||||
extern void LT8911_pcr_mk_printk(void);
|
||||
extern void LT8911_htotal_stable_printk(void);
|
||||
extern void LT8911_MainLoop(struct video_timing *video_format);
|
||||
|
||||
#endif
|
||||
@ -1,10 +0,0 @@
|
||||
#ifndef _TYPE_H_
|
||||
#define _TYPE_H_
|
||||
|
||||
|
||||
#define HIGH 1
|
||||
#define LOW 0
|
||||
|
||||
|
||||
|
||||
#endif
|
||||
File diff suppressed because it is too large
Load Diff
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@ -1,4 +0,0 @@
|
||||
---- LT8911_Init Matches (3 in 3 files) ----
|
||||
Lt8911.c (d:\龙迅产品程序整理(深圳)\lt8911\lt8911\lt8911exb\democode\for linux\lt8911exb_linux_driver_v1.0.2):void LT8911_Init(struct video_timing *video_format)
|
||||
Lt8911.h (d:\龙迅产品程序整理(深圳)\lt8911\lt8911\lt8911exb\democode\for linux\lt8911exb_linux_driver_v1.0.2\include):extern void LT8911_Init(struct video_timing *video_format);
|
||||
LT8911EXB_Main.c (d:\龙迅产品程序整理(深圳)\lt8911\lt8911\lt8911exb\democode\for linux\lt8911exb_linux_driver_v1.0.2): LT8911_Init();
|
||||
Binary file not shown.
@ -99,7 +99,6 @@ CONFIG_NAND_BBT_OFFSET=0x240000
|
||||
CONFIG_SYS_SPI_NAND_U_BOOT_LOCATIONS=y
|
||||
CONFIG_SPI_NAND_WINBOND=y
|
||||
CONFIG_SPI_NAND_GIGADEVICE=y
|
||||
CONFIG_SPI_NAND_TOSHIBA=y
|
||||
CONFIG_SPI_NAND_FMSH=y
|
||||
CONFIG_SPI_NAND_FORESEE=y
|
||||
CONFIG_SPI_NAND_ZBIT=y
|
||||
@ -139,8 +138,8 @@ CONFIG_DM_VIDEO=y
|
||||
CONFIG_DISPLAY=y
|
||||
CONFIG_ARTINCHIP_GRAPHICS=y
|
||||
CONFIG_VIDEO_ARTINCHIP=y
|
||||
CONFIG_AIC_DISP_MIPI_DSI=y
|
||||
CONFIG_AIC_PANEL_DSI_SIMPLE=y
|
||||
CONFIG_AIC_DISP_LVDS=y
|
||||
CONFIG_AIC_PANEL_LVDS_GENERAL=y
|
||||
# CONFIG_WATCHDOG is not set
|
||||
# CONFIG_WATCHDOG_AUTOSTART is not set
|
||||
CONFIG_WDT=y
|
||||
|
||||
@ -139,16 +139,12 @@ static struct aic_pll clk_plls[] = {
|
||||
0, AIC_PLL_INT),
|
||||
CLK_PLL(CLK_PLL_INT1, PLL_INT1_GEN_REG, PLL_INT1_CFG_REG,
|
||||
0, AIC_PLL_INT),
|
||||
// CLK_PLL(CLK_PLL_FRA0, PLL_FRA0_GEN_REG, PLL_FRA0_CFG_REG,
|
||||
// PLL_FRA0_SDM_REG, AIC_PLL_SDM),
|
||||
CLK_PLL(CLK_PLL_FRA0, PLL_FRA0_GEN_REG, PLL_FRA0_CFG_REG,
|
||||
PLL_FRA0_SDM_REG, AIC_PLL_FRA),
|
||||
PLL_FRA0_SDM_REG, AIC_PLL_SDM),
|
||||
CLK_PLL(CLK_PLL_FRA1, PLL_FRA1_GEN_REG, PLL_FRA1_CFG_REG,
|
||||
PLL_FRA1_SDM_REG, AIC_PLL_FRA),
|
||||
// CLK_PLL_VIDEO(CLK_PLL_FRA2, PLL_FRA2_GEN_REG, PLL_FRA2_CFG_REG,
|
||||
// PLL_FRA2_SDM_REG, AIC_PLL_SDM, 0, 1200000000),
|
||||
CLK_PLL_VIDEO(CLK_PLL_FRA2, PLL_FRA2_GEN_REG, PLL_FRA2_CFG_REG,
|
||||
PLL_FRA2_SDM_REG, AIC_PLL_FRA, 0, 1200000000),
|
||||
PLL_FRA2_SDM_REG, AIC_PLL_SDM, 0, 1200000000),
|
||||
};
|
||||
|
||||
|
||||
|
||||
@ -192,26 +192,6 @@ static const struct spinand_info gigadevice_spinand_table[] = {
|
||||
SPINAND_HAS_QE_BIT,
|
||||
SPINAND_ECCINFO(&gd5fxgqx_variant2_ooblayout,
|
||||
gd5fxgq4uexxg_ecc_get_status)),
|
||||
SPINAND_INFO("GD5F2GM7UEY1G",
|
||||
SPINAND_ID(0x92),
|
||||
NAND_MEMORG(1, 2048, 128, 64, 2048, 1, 1, 1),
|
||||
NAND_ECCREQ(8, 512),
|
||||
SPINAND_INFO_OP_VARIANTS(&read_cache_variants_1gq5,
|
||||
&write_cache_variants,
|
||||
&update_cache_variants),
|
||||
SPINAND_HAS_QE_BIT,
|
||||
SPINAND_ECCINFO(&gd5fxgqx_variant2_ooblayout,
|
||||
gd5fxgq4uexxg_ecc_get_status)),
|
||||
SPINAND_INFO("GD5F2GQ5UEY1G",
|
||||
SPINAND_ID(0x52),
|
||||
NAND_MEMORG(1, 2048, 128, 64, 2048, 1, 1, 1),
|
||||
NAND_ECCREQ(8, 512),
|
||||
SPINAND_INFO_OP_VARIANTS(&read_cache_variants_1gq5,
|
||||
&write_cache_variants,
|
||||
&update_cache_variants),
|
||||
SPINAND_HAS_QE_BIT,
|
||||
SPINAND_ECCINFO(&gd5fxgqx_variant2_ooblayout,
|
||||
gd5fxgq4uexxg_ecc_get_status)),
|
||||
};
|
||||
|
||||
static int gigadevice_spinand_detect(struct spinand_device *spinand)
|
||||
|
||||
@ -281,7 +281,7 @@ static void aicfb_video_init(struct udevice *dev)
|
||||
uc_priv->fb = (void *)priv->fb_start;
|
||||
uc_priv->fb_size = dt->stride * dt->height;
|
||||
|
||||
memset(uc_priv->fb, 0, uc_priv->fb_size);
|
||||
memset(uc_priv->fb, 0xFF, uc_priv->fb_size);
|
||||
flush_dcache_range(priv->fb_start, priv->fb_start + uc_priv->fb_size);
|
||||
#endif
|
||||
}
|
||||
|
||||
@ -62,15 +62,6 @@ static struct aic_panel_funcs panel_funcs = {
|
||||
|
||||
/* Init the videomode parameter, dts will override the initial value. */
|
||||
static struct fb_videomode panel_vm = {
|
||||
.pixclock = 150 * 1000 * 1000,
|
||||
.xres = 1920,
|
||||
.right_margin = 188,
|
||||
.left_margin = 148,
|
||||
.hsync_len = 44,
|
||||
.yres = 1080,
|
||||
.lower_margin = 4,
|
||||
.upper_margin = 36,
|
||||
.vsync_len = 5,
|
||||
.flag = DISPLAY_FLAGS_HSYNC_LOW | DISPLAY_FLAGS_VSYNC_LOW |
|
||||
DISPLAY_FLAGS_DE_HIGH | DISPLAY_FLAGS_PIXDATA_POSEDGE
|
||||
};
|
||||
|
||||
@ -1 +0,0 @@
|
||||
/opt/linuxOS_D21X/target/d211/demo128_nand/image_cfg.json
|
||||
@ -7,7 +7,7 @@ BR2_TOOLCHAIN_EXTERNAL_CUSTOM_GLIBC=y
|
||||
BR2_TARGET_GENERIC_HOSTNAME="ArtInChip-Device"
|
||||
# BR2_TARGET_ENABLE_ROOT_LOGIN is not set
|
||||
BR2_TARGET_TZ_INFO=y
|
||||
BR2_TARGET_LOCALTIME="UTC"
|
||||
BR2_TARGET_LOCALTIME="Asia/Shanghai"
|
||||
BR2_ROOTFS_POST_IMAGE_SCRIPT="target/d211/common/post-image.sh"
|
||||
# BR2_TARGET_GENERIC_GETTY is not set
|
||||
BR2_ROOTFS_DEVICE_CREATION_DYNAMIC_MDEV=y
|
||||
@ -17,15 +17,6 @@ BR2_SYSTEM_DEFAULT_PATH="/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin"
|
||||
BR2_TARGET_ROOTFS_UBI=y
|
||||
BR2_TARGET_ROOTFS_UBIFS_MAX_SIZE=0x4000000
|
||||
BR2_TARGET_ROOTFS_UBIFS_OPTS="-F"
|
||||
BR2_TARGET_USERFS1=y
|
||||
BR2_TARGET_USERFS1_NAME="system"
|
||||
BR2_TARGET_USERFS1_TYPE_UBIFS=y
|
||||
BR2_TARGET_USERFS1_OVERLAY="target/$(LUBAN_CHIP_NAME)/$(LUBAN_BOARD_NAME)/system"
|
||||
BR2_TARGET_USERFS2=y
|
||||
BR2_TARGET_USERFS2_NAME="data"
|
||||
BR2_TARGET_USERFS2_TYPE_UBIFS=y
|
||||
BR2_TARGET_USERFS2_OVERLAY="target/$(LUBAN_CHIP_NAME)/$(LUBAN_BOARD_NAME)/data"
|
||||
BR2_GENERATE_BURNER_IMAGE=y
|
||||
BR2_GENERATE_IMAGE_AUTO_CALCULATE_SIZE=y
|
||||
BR2_PACKAGE_OPENSBI_FW_TEXT_BASE=0x47FE0000
|
||||
BR2_TARGET_UBOOT_BOARD_DEFCONFIG="d211_demo128_nand"
|
||||
@ -44,10 +35,9 @@ BR2_LINUX_KERNEL_DEFCONFIG="d211_demo128_nand"
|
||||
BR2_LINUX_KERNEL_IMAGEGZ=y
|
||||
BR2_PACKAGE_LINUX_TOOLS_SELFTESTS=y
|
||||
# BR2_PACKAGE_AIC_AUTHORIZATION is not set
|
||||
BR2_PACKAGE_AIC_MPP_AAC_DECODER=y
|
||||
BR2_PACKAGE_LVGL_UI=y
|
||||
# BR2_PACKAGE_TEST_DVP is not set
|
||||
# BR2_PACKAGE_TEST_TOUCHSCREEN is not set
|
||||
# BR2_PACKAGE_BUSYBOX_USE_PREBUILT is not set
|
||||
BR2_PACKAGE_BUSYBOX_CONFIG="package/third-party/busybox/configs/d211_demo128_nand_defconfig"
|
||||
BR2_PACKAGE_BUSYBOX_SHOW_OTHERS=y
|
||||
BR2_PACKAGE_UTIL_LINUX_BINARIES=y
|
||||
@ -60,31 +50,12 @@ BR2_PACKAGE_ALSA_UTILS_ACONNECT=y
|
||||
BR2_PACKAGE_FBDUMP=y
|
||||
BR2_PACKAGE_CAN_UTILS=y
|
||||
BR2_PACKAGE_ETHTOOL=y
|
||||
BR2_PACKAGE_IPERF3=y
|
||||
BR2_PACKAGE_LIBMNL=y
|
||||
BR2_PACKAGE_LIBNL_TOOLS=y
|
||||
BR2_PACKAGE_NETPERF=y
|
||||
BR2_PACKAGE_WPA_SUPPLICANT=y
|
||||
# BR2_PACKAGE_WPA_SUPPLICANT_USE_PREBUILT is not set
|
||||
BR2_PACKAGE_WPA_SUPPLICANT_WEXT=y
|
||||
BR2_PACKAGE_WPA_SUPPLICANT_AP_SUPPORT=y
|
||||
BR2_PACKAGE_WPA_SUPPLICANT_AUTOSCAN=y
|
||||
BR2_PACKAGE_WPA_SUPPLICANT_HOTSPOT=y
|
||||
BR2_PACKAGE_WPA_SUPPLICANT_DEBUG_SYSLOG=y
|
||||
BR2_PACKAGE_WPA_SUPPLICANT_WPS=y
|
||||
BR2_PACKAGE_WPA_SUPPLICANT_WPA3=y
|
||||
BR2_PACKAGE_WPA_SUPPLICANT_CLI=y
|
||||
BR2_PACKAGE_WPA_SUPPLICANT_WPA_CLIENT_SO=y
|
||||
BR2_PACKAGE_WPA_SUPPLICANT_PASSPHRASE=y
|
||||
BR2_PACKAGE_WIRELESS_TOOLS=y
|
||||
# BR2_PACKAGE_WIRELESS_TOOLS_USE_PREBUILT is not set
|
||||
BR2_PACKAGE_WIRELESS_TOOLS_LIB=y
|
||||
BR2_PACKAGE_HOSTAPD=y
|
||||
# BR2_PACKAGE_HOSTAPD_USE_PREBUILT is not set
|
||||
BR2_PACKAGE_HOSTAPD_DRIVER_WIRED=y
|
||||
BR2_PACKAGE_HOSTAPD_EAP=y
|
||||
BR2_PACKAGE_HOSTAPD_WPS=y
|
||||
BR2_PACKAGE_HOSTAPD_WPA3=y
|
||||
BR2_PACKAGE_AIC8800_FW=y
|
||||
BR2_PACKAGE_LIBKCAPI_ENCAPP=y
|
||||
BR2_PACKAGE_LIBKCAPI_HASHER=y
|
||||
BR2_PACKAGE_LIBKCAPI_RNGAPP=y
|
||||
@ -102,7 +73,6 @@ BR2_PACKAGE_BLUEZ5_UTILS_DEPRECATED=y
|
||||
BR2_PACKAGE_BLUEZ5_UTILS_EXPERIMENTAL=y
|
||||
BR2_PACKAGE_BLUEZ_TOOLS=y
|
||||
BR2_PACKAGE_ANDROID_TOOLS=y
|
||||
BR2_PACKAGE_SWUPDATE=y
|
||||
BR2_PACKAGE_RTL8733BS_BT_FW=y
|
||||
# BR2_PACKAGE_HOST_UBOOT_TOOLS is not set
|
||||
BR2_PACKAGE_HOST_E2FSPROGS=y
|
||||
|
||||
Binary file not shown.
@ -1481,8 +1481,8 @@
|
||||
<AIC_PINMUX('C', 2, 2)>,
|
||||
<AIC_PINMUX('C', 3, 2)>,
|
||||
<AIC_PINMUX('C', 4, 2)>,
|
||||
<AIC_PINMUX('C', 5, 2)>;
|
||||
//<AIC_PINMUX('C', 6, 2)>;
|
||||
<AIC_PINMUX('C', 5, 2)>,
|
||||
<AIC_PINMUX('C', 6, 2)>;
|
||||
bias-pull-up;
|
||||
drive-strength = <3>;
|
||||
};
|
||||
|
||||
@ -34,7 +34,7 @@ kernel_comp_size=0x1000000
|
||||
# set_commonargs=setenv bootargs earlycon=${earlycon} earlyprintk rdinit=${init} initramfs_dbg=${ramfs_dbg}
|
||||
set_commonargs_recovery=setenv bootargs earlycon=${earlycon} earlyprintk rdinit=/linuxrc
|
||||
# Case 2: Mount rootfs directly
|
||||
set_commonargs=setenv bootargs earlycon=${earlycon} earlyprintk init=/linuxrc firmware_class.path=/etc/firmware
|
||||
set_commonargs=setenv bootargs quiet earlycon=${earlycon} earlyprintk init=/linuxrc firmware_class.path=/etc/firmware
|
||||
|
||||
|
||||
#===============================================================================
|
||||
@ -63,7 +63,7 @@ set_nand_mtdargs=env delete mtdparts
|
||||
|
||||
set_nand_bootargs=run set_nand_mtdargs; \
|
||||
run set_commonargs; \
|
||||
setenv bootargs ${bootargs} mtdparts=${MTD} ubi.mtd=${ubi_rootfs_mtd} ubi.mtd=11 root=${nand_root} rootfstype=${nand_rootfstype}
|
||||
setenv bootargs ${bootargs} mtdparts=${MTD} ubi.mtd=${ubi_rootfs_mtd} root=${nand_root} rootfstype=${nand_rootfstype}
|
||||
|
||||
set_nand_bootargs_recovery=run set_nand_mtdargs; \
|
||||
run set_commonargs_recovery; \
|
||||
|
||||
@ -167,19 +167,78 @@
|
||||
};
|
||||
#endif
|
||||
|
||||
panel_dsi {
|
||||
compatible = "artinchip,aic-dsi-panel-simple";
|
||||
u-boot,dm-pre-reloc;
|
||||
backlight = <&backlight>;
|
||||
status = "okay";
|
||||
panel_rgb {
|
||||
compatible = "artinchip,aic-general-rgb-panel";
|
||||
status = "disabled";
|
||||
|
||||
//reset-gpios = <&gpio_e 1 GPIO_ACTIVE_HIGH>;
|
||||
enable-gpios = <&gpio_e 19 GPIO_ACTIVE_HIGH>;
|
||||
rgb-mode = <PRGB>;
|
||||
interface-format = <PRGB_16BIT_LD>;
|
||||
clock-phase = <DEGREE_0>;
|
||||
data-order = <RGB>;
|
||||
disp-dither = <DITHER_RGB565>;
|
||||
u-boot,dm-pre-reloc;
|
||||
|
||||
port {
|
||||
u-boot,dm-pre-reloc;
|
||||
panel_dsi_in: endpoint {
|
||||
panel_rgb_in: endpoint {
|
||||
remote-endpoint = <&rgb0_out>;
|
||||
u-boot,dm-pre-reloc;
|
||||
};
|
||||
};
|
||||
|
||||
display-timings {
|
||||
native-mode = <&timing0>;
|
||||
u-boot,dm-pre-reloc;
|
||||
timing0: 1024x600 {
|
||||
clock-frequency = <52000000>;
|
||||
hactive = <1024>;
|
||||
vactive = <600>;
|
||||
hback-porch = <160>;
|
||||
hfront-porch = <160>;
|
||||
hsync-len = <20>;
|
||||
vback-porch = <12>;
|
||||
vfront-porch = <20>;
|
||||
vsync-len = <3>;
|
||||
de-active = <1>;
|
||||
pixelclk-active = <1>;
|
||||
u-boot,dm-pre-reloc;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
panel_lvds {
|
||||
compatible = "artinchip,aic-general-lvds-panel";
|
||||
data-mapping = "vesa-24";
|
||||
data-channel = "single-link1";
|
||||
status = "okay";
|
||||
u-boot,dm-pre-reloc;
|
||||
|
||||
enable-gpios = <&gpio_c 7 GPIO_ACTIVE_HIGH>;
|
||||
sleep-gpios = <&gpio_a 3 GPIO_ACTIVE_HIGH>;
|
||||
port {
|
||||
panel_lvds_in: endpoint {
|
||||
remote-endpoint = <&lvds0_out>;
|
||||
u-boot,dm-pre-reloc;
|
||||
};
|
||||
};
|
||||
|
||||
display-timings {
|
||||
native-mode = <&timing1>;
|
||||
u-boot,dm-pre-reloc;
|
||||
timing1: 1024x600 {
|
||||
clock-frequency = <52000000>;
|
||||
hactive = <1024>;
|
||||
vactive = <600>;
|
||||
hback-porch = <160>;
|
||||
hfront-porch = <160>;
|
||||
hsync-len = <20>;
|
||||
vback-porch = <20>;
|
||||
vfront-porch = <12>;
|
||||
vsync-len = <3>;
|
||||
de-active = <1>;
|
||||
pixelclk-active = <1>;
|
||||
u-boot,dm-pre-reloc;
|
||||
remote-endpoint = <&dsi0_out>;
|
||||
};
|
||||
};
|
||||
};
|
||||
@ -187,29 +246,27 @@
|
||||
backlight: backlight {
|
||||
compatible = "pwm-backlight";
|
||||
/* pwm node name; pwm device No.; period_ns; pwm_polarity */
|
||||
pwms = <&pwm 0 1000000 0>;
|
||||
pwms = <&pwm 3 1000000 0>;
|
||||
brightness-levels = <0 10 20 30 40 50 60 70 80 90 100>;
|
||||
default-brightness-level = <6>;
|
||||
u-boot,dm-pre-reloc;
|
||||
status = "okay";
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
rfkill_bt {
|
||||
compatible = "rfkill-gpio";
|
||||
rfkill-name = "bluetooth";
|
||||
rfkill-type = <2>;
|
||||
reset-gpios = <&gpio_c 6 GPIO_ACTIVE_HIGH>;
|
||||
reset-gpios = <&gpio_d 3 GPIO_ACTIVE_HIGH>;
|
||||
status = "okay";
|
||||
};
|
||||
/*
|
||||
|
||||
rfkill_wlan {
|
||||
compatible = "rfkill-gpio";
|
||||
rfkill-name = "wlan";
|
||||
rfkill-type = <1>;
|
||||
//reset-gpios = <&gpio_c 6 GPIO_ACTIVE_HIGH>;
|
||||
reset-gpios = <&gpio_d 1 GPIO_ACTIVE_HIGH>;
|
||||
status = "okay";
|
||||
};
|
||||
*/
|
||||
keys: gpio-keys {
|
||||
compatible = "gpio-keys";
|
||||
|
||||
@ -313,9 +370,8 @@
|
||||
|
||||
&uart2 {
|
||||
pinctrl-names = "default";
|
||||
//pinctrl-0 = <&uart2_pins_a>;
|
||||
pinctrl-0 = <&uart2_pins_a>, <&uart2_rts_pins_a>, <&uart2_cts_pins_a>;
|
||||
status = "okay";
|
||||
pinctrl-0 = <&uart2_pins_a>;
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
&uart3 {
|
||||
@ -353,16 +409,11 @@
|
||||
&i2c0 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&i2c0_pins_b>;
|
||||
status = "okay";
|
||||
|
||||
lt8911exb@29 {
|
||||
status = "okay";
|
||||
compatible = "lontium,lt8911exb";
|
||||
reg = <0x29>;
|
||||
reset-gpios = <&gpio_e 6 GPIO_ACTIVE_HIGH>;
|
||||
power-gpios = <&gpio_e 2 GPIO_ACTIVE_HIGH>;
|
||||
status = "disabled";
|
||||
rtc@32 {
|
||||
compatible = "epson,rx8010";
|
||||
reg = <0x32>;
|
||||
};
|
||||
|
||||
};
|
||||
|
||||
&i2c1 {
|
||||
@ -380,10 +431,10 @@
|
||||
&i2c3 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&i2c3_pins_a>;
|
||||
status = "disabled";
|
||||
status = "okay";
|
||||
|
||||
gt9xx@5d {
|
||||
status = "disabled";
|
||||
status = "okay";
|
||||
compatible = "goodix,gt9xx";
|
||||
reg = <0x5d>;
|
||||
reset-gpios = <&gpio_a 8 GPIO_ACTIVE_LOW>;
|
||||
@ -450,14 +501,10 @@
|
||||
&sdmc1 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&sdmc1_pins>;
|
||||
max-frequency= <40000000>;
|
||||
//power-gpios = <&gpio_c 6 GPIO_ACTIVE_HIGH>;
|
||||
bus-width = <4>;
|
||||
no-mmc;
|
||||
no-sd;
|
||||
non-removable;
|
||||
cap-sdio-irq;
|
||||
cap-sd-highspeed;
|
||||
status = "okay";
|
||||
u-boot,dm-pre-reloc;
|
||||
};
|
||||
|
||||
&sdmc2 {
|
||||
@ -468,7 +515,7 @@
|
||||
no-sd;
|
||||
non-removable;
|
||||
cap-sdio-irq;
|
||||
status = "disabled";
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
/* case 1: USB0 = OTG Enable */
|
||||
@ -563,9 +610,9 @@
|
||||
};
|
||||
};
|
||||
|
||||
pwm0_pins_d: pwm0-3 {
|
||||
pwm3_pins_d: pwm3-3 {
|
||||
pins {
|
||||
pinmux = <AIC_PINMUX('E', 1, 8)>;
|
||||
pinmux = <AIC_PINMUX('E', 19, 5)>;
|
||||
bias-disable;
|
||||
drive-strength = <3>;
|
||||
};
|
||||
@ -596,7 +643,7 @@
|
||||
gpio_f: bank-5 {
|
||||
u-boot,dm-pre-reloc;
|
||||
};
|
||||
dsi_pins: dsi-0 {
|
||||
lvds1_pins: lvds1-0 {
|
||||
u-boot,dm-pre-reloc;
|
||||
pins {
|
||||
u-boot,dm-pre-reloc;
|
||||
@ -617,12 +664,6 @@
|
||||
u-boot,dm-pre-reloc;
|
||||
};
|
||||
};
|
||||
pwm0_pins_d: pwm0-3 {
|
||||
u-boot,dm-pre-reloc;
|
||||
pins {
|
||||
u-boot,dm-pre-reloc;
|
||||
};
|
||||
};
|
||||
sdmc1_pins: sdmc1-0 {
|
||||
u-boot,dm-pre-reloc;
|
||||
pins {
|
||||
@ -642,7 +683,7 @@
|
||||
aic,use_extclk;
|
||||
|
||||
|
||||
status = "disabled";
|
||||
status = "okay";
|
||||
|
||||
gmac0_mdio: mdio {
|
||||
compatible = "aicmac-mdio";
|
||||
@ -660,8 +701,8 @@
|
||||
|
||||
&codec {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&spk_pins_c>, <&dmic_pins_a>;
|
||||
pa-gpios = <&gpio_a 7 GPIO_ACTIVE_HIGH>;
|
||||
pinctrl-0 = <&spk_pins_d>, <&dmic_pins_a>;
|
||||
pa-gpios = <&gpio_a 7 GPIO_ACTIVE_LOW>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
@ -677,7 +718,7 @@
|
||||
|
||||
&fb0 {
|
||||
artinchip,uboot-logo-on=<1>;
|
||||
height-virtual = <2160>;
|
||||
height-virtual = <1200>;
|
||||
u-boot,dm-pre-reloc;
|
||||
port {
|
||||
u-boot,dm-pre-reloc;
|
||||
@ -698,7 +739,6 @@
|
||||
|
||||
port@0 {
|
||||
reg = <0>;
|
||||
u-boot,dm-pre-reloc;
|
||||
de0_in: endpoint {
|
||||
remote-endpoint = <&fb0_out>;
|
||||
u-boot,dm-pre-reloc;
|
||||
@ -707,28 +747,25 @@
|
||||
|
||||
port@1 {
|
||||
reg = <1>;
|
||||
u-boot,dm-pre-reloc;
|
||||
de0_out: endpoint {
|
||||
remote-endpoint = <&dsi0_in>;
|
||||
remote-endpoint = <&lvds0_in>;
|
||||
u-boot,dm-pre-reloc;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
|
||||
&dsi0 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&dsi_pins>;
|
||||
status = "okay";
|
||||
&rgb0 {
|
||||
pinctrl-names = "default", "sleep";
|
||||
pinctrl-0 = <&lcd_rgb565_ld_pins>;
|
||||
pinctrl-1 = <&lcd_rgb565_ld_sleep_pins>;
|
||||
u-boot,dm-pre-reloc;
|
||||
data-lanes = <3 2 1 0>;
|
||||
lane-polarities = <0 0 0 0>;
|
||||
status = "disabled";
|
||||
|
||||
port@0 {
|
||||
reg = <0>;
|
||||
u-boot,dm-pre-reloc;
|
||||
dsi0_in: endpoint {
|
||||
remote-endpoint = <&de0_out>;
|
||||
rgb0_in: endpoint {
|
||||
remote-endpoint = <&rgb0_in>;
|
||||
u-boot,dm-pre-reloc;
|
||||
};
|
||||
};
|
||||
@ -736,8 +773,31 @@
|
||||
port@1 {
|
||||
reg = <1>;
|
||||
u-boot,dm-pre-reloc;
|
||||
dsi0_out: endpoint {
|
||||
remote-endpoint = <&panel_dsi_in>;
|
||||
rgb0_out: endpoint {
|
||||
remote-endpoint = <&panel_rgb_in>;
|
||||
u-boot,dm-pre-reloc;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&lvds0 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&lvds1_pins>;
|
||||
status = "okay";
|
||||
u-boot,dm-pre-reloc;
|
||||
|
||||
port@0 {
|
||||
reg = <0>;
|
||||
lvds0_in: endpoint {
|
||||
remote-endpoint = <&de0_out>;
|
||||
u-boot,dm-pre-reloc;
|
||||
};
|
||||
};
|
||||
|
||||
port@1 {
|
||||
reg = <1>;
|
||||
lvds0_out: endpoint {
|
||||
remote-endpoint = <&panel_lvds_in>;
|
||||
u-boot,dm-pre-reloc;
|
||||
};
|
||||
};
|
||||
@ -817,10 +877,10 @@
|
||||
};
|
||||
|
||||
&pwm {
|
||||
status = "okay";
|
||||
status = "disabled";
|
||||
u-boot,dm-pre-reloc;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pwm0_pins_d>;
|
||||
pinctrl-0 = <&pwm3_pins_d>;
|
||||
/* mode: up-count, down-count, up-down-count
|
||||
action: none, low, high, inverse */
|
||||
pwm0 {
|
||||
@ -831,7 +891,7 @@
|
||||
/* CBD, CBU, CAD, CAU, PRD, ZRO */
|
||||
aic,action0 = "none", "none", "none", "low", "none", "high";
|
||||
aic,action1 = "none", "none", "none", "high", "none", "low";
|
||||
status = "okay";
|
||||
status = "disabled";
|
||||
u-boot,dm-pre-reloc;
|
||||
};
|
||||
|
||||
|
||||
Binary file not shown.
@ -1,6 +1,6 @@
|
||||
{
|
||||
"spi-nand": { // Device, The name should be the same with string in image:info:media:type
|
||||
"size": "256m", // Size of SPI NAND
|
||||
"size": "128m", // Size of SPI NAND
|
||||
"partitions": {
|
||||
"spl": { "size": "1m" },
|
||||
"uboot": { "size": "1m" },
|
||||
@ -13,7 +13,7 @@
|
||||
"kernel": { "size": "12m" },
|
||||
"recovery": { "size": "16m" },
|
||||
"ubiroot": {
|
||||
"size": "40m",
|
||||
"size": "64m",
|
||||
"ubi": { // Volume in UBI device
|
||||
"rootfs": { "size": "-" },
|
||||
},
|
||||
@ -21,8 +21,7 @@
|
||||
"ubisystem": {
|
||||
"size": "-",
|
||||
"ubi": { // Volume in UBI device
|
||||
"system": { "size": "8m" },
|
||||
"data": { "size": "-" },
|
||||
"user": { "size": "-" },
|
||||
},
|
||||
},
|
||||
}
|
||||
@ -104,15 +103,10 @@
|
||||
"attr": ["ubi", "required"],
|
||||
"part": ["ubiroot:rootfs"]
|
||||
},
|
||||
"system": {
|
||||
"file": "system*.ubifs",
|
||||
"app": {
|
||||
"file": "user*.ubifs",
|
||||
"attr": ["ubi", "optional"],
|
||||
"part": ["ubisystem:system"]
|
||||
},
|
||||
"data": {
|
||||
"file": "data*.ubifs",
|
||||
"attr": ["ubi", "optional"],
|
||||
"part": ["ubisystem:data"]
|
||||
"part": ["ubisystem:user"]
|
||||
},
|
||||
},
|
||||
},
|
||||
|
||||
Binary file not shown.
|
Before Width: | Height: | Size: 33 KiB After Width: | Height: | Size: 19 KiB |
@ -1 +0,0 @@
|
||||
placeholder
|
||||
@ -1,11 +0,0 @@
|
||||
# <file system> <mount pt> <type> <options> <dump> <pass>
|
||||
/dev/root / ext2 rw,noauto 0 1
|
||||
proc /proc proc defaults 0 0
|
||||
devpts /dev/pts devpts defaults,gid=5,mode=620,ptmxmode=0666 0 0
|
||||
tmpfs /dev/shm tmpfs mode=0777 0 0
|
||||
tmpfs /tmp tmpfs mode=1777 0 0
|
||||
tmpfs /run tmpfs mode=0755,nosuid,nodev 0 0
|
||||
sysfs /sys sysfs defaults 0 0
|
||||
|
||||
ubi1:system /system ubifs ro,defaults 0 0
|
||||
ubi1:data /data ubifs defaults 0 0
|
||||
@ -1,55 +0,0 @@
|
||||
#!/bin/sh
|
||||
#
|
||||
# Auto-create and mount UBI volumes for system and data partitions
|
||||
#
|
||||
|
||||
start() {
|
||||
echo "Initializing UBI volumes..."
|
||||
|
||||
# Check if ubi1 device exists
|
||||
if [ ! -e /dev/ubi1 ]; then
|
||||
echo "ubi1 device not found, skipping..."
|
||||
return 0
|
||||
fi
|
||||
|
||||
# Create mount points
|
||||
mkdir -p /system /data
|
||||
|
||||
# Mount system (read-only)
|
||||
if ! mountpoint -q /system; then
|
||||
echo "Mounting /system..."
|
||||
mount -t ubifs -o ro ubi1:system /system 2>/dev/null || echo "Failed to mount /system"
|
||||
fi
|
||||
|
||||
# Mount data (read-write)
|
||||
if ! mountpoint -q /data; then
|
||||
echo "Mounting /data..."
|
||||
mount -t ubifs ubi1:data /data 2>/dev/null || echo "Failed to mount /data"
|
||||
fi
|
||||
|
||||
echo "UBI volumes initialized"
|
||||
}
|
||||
|
||||
stop() {
|
||||
echo "Unmounting UBI volumes..."
|
||||
umount /data 2>/dev/null
|
||||
umount /system 2>/dev/null
|
||||
}
|
||||
|
||||
case "$1" in
|
||||
start)
|
||||
start
|
||||
;;
|
||||
stop)
|
||||
stop
|
||||
;;
|
||||
restart|reload)
|
||||
stop
|
||||
start
|
||||
;;
|
||||
*)
|
||||
echo "Usage: $0 {start|stop|restart}"
|
||||
exit 1
|
||||
esac
|
||||
|
||||
exit 0
|
||||
@ -1,114 +0,0 @@
|
||||
#!/bin/sh
|
||||
|
||||
PATH=/sbin:/bin:/usr/sbin:/usr/bin
|
||||
|
||||
HCI_DEV=hci0
|
||||
UART_DEV=/dev/ttyS2
|
||||
HCIATTACH_BIN=/usr/bin/hciattach
|
||||
HCIATTACH_ARGS="-s 1500000 ${UART_DEV} any 1500000 flow nosleep"
|
||||
HCI_TOOL=/usr/bin/bt-hci-tool
|
||||
BTGATT_BIN=/usr/bin/btgatt-server
|
||||
BTGATT_ARGS="-m 256 -i ${HCI_DEV} -s low -t public"
|
||||
BLUETOOTHD_BIN=/usr/libexec/bluetooth/bluetoothd
|
||||
BT_LOCAL_NAME="AIC-BT"
|
||||
HCI_WAIT_TIMEOUT=10
|
||||
|
||||
ATTACH_PIDFILE=/var/run/hciattach.pid
|
||||
BTGATT_PIDFILE=/var/run/btgatt-server.pid
|
||||
BLUETOOTHD_PIDFILE=/var/run/bluetoothd.pid
|
||||
|
||||
wait_for_hci()
|
||||
{
|
||||
"${HCI_TOOL}" wait "${HCI_DEV}" "${HCI_WAIT_TIMEOUT}"
|
||||
}
|
||||
|
||||
bring_hci_up()
|
||||
{
|
||||
"${HCI_TOOL}" up "${HCI_DEV}"
|
||||
}
|
||||
|
||||
start_bt()
|
||||
{
|
||||
echo "[BT] Init AIC8800..."
|
||||
insmod /lib/modules/5.10.44/kernel/drivers/net/wireless/aic8800/aic8800_btlpm/aic8800_btlpm.ko 2>/dev/null
|
||||
sleep 1
|
||||
|
||||
killall hciattach 2>/dev/null
|
||||
killall bluetoothd 2>/dev/null
|
||||
killall btgatt-server 2>/dev/null
|
||||
rm -f "${ATTACH_PIDFILE}" "${BLUETOOTHD_PIDFILE}" "${BTGATT_PIDFILE}"
|
||||
|
||||
"${HCIATTACH_BIN}" ${HCIATTACH_ARGS} &
|
||||
echo $! > "${ATTACH_PIDFILE}"
|
||||
|
||||
if ! wait_for_hci; then
|
||||
echo "[BT] ERROR: ${HCI_DEV} not ready"
|
||||
return 1
|
||||
fi
|
||||
|
||||
if ! bring_hci_up; then
|
||||
echo "[BT] ERROR: failed to bring ${HCI_DEV} up"
|
||||
return 1
|
||||
fi
|
||||
|
||||
# 先启动 LE 广播
|
||||
hciconfig ${HCI_DEV} leadv 0
|
||||
sleep 1
|
||||
|
||||
# <20><><EFBFBD>动 bluetoothd
|
||||
"${BLUETOOTHD_BIN}" &
|
||||
echo $! > "${BLUETOOTHD_PIDFILE}"
|
||||
echo "[BT] Waiting 10 seconds before init..."
|
||||
sleep 10
|
||||
# 启动 btgatt-server
|
||||
"${BTGATT_BIN}" ${BTGATT_ARGS} >/dev/null 2>&1 &
|
||||
echo $! > "${BTGATT_PIDFILE}"
|
||||
|
||||
echo "[BT] Bluetooth ready with GATT server"
|
||||
}
|
||||
|
||||
stop_bt()
|
||||
{
|
||||
hciconfig ${HCI_DEV} noleadv 2>/dev/null
|
||||
|
||||
if [ -f "${BTGATT_PIDFILE}" ]; then
|
||||
kill "$(cat "${BTGATT_PIDFILE}")" 2>/dev/null
|
||||
rm -f "${BTGATT_PIDFILE}"
|
||||
else
|
||||
killall btgatt-server 2>/dev/null
|
||||
fi
|
||||
|
||||
if [ -f "${BLUETOOTHD_PIDFILE}" ]; then
|
||||
kill "$(cat "${BLUETOOTHD_PIDFILE}")" 2>/dev/null
|
||||
rm -f "${BLUETOOTHD_PIDFILE}"
|
||||
else
|
||||
killall bluetoothd 2>/dev/null
|
||||
fi
|
||||
|
||||
if [ -f "${ATTACH_PIDFILE}" ]; then
|
||||
kill "$(cat "${ATTACH_PIDFILE}")" 2>/dev/null
|
||||
rm -f "${ATTACH_PIDFILE}"
|
||||
else
|
||||
killall hciattach 2>/dev/null
|
||||
fi
|
||||
}
|
||||
|
||||
case "$1" in
|
||||
start)
|
||||
start_bt >/dev/null 2>&1 &
|
||||
;;
|
||||
stop)
|
||||
stop_bt
|
||||
;;
|
||||
restart)
|
||||
stop_bt
|
||||
sleep 1
|
||||
start_bt
|
||||
;;
|
||||
*)
|
||||
echo "Usage: $0 {start|stop|restart}"
|
||||
exit 1
|
||||
;;
|
||||
esac
|
||||
|
||||
exit $?
|
||||
@ -1,42 +0,0 @@
|
||||
# /etc/inittab
|
||||
#
|
||||
# Copyright (C) 2001 Erik Andersen <andersen@codepoet.org>
|
||||
#
|
||||
# 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>:<runlevels>:<action>:<process>
|
||||
#
|
||||
# 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:/bin/mount -t proc proc /proc
|
||||
::sysinit:/bin/mount -o remount,rw /
|
||||
::sysinit:/bin/mkdir -p /dev/pts /dev/shm
|
||||
::sysinit:/bin/mount -a
|
||||
::sysinit:/sbin/swapon -a
|
||||
null::sysinit:/bin/ln -sf /proc/self/fd /dev/fd
|
||||
null::sysinit:/bin/ln -sf /proc/self/fd/0 /dev/stdin
|
||||
null::sysinit:/bin/ln -sf /proc/self/fd/1 /dev/stdout
|
||||
null::sysinit:/bin/ln -sf /proc/self/fd/2 /dev/stderr
|
||||
::sysinit:/bin/hostname -F /etc/hostname
|
||||
# now run any rc scripts
|
||||
::sysinit:/etc/init.d/rcS
|
||||
|
||||
# e_player monitor and auto-restart
|
||||
::respawn:/usr/bin/e_player_wrapper
|
||||
|
||||
::sysinit:/bin/cat /etc/issue # Put a getty on the serial port
|
||||
console::respawn:-/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
|
||||
@ -1 +0,0 @@
|
||||
demo128_nand-ota-marker=2026-04-27_v1001
|
||||
@ -3,12 +3,32 @@
|
||||
|
||||
case "$1" in
|
||||
start)
|
||||
echo "swupdate_main: /data should already be mounted by S01ubivol"
|
||||
mountpoint -q /data && echo "/data is ready" || \
|
||||
echo "Warning: /data is NOT mounted"
|
||||
echo -n "Starting swupdate... "
|
||||
# obtain ubisystem mtd number
|
||||
|
||||
param=$(cat /proc/mtd | grep "ubisystem")
|
||||
mtd_param=$(echo "$param" | awk -F ':' '{print $1}')
|
||||
mtd_num=$(echo "$mtd_param" | awk -F 'mtd' '{print $2}')
|
||||
echo "ubisystem mtd number is $mtd_num"
|
||||
|
||||
ubiattach /dev/ubi_ctrl -m $mtd_num
|
||||
|
||||
# obtain the ota part device node
|
||||
|
||||
param=$(grep -H -r "ota" /sys/class/ubi/* | sed 1q)
|
||||
ubi_param=$(echo "$param" | awk -F '/name:ota' '{print $1}')
|
||||
ubi_param=$(echo "$ubi_param" | awk -F '/sys/class/ubi/' '{print $2}')
|
||||
ubi_param=$(echo "$ubi_param" | awk -F '/' '{print $2}')
|
||||
echo "ota part device node is /dev/$ubi_param"
|
||||
|
||||
if [ -c "/dev/$ubi_param" ]; then
|
||||
mkdir -p /mnt/ota
|
||||
mount -t ubifs /dev/$ubi_param /mnt/ota
|
||||
fi
|
||||
;;
|
||||
stop)
|
||||
echo "swupdate_main: nothing to do (/data is managed by S01ubivol)"
|
||||
echo -n "Stopping swupdate... "
|
||||
umount /mnt/ota
|
||||
;;
|
||||
esac
|
||||
|
||||
|
||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@ -1,106 +0,0 @@
|
||||
#!/bin/sh
|
||||
# e_player 崩溃监控和恢复脚本
|
||||
|
||||
CRASH_COUNT_FILE="/data/.e_player_crash_count"
|
||||
STABLE_COUNT_FILE="/data/.e_player_stable_count"
|
||||
MAX_CRASH=5
|
||||
CHECK_INTERVAL=1
|
||||
STABLE_CHECKS=120 # 连续检测120s 进程存在才认为稳定
|
||||
|
||||
if [ ! -f "$CRASH_COUNT_FILE" ]; then
|
||||
echo 0 > "$CRASH_COUNT_FILE"
|
||||
fi
|
||||
if [ ! -f "$STABLE_COUNT_FILE" ]; then
|
||||
echo 0 > "$STABLE_COUNT_FILE"
|
||||
fi
|
||||
|
||||
echo "$(date): e_player_wrapper starting, waiting for e_player..." >> /data/crash.log
|
||||
WAIT_COUNT=0
|
||||
while [ $WAIT_COUNT -lt 20 ]; do
|
||||
if ps | grep -v grep | grep -v e_player_wrapper | grep e_player > /dev/null; then
|
||||
echo "$(date): e_player detected after ${WAIT_COUNT} checks, starting monitoring..." >> /data/crash.log
|
||||
break
|
||||
fi
|
||||
sleep 3
|
||||
WAIT_COUNT=$((WAIT_COUNT + 1))
|
||||
done
|
||||
|
||||
if ! ps | grep -v grep | grep -v e_player_wrapper | grep e_player > /dev/null; then
|
||||
echo "$(date): WARNING - e_player not found after 60s, will monitor anyway..." >> /data/crash.log
|
||||
fi
|
||||
|
||||
echo "$(date): Starting main monitoring loop..." >> /data/crash.log
|
||||
|
||||
HEARTBEAT=0
|
||||
while true; do
|
||||
HEARTBEAT=$((HEARTBEAT + 1))
|
||||
if [ $HEARTBEAT -ge 120 ]; then
|
||||
echo "$(date): [Heartbeat] Monitoring active, stable_count=$(cat $STABLE_COUNT_FILE)" >> /data/crash.log
|
||||
HEARTBEAT=0
|
||||
fi
|
||||
|
||||
if ! ps | grep -v grep | grep -v e_player_wrapper | grep e_player > /dev/null; then
|
||||
# 进程不存在,崩溃了
|
||||
echo 0 > "$STABLE_COUNT_FILE" # 重置稳定计数
|
||||
|
||||
COUNT=$(cat "$CRASH_COUNT_FILE")
|
||||
COUNT=$((COUNT + 1))
|
||||
echo $COUNT > "$CRASH_COUNT_FILE"
|
||||
|
||||
echo "$(date): e_player crashed, count: $COUNT" >> /data/crash.log
|
||||
|
||||
if [ $COUNT -ge $MAX_CRASH ]; then
|
||||
echo "$(date): Crash count exceeded $MAX_CRASH, restoring from factory..." >> /data/crash.log
|
||||
|
||||
# 从factory恢复bin文件
|
||||
if [ -f /system/factory/bin/e_player ]; then
|
||||
cp /system/factory/bin/e_player /data/bin/e_player
|
||||
chmod +x /data/bin/e_player
|
||||
echo "$(date): Restored e_player from factory" >> /data/crash.log
|
||||
fi
|
||||
|
||||
if [ -f /system/factory/bin/lbh_client ]; then
|
||||
cp /system/factory/bin/lbh_client /data/bin/lbh_client
|
||||
chmod +x /data/bin/lbh_client
|
||||
echo "$(date): Restored lbh_client from factory" >> /data/crash.log
|
||||
fi
|
||||
|
||||
# 恢复配置文件
|
||||
if [ -f /system/factory/system_properties.cfg ]; then
|
||||
cp /system/factory/system_properties.cfg /data/system_properties.cfg
|
||||
echo "$(date): Restored system_properties.cfg from factory" >> /data/crash.log
|
||||
fi
|
||||
|
||||
# 重置崩溃计数,重新开始
|
||||
echo 0 > "$CRASH_COUNT_FILE"
|
||||
echo "$(date): Reset crash count, retrying..." >> /data/crash.log
|
||||
fi
|
||||
|
||||
echo "$(date): Restarting e_player..." >> /data/crash.log
|
||||
killall -9 e_player 2>/dev/null
|
||||
sleep 1
|
||||
|
||||
export LD_LIBRARY_PATH=/data/bin/libs:/vendor/qua/lib:/lib:/usr/lib:$LD_LIBRARY_PATH
|
||||
cd /data
|
||||
/data/bin/e_player &
|
||||
sleep 3
|
||||
else
|
||||
# 进程存在,累加稳定计数
|
||||
STABLE=$(cat "$STABLE_COUNT_FILE")
|
||||
STABLE=$((STABLE + 1))
|
||||
echo $STABLE > "$STABLE_COUNT_FILE"
|
||||
|
||||
# 如果稳定运行120秒,重置崩溃计数
|
||||
if [ $STABLE -ge $STABLE_CHECKS ]; then
|
||||
COUNT=$(cat "$CRASH_COUNT_FILE")
|
||||
if [ $COUNT -gt 0 ]; then
|
||||
echo "$(date): e_player stable, resetting crash count" >> /data/crash.log
|
||||
echo 0 > "$CRASH_COUNT_FILE"
|
||||
fi
|
||||
echo 0 > "$STABLE_COUNT_FILE" # 重置稳定计数,下次再累计
|
||||
fi
|
||||
fi
|
||||
|
||||
sleep $CHECK_INTERVAL
|
||||
done
|
||||
|
||||
BIN
target/d211/demo128_nand/rootfs_overlay/usr/bin/rtk_hciattach
Executable file
BIN
target/d211/demo128_nand/rootfs_overlay/usr/bin/rtk_hciattach
Executable file
Binary file not shown.
@ -1,6 +1,6 @@
|
||||
software =
|
||||
{
|
||||
version = "1.0.0.1";
|
||||
version = "1.0.0.0";
|
||||
description = "Firmware update for Luban Project";
|
||||
|
||||
stable = {
|
||||
@ -66,16 +66,6 @@ software =
|
||||
* Step1: Download and upgrade partitons
|
||||
* Step2: Setup ENV variables, and mark OTA "finish"
|
||||
* Step3: Reboot to main system
|
||||
*
|
||||
* data UBIFS (ubi1:data, ubisystem):
|
||||
* Optional factory/user data image built from
|
||||
* target/.../data/ overlay (see image_cfg.json "data").
|
||||
* Listed last so earlier images are processed first.
|
||||
*
|
||||
* IMPORTANT: If the .swu file itself is stored on /data (ubi1:data),
|
||||
* updating this volume can corrupt the stream while it is being read.
|
||||
* Prefer placing the package in RAM (/tmp), on the network, or on
|
||||
* external media for OTA that includes "data".
|
||||
*/
|
||||
upgrade_kernel = {
|
||||
images: (
|
||||
@ -96,12 +86,6 @@ software =
|
||||
volume = "rootfs";
|
||||
installed-directly = true;
|
||||
sha256 = "@rootfs";
|
||||
},
|
||||
{
|
||||
filename = "data";
|
||||
volume = "data";
|
||||
installed-directly = true;
|
||||
sha256 = "@data";
|
||||
}
|
||||
);
|
||||
|
||||
|
||||
@ -4,7 +4,5 @@ ${BINARIES_DIR}/recovery.itb:recovery
|
||||
${BINARIES_DIR}/kernel.itb:kernel
|
||||
${BINARIES_DIR}/logo.itb:logo
|
||||
${BINARIES_DIR}/rootfs_page_2k_block_128k.ubifs:rootfs
|
||||
${BINARIES_DIR}/data_page_2k_block_128k.ubifs:data
|
||||
#${BINARIES_DIR}/rootfs_page_4k_block_256k.ubifs:rootfs
|
||||
#${BINARIES_DIR}/data_page_4k_block_256k.ubifs:data
|
||||
)
|
||||
|
||||
Binary file not shown.
@ -1,152 +1,34 @@
|
||||
#!/bin/sh
|
||||
# Run the swupdate daemon (recovery side, second stage of OTA)
|
||||
|
||||
attach_ubi_by_name()
|
||||
{
|
||||
want="$1"
|
||||
mtdline=$(grep "\"$want\"" /proc/mtd)
|
||||
[ -z "$mtdline" ] && {
|
||||
echo "S91: cannot find mtd partition '$want'"
|
||||
return 1
|
||||
}
|
||||
mtd_num=$(echo "$mtdline" | sed -e 's/^mtd//' -e 's/:.*//')
|
||||
echo "S91: '$want' is on mtd${mtd_num}"
|
||||
|
||||
# If some ubi device is already on this mtd, do nothing.
|
||||
for u in /sys/class/ubi/ubi[0-9]*; do
|
||||
[ -e "$u/mtd_num" ] || continue
|
||||
cur=$(cat "$u/mtd_num" 2>/dev/null)
|
||||
[ "x$cur" = "x$mtd_num" ] && {
|
||||
echo "S91: $u already attached to mtd${mtd_num}"
|
||||
return 0
|
||||
}
|
||||
done
|
||||
ubiattach /dev/ubi_ctrl -m "$mtd_num" 2>&1
|
||||
}
|
||||
|
||||
# If the .swu path in swu_param is under /data, swupdate cannot rewrite the
|
||||
# ubi "data" volume while UBIFS holds it mounted (kernel: ubi_open_volume -EBUSY).
|
||||
# Copy the archive to a dedicated tmpfs and umount /data before swupdate_cmd runs.
|
||||
# Note: the .swu must fit in RAM (tmpfs quota below).
|
||||
#
|
||||
# Initramfs root is often ramfs/tmpfs where "remount,size=" does not give swupdate's
|
||||
# statvfs() enough reported space; it then fails extracting kernel with ~8 MiB free.
|
||||
# A fresh tmpfs on /mnt/swutmp with an explicit size= fixes that; TMPDIR must point
|
||||
# there before swupdate runs (see start).
|
||||
relocate_swu_off_data()
|
||||
{
|
||||
swu_param=$(fw_printenv -n swu_param 2>/dev/null) || return 0
|
||||
[ -z "$swu_param" ] && return 0
|
||||
|
||||
set -- $swu_param
|
||||
swu_in=""
|
||||
while [ $# -gt 0 ]; do
|
||||
if [ "$1" = "-i" ] && [ -n "$2" ]; then
|
||||
swu_in="$2"
|
||||
break
|
||||
fi
|
||||
shift
|
||||
done
|
||||
[ -z "$swu_in" ] && return 0
|
||||
[ ! -f "$swu_in" ] && return 0
|
||||
case "$swu_in" in
|
||||
/data/*) ;;
|
||||
*) return 0 ;;
|
||||
esac
|
||||
|
||||
SWU_STAGED=/mnt/swutmp/ota.swu
|
||||
mkdir -p /mnt/swutmp
|
||||
umount /mnt/swutmp 2>/dev/null
|
||||
echo "S91: mount dedicated tmpfs on /mnt/swutmp for .swu + swupdate extract"
|
||||
if ! mount -t tmpfs -o size=110m,nr_inodes=16k tmpfs /mnt/swutmp; then
|
||||
echo "S91: ERROR: tmpfs mount /mnt/swutmp failed"
|
||||
return 1
|
||||
fi
|
||||
|
||||
echo "S91: OTA package on $swu_in — copy to $SWU_STAGED and umount /data (unlock ubi data volume)"
|
||||
if ! cp "$swu_in" "$SWU_STAGED"; then
|
||||
echo "S91: ERROR: copy to $SWU_STAGED failed (increase tmpfs size= ?)"
|
||||
umount /mnt/swutmp 2>/dev/null
|
||||
return 1
|
||||
fi
|
||||
sync
|
||||
if ! umount /data; then
|
||||
echo "S91: ERROR: umount /data failed"
|
||||
umount /mnt/swutmp 2>/dev/null
|
||||
return 1
|
||||
fi
|
||||
|
||||
set -- $swu_param
|
||||
new_param=""
|
||||
first=1
|
||||
while [ $# -gt 0 ]; do
|
||||
if [ "$1" = "-i" ] && [ -n "$2" ]; then
|
||||
if [ $first -eq 1 ]; then
|
||||
new_param="-i $SWU_STAGED"
|
||||
first=0
|
||||
else
|
||||
new_param="$new_param -i $SWU_STAGED"
|
||||
fi
|
||||
shift 2
|
||||
continue
|
||||
fi
|
||||
if [ $first -eq 1 ]; then
|
||||
new_param="$1"
|
||||
first=0
|
||||
else
|
||||
new_param="$new_param $1"
|
||||
fi
|
||||
shift
|
||||
done
|
||||
# Values starting with "-i" are parsed as fw_setenv options; use import file.
|
||||
printf 'swu_param=%s\n' "$new_param" > /tmp/swu_param.relocsave
|
||||
fw_setenv -s /tmp/swu_param.relocsave
|
||||
sync
|
||||
echo "S91: swu_param is now $(fw_printenv -n swu_param 2>/dev/null)"
|
||||
touch /mnt/swutmp/.ota_use_tmpdir
|
||||
return 0
|
||||
}
|
||||
# Run the swupdate daemon
|
||||
|
||||
case "$1" in
|
||||
start)
|
||||
echo "S91: starting OTA second stage"
|
||||
echo -n "Starting swupdate... "
|
||||
# obtain ubisystem mtd number
|
||||
param=$(cat /proc/mtd | grep "ubisystem")
|
||||
mtd_param=$(echo "$param" | awk -F ':' '{print $1}')
|
||||
mtd_num=$(echo "$mtd_param" | awk -F 'mtd' '{print $2}')
|
||||
|
||||
# Attach both UBI devices so swupdate can write to:
|
||||
# /dev/mtdX (logo, kernel, recovery)
|
||||
# ubi0:rootfs (ubiroot)
|
||||
# ubi1:data (ubisystem) -- holds the .swu package
|
||||
attach_ubi_by_name "ubiroot"
|
||||
attach_ubi_by_name "ubisystem"
|
||||
echo "ubisystem mtd number is $mtd_num"
|
||||
ubiattach dev/ubi_ctrl -m $mtd_num
|
||||
|
||||
# Mount ubi*:data so we can read the .swu placed there by main system.
|
||||
mkdir -p /data
|
||||
if ! mountpoint -q /data; then
|
||||
# Try ubi0 then ubi1 — depending on attach order data may be on either.
|
||||
for d in /dev/ubi1 /dev/ubi0; do
|
||||
[ -e "$d" ] || continue
|
||||
idx=$(echo "$d" | sed 's|.*ubi||')
|
||||
if mount -t ubifs "ubi${idx}:data" /data 2>/dev/null; then
|
||||
echo "S91: mounted ubi${idx}:data on /data"
|
||||
break
|
||||
fi
|
||||
done
|
||||
mountpoint -q /data || echo "S91: WARNING /data not mounted"
|
||||
# obtain the ota part device node
|
||||
param=$(grep -H -r "ota" /sys/class/ubi/* | sed 1q)
|
||||
ubi_param=$(echo "$param" | awk -F '/name:ota' '{print $1}')
|
||||
ubi_param=$(echo "$ubi_param" | awk -F '/sys/class/ubi/' '{print $2}')
|
||||
ubi_param=$(echo "$ubi_param" | awk -F '/' '{print $2}')
|
||||
|
||||
echo "ota part device node is /dev/$ubi_param"
|
||||
|
||||
if [ -c "/dev/$ubi_param" ]; then
|
||||
mkdir -p /mnt/ota
|
||||
mount -t ubifs /dev/$ubi_param /mnt/ota
|
||||
fi
|
||||
|
||||
if ! relocate_swu_off_data; then
|
||||
echo "S91: ERROR: could not move OTA package off /data; aborting swupdate"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
if [ -f /mnt/swutmp/.ota_use_tmpdir ]; then
|
||||
export TMPDIR=/mnt/swutmp
|
||||
echo "S91: TMPDIR=$TMPDIR (swupdate extract uses same tmpfs as .swu)"
|
||||
fi
|
||||
|
||||
exec /usr/lib/swupdate/swupdate_cmd.sh
|
||||
./usr/lib/swupdate/swupdate_cmd.sh
|
||||
;;
|
||||
stop)
|
||||
umount /data 2>/dev/null
|
||||
umount /mnt/swutmp 2>/dev/null
|
||||
echo -n "Stopping swupdate... "
|
||||
umount /mnt/ota
|
||||
;;
|
||||
esac
|
||||
|
||||
@ -9,7 +9,7 @@ case "$1" in
|
||||
mkdir -p /mnt/ota
|
||||
mount /dev/mmcblk0p11 /mnt/ota
|
||||
|
||||
/usr/lib/swupdate/swupdate_cmd.sh
|
||||
./usr/lib/swupdate/swupdate_cmd.sh
|
||||
;;
|
||||
stop)
|
||||
echo -n "Stopping swupdate... "
|
||||
|
||||
Loading…
Reference in New Issue
Block a user