support milkv-duo256m
This commit is contained in:
@ -0,0 +1,9 @@
|
||||
{
|
||||
"ddr_cfg_list": [
|
||||
"",
|
||||
"ddr3_1866_x16",
|
||||
"ddr3_2133_x16",
|
||||
"ddr_auto_x16"
|
||||
],
|
||||
"board_information": "C906B + SD + QFN SIP 256MB"
|
||||
}
|
||||
@ -0,0 +1,30 @@
|
||||
CONFIG_CHIP_cv1812cp=y
|
||||
CONFIG_BOARD_milkv_duo256m_sd=y
|
||||
CONFIG_DDR_CFG_ddr3_1866_x16=y
|
||||
CONFIG_ARCH="riscv"
|
||||
CONFIG_CROSS_COMPILE="riscv64-unknown-linux-musl-"
|
||||
CONFIG_CC_OPTIMIZE_FOR_SIZE=y
|
||||
CONFIG_KERNEL_ENTRY_HACK=y
|
||||
CONFIG_KERNEL_ENTRY_HACK_ADDR="0x80200000"
|
||||
CONFIG_TOOLCHAIN_MUSL_RISCV64=y
|
||||
CONFIG_FLASH_SIZE_SHRINK=y
|
||||
CONFIG_BOOT_IMAGE_SINGLE_DTB=y
|
||||
CONFIG_STORAGE_TYPE_sd=y
|
||||
CONFIG_SENSOR_SONY_IMX327=y
|
||||
CONFIG_SENSOR_SMS_SC035HGS=y
|
||||
CONFIG_UBOOT_2021_10=y
|
||||
CONFIG_KERNEL_SRC_5.10=y
|
||||
CONFIG_KERNEL_LZMA=y
|
||||
CONFIG_SKIP_RAMDISK=y
|
||||
# CONFIG_ROOTFS_OVERLAYFS is not set
|
||||
CONFIG_TARGET_PACKAGE_DROPBEAR=y
|
||||
CONFIG_TARGET_PACKAGE_MTD-UTILS=y
|
||||
# CONFIG_TARGET_PACKAGE_RSYSLOG is not set
|
||||
CONFIG_TARGET_PACKAGE_BUSYBOX_SYSLOGD_SCRIPT=y
|
||||
# CONFIG_ENABLE_FREERTOS is not set
|
||||
CONFIG_ENABLE_RTOS_DUMP_PRINT=y
|
||||
CONFIG_DUMP_PRINT_SZ_IDX=17
|
||||
CONFIG_TARGET_PACKAGE_GATORD=n
|
||||
CONFIG_TARGET_PACKAGE_NTP=y
|
||||
# CONFIG_TARGET_PACKAGE_WIFI is not set
|
||||
CONFIG_BUILDROOT_FS=y
|
||||
@ -0,0 +1,22 @@
|
||||
/dts-v1/;
|
||||
#include "cv181x_base_riscv.dtsi"
|
||||
#include "cv181x_asic_qfn.dtsi"
|
||||
#include "cv181x_asic_sd.dtsi"
|
||||
#include "cv181x_default_memmap.dtsi"
|
||||
|
||||
&mipi_rx{
|
||||
snsr-reset = <&portc 17 GPIO_ACTIVE_LOW>, <&portc 17 GPIO_ACTIVE_LOW>, <&portc 17 GPIO_ACTIVE_LOW>;
|
||||
};
|
||||
|
||||
&i2c0 {
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
&i2c4 {
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
/ {
|
||||
|
||||
};
|
||||
|
||||
@ -0,0 +1,277 @@
|
||||
CONFIG_CC_OPTIMIZE_FOR_SIZE=y
|
||||
# CONFIG_SWAP is not set
|
||||
CONFIG_SYSVIPC=y
|
||||
CONFIG_POSIX_MQUEUE=y
|
||||
CONFIG_NO_HZ_IDLE=y
|
||||
CONFIG_HIGH_RES_TIMERS=y
|
||||
CONFIG_PREEMPT=y
|
||||
CONFIG_IKCONFIG=y
|
||||
CONFIG_IKCONFIG_PROC=y
|
||||
CONFIG_LOG_BUF_SHIFT=15
|
||||
CONFIG_BLK_DEV_INITRD=y
|
||||
# CONFIG_SYSFS_SYSCALL is not set
|
||||
# CONFIG_FHANDLE is not set
|
||||
# CONFIG_BASE_FULL is not set
|
||||
# CONFIG_AIO is not set
|
||||
CONFIG_EMBEDDED=y
|
||||
# CONFIG_SLUB_DEBUG is not set
|
||||
CONFIG_FORCE_MAX_ZONEORDER=10
|
||||
CONFIG_ARCH_CVITEK=y
|
||||
CONFIG_SOC_THEAD=y
|
||||
# CONFIG_RISCV_SWIOTLB is not set
|
||||
CONFIG_VECTOR=y
|
||||
CONFIG_VECTOR_0_7=y
|
||||
# CONFIG_COMPAT is not set
|
||||
CONFIG_ARCH_CVITEK_CHIP="cv181x"
|
||||
CONFIG_ARCH_CV181X_ASIC=y
|
||||
CONFIG_POWER_RESET=y
|
||||
CONFIG_COMPAT_32BIT_TIME=y
|
||||
CONFIG_STRICT_KERNEL_RWX=n
|
||||
CONFIG_MODULES=y
|
||||
CONFIG_MODULE_FORCE_LOAD=y
|
||||
CONFIG_MODULE_UNLOAD=y
|
||||
# CONFIG_BLK_DEV_BSG is not set
|
||||
# CONFIG_MQ_IOSCHED_DEADLINE is not set
|
||||
# CONFIG_MQ_IOSCHED_KYBER is not set
|
||||
# CONFIG_COREDUMP is not set
|
||||
CONFIG_CMA=y
|
||||
CONFIG_NET=y
|
||||
CONFIG_PACKET=y
|
||||
CONFIG_UNIX=y
|
||||
CONFIG_INET=y
|
||||
# CONFIG_INET_DIAG is not set
|
||||
# CONFIG_IPV6 is not set
|
||||
CONFIG_CFG80211=y
|
||||
CONFIG_RFKILL=y
|
||||
CONFIG_UEVENT_HELPER=y
|
||||
CONFIG_DEVTMPFS=y
|
||||
CONFIG_DEVTMPFS_MOUNT=y
|
||||
# CONFIG_ALLOW_DEV_COREDUMP is not set
|
||||
CONFIG_MTD=y
|
||||
CONFIG_MTD_CMDLINE_PARTS=y
|
||||
# CONFIG_MTD_OF_PARTS is not set
|
||||
CONFIG_MTD_BLOCK=y
|
||||
CONFIG_MTD_RAW_NAND=y
|
||||
CONFIG_MTD_UBI=y
|
||||
CONFIG_MTD_UBI_BLOCK=y
|
||||
CONFIG_NETDEVICES=y
|
||||
# CONFIG_NET_CORE is not set
|
||||
# CONFIG_NET_VENDOR_ALACRITECH is not set
|
||||
# CONFIG_NET_VENDOR_AMAZON is not set
|
||||
# CONFIG_NET_VENDOR_AQUANTIA is not set
|
||||
# CONFIG_NET_VENDOR_ARC is not set
|
||||
# CONFIG_NET_VENDOR_AURORA is not set
|
||||
# CONFIG_NET_VENDOR_BROADCOM is not set
|
||||
# CONFIG_NET_VENDOR_CADENCE is not set
|
||||
# CONFIG_NET_VENDOR_CAVIUM is not set
|
||||
# CONFIG_NET_VENDOR_CORTINA is not set
|
||||
# CONFIG_NET_VENDOR_EZCHIP is not set
|
||||
# CONFIG_NET_VENDOR_HUAWEI is not set
|
||||
# CONFIG_NET_VENDOR_INTEL is not set
|
||||
# CONFIG_NET_VENDOR_MARVELL is not set
|
||||
# CONFIG_NET_VENDOR_MICREL is not set
|
||||
# CONFIG_NET_VENDOR_MICROCHIP is not set
|
||||
# CONFIG_NET_VENDOR_MICROSEMI is not set
|
||||
# CONFIG_NET_VENDOR_NATSEMI is not set
|
||||
# CONFIG_NET_VENDOR_NETRONOME is not set
|
||||
# CONFIG_NET_VENDOR_NI is not set
|
||||
# CONFIG_NET_VENDOR_QUALCOMM is not set
|
||||
# CONFIG_NET_VENDOR_RENESAS is not set
|
||||
# CONFIG_NET_VENDOR_ROCKER is not set
|
||||
# CONFIG_NET_VENDOR_SAMSUNG is not set
|
||||
# CONFIG_NET_VENDOR_SEEQ is not set
|
||||
# CONFIG_NET_VENDOR_SOLARFLARE is not set
|
||||
# CONFIG_NET_VENDOR_SOCIONEXT is not set
|
||||
CONFIG_STMMAC_ETH=y
|
||||
# CONFIG_DWMAC_GENERIC is not set
|
||||
# CONFIG_NET_VENDOR_SYNOPSYS is not set
|
||||
# CONFIG_NET_VENDOR_VIA is not set
|
||||
# CONFIG_NET_VENDOR_WIZNET is not set
|
||||
CONFIG_CVITEK_PHY=y
|
||||
# CONFIG_USB_NET_DRIVERS is not set
|
||||
# CONFIG_WLAN_VENDOR_ADMTEK is not set
|
||||
# CONFIG_WLAN_VENDOR_ATH is not set
|
||||
# CONFIG_WLAN_VENDOR_ATMEL is not set
|
||||
# CONFIG_WLAN_VENDOR_BROADCOM is not set
|
||||
# CONFIG_WLAN_VENDOR_CISCO is not set
|
||||
# CONFIG_WLAN_VENDOR_INTEL is not set
|
||||
# CONFIG_WLAN_VENDOR_INTERSIL is not set
|
||||
# CONFIG_WLAN_VENDOR_MARVELL is not set
|
||||
# CONFIG_WLAN_VENDOR_MEDIATEK is not set
|
||||
# CONFIG_WLAN_VENDOR_RALINK is not set
|
||||
# CONFIG_RTL8188FU is not set
|
||||
# CONFIG_WLAN_VENDOR_RSI is not set
|
||||
# CONFIG_WLAN_VENDOR_ST is not set
|
||||
# CONFIG_WLAN_VENDOR_TI is not set
|
||||
# CONFIG_WLAN_VENDOR_ZYDAS is not set
|
||||
CONFIG_INPUT=y
|
||||
CONFIG_INPUT_MOUSEDEV=y
|
||||
CONFIG_INPUT_MOUSEDEV_PSAUX=y
|
||||
CONFIG_INPUT_MOUSEDEV_SCREEN_X=1024
|
||||
CONFIG_INPUT_MOUSEDEV_SCREEN_Y=768
|
||||
CONFIG_INPUT_EVDEV=y
|
||||
# CONFIG_SERIO is not set
|
||||
# CONFIG_VT is not set
|
||||
# CONFIG_LEGACY_PTYS is not set
|
||||
CONFIG_SERIAL_8250=y
|
||||
CONFIG_SERIAL_8250_CONSOLE=y
|
||||
CONFIG_SERIAL_8250_NR_UARTS=5
|
||||
CONFIG_SERIAL_8250_RUNTIME_UARTS=5
|
||||
CONFIG_SERIAL_8250_DW=y
|
||||
CONFIG_SERIAL_EARLYCON_RISCV_SBI=y
|
||||
CONFIG_HW_RANDOM=y
|
||||
CONFIG_I2C=y
|
||||
CONFIG_I2C_CHARDEV=y
|
||||
CONFIG_I2C_MUX=y
|
||||
CONFIG_I2C_DESIGNWARE_PLATFORM=y
|
||||
CONFIG_SPI=y
|
||||
# CONFIG_PTP_1588_CLOCK is not set
|
||||
CONFIG_PINCTRL=y
|
||||
CONFIG_CVITEK_PINCTRL_CV1835=y
|
||||
CONFIG_GPIOLIB=y
|
||||
CONFIG_GPIO_SYSFS=y
|
||||
CONFIG_GPIO_DWAPB=y
|
||||
CONFIG_POWER_RESET=y
|
||||
CONFIG_THERMAL=y
|
||||
CONFIG_THERMAL_NETLINK=y
|
||||
CONFIG_THERMAL_WRITABLE_TRIPS=y
|
||||
CONFIG_THERMAL_EMULATION=y
|
||||
CONFIG_WATCHDOG=y
|
||||
CONFIG_MEDIA_SUPPORT=n
|
||||
CONFIG_VIDEO_V4L2_SUBDEV_API=n
|
||||
# CONFIG_DVB_NET is not set
|
||||
# CONFIG_DVB_DYNAMIC_MINORS is not set
|
||||
CONFIG_V4L_PLATFORM_DRIVERS=n
|
||||
CONFIG_V4L_MEM2MEM_DRIVERS=n
|
||||
CONFIG_VIDEO_MEM2MEM_DEINTERLACE=n
|
||||
CONFIG_VIDEO_CVITEK_CIF=m
|
||||
CONFIG_VIDEO_CVITEK_SNS_I2C=m
|
||||
CONFIG_FB=y
|
||||
CONFIG_FB_CVITEK=m
|
||||
CONFIG_SOUND=y
|
||||
CONFIG_SND=y
|
||||
# CONFIG_SND_SUPPORT_OLD_API is not set
|
||||
# CONFIG_SND_PROC_FS is not set
|
||||
# CONFIG_SND_DRIVERS is not set
|
||||
CONFIG_SND_HDA_PREALLOC_SIZE=1
|
||||
# CONFIG_SND_SPI is not set
|
||||
# CONFIG_SND_USB is not set
|
||||
CONFIG_SND_SOC=y
|
||||
CONFIG_SND_SOC_CV182XA_CV182XAADC=y
|
||||
CONFIG_SND_SOC_CV182XA_CV182XADAC=y
|
||||
CONFIG_SND_CV1835_I2S=y
|
||||
CONFIG_SND_SOC_CV182XAADC=y
|
||||
CONFIG_SND_SOC_CV182XADAC=y
|
||||
CONFIG_SND_SOC_CV1835_USE_AUDIO_PLL=y
|
||||
CONFIG_CV1835_I2S_SUBSYS=y
|
||||
CONFIG_USB=y
|
||||
CONFIG_USB_DWC2=y
|
||||
CONFIG_USB_GADGET=y
|
||||
CONFIG_USB_LIBCOMPOSITE=y
|
||||
CONFIG_USB_F_ACM=y
|
||||
CONFIG_USB_U_SERIAL=y
|
||||
CONFIG_USB_U_ETHER=y
|
||||
CONFIG_USB_U_AUDIO=y
|
||||
CONFIG_USB_F_SERIAL=y
|
||||
CONFIG_USB_F_ECM=y
|
||||
CONFIG_USB_F_EEM=y
|
||||
CONFIG_USB_F_RNDIS=y
|
||||
CONFIG_USB_F_MASS_STORAGE=y
|
||||
CONFIG_USB_F_FS=y
|
||||
CONFIG_USB_F_UAC1=y
|
||||
CONFIG_USB_F_UVC=y
|
||||
CONFIG_USB_CONFIGFS=y
|
||||
CONFIG_USB_CONFIGFS_SERIAL=y
|
||||
CONFIG_USB_CONFIGFS_RNDIS=y
|
||||
CONFIG_USB_CONFIGFS_ACM=y
|
||||
CONFIG_MMC=y
|
||||
CONFIG_MMC_SDHCI=y
|
||||
CONFIG_MMC_SDHCI_PLTFM=y
|
||||
CONFIG_MMC_SDHCI_CVI=y
|
||||
CONFIG_RTC_CLASS=y
|
||||
CONFIG_DMADEVICES=y
|
||||
CONFIG_DW_DMAC_CVITEK=y
|
||||
CONFIG_RTC_CLASS=y
|
||||
# CONFIG_VIRTIO_MENU is not set
|
||||
CONFIG_STAGING=y
|
||||
CONFIG_ION=y
|
||||
CONFIG_ION_SYSTEM_HEAP=y
|
||||
CONFIG_ION_CARVEOUT_HEAP=y
|
||||
CONFIG_ION_CMA_HEAP=y
|
||||
# CONFIG_IOMMU_SUPPORT is not set
|
||||
CONFIG_CV1835_SYSDMA_REMAP=y
|
||||
CONFIG_PWM=y
|
||||
CONFIG_SIFIVE_PLIC=y
|
||||
CONFIG_ANDROID=y
|
||||
# CONFIG_MANDATORY_FILE_LOCKING is not set
|
||||
CONFIG_MSDOS_FS=y
|
||||
CONFIG_VFAT_FS=y
|
||||
# CONFIG_PROC_PAGE_MONITOR is not set
|
||||
CONFIG_TMPFS=y
|
||||
CONFIG_CONFIGFS_FS=y
|
||||
CONFIG_JFFS2_FS=y
|
||||
CONFIG_JFFS2_FS_WBUF_VERIFY=y
|
||||
CONFIG_UBIFS_FS=y
|
||||
CONFIG_SQUASHFS=y
|
||||
CONFIG_EXT3_FS=y
|
||||
CONFIG_EXT4_FS=y
|
||||
CONFIG_EXT4_USE_FOR_EXT2=y
|
||||
CONFIG_EXT4_DEBUG=y
|
||||
# CONFIG_SQUASHFS_ZLIB is not set
|
||||
CONFIG_SQUASHFS_LZ4=n
|
||||
CONFIG_SQUASHFS_XZ=y
|
||||
CONFIG_NETWORK_FILESYSTEMS=y
|
||||
CONFIG_NFS_FS=y
|
||||
CONFIG_NFS_V2=y
|
||||
CONFIG_NFS_V3=y
|
||||
CONFIG_ROOT_NFS=y
|
||||
CONFIG_NLS_CODEPAGE_437=y
|
||||
CONFIG_NLS_ISO8859_1=y
|
||||
CONFIG_NLS_ISO8859_2=y
|
||||
CONFIG_NLS_ISO8859_3=y
|
||||
CONFIG_CRYPTO_SHA256=y
|
||||
# CONFIG_CRYPTO_HW is not set
|
||||
# CONFIG_XZ_DEC_X86 is not set
|
||||
# CONFIG_XZ_DEC_POWERPC is not set
|
||||
# CONFIG_XZ_DEC_IA64 is not set
|
||||
# CONFIG_XZ_DEC_ARMTHUMB is not set
|
||||
# CONFIG_XZ_DEC_SPARC is not set
|
||||
CONFIG_DMA_CMA=y
|
||||
CONFIG_CMA_SIZE_MBYTES=0
|
||||
CONFIG_PRINTK_TIME=y
|
||||
# CONFIG_DEBUG_BUGVERBOSE is not set
|
||||
# CONFIG_ENABLE_MUST_CHECK is not set
|
||||
# CONFIG_SCHED_DEBUG is not set
|
||||
# CONFIG_DEBUG_PREEMPT is not set
|
||||
# CONFIG_FTRACE is not set
|
||||
# CONFIG_RUNTIME_TESTING_MENU is not set
|
||||
CONFIG_DYNAMIC_DEBUG=y
|
||||
CONFIG_DEBUG_INFO=n
|
||||
CONFIG_DEBUG_INFO_DWARF4=n
|
||||
CONFIG_DEBUG_FS=y
|
||||
CONFIG_GDB_SCRIPTS=y
|
||||
# CONFIG_ENABLE_MUST_CHECK is not set
|
||||
CONFIG_DEBUG_FS=y
|
||||
CONFIG_BLK_DEV_INITRD=y
|
||||
CONFIG_RD_GZIP=y
|
||||
CONFIG_RD_BZIP2=y
|
||||
CONFIG_RD_LZMA=y
|
||||
CONFIG_RD_XZ=y
|
||||
CONFIG_RD_LZO=y
|
||||
CONFIG_RD_LZ4=y
|
||||
CONFIG_RD_ZSTD=y
|
||||
CONFIG_KALLSYMS=y
|
||||
CONFIG_FRAME_POINTER=n
|
||||
CONFIG_DEBUG_MISC=n
|
||||
CONFIG_RCU_TRACE=y
|
||||
CONFIG_USB_CONFIGFS_MASS_STORAGE=y
|
||||
CONFIG_MULTIUSER=y
|
||||
CONFIG_BUG=n
|
||||
CONFIG_IO_URING=n
|
||||
CONFIG_ADVISE_SYSCALLS=n
|
||||
CONFIG_SIGNALFD=n
|
||||
CONFIG_TIMERFD=n
|
||||
CONFIG_EPOLL=n
|
||||
CONFIG_ELF_CORE=y
|
||||
CONFIG_COREDUMP=y
|
||||
CONFIG_PROC_SYSCTL=y
|
||||
85
build/boards/cv181x/cv1812cp_milkv_duo256m_sd/memmap.py
Executable file
85
build/boards/cv181x/cv1812cp_milkv_duo256m_sd/memmap.py
Executable file
@ -0,0 +1,85 @@
|
||||
SIZE_1M = 0x100000
|
||||
SIZE_1K = 1024
|
||||
|
||||
|
||||
# Only attributes in class MemoryMap are generated to .h
|
||||
class MemoryMap:
|
||||
# No prefix "CVIMMAP_" for the items in _no_prefix[]
|
||||
_no_prefix = [
|
||||
"CONFIG_SYS_TEXT_BASE" # u-boot's CONFIG_SYS_TEXT_BASE is used without CPP.
|
||||
]
|
||||
|
||||
DRAM_BASE = 0x80000000
|
||||
DRAM_SIZE = 256 * SIZE_1M
|
||||
|
||||
# ==============
|
||||
# C906L FreeRTOS
|
||||
# ==============
|
||||
FREERTOS_SIZE = 2 * SIZE_1M
|
||||
# FreeRTOS is at the end of DRAM
|
||||
FREERTOS_ADDR = DRAM_BASE + DRAM_SIZE - FREERTOS_SIZE
|
||||
FSBL_C906L_START_ADDR = FREERTOS_ADDR
|
||||
|
||||
# ==============================
|
||||
# OpenSBI | arm-trusted-firmware
|
||||
# ==============================
|
||||
# Monitor is at the begining of DRAM
|
||||
MONITOR_ADDR = DRAM_BASE
|
||||
|
||||
ATF_SIZE = 512 * SIZE_1K
|
||||
OPENSBI_SIZE = 512 * SIZE_1K
|
||||
OPENSBI_FDT_ADDR = MONITOR_ADDR + OPENSBI_SIZE
|
||||
|
||||
# =========================
|
||||
# memory@DRAM_BASE in .dts.
|
||||
# =========================
|
||||
# Ignore the area of FreeRTOS in u-boot and kernel
|
||||
KERNEL_MEMORY_ADDR = DRAM_BASE
|
||||
KERNEL_MEMORY_SIZE = DRAM_SIZE - FREERTOS_SIZE
|
||||
|
||||
# =================
|
||||
# Multimedia buffer. Used by u-boot/kernel/FreeRTOS
|
||||
# =================
|
||||
ION_SIZE = 75 * SIZE_1M
|
||||
H26X_BITSTREAM_SIZE = 2 * SIZE_1M
|
||||
H26X_ENC_BUFF_SIZE = 0
|
||||
ISP_MEM_BASE_SIZE = 20 * SIZE_1M
|
||||
FREERTOS_RESERVED_ION_SIZE = H26X_BITSTREAM_SIZE + H26X_ENC_BUFF_SIZE + ISP_MEM_BASE_SIZE
|
||||
|
||||
# ION after FreeRTOS
|
||||
ION_ADDR = FREERTOS_ADDR - ION_SIZE
|
||||
|
||||
# Buffers of the fast image are inside the ION buffer
|
||||
H26X_BITSTREAM_ADDR = ION_ADDR
|
||||
H26X_ENC_BUFF_ADDR = H26X_BITSTREAM_ADDR + H26X_BITSTREAM_SIZE
|
||||
ISP_MEM_BASE_ADDR = H26X_ENC_BUFF_ADDR + H26X_ENC_BUFF_SIZE
|
||||
|
||||
assert ISP_MEM_BASE_ADDR + ISP_MEM_BASE_SIZE <= ION_ADDR + ION_SIZE
|
||||
|
||||
# Boot logo is after the ION buffer
|
||||
# Framebuffer uses boot logo's reserved memory
|
||||
BOOTLOGO_SIZE = 1800 * SIZE_1K
|
||||
BOOTLOGO_ADDR = ION_ADDR - BOOTLOGO_SIZE
|
||||
FRAMEBUFFER_SIZE = BOOTLOGO_SIZE
|
||||
FRAMEBUFFER_ADDR = BOOTLOGO_ADDR
|
||||
|
||||
# ===================
|
||||
# FSBL and u-boot-2021
|
||||
# ===================
|
||||
CVI_UPDATE_HEADER_SIZE = SIZE_1K
|
||||
UIMAG_SIZE = 16 * SIZE_1M
|
||||
|
||||
# kernel image loading buffer
|
||||
UIMAG_ADDR = DRAM_BASE + 24 * SIZE_1M
|
||||
CVI_UPDATE_HEADER_ADDR = UIMAG_ADDR - CVI_UPDATE_HEADER_SIZE
|
||||
|
||||
# FSBL decompress buffer
|
||||
FSBL_UNZIP_ADDR = UIMAG_ADDR
|
||||
FSBL_UNZIP_SIZE = UIMAG_SIZE
|
||||
|
||||
assert UIMAG_ADDR + UIMAG_SIZE <= BOOTLOGO_ADDR
|
||||
|
||||
# u-boot's run address and entry point
|
||||
CONFIG_SYS_TEXT_BASE = DRAM_BASE + 2 * SIZE_1M
|
||||
# u-boot's init stack point is only used before board_init_f()
|
||||
CONFIG_SYS_INIT_SP_ADDR = UIMAG_ADDR + UIMAG_SIZE
|
||||
@ -0,0 +1,4 @@
|
||||
<physical_partition type="sd">
|
||||
<partition label="BOOT" size_in_kb="262144" readonly="false" file="boot.sd"/>
|
||||
<partition label="ROOTFS" size_in_kb="262144" readonly="false" file="rootfs.sd" />
|
||||
</physical_partition>
|
||||
70
build/boards/cv181x/cv1812cp_milkv_duo256m_sd/rootfs_script/clean_rootfs.sh
Executable file
70
build/boards/cv181x/cv1812cp_milkv_duo256m_sd/rootfs_script/clean_rootfs.sh
Executable file
@ -0,0 +1,70 @@
|
||||
#!/bin/bash
|
||||
|
||||
SYSTEM_DIR=$1
|
||||
rm -f $SYSTEM_DIR/mnt/system/usr/lib/libz*
|
||||
rm -f $SYSTEM_DIR/mnt/system/lib/libz*
|
||||
|
||||
rm -f $SYSTEM_DIR/mnt/system/usr/lib/3rd/libcvi*
|
||||
rm -f $SYSTEM_DIR/mnt/system/usr/lib/3rd/libmad*
|
||||
rm -f $SYSTEM_DIR/mnt/system/usr/lib/3rd/libmp3*
|
||||
rm -f $SYSTEM_DIR/mnt/system/usr/lib/3rd/libopencv*
|
||||
rm -f $SYSTEM_DIR/mnt/system/usr/lib/libopencv*
|
||||
rm -f $SYSTEM_DIR/mnt/system/usr/lib/libcvi_rtsp.so
|
||||
rm -f $SYSTEM_DIR/mnt/system/data/install/lib/libcvi_rtsp.so
|
||||
rm -f $SYSTEM_DIR/mnt/system/usr/lib/libcvikernel.so
|
||||
rm -f $SYSTEM_DIR/mnt/system/usr/lib/*.a
|
||||
rm -f $SYSTEM_DIR/mnt/system/usr/lib/libgst*
|
||||
rm -f $SYSTEM_DIR/mnt/system/usr/lib/libg*
|
||||
rm -f $SYSTEM_DIR/mnt/system/usr/lib/gstreamer-1.0/libgst*
|
||||
rm -f $SYSTEM_DIR/mnt/system/data/install/lib/libcrypto.so*
|
||||
rm -f $SYSTEM_DIR/mnt/system/data/install/lib/libssl.so*
|
||||
rm -f $SYSTEM_DIR/mnt/system/data/install/lib/libcvi_protobuf.so*
|
||||
rm -f $SYSTEM_DIR/mnt/system/data/install/lib/libprotobuf-lite.so*
|
||||
rm -f $SYSTEM_DIR/mnt/system/usr/lib/libcviai*
|
||||
rm -f $SYSTEM_DIR/mnt/system/usr/lib/libcvi_ispd.so*
|
||||
rm -f $SYSTEM_DIR/mnt/system/usr/lib/libraw_replay.so*
|
||||
rm -f $SYSTEM_DIR/mnt/system/usr/lib/libcvi_ive_tpu.so*
|
||||
rm -rf $SYSTEM_DIR/mnt/system/usr/lib/gio
|
||||
rm -rf $SYSTEM_DIR/mnt/system/usr/lib/glib*
|
||||
rm -rf $SYSTEM_DIR/mnt/system/usr/lib/gstreamer-1.0*
|
||||
rm -rf $SYSTEM_DIR/mnt/system/usr/libexec*
|
||||
rm -rf $SYSTEM_DIR/mnt/system/usr/bin
|
||||
rm -f $SYSTEM_DIR/mnt/system/usr/lib/libcvimath.so
|
||||
rm -f $SYSTEM_DIR/mnt/system/usr/lib/libcviruntime.so
|
||||
rm -f $SYSTEM_DIR/mnt/system/usr/lib/libcnpy.so
|
||||
rm -f $SYSTEM_DIR/mnt/system/usr/lib/libcipher.so
|
||||
|
||||
rm -f $SYSTEM_DIR/mnt/system/lib/libcipher.so*
|
||||
rm -f $SYSTEM_DIR/mnt/system/lib/libcvi_ispd.so*
|
||||
rm -f $SYSTEM_DIR/mnt/system/lib/libraw_replay.so*
|
||||
rm -f $SYSTEM_DIR/mnt/system/lib/libmad.so*
|
||||
rm -f $SYSTEM_DIR/mnt/system/lib/libmp3*
|
||||
rm -f $SYSTEM_DIR/mnt/system/lib/libnanomsg*
|
||||
|
||||
#del 3rdparty lib
|
||||
#del thttpd/libwebsockets lib
|
||||
rm -f $SYSTEM_DIR/mnt/system/lib/libthttpd*
|
||||
rm -f $SYSTEM_DIR/mnt/system/lib/libwebsocket*
|
||||
if [ $SDK_VER = "uclibc" ]
|
||||
then
|
||||
#del opencv lib
|
||||
rm -f $SYSTEM_DIR/mnt/system/lib/libopencv*
|
||||
#del ffmpeg lib
|
||||
rm -f $SYSTEM_DIR/mnt/system/lib/libav*
|
||||
#save /mnt/system/lib/ openssl lib; need by ntpdate/wpa_supplicant
|
||||
else
|
||||
#glibc ramdisk(rootfs/common_arm/usr/lib/) has libcrypto.so and libssl.so
|
||||
#del openssl
|
||||
rm -f $SYSTEM_DIR/mnt/system/lib/libssl*
|
||||
rm -f $SYSTEM_DIR/mnt/system/lib/libcrypto*
|
||||
fi
|
||||
|
||||
rm -rf $SYSTEM_DIR/etc/init.d/S23ntp
|
||||
rm -rf $SYSTEM_DIR/bin/ntpd
|
||||
|
||||
du -sh $SYSTEM_DIR/* |sort -rh
|
||||
du -sh $SYSTEM_DIR/mnt/* |sort -rh
|
||||
du -sh $SYSTEM_DIR/mnt/system/* |sort -rh
|
||||
du -sh $SYSTEM_DIR/mnt/system/lib/* |sort -rh
|
||||
du -sh $SYSTEM_DIR/mnt/system/data/install/* |sort -rh
|
||||
du -sh $SYSTEM_DIR/usr/* |sort -rh
|
||||
@ -0,0 +1,8 @@
|
||||
int cvi_board_init(void)
|
||||
{
|
||||
PINMUX_CONFIG(PAD_MIPI_TXM1, IIC2_SDA);
|
||||
PINMUX_CONFIG(PAD_MIPI_TXP1, IIC2_SCL);
|
||||
PINMUX_CONFIG(PAD_MIPI_TXM0, CAM_MCLK1);
|
||||
|
||||
return 0;
|
||||
}
|
||||
@ -0,0 +1,12 @@
|
||||
/*
|
||||
*VO control GPIOs
|
||||
*/
|
||||
#define VO_GPIO_RESET_PORT portb
|
||||
#define VO_GPIO_RESET_INDEX 5
|
||||
#define VO_GPIO_RESET_ACTIVE GPIO_ACTIVE_LOW
|
||||
#define VO_GPIO_PWM_PORT portb
|
||||
#define VO_GPIO_PWM_INDEX 4
|
||||
#define VO_GPIO_PWM_ACTIVE GPIO_ACTIVE_HIGH
|
||||
#define VO_GPIO_POWER_CT_PORT portb
|
||||
#define VO_GPIO_POWER_CT_INDEX 3
|
||||
#define VO_GPIO_POWER_CT_ACTIVE GPIO_ACTIVE_HIGH
|
||||
@ -0,0 +1,43 @@
|
||||
CONFIG_RISCV=y
|
||||
CONFIG_SYS_MALLOC_F_LEN=0x2000
|
||||
CONFIG_NR_DRAM_BANKS=1
|
||||
CONFIG_DEFAULT_DEVICE_TREE="cv181x_asic"
|
||||
CONFIG_IDENT_STRING=" cvitek_cv181x"
|
||||
CONFIG_ARCH_RV64I=y
|
||||
CONFIG_RISCV_SMODE=y
|
||||
CONFIG_TARGET_CVITEK_CV181X=y
|
||||
CONFIG_DISTRO_DEFAULTS=y
|
||||
CONFIG_FIT=y
|
||||
# CONFIG_ARCH_FIXUP_FDT_MEMORY is not set
|
||||
CONFIG_BOOTDELAY=1
|
||||
CONFIG_SYS_PROMPT="cv181x_c906# "
|
||||
# CONFIG_CMD_CONSOLE is not set
|
||||
# CONFIG_CMD_XIMG is not set
|
||||
# CONFIG_CMD_EDITENV is not set
|
||||
# CONFIG_CMD_CRC32 is not set
|
||||
# CONFIG_CMD_LZMADEC is not set
|
||||
# CONFIG_CMD_UNLZ4 is not set
|
||||
# CONFIG_CMD_UNZIP is not set
|
||||
# CONFIG_CMD_LOADS is not set
|
||||
CONFIG_CMD_MMC=y
|
||||
# CONFIG_CMD_ITEST is not set
|
||||
CONFIG_CMD_CACHE=y
|
||||
CONFIG_CMD_CVI_SD_UPDATE=y
|
||||
# CONFIG_ISO_PARTITION is not set
|
||||
# CONFIG_EFI_PARTITION is not set
|
||||
CONFIG_NET_RANDOM_ETHADDR=y
|
||||
CONFIG_MMC=y
|
||||
CONFIG_MMC_SDHCI=y
|
||||
CONFIG_MMC_SDHCI_SDMA=y
|
||||
CONFIG_MMC_SDHCI_CVITEK=y
|
||||
CONFIG_MTD=y
|
||||
# CONFIG_PHY_SMSC is not set
|
||||
CONFIG_DM_ETH=y
|
||||
CONFIG_ETH_DESIGNWARE=y
|
||||
CONFIG_PHY_CVITEK=y
|
||||
CONFIG_SYS_NS16550=y
|
||||
CONFIG_SPI=y
|
||||
CONFIG_LZ4=y
|
||||
CONFIG_LZMA=y
|
||||
# CONFIG_TOOLS_LIBCRYPTO is not set
|
||||
CONFIG_ENV_IS_NOWHERE=y
|
||||
@ -13,7 +13,7 @@
|
||||
};
|
||||
|
||||
&dac{
|
||||
mute-gpio-r = <&porte 2 GPIO_ACTIVE_LOW>;
|
||||
mute-gpio-r = <&porte 1 GPIO_ACTIVE_LOW>;
|
||||
};
|
||||
|
||||
&spi0 {
|
||||
|
||||
4
build/boards/default/dts/cv181x/cv181x_asic_sd.dtsi
Normal file
4
build/boards/default/dts/cv181x/cv181x_asic_sd.dtsi
Normal file
@ -0,0 +1,4 @@
|
||||
/ {
|
||||
/delete-node/ cv-emmc@4300000;
|
||||
/delete-node/ cv-spinf@4060000;
|
||||
};
|
||||
2
buildroot-2021.05/board/milkv/milkv-duo256m/overlay/.gitignore
vendored
Normal file
2
buildroot-2021.05/board/milkv/milkv-duo256m/overlay/.gitignore
vendored
Normal file
@ -0,0 +1,2 @@
|
||||
mnt/system/
|
||||
usr/bin
|
||||
@ -0,0 +1,4 @@
|
||||
interface=usb0
|
||||
dhcp-range=192.168.42.2,192.168.42.242,1h
|
||||
dhcp-option=3
|
||||
dhcp-option=6
|
||||
50
buildroot-2021.05/board/milkv/milkv-duo256m/overlay/etc/init.d/S99user
Executable file
50
buildroot-2021.05/board/milkv/milkv-duo256m/overlay/etc/init.d/S99user
Executable file
@ -0,0 +1,50 @@
|
||||
#!/bin/sh
|
||||
${CVI_SHOPTS}
|
||||
#
|
||||
# Start firmware
|
||||
#
|
||||
export USERDATAPATH=/mnt/data/
|
||||
export SYSTEMPATH=/mnt/system/
|
||||
|
||||
case "$1" in
|
||||
start)
|
||||
echo "init mpp system..."
|
||||
if [ -d $SYSTEMPATH/ko ]; then
|
||||
sh $SYSTEMPATH/ko/loadsystemko.sh
|
||||
fi
|
||||
|
||||
echo "Starting app..."
|
||||
|
||||
if [ -f $SYSTEMPATH/duo-init.sh ]; then
|
||||
. $SYSTEMPATH/duo-init.sh &
|
||||
fi
|
||||
|
||||
if [ -f $SYSTEMPATH/blink.sh ]; then
|
||||
. $SYSTEMPATH/blink.sh &
|
||||
fi
|
||||
|
||||
if [ -f $SYSTEMPATH/usb.sh ]; then
|
||||
. $SYSTEMPATH/usb.sh &
|
||||
fi
|
||||
|
||||
if [ -f $USERDATAPATH/auto.sh ]; then
|
||||
usleep 30000
|
||||
. $USERDATAPATH/auto.sh &
|
||||
exit 1
|
||||
fi
|
||||
if [ -f $SYSTEMPATH/auto.sh ]; then
|
||||
usleep 30000
|
||||
. $SYSTEMPATH/auto.sh &
|
||||
fi
|
||||
;;
|
||||
stop)
|
||||
;;
|
||||
restart|reload)
|
||||
;;
|
||||
*)
|
||||
echo "Usage: $0 {start|stop|restart}"
|
||||
exit 1
|
||||
esac
|
||||
|
||||
exit $?
|
||||
|
||||
@ -0,0 +1,40 @@
|
||||
# /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
|
||||
|
||||
# Put a getty on the serial port
|
||||
# console::respawn:/sbin/getty -L console 0 vt100 # GENERIC_SERIAL
|
||||
console::respawn:/sbin/getty -L console 115200 vt100 -n -l /usr/local/bin/autologin
|
||||
|
||||
# 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
|
||||
@ -0,0 +1,37 @@
|
||||
export PATH="/bin:/sbin:/usr/bin:/usr/sbin"
|
||||
export PATH="/usr/local/bin:/usr/bin:/bin:/usr/local/sbin:/usr/sbin:/sbin:/mnt/system/usr/bin:/mnt/system/usr/sbin:/mnt/data/bin:/mnt/data/sbin"
|
||||
|
||||
if [ "$PS1" ]; then
|
||||
if [ "`id -u`" -eq 0 ]; then
|
||||
export PS1='# '
|
||||
else
|
||||
export PS1='$ '
|
||||
fi
|
||||
fi
|
||||
|
||||
export PAGER='/bin/more '
|
||||
export EDITOR='/bin/vi'
|
||||
|
||||
# Source configuration files from /etc/profile.d
|
||||
for i in /etc/profile.d/*.sh ; do
|
||||
if [ -r "$i" ]; then
|
||||
. $i
|
||||
fi
|
||||
unset i
|
||||
done
|
||||
|
||||
export HOSTNAME="$(hostname)"
|
||||
export OLDPWD=/root
|
||||
|
||||
if [ '$USER' == 'root' ]; then
|
||||
export PS1='[\u@\h]\w\# '
|
||||
else
|
||||
export PS1='[\u@\h]\w\$ '
|
||||
fi
|
||||
|
||||
alias ll='ls -alF'
|
||||
alias la='ls -A'
|
||||
alias l='ls -CF'
|
||||
|
||||
export TERM=vt100
|
||||
export TERMINFO=/usr/share/terminfo
|
||||
292
buildroot-2021.05/board/milkv/milkv-duo256m/overlay/etc/run_usb.sh
Executable file
292
buildroot-2021.05/board/milkv/milkv-duo256m/overlay/etc/run_usb.sh
Executable file
@ -0,0 +1,292 @@
|
||||
CLASS=acm
|
||||
VID=0x3346
|
||||
PID=0x1003
|
||||
MSC_PID=0x1008
|
||||
RNDIS_PID=0x1009
|
||||
UVC_PID=0x100A
|
||||
UAC_PID=0x100B
|
||||
ADB_VID=0x18D1
|
||||
ADB_PID=0x4EE0
|
||||
ADB_PID_M1=0x4EE2
|
||||
ADB_PID_M2=0x4EE4
|
||||
MANUFACTURER="Cvitek"
|
||||
PRODUCT="USB Com Port"
|
||||
PRODUCT_RNDIS="RNDIS"
|
||||
PRODUCT_UVC="UVC"
|
||||
PRODUCT_UAC="UAC"
|
||||
PRODUCT_ADB="ADB"
|
||||
ADBD_PATH=/usr/bin/
|
||||
SERIAL="0123456789"
|
||||
MSC_FILE=$3
|
||||
CVI_DIR=/tmp/usb
|
||||
CVI_GADGET=$CVI_DIR/usb_gadget/cvitek
|
||||
CVI_FUNC=$CVI_GADGET/functions
|
||||
FUNC_NUM=0
|
||||
MAX_EP_NUM=4
|
||||
TMP_NUM=0
|
||||
INTF_NUM=0
|
||||
EP_IN=0
|
||||
EP_OUT=0
|
||||
|
||||
case "$2" in
|
||||
acm)
|
||||
CLASS=acm
|
||||
;;
|
||||
msc)
|
||||
CLASS=mass_storage
|
||||
PID=$MSC_PID
|
||||
;;
|
||||
cvg)
|
||||
CLASS=cvg
|
||||
;;
|
||||
rndis)
|
||||
CLASS=rndis
|
||||
PID=$RNDIS_PID
|
||||
PRODUCT=$PRODUCT_RNDIS
|
||||
;;
|
||||
uvc)
|
||||
CLASS=uvc
|
||||
PID=$UVC_PID
|
||||
PRODUCT=$PRODUCT_UVC
|
||||
;;
|
||||
uac1)
|
||||
CLASS=uac1
|
||||
PID=$UAC_PID
|
||||
PRODUCT=$PRODUCT_UAC
|
||||
;;
|
||||
adb)
|
||||
CLASS=ffs.adb
|
||||
VID=$ADB_VID
|
||||
PID=$ADB_PID
|
||||
PRODUCT=$PRODUCT_ADB
|
||||
;;
|
||||
*)
|
||||
if [ "$1" = "probe" ] ; then
|
||||
echo "Usage: $0 probe {acm|msc|cvg|rndis|uvc|uac1|adb}"
|
||||
exit 1
|
||||
fi
|
||||
esac
|
||||
|
||||
calc_func() {
|
||||
FUNC_NUM=$(ls $CVI_GADGET/functions -l | grep ^d | wc -l)
|
||||
echo "$FUNC_NUM file(s)"
|
||||
}
|
||||
|
||||
res_check() {
|
||||
TMP_NUM=$(find $CVI_GADGET/functions/ -name "acm*" | wc -l)
|
||||
EP_OUT=$(($EP_OUT+$TMP_NUM))
|
||||
TMP_NUM=$(($TMP_NUM * 2))
|
||||
EP_IN=$(($EP_IN+$TMP_NUM))
|
||||
INTF_NUM=$(($INTF_NUM+$TMP_NUM))
|
||||
TMP_NUM=$(find $CVI_GADGET/functions/ -name "mass_storage*" | wc -l)
|
||||
EP_IN=$(($EP_IN+$TMP_NUM))
|
||||
EP_OUT=$(($EP_OUT+$TMP_NUM))
|
||||
INTF_NUM=$(($INTF_NUM+$TMP_NUM))
|
||||
TMP_NUM=$(find $CVI_GADGET/functions/ -name "cvg*" | wc -l)
|
||||
EP_IN=$(($EP_IN+$TMP_NUM))
|
||||
EP_OUT=$(($EP_OUT+$TMP_NUM))
|
||||
INTF_NUM=$(($INTF_NUM+$TMP_NUM))
|
||||
TMP_NUM=$(find $CVI_GADGET/functions/ -name "rndis*" | wc -l)
|
||||
EP_OUT=$(($EP_OUT+$TMP_NUM))
|
||||
TMP_NUM=$(($TMP_NUM * 2))
|
||||
EP_IN=$(($EP_IN+$TMP_NUM))
|
||||
INTF_NUM=$(($INTF_NUM+$TMP_NUM))
|
||||
TMP_NUM=$(find $CVI_GADGET/functions/ -name "uvc*" | wc -l)
|
||||
TMP_NUM=$(($TMP_NUM * 2))
|
||||
EP_IN=$(($EP_IN+$TMP_NUM))
|
||||
INTF_NUM=$(($INTF_NUM+$TMP_NUM))
|
||||
TMP_NUM=$(find $CVI_GADGET/functions/ -name "uac1*" | wc -l)
|
||||
TMP_NUM=$(($TMP_NUM * 2))
|
||||
EP_IN=$(($EP_IN+$TMP_NUM))
|
||||
EP_OUT=$(($EP_OUT+$TMP_NUM))
|
||||
INTF_NUM=$(($INTF_NUM+$TMP_NUM))
|
||||
TMP_NUM=$(find $CVI_GADGET/functions/ -name ffs.adb | wc -l)
|
||||
EP_IN=$(($EP_IN+$TMP_NUM))
|
||||
EP_OUT=$(($EP_OUT+$TMP_NUM))
|
||||
INTF_NUM=$(($INTF_NUM+$TMP_NUM))
|
||||
|
||||
if [ "$CLASS" = "acm" ] ; then
|
||||
EP_IN=$(($EP_IN+2))
|
||||
EP_OUT=$(($EP_OUT+1))
|
||||
fi
|
||||
if [ "$CLASS" = "mass_storage" ] ; then
|
||||
EP_IN=$(($EP_IN+1))
|
||||
EP_OUT=$(($EP_OUT+1))
|
||||
fi
|
||||
if [ "$CLASS" = "cvg" ] ; then
|
||||
EP_IN=$(($EP_IN+1))
|
||||
EP_OUT=$(($EP_OUT+1))
|
||||
fi
|
||||
if [ "$CLASS" = "rndis" ] ; then
|
||||
EP_IN=$(($EP_IN+2))
|
||||
EP_OUT=$(($EP_OUT+1))
|
||||
fi
|
||||
if [ "$CLASS" = "uvc" ] ; then
|
||||
EP_IN=$(($EP_IN+2))
|
||||
fi
|
||||
if [ "$CLASS" = "uac1" ] ; then
|
||||
EP_IN=$(($EP_IN+1))
|
||||
EP_OUT=$(($EP_OUT+1))
|
||||
fi
|
||||
if [ "$CLASS" = "ffs.adb" ] ; then
|
||||
EP_IN=$(($EP_IN+1))
|
||||
EP_OUT=$(($EP_OUT+1))
|
||||
fi
|
||||
echo "$EP_IN in ep"
|
||||
echo "$EP_OUT out ep"
|
||||
if [ $EP_IN -gt $MAX_EP_NUM ]; then
|
||||
echo "reach maximum resource"
|
||||
exit 1
|
||||
fi
|
||||
if [ $EP_OUT -gt $MAX_EP_NUM ]; then
|
||||
echo "reach maximum resource"
|
||||
exit 1
|
||||
fi
|
||||
}
|
||||
|
||||
probe() {
|
||||
if [ ! -d $CVI_DIR ]; then
|
||||
mkdir $CVI_DIR
|
||||
fi
|
||||
if [ ! -d $CVI_DIR/usb_gadget ]; then
|
||||
# Enale USB ConfigFS
|
||||
mount none $CVI_DIR -t configfs
|
||||
# Create gadget dev
|
||||
mkdir $CVI_GADGET
|
||||
# Set the VID and PID
|
||||
echo $VID >$CVI_GADGET/idVendor
|
||||
echo $PID >$CVI_GADGET/idProduct
|
||||
# Set the product information string
|
||||
mkdir $CVI_GADGET/strings/0x409
|
||||
echo $MANUFACTURER>$CVI_GADGET/strings/0x409/manufacturer
|
||||
echo $PRODUCT>$CVI_GADGET/strings/0x409/product
|
||||
echo $SERIAL>$CVI_GADGET/strings/0x409/serialnumber
|
||||
# Set the USB configuration
|
||||
mkdir $CVI_GADGET/configs/c.1
|
||||
mkdir $CVI_GADGET/configs/c.1/strings/0x409
|
||||
echo "config1">$CVI_GADGET/configs/c.1/strings/0x409/configuration
|
||||
# Set the MaxPower of USB descriptor
|
||||
echo 120 >$CVI_GADGET/configs/c.1/MaxPower
|
||||
fi
|
||||
# get current functions number
|
||||
calc_func
|
||||
# assign the class code for composite device
|
||||
if [ ! $FUNC_NUM -eq 0 ]; then
|
||||
echo 0xEF >$CVI_GADGET/bDeviceClass
|
||||
echo 0x02 >$CVI_GADGET/bDeviceSubClass
|
||||
echo 0x01 >$CVI_GADGET/bDeviceProtocol
|
||||
fi
|
||||
# resource check
|
||||
res_check
|
||||
# create the desired function
|
||||
if [ "$CLASS" = "ffs.adb" ] ; then
|
||||
# adb shall be the last function to probe. Override the pid/vid
|
||||
echo $VID >$CVI_GADGET/idVendor
|
||||
echo $PID >$CVI_GADGET/idProduct
|
||||
# choose pid for different function number
|
||||
if [ $INTF_NUM -eq 1 ]; then
|
||||
echo $ADB_PID_M1 >$CVI_GADGET/idProduct
|
||||
fi
|
||||
if [ $INTF_NUM -eq 2 ]; then
|
||||
echo $ADB_PID_M2 >$CVI_GADGET/idProduct
|
||||
fi
|
||||
mkdir $CVI_GADGET/functions/$CLASS
|
||||
else
|
||||
mkdir $CVI_GADGET/functions/$CLASS.usb$FUNC_NUM
|
||||
fi
|
||||
if [ "$CLASS" = "mass_storage" ] ; then
|
||||
echo $MSC_FILE >$CVI_GADGET/functions/$CLASS.usb$FUNC_NUM/lun.0/file
|
||||
fi
|
||||
if [ "$CLASS" = "rndis" ] ; then
|
||||
#OS STRING
|
||||
echo 1 >$CVI_GADGET/os_desc/use
|
||||
echo 0xcd >$CVI_GADGET/os_desc/b_vendor_code
|
||||
echo MSFT100 >$CVI_GADGET/os_desc/qw_sign
|
||||
#COMPATIBLE ID
|
||||
echo RNDIS >$CVI_FUNC/rndis.usb$FUNC_NUM/os_desc/interface.rndis/compatible_id
|
||||
#MAKE c.1 THE ONE ASSOCIATED WITH OS DESCRIPTORS
|
||||
ln -s $CVI_GADGET/configs/c.1 $CVI_GADGET/os_desc
|
||||
#MAKE "Icons" EXTENDED PROPERTY
|
||||
mkdir $CVI_FUNC/rndis.usb$FUNC_NUM/os_desc/interface.rndis/Icons
|
||||
echo 2 >$CVI_FUNC/rndis.usb$FUNC_NUM/os_desc/interface.rndis/Icons/type
|
||||
echo "%SystemRoot%\\system32\\shell32.dll,-233" >$CVI_FUNC/rndis.usb$FUNC_NUM/os_desc/interface.rndis/Icons/data
|
||||
#MAKE "Label" EXTENDED PROPERTY
|
||||
mkdir $CVI_FUNC/rndis.usb$FUNC_NUM/os_desc/interface.rndis/Label
|
||||
echo 1 >$CVI_FUNC/rndis.usb$FUNC_NUM/os_desc/interface.rndis/Label/type
|
||||
echo "XYZ Device" >$CVI_FUNC/rndis.usb$FUNC_NUM/os_desc/interface.rndis/Label/data
|
||||
fi
|
||||
|
||||
}
|
||||
|
||||
start() {
|
||||
# link this function to the configuration
|
||||
calc_func
|
||||
if [ $FUNC_NUM -eq 0 ]; then
|
||||
echo "Functions Empty!"
|
||||
exit 1
|
||||
fi
|
||||
if [ -d $CVI_GADGET/functions/ffs.adb ]; then
|
||||
FUNC_NUM=$(($FUNC_NUM-1))
|
||||
fi
|
||||
for i in `seq 0 $(($FUNC_NUM-1))`;
|
||||
do
|
||||
find $CVI_GADGET/functions/ -name "*.usb$i" | xargs -I % ln -s % $CVI_GADGET/configs/c.1
|
||||
done
|
||||
if [ -d $CVI_GADGET/functions/ffs.adb ]; then
|
||||
ln -s $CVI_GADGET/functions/ffs.adb $CVI_GADGET/configs/c.1
|
||||
mkdir /dev/usb-ffs/adb -p
|
||||
mount -t functionfs adb /dev/usb-ffs/adb
|
||||
if [ -f $ADBD_PATH/adbd ]; then
|
||||
$ADBD_PATH/adbd &
|
||||
fi
|
||||
else
|
||||
# Start the gadget driver
|
||||
UDC=`ls /sys/class/udc/ | awk '{print $1}'`
|
||||
echo ${UDC} >$CVI_GADGET/UDC
|
||||
fi
|
||||
}
|
||||
|
||||
stop() {
|
||||
if [ -d $CVI_GADGET/configs/c.1/ffs.adb ]; then
|
||||
pkill adbd
|
||||
rm $CVI_GADGET/configs/c.1/ffs.adb
|
||||
else
|
||||
echo "" >$CVI_GADGET/UDC
|
||||
fi
|
||||
find $CVI_GADGET/configs/ -name "*.usb*" | xargs rm -f
|
||||
rmdir $CVI_GADGET/configs/c.*/strings/0x409/
|
||||
tmp_dirs=$(find $CVI_GADGET/os_desc/c.* -type d)
|
||||
if [ -n tmp_dirs ]; then
|
||||
echo "remove os_desc!"
|
||||
rm -rf $CVI_GADGET/os_desc/c.*/
|
||||
find $CVI_GADGET/functions/ -name Icons | xargs rmdir
|
||||
find $CVI_GADGET/functions/ -name Label | xargs rmdir
|
||||
fi
|
||||
rmdir $CVI_GADGET/configs/c.*/
|
||||
rmdir $CVI_GADGET/functions/*
|
||||
rmdir $CVI_GADGET/strings/0x409/
|
||||
rmdir $CVI_GADGET
|
||||
umount $CVI_DIR
|
||||
rmdir $CVI_DIR
|
||||
}
|
||||
|
||||
case "$1" in
|
||||
start)
|
||||
start
|
||||
;;
|
||||
stop)
|
||||
stop
|
||||
;;
|
||||
probe)
|
||||
probe
|
||||
;;
|
||||
UDC)
|
||||
ls /sys/class/udc/ >$CVI_GADGET/UDC
|
||||
;;
|
||||
*)
|
||||
echo "Usage: $0 probe {acm|msc|cvg|uvc|uac1} {file (msc)}"
|
||||
echo "Usage: $0 start"
|
||||
echo "Usage: $0 stop"
|
||||
exit 1
|
||||
esac
|
||||
exit $?
|
||||
83
buildroot-2021.05/board/milkv/milkv-duo256m/overlay/etc/uhubon.sh
Executable file
83
buildroot-2021.05/board/milkv/milkv-duo256m/overlay/etc/uhubon.sh
Executable file
@ -0,0 +1,83 @@
|
||||
GPIO_HUBPORT_EN=449
|
||||
GPIO_ROLESEL=450
|
||||
GPIO_HUBRST=451
|
||||
SYS_GPIO=/sys/class/gpio
|
||||
|
||||
hub_on() {
|
||||
echo "turn on usb hub"
|
||||
if [ ! -d $SYS_GPIO/gpio$GPIO_HUBPORT_EN ]; then
|
||||
echo $GPIO_HUBPORT_EN >/sys/class/gpio/export
|
||||
fi
|
||||
|
||||
if [ ! -d $SYS_GPIO/gpio$GPIO_ROLESEL ]; then
|
||||
echo $GPIO_ROLESEL >/sys/class/gpio/export
|
||||
fi
|
||||
|
||||
if [ ! -d $SYS_GPIO/gpio$GPIO_HUBRST ]; then
|
||||
echo $GPIO_HUBRST >/sys/class/gpio/export
|
||||
fi
|
||||
|
||||
echo "out" >/sys/class/gpio/gpio$GPIO_HUBPORT_EN/direction
|
||||
echo "out" >/sys/class/gpio/gpio$GPIO_ROLESEL/direction
|
||||
echo "out" >/sys/class/gpio/gpio$GPIO_HUBRST/direction
|
||||
|
||||
echo 1 >/sys/class/gpio/gpio$GPIO_HUBPORT_EN/value
|
||||
echo 0 >/sys/class/gpio/gpio$GPIO_ROLESEL/value
|
||||
echo 0 >/sys/class/gpio/gpio$GPIO_HUBRST/value
|
||||
}
|
||||
|
||||
hub_off() {
|
||||
echo "turn off usb hub"
|
||||
if [ ! -d $SYS_GPIO/gpio$GPIO_HUBPORT_EN ]; then
|
||||
echo $GPIO_HUBPORT_EN >/sys/class/gpio/export
|
||||
fi
|
||||
|
||||
if [ ! -d $SYS_GPIO/gpio$GPIO_ROLESEL ]; then
|
||||
echo $GPIO_ROLESEL >/sys/class/gpio/export
|
||||
fi
|
||||
|
||||
if [ ! -d $SYS_GPIO/gpio$GPIO_HUBRST ]; then
|
||||
echo $GPIO_HUBRST >/sys/class/gpio/export
|
||||
fi
|
||||
|
||||
echo "out" >/sys/class/gpio/gpio$GPIO_HUBPORT_EN/direction
|
||||
echo "out" >/sys/class/gpio/gpio$GPIO_ROLESEL/direction
|
||||
echo "out" >/sys/class/gpio/gpio$GPIO_HUBRST/direction
|
||||
|
||||
echo 0 >/sys/class/gpio/gpio$GPIO_HUBPORT_EN/value
|
||||
echo 1 >/sys/class/gpio/gpio$GPIO_ROLESEL/value
|
||||
echo 1 >/sys/class/gpio/gpio$GPIO_HUBRST/value
|
||||
}
|
||||
|
||||
inst_mod() {
|
||||
insmod /mnt/system/ko/configfs.ko
|
||||
insmod /mnt/system/ko/libcomposite.ko
|
||||
insmod /mnt/system/ko/u_serial.ko
|
||||
insmod /mnt/system/ko/usb_f_acm.ko
|
||||
insmod /mnt/system/ko/cvi_usb_f_cvg.ko
|
||||
insmod /mnt/system/ko/usb_f_uvc.ko
|
||||
insmod /mnt/system/ko/usb_f_fs.ko
|
||||
insmod /mnt/system/ko/u_audio.ko
|
||||
insmod /mnt/system/ko/usb_f_uac1.ko
|
||||
insmod /mnt/system/ko/usb_f_serial.ko
|
||||
insmod /mnt/system/ko/usb_f_mass_storage.ko
|
||||
insmod /mnt/system/ko/u_ether.ko
|
||||
insmod /mnt/system/ko/usb_f_ecm.ko
|
||||
insmod /mnt/system/ko/usb_f_eem.ko
|
||||
insmod /mnt/system/ko/usb_f_rndis.ko
|
||||
}
|
||||
|
||||
case "$1" in
|
||||
host)
|
||||
insmod /mnt/system/ko/dwc2.ko
|
||||
echo host > /proc/cviusb/otg_role
|
||||
;;
|
||||
device)
|
||||
echo device > /proc/cviusb/otg_role
|
||||
;;
|
||||
*)
|
||||
echo "Usage: $0 host"
|
||||
echo "Usage: $0 device"
|
||||
exit 1
|
||||
esac
|
||||
exit $?
|
||||
@ -0,0 +1 @@
|
||||
../usr/lib64v0p7_xthead/lp64d/libc.so
|
||||
Binary file not shown.
@ -0,0 +1,2 @@
|
||||
#! /bin/sh
|
||||
exec /bin/login -f root
|
||||
469
buildroot-2021.05/configs/milkv-duo256m_musl_riscv64_defconfig
Normal file
469
buildroot-2021.05/configs/milkv-duo256m_musl_riscv64_defconfig
Normal file
@ -0,0 +1,469 @@
|
||||
#
|
||||
# Automatically generated file; DO NOT EDIT.
|
||||
# Buildroot -g8c59e72e33-dirty Configuration
|
||||
#
|
||||
BR2_HAVE_DOT_CONFIG=y
|
||||
BR2_HOST_GCC_AT_LEAST_4_9=y
|
||||
BR2_HOST_GCC_AT_LEAST_5=y
|
||||
BR2_HOST_GCC_AT_LEAST_6=y
|
||||
BR2_HOST_GCC_AT_LEAST_7=y
|
||||
|
||||
#
|
||||
# Target options
|
||||
#
|
||||
BR2_ARCH_IS_64=y
|
||||
BR2_ARCH_HAS_MMU_MANDATORY=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_g=y
|
||||
# BR2_riscv_custom is not set
|
||||
# BR2_RISCV_32 is not set
|
||||
BR2_RISCV_64=y
|
||||
# BR2_RISCV_ABI_LP64 is not set
|
||||
# BR2_RISCV_ABI_LP64F is not set
|
||||
BR2_RISCV_ABI_LP64D=y
|
||||
|
||||
#
|
||||
# Build options
|
||||
#
|
||||
|
||||
#
|
||||
# Commands
|
||||
#
|
||||
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_HG="hg"
|
||||
BR2_ZCAT="gzip -d -c"
|
||||
BR2_BZCAT="bzcat"
|
||||
BR2_XZCAT="xzcat"
|
||||
BR2_LZCAT="lzip -d -c"
|
||||
BR2_TAR_OPTIONS=""
|
||||
BR2_DEFCONFIG="./configs/milkv-duo256m_musl_riscv64_defconfig"
|
||||
BR2_DL_DIR="$(TOPDIR)/dl"
|
||||
BR2_HOST_DIR="$(BASE_DIR)/host"
|
||||
|
||||
#
|
||||
# Mirrors and Download locations
|
||||
#
|
||||
BR2_PRIMARY_SITE=""
|
||||
BR2_BACKUP_SITE="http://sources.buildroot.net"
|
||||
BR2_KERNEL_MIRROR="https://cdn.kernel.org/pub"
|
||||
BR2_GNU_MIRROR="http://ftpmirror.gnu.org"
|
||||
BR2_LUAROCKS_MIRROR="http://rocks.moonscript.org"
|
||||
BR2_CPAN_MIRROR="http://cpan.metacpan.org"
|
||||
BR2_JLEVEL=0
|
||||
# BR2_CCACHE is not set
|
||||
# BR2_ENABLE_DEBUG is not set
|
||||
BR2_STRIP_strip=y
|
||||
BR2_STRIP_EXCLUDE_FILES=""
|
||||
BR2_STRIP_EXCLUDE_DIRS=""
|
||||
# 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_G is not set
|
||||
BR2_OPTIMIZE_S=y
|
||||
# BR2_OPTIMIZE_FAST is not set
|
||||
# BR2_STATIC_LIBS is not set
|
||||
BR2_SHARED_LIBS=y
|
||||
# BR2_SHARED_STATIC_LIBS is not set
|
||||
BR2_PACKAGE_OVERRIDE_FILE="$(CONFIG_DIR)/local.mk"
|
||||
BR2_GLOBAL_PATCH_DIR=""
|
||||
|
||||
#
|
||||
# Advanced
|
||||
#
|
||||
BR2_COMPILER_PARANOID_UNSAFE_PATH=y
|
||||
# BR2_FORCE_HOST_BUILD is not set
|
||||
# BR2_REPRODUCIBLE is not set
|
||||
# BR2_PER_PACKAGE_DIRECTORIES is not set
|
||||
|
||||
#
|
||||
# Security Hardening Options
|
||||
#
|
||||
BR2_PIC_PIE=y
|
||||
# BR2_SSP_NONE is not set
|
||||
# BR2_SSP_REGULAR is not set
|
||||
BR2_SSP_STRONG=y
|
||||
# BR2_SSP_ALL is not set
|
||||
BR2_SSP_OPTION="-fstack-protector-strong"
|
||||
# BR2_RELRO_NONE is not set
|
||||
# BR2_RELRO_PARTIAL is not set
|
||||
BR2_RELRO_FULL=y
|
||||
|
||||
#
|
||||
# Fortify Source needs a glibc toolchain and optimization
|
||||
#
|
||||
|
||||
#
|
||||
# Toolchain
|
||||
#
|
||||
BR2_TOOLCHAIN=y
|
||||
BR2_TOOLCHAIN_USES_MUSL=y
|
||||
# BR2_TOOLCHAIN_BUILDROOT is not set
|
||||
BR2_TOOLCHAIN_EXTERNAL=y
|
||||
|
||||
#
|
||||
# Toolchain External Options
|
||||
#
|
||||
BR2_TOOLCHAIN_EXTERNAL_CUSTOM=y
|
||||
# BR2_TOOLCHAIN_EXTERNAL_DOWNLOAD is not set
|
||||
BR2_TOOLCHAIN_EXTERNAL_PREINSTALLED=y
|
||||
# BR2_TOOLCHAIN_EXTERNAL_PATH="/data/sam/sdk/cv180x_v400/host-tools/gcc/riscv64-linux-musl-x86_64"
|
||||
BR2_TOOLCHAIN_EXTERNAL_MUSL=y
|
||||
BR2_PACKAGE_HAS_TOOLCHAIN_EXTERNAL=y
|
||||
BR2_PACKAGE_PROVIDES_TOOLCHAIN_EXTERNAL="toolchain-external-custom"
|
||||
BR2_TOOLCHAIN_EXTERNAL_PREFIX="riscv64-unknown-linux-musl"
|
||||
BR2_TOOLCHAIN_EXTERNAL_CUSTOM_PREFIX="riscv64-unknown-linux-musl"
|
||||
BR2_TOOLCHAIN_EXTERNAL_GCC_10=y
|
||||
BR2_TOOLCHAIN_EXTERNAL_HEADERS_5_10=y
|
||||
BR2_TOOLCHAIN_EXTERNAL_CUSTOM_MUSL=y
|
||||
BR2_TOOLCHAIN_EXTERNAL_HAS_SSP=y
|
||||
BR2_TOOLCHAIN_EXTERNAL_HAS_SSP_STRONG=y
|
||||
BR2_TOOLCHAIN_EXTERNAL_CXX=y
|
||||
|
||||
#
|
||||
# Toolchain Generic Options
|
||||
#
|
||||
BR2_TOOLCHAIN_SUPPORTS_ALWAYS_LOCKFREE_ATOMIC_INTS=y
|
||||
BR2_TOOLCHAIN_SUPPORTS_VARIADIC_MI_THUNK=y
|
||||
BR2_USE_WCHAR=y
|
||||
BR2_ENABLE_LOCALE=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_SSP=y
|
||||
BR2_TOOLCHAIN_HAS_SSP_STRONG=y
|
||||
BR2_TOOLCHAIN_HAS_UCONTEXT=y
|
||||
BR2_TOOLCHAIN_SUPPORTS_PIE=y
|
||||
BR2_TOOLCHAIN_EXTRA_LIBS=""
|
||||
BR2_USE_MMU=y
|
||||
BR2_TARGET_OPTIMIZATION=""
|
||||
BR2_TARGET_LDFLAGS="-mcpu=c906fdv -march=rv64imafdcv0p7xthead -mcmodel=medany -mabi=lp64d"
|
||||
# BR2_ECLIPSE_REGISTER is not set
|
||||
BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_10=y
|
||||
BR2_TOOLCHAIN_HEADERS_AT_LEAST="5.10"
|
||||
BR2_TOOLCHAIN_GCC_AT_LEAST_10=y
|
||||
BR2_TOOLCHAIN_GCC_AT_LEAST="10"
|
||||
BR2_TOOLCHAIN_HAS_MNAN_OPTION=y
|
||||
BR2_TOOLCHAIN_HAS_SYNC_1=y
|
||||
BR2_TOOLCHAIN_HAS_SYNC_2=y
|
||||
BR2_TOOLCHAIN_HAS_SYNC_4=y
|
||||
BR2_TOOLCHAIN_HAS_SYNC_8=y
|
||||
BR2_TOOLCHAIN_HAS_LIBATOMIC=y
|
||||
BR2_TOOLCHAIN_HAS_ATOMIC=y
|
||||
|
||||
#
|
||||
# System configuration
|
||||
#
|
||||
BR2_ROOTFS_SKELETON_DEFAULT=y
|
||||
# BR2_ROOTFS_SKELETON_CUSTOM is not set
|
||||
BR2_TARGET_GENERIC_HOSTNAME="milkv-duo"
|
||||
BR2_TARGET_GENERIC_ISSUE="Welcome to Milk-V Duo 256M"
|
||||
BR2_TARGET_GENERIC_PASSWD_SHA256=y
|
||||
# BR2_TARGET_GENERIC_PASSWD_SHA512 is not set
|
||||
BR2_TARGET_GENERIC_PASSWD_METHOD="sha-256"
|
||||
BR2_INIT_BUSYBOX=y
|
||||
# BR2_INIT_SYSV is not set
|
||||
# BR2_INIT_OPENRC is not set
|
||||
|
||||
#
|
||||
# systemd needs a glibc toolchain w/ SSP, headers >= 3.10, host and target gcc >= 5
|
||||
#
|
||||
# BR2_INIT_NONE is not set
|
||||
# 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="system/device_table.txt"
|
||||
# BR2_ROOTFS_DEVICE_TABLE_SUPPORTS_EXTENDED_ATTRIBUTES is not set
|
||||
# BR2_ROOTFS_MERGED_USR is not set
|
||||
BR2_TARGET_ENABLE_ROOT_LOGIN=y
|
||||
BR2_TARGET_GENERIC_ROOT_PASSWD="milkv"
|
||||
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_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_TARGET_GENERIC_REMOUNT_ROOTFS_RW=y
|
||||
BR2_SYSTEM_DHCP=""
|
||||
BR2_SYSTEM_DEFAULT_PATH="/bin:/sbin:/usr/bin:/usr/sbin"
|
||||
BR2_ENABLE_LOCALE_PURGE=y
|
||||
BR2_ENABLE_LOCALE_WHITELIST="C en_US"
|
||||
# BR2_SYSTEM_ENABLE_NLS is not set
|
||||
# BR2_TARGET_TZ_INFO is not set
|
||||
BR2_ROOTFS_USERS_TABLES=""
|
||||
BR2_ROOTFS_OVERLAY="board/milkv/milkv-duo256m/overlay"
|
||||
BR2_ROOTFS_POST_BUILD_SCRIPT=""
|
||||
BR2_ROOTFS_POST_FAKEROOT_SCRIPT=""
|
||||
BR2_ROOTFS_POST_IMAGE_SCRIPT=""
|
||||
|
||||
#
|
||||
# Kernel
|
||||
#
|
||||
# BR2_LINUX_KERNEL is not set
|
||||
|
||||
#
|
||||
# Target packages
|
||||
#
|
||||
BR2_PACKAGE_BUSYBOX=y
|
||||
BR2_PACKAGE_BUSYBOX_CONFIG="package/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_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
|
||||
|
||||
#
|
||||
# dt needs a glibc or uClibc toolchain w/ threads
|
||||
#
|
||||
# BR2_PACKAGE_DUMA is not set
|
||||
# BR2_PACKAGE_FIO is not set
|
||||
BR2_PACKAGE_GDB_ARCH_SUPPORTS=y
|
||||
BR2_PACKAGE_GDB=y
|
||||
# BR2_PACKAGE_IOZONE is not set
|
||||
|
||||
#
|
||||
# ktap needs a Linux kernel to be built
|
||||
#
|
||||
# BR2_PACKAGE_LATENCYTOP is not set
|
||||
# BR2_PACKAGE_LMBENCH is not set
|
||||
BR2_PACKAGE_LTP_TESTSUITE_ARCH_SUPPORTS=y
|
||||
# BR2_PACKAGE_LTP_TESTSUITE is not set
|
||||
# BR2_PACKAGE_LTTNG_BABELTRACE is not set
|
||||
|
||||
#
|
||||
# Development tools
|
||||
#
|
||||
BR2_PACKAGE_PROVIDES_HOST_GETTEXT="host-gettext-tiny"
|
||||
|
||||
#
|
||||
# Filesystem and flash utilities
|
||||
#
|
||||
# BR2_PACKAGE_ABOOTIMG is not set
|
||||
|
||||
#
|
||||
# davfs2 needs a glibc or uClibc toolchain
|
||||
#
|
||||
# BR2_PACKAGE_DOSFSTOOLS is not set
|
||||
BR2_PACKAGE_E2FSPROGS=y
|
||||
# BR2_PACKAGE_E2FSPROGS_DEBUGFS is not set
|
||||
# BR2_PACKAGE_E2FSPROGS_E2IMAGE is not set
|
||||
|
||||
BR2_PACKAGE_HOST_GENIMAGE=y
|
||||
|
||||
#
|
||||
# e2scrub needs bash, coreutils, lvm2, and util-linux
|
||||
#
|
||||
# BR2_PACKAGE_E2FSPROGS_E4DEFRAG is not set
|
||||
BR2_PACKAGE_E2FSPROGS_FSCK=y
|
||||
# BR2_PACKAGE_E2FSPROGS_FUSE2FS is not set
|
||||
BR2_PACKAGE_E2FSPROGS_RESIZE2FS=y
|
||||
|
||||
#
|
||||
# eudev needs eudev /dev management
|
||||
#
|
||||
# BR2_PACKAGE_EVEMU is not set
|
||||
BR2_PACKAGE_EVTEST=y
|
||||
# BR2_PACKAGE_FAN_CTRL is not set
|
||||
# BR2_PACKAGE_FCONFIG is not set
|
||||
BR2_PACKAGE_FLASHROM_ARCH_SUPPORTS=y
|
||||
|
||||
#
|
||||
# Compression and decompression
|
||||
#
|
||||
BR2_PACKAGE_PROVIDES_HOST_ZLIB="host-libzlib"
|
||||
# BR2_PACKAGE_ZZIPLIB is not set
|
||||
|
||||
#
|
||||
# Crypto
|
||||
#
|
||||
# BR2_PACKAGE_BEARSSL is not set
|
||||
# BR2_PACKAGE_BEECRYPT is not set
|
||||
BR2_PACKAGE_BOTAN_ARCH_SUPPORTS=y
|
||||
# BR2_PACKAGE_BOTAN is not set
|
||||
# BR2_PACKAGE_CA_CERTIFICATES is not set
|
||||
|
||||
#
|
||||
# cryptodev needs a Linux kernel to be built
|
||||
#
|
||||
BR2_PACKAGE_LIBGPG_ERROR_ARCH_SUPPORTS=y
|
||||
# BR2_PACKAGE_LIBGPG_ERROR is not set
|
||||
BR2_PACKAGE_LIBGPG_ERROR_SYSCFG="riscv64-unknown-linux-gnu"
|
||||
BR2_PACKAGE_PROVIDES_HOST_OPENSSL="host-libopenssl"
|
||||
|
||||
#
|
||||
# JSON/XML
|
||||
#
|
||||
BR2_PACKAGE_JSON_C=y
|
||||
|
||||
#
|
||||
# Multimedia
|
||||
#
|
||||
BR2_PACKAGE_LIBCAMERA_ARCH_SUPPORTS=y
|
||||
# BR2_PACKAGE_LIBCAMERA is not set
|
||||
|
||||
#
|
||||
# libcgroup needs a glibc toolchain w/ C++
|
||||
#
|
||||
BR2_PACKAGE_MUSL_COMPAT_HEADERS=y
|
||||
# BR2_PACKAGE_MUSL_FTS is not set
|
||||
# BR2_PACKAGE_ORC is not set
|
||||
# BR2_PACKAGE_P11_KIT is not set
|
||||
BR2_PACKAGE_POCO_ARCH_SUPPORTS=y
|
||||
# BR2_PACKAGE_POCO is not set
|
||||
BR2_PACKAGE_PROTOBUF_ARCH_SUPPORTS=y
|
||||
# BR2_PACKAGE_PROTOBUF is not set
|
||||
# BR2_PACKAGE_PROTOBUF_C is not set
|
||||
|
||||
#
|
||||
# vdr needs a glibc toolchain w/ C++, dynamic library, NPTL, wchar, headers >= 3.9
|
||||
#
|
||||
BR2_PACKAGE_WPA_SUPPLICANT=y
|
||||
BR2_PACKAGE_WPA_SUPPLICANT_NL80211=y
|
||||
BR2_PACKAGE_WPA_SUPPLICANT_CLI=y
|
||||
BR2_PACKAGE_WPA_SUPPLICANT_WPA_CLIENT_SO=y
|
||||
# BR2_PACKAGE_WPA_SUPPLICANT_PASSPHRASE is not set
|
||||
BR2_PACKAGE_WPA_SUPPLICANT_CTRL_IFACE=y
|
||||
# BR2_PACKAGE_WPA_SUPPLICANT_DBUS is not set
|
||||
|
||||
#
|
||||
# emlog needs a Linux kernel to be built
|
||||
#
|
||||
BR2_PACKAGE_HTOP=y
|
||||
BR2_PACKAGE_INITSCRIPTS=y
|
||||
|
||||
#
|
||||
# iotop depends on python or python3
|
||||
#
|
||||
# BR2_PACKAGE_IPRUTILS is not set
|
||||
# BR2_PACKAGE_IRQBALANCE is not set
|
||||
# BR2_PACKAGE_KEYUTILS is not set
|
||||
BR2_PACKAGE_KMOD=y
|
||||
|
||||
#
|
||||
# unscd needs a glibc toolchain
|
||||
#
|
||||
BR2_PACKAGE_UTIL_LINUX=y
|
||||
BR2_PACKAGE_UTIL_LINUX_LIBBLKID=y
|
||||
# BR2_PACKAGE_UTIL_LINUX_LIBFDISK is not set
|
||||
# BR2_PACKAGE_UTIL_LINUX_LIBMOUNT is not set
|
||||
# BR2_PACKAGE_UTIL_LINUX_LIBSMARTCOLS is not set
|
||||
BR2_PACKAGE_UTIL_LINUX_LIBUUID=y
|
||||
|
||||
#
|
||||
# su needs a uClibc or glibc toolchain w/ wchar, locale, dynamic library
|
||||
#
|
||||
BR2_PACKAGE_UTIL_LINUX_UUIDD=y
|
||||
|
||||
#
|
||||
# Filesystem images
|
||||
#
|
||||
BR2_TARGET_ROOTFS_EXT2=y
|
||||
# BR2_TARGET_ROOTFS_EXT2_2r0 is not set
|
||||
# BR2_TARGET_ROOTFS_EXT2_2r1 is not set
|
||||
# BR2_TARGET_ROOTFS_EXT2_3 is not set
|
||||
BR2_TARGET_ROOTFS_EXT2_4=y
|
||||
BR2_TARGET_ROOTFS_EXT2_GEN=4
|
||||
BR2_TARGET_ROOTFS_EXT2_REV=1
|
||||
BR2_TARGET_ROOTFS_EXT2_LABEL="rootfs"
|
||||
BR2_TARGET_ROOTFS_EXT2_SIZE="200M"
|
||||
BR2_TARGET_ROOTFS_EXT2_INODES=0
|
||||
BR2_TARGET_ROOTFS_EXT2_RESBLKS=5
|
||||
BR2_TARGET_ROOTFS_EXT2_MKFS_OPTIONS="-O ^64bit"
|
||||
BR2_TARGET_ROOTFS_EXT2_NONE=y
|
||||
|
||||
#
|
||||
# initramfs needs a Linux kernel to be built
|
||||
#
|
||||
BR2_TARGET_ROOTFS_TAR=y
|
||||
BR2_TARGET_ROOTFS_TAR_XZ=y
|
||||
BR2_TARGET_ROOTFS_TAR_OPTIONS=""
|
||||
|
||||
#
|
||||
# Host utilities
|
||||
#
|
||||
BR2_PACKAGE_HOST_E2FSPROGS=y
|
||||
BR2_PACKAGE_HOST_UTIL_LINUX=y
|
||||
|
||||
#
|
||||
# Legacy options removed in 2019.11
|
||||
#
|
||||
BR2_TOOLCHAIN_EXTRA_EXTERNAL_LIBS=""
|
||||
|
||||
#
|
||||
# Legacy options removed in 2017.08
|
||||
#
|
||||
# BR2_TARGET_GRUB is not set
|
||||
# BR2_PACKAGE_SIMICSFS is not set
|
||||
# BR2_BINUTILS_VERSION_2_26_X is not set
|
||||
BR2_XTENSA_OVERLAY_DIR=""
|
||||
BR2_XTENSA_CUSTOM_NAME=""
|
||||
# BR2_PACKAGE_HOST_MKE2IMG is not set
|
||||
BR2_TARGET_ROOTFS_EXT2_BLOCKS=0
|
||||
BR2_TARGET_ROOTFS_EXT2_EXTRA_INODES=0
|
||||
|
||||
#
|
||||
# Legacy options removed in 2017.05
|
||||
#
|
||||
BR2_TARGET_ROOTFS_EXT2_EXTRA_BLOCKS=0
|
||||
|
||||
BR2_PACKAGE_SPIDEV_TEST=y
|
||||
BR2_PACKAGE_STRACE=y
|
||||
|
||||
#
|
||||
# NetworkManager needs udev /dev management and a glibc toolchain w/ headers >= 3.2, dynamic library, wchar, threads
|
||||
#
|
||||
|
||||
BR2_PACKAGE_DHCPCD=y
|
||||
BR2_PACKAGE_DNSMASQ=y
|
||||
BR2_PACKAGE_DROPBEAR=y
|
||||
BR2_PACKAGE_DROPBEAR_CLIENT=y
|
||||
# BR2_PACKAGE_DROPBEAR_DISABLE_REVERSEDNS is not set
|
||||
BR2_PACKAGE_DROPBEAR_SMALL=y
|
||||
# BR2_PACKAGE_DROPBEAR_WTMP is not set
|
||||
# BR2_PACKAGE_DROPBEAR_LASTLOG is not set
|
||||
# BR2_PACKAGE_DROPBEAR_LEGACY_CRYPTO is not set
|
||||
# BR2_PACKAGE_DROPBEAR_LOCALOPTIONS_FILE=""
|
||||
|
||||
BR2_PACKAGE_NTP=y
|
||||
BR2_PACKAGE_NTP_NTPDATE=y
|
||||
BR2_PACKAGE_NTP_NTPTIME=y
|
||||
8
device/milkv-duo256m/boardconfig.sh
Normal file
8
device/milkv-duo256m/boardconfig.sh
Normal file
@ -0,0 +1,8 @@
|
||||
#!/bin/bash
|
||||
|
||||
export MV_BOARD=milkv-duo256m
|
||||
export MV_BOARD_CPU=cv1812cp
|
||||
export MV_VENDOR=milkv
|
||||
export MV_BUILD_ENV=milkvsetup.sh
|
||||
export MV_BOARD_LINK=cv1812cp_milkv_duo256m_sd
|
||||
|
||||
33
device/milkv-duo256m/genimage.cfg
Normal file
33
device/milkv-duo256m/genimage.cfg
Normal file
@ -0,0 +1,33 @@
|
||||
image boot.vfat {
|
||||
vfat {
|
||||
label = "boot"
|
||||
files = {
|
||||
"fip.bin",
|
||||
"rawimages/boot.sd",
|
||||
}
|
||||
}
|
||||
size = 128M
|
||||
}
|
||||
|
||||
image rootfs.ext4 {
|
||||
ext4 {
|
||||
label = "rootfs"
|
||||
}
|
||||
size = 768M
|
||||
}
|
||||
|
||||
image milkv-duo256m.img {
|
||||
hdimage {
|
||||
}
|
||||
|
||||
partition boot {
|
||||
partition-type = 0xC
|
||||
bootable = "true"
|
||||
image = "boot.vfat"
|
||||
}
|
||||
|
||||
partition rootfs {
|
||||
partition-type = 0x83
|
||||
image = "rootfs.ext4"
|
||||
}
|
||||
}
|
||||
21
device/milkv-duo256m/overlay/mnt/system/blink.sh
Executable file
21
device/milkv-duo256m/overlay/mnt/system/blink.sh
Executable file
@ -0,0 +1,21 @@
|
||||
#!/bin/sh
|
||||
|
||||
LED_PIN=354
|
||||
|
||||
LED_GPIO=/sys/class/gpio/gpio${LED_PIN}
|
||||
|
||||
if test -d ${LED_GPIO}; then
|
||||
echo "PIN ${LED_PIN} already exported"
|
||||
else
|
||||
echo ${LED_PIN} > /sys/class/gpio/export
|
||||
fi
|
||||
|
||||
echo out > ${LED_GPIO}/direction
|
||||
|
||||
while true; do
|
||||
echo 0 > ${LED_GPIO}/value
|
||||
sleep 0.5
|
||||
echo 1 > ${LED_GPIO}/value
|
||||
sleep 0.5
|
||||
done
|
||||
|
||||
11
device/milkv-duo256m/overlay/mnt/system/duo-init.sh
Executable file
11
device/milkv-duo256m/overlay/mnt/system/duo-init.sh
Executable file
@ -0,0 +1,11 @@
|
||||
#!/bin/sh
|
||||
|
||||
# Set Pin-29(GP22) to GPIO
|
||||
devmem 0x0502707c 32 0x111
|
||||
devmem 0x03001068 32 0x3
|
||||
|
||||
# Set Pin-19(GP14) to GPIO
|
||||
duo-pinmux -w GP14/GP14 > /dev/null
|
||||
|
||||
# insmod pwm module
|
||||
insmod /mnt/system/ko/cv181x_pwm.ko
|
||||
4
device/milkv-duo256m/overlay/mnt/system/usb-host.sh
Executable file
4
device/milkv-duo256m/overlay/mnt/system/usb-host.sh
Executable file
@ -0,0 +1,4 @@
|
||||
#!/bin/sh
|
||||
|
||||
echo host > /proc/cviusb/otg_role >> /tmp/usb.log 2>&1
|
||||
|
||||
14
device/milkv-duo256m/overlay/mnt/system/usb-rndis.sh
Executable file
14
device/milkv-duo256m/overlay/mnt/system/usb-rndis.sh
Executable file
@ -0,0 +1,14 @@
|
||||
#!/bin/sh
|
||||
|
||||
/etc/uhubon.sh device >> /tmp/rndis.log 2>&1
|
||||
/etc/run_usb.sh probe rndis >> /tmp/rndis.log 2>&1
|
||||
/etc/run_usb.sh start rndis >> /tmp/rndis.log 2>&1
|
||||
|
||||
sleep 0.5
|
||||
ifconfig usb0 192.168.42.1
|
||||
|
||||
count=`ps | grep dnsmasq | grep -v grep | wc -l`
|
||||
if [ ${count} -lt 1 ] ;then
|
||||
echo "/etc/init.d/S80dnsmasq start" >> /tmp/rndis.log 2>&1
|
||||
/etc/init.d/S80dnsmasq start >> /tmp/rndis.log 2>&1
|
||||
fi
|
||||
1
device/milkv-duo256m/overlay/mnt/system/usb.sh
Symbolic link
1
device/milkv-duo256m/overlay/mnt/system/usb.sh
Symbolic link
@ -0,0 +1 @@
|
||||
usb-rndis.sh
|
||||
Binary file not shown.
BIN
fsbl/plat/cv181x/bl2_objs/cv1812cp_milkv_duo256m_sd/bl2/assert.o
Normal file
BIN
fsbl/plat/cv181x/bl2_objs/cv1812cp_milkv_duo256m_sd/bl2/assert.o
Normal file
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
BIN
fsbl/plat/cv181x/bl2_objs/cv1812cp_milkv_duo256m_sd/bl2/cache.o
Normal file
BIN
fsbl/plat/cv181x/bl2_objs/cv1812cp_milkv_duo256m_sd/bl2/cache.o
Normal file
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
BIN
fsbl/plat/cv181x/bl2_objs/cv1812cp_milkv_duo256m_sd/bl2/ddr.o
Normal file
BIN
fsbl/plat/cv181x/bl2_objs/cv1812cp_milkv_duo256m_sd/bl2/ddr.o
Normal file
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.
BIN
fsbl/plat/cv181x/bl2_objs/cv1812cp_milkv_duo256m_sd/bl2/mem.o
Normal file
BIN
fsbl/plat/cv181x/bl2_objs/cv1812cp_milkv_duo256m_sd/bl2/mem.o
Normal file
Binary file not shown.
BIN
fsbl/plat/cv181x/bl2_objs/cv1812cp_milkv_duo256m_sd/bl2/misc.o
Normal file
BIN
fsbl/plat/cv181x/bl2_objs/cv1812cp_milkv_duo256m_sd/bl2/misc.o
Normal file
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.
BIN
fsbl/plat/cv181x/bl2_objs/cv1812cp_milkv_duo256m_sd/bl2/sha256.o
Normal file
BIN
fsbl/plat/cv181x/bl2_objs/cv1812cp_milkv_duo256m_sd/bl2/sha256.o
Normal file
Binary file not shown.
BIN
fsbl/plat/cv181x/bl2_objs/cv1812cp_milkv_duo256m_sd/bl2/strchr.o
Normal file
BIN
fsbl/plat/cv181x/bl2_objs/cv1812cp_milkv_duo256m_sd/bl2/strchr.o
Normal file
Binary file not shown.
BIN
fsbl/plat/cv181x/bl2_objs/cv1812cp_milkv_duo256m_sd/bl2/strcmp.o
Normal file
BIN
fsbl/plat/cv181x/bl2_objs/cv1812cp_milkv_duo256m_sd/bl2/strcmp.o
Normal file
Binary file not shown.
BIN
fsbl/plat/cv181x/bl2_objs/cv1812cp_milkv_duo256m_sd/bl2/strlen.o
Normal file
BIN
fsbl/plat/cv181x/bl2_objs/cv1812cp_milkv_duo256m_sd/bl2/strlen.o
Normal file
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
BIN
fsbl/plat/cv181x/bl2_objs/cv1812cp_milkv_duo256m_sd/bl2/xxhash.o
Normal file
BIN
fsbl/plat/cv181x/bl2_objs/cv1812cp_milkv_duo256m_sd/bl2/xxhash.o
Normal file
Binary file not shown.
1
middleware/v2/.gitignore
vendored
1
middleware/v2/.gitignore
vendored
@ -6,6 +6,7 @@
|
||||
*.dwo
|
||||
|
||||
ko
|
||||
ko_shrink
|
||||
|
||||
lib
|
||||
bin
|
||||
|
||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@ -5,8 +5,8 @@ ${CVI_SHOPTS}
|
||||
#
|
||||
insmod /mnt/system/ko/cv181x_sys.ko
|
||||
insmod /mnt/system/ko/cv181x_base.ko
|
||||
insmod /mnt/system/ko/cv181x_rtos_cmdqu.ko
|
||||
insmod /mnt/system/ko/cv181x_fast_image.ko
|
||||
#insmod /mnt/system/ko/cv181x_rtos_cmdqu.ko
|
||||
#insmod /mnt/system/ko/cv181x_fast_image.ko
|
||||
insmod /mnt/system/ko/cvi_mipi_rx.ko
|
||||
insmod /mnt/system/ko/snsr_i2c.ko
|
||||
insmod /mnt/system/ko/cv181x_vi.ko
|
||||
|
||||
@ -210,6 +210,8 @@
|
||||
#else
|
||||
#define ROOTARGS "ubi.mtd=ROOTFS ubi.block=0,0"
|
||||
#endif /* CONFIG_SKIP_RAMDISK */
|
||||
#elif defined(CONFIG_SD_BOOT)
|
||||
#define ROOTARGS "root=" ROOTFS_DEV " rootwait rw"
|
||||
#else
|
||||
#define ROOTARGS "rootfstype=squashfs rootwait ro root=" ROOTFS_DEV
|
||||
#endif
|
||||
@ -289,16 +291,22 @@
|
||||
|
||||
#define SD_BOOTM_COMMAND \
|
||||
SET_BOOTARGS \
|
||||
"echo Boot from SD with ramboot.itb;" \
|
||||
"mmc dev 1 && fatload mmc 1 ${uImage_addr} ramboot.itb; " \
|
||||
"echo Boot from SD ...;" \
|
||||
"mmc dev 0 && fatload mmc 0 ${uImage_addr} boot.sd; " \
|
||||
"if test $? -eq 0; then " \
|
||||
UBOOT_VBOOT_BOOTM_COMMAND \
|
||||
"fi;"
|
||||
#ifdef CONFIG_ENABLE_ALIOS_UPDATE
|
||||
#define CONFIG_BOOTCOMMAND "cvi_update_rtos"
|
||||
|
||||
#ifndef CONFIG_SD_BOOT
|
||||
#ifdef CONFIG_ENABLE_ALIOS_UPDATE
|
||||
#define CONFIG_BOOTCOMMAND "cvi_update_rtos"
|
||||
#else
|
||||
#define CONFIG_BOOTCOMMAND SHOWLOGOCMD "cvi_update || run norboot || run nandboot ||run emmcboot"
|
||||
#endif
|
||||
#else
|
||||
#define CONFIG_BOOTCOMMAND SHOWLOGOCMD "cvi_update || run norboot || run nandboot ||run emmcboot"
|
||||
#define CONFIG_BOOTCOMMAND SHOWLOGOCMD "run sdboot"
|
||||
#endif
|
||||
|
||||
#if defined(CONFIG_NAND_SUPPORT)
|
||||
/* For spi nand boot, need to reset DMA and its setting before exiting uboot */
|
||||
/* 0x4330058 : DMA reset */
|
||||
|
||||
Reference in New Issue
Block a user