diff --git a/build/boards/cv181x/sg2002_milkv_duo256m_musl_riscv64_sd/config.json b/build/boards/cv181x/sg2002_milkv_duo256m_musl_riscv64_sd/config.json new file mode 100644 index 000000000..877352871 --- /dev/null +++ b/build/boards/cv181x/sg2002_milkv_duo256m_musl_riscv64_sd/config.json @@ -0,0 +1,9 @@ +{ + "ddr_cfg_list": [ + "", + "ddr3_1866_x16", + "ddr3_2133_x16", + "ddr_auto_x16" + ], + "board_information": "C906B + SD + DDR 256MB" +} diff --git a/build/boards/cv181x/sg2002_milkv_duo256m_musl_riscv64_sd/dts_riscv/sg2002_milkv_duo256m_musl_riscv64_sd.dts b/build/boards/cv181x/sg2002_milkv_duo256m_musl_riscv64_sd/dts_riscv/sg2002_milkv_duo256m_musl_riscv64_sd.dts new file mode 100644 index 000000000..8ee56e9e9 --- /dev/null +++ b/build/boards/cv181x/sg2002_milkv_duo256m_musl_riscv64_sd/dts_riscv/sg2002_milkv_duo256m_musl_riscv64_sd.dts @@ -0,0 +1,9 @@ +/dts-v1/; +#include "cv181x_base_riscv.dtsi" +#include "cv181x_asic_qfn.dtsi" +#include "cv181x_asic_sd.dtsi" +#include "cv181x_default_memmap.dtsi" + +/ { + model = "Milk-V Duo256M"; +}; diff --git a/build/boards/cv181x/sg2002_milkv_duo256m_musl_riscv64_sd/linux/cvitek_sg2002_milkv_duo256m_musl_riscv64_sd_defconfig b/build/boards/cv181x/sg2002_milkv_duo256m_musl_riscv64_sd/linux/cvitek_sg2002_milkv_duo256m_musl_riscv64_sd_defconfig new file mode 100644 index 000000000..01f8a8249 --- /dev/null +++ b/build/boards/cv181x/sg2002_milkv_duo256m_musl_riscv64_sd/linux/cvitek_sg2002_milkv_duo256m_musl_riscv64_sd_defconfig @@ -0,0 +1,492 @@ +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_ELF_CORE=y +CONFIG_COREDUMP=y +CONFIG_PROC_SYSCTL=y +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=m +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_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_THERMAL=y +CONFIG_THERMAL_NETLINK=y +CONFIG_THERMAL_WRITABLE_TRIPS=y +CONFIG_THERMAL_EMULATION=y +CONFIG_WATCHDOG=y +CONFIG_MEDIA_SUPPORT=y +CONFIG_VIDEO_V4L2_SUBDEV_API=y +CONFIG_V4L_PLATFORM_DRIVERS=y +CONFIG_V4L_MEM2MEM_DRIVERS=y +CONFIG_VIDEO_MEM2MEM_DEINTERLACE=y +CONFIG_VIDEO_CVITEK=m +CONFIG_VIDEO_CVITEK_CIF=m +CONFIG_VIDEO_CVITEK_SNS_I2C=m +CONFIG_VIDEO_CVITEK_MIPI_TX=m +# +# Media SPI Adapters +# +# CONFIG_CXD2880_SPI_DRV is not set +# end of Media SPI Adapters +# +# Customize TV tuners +# +# CONFIG_MEDIA_TUNER_SIMPLE is not set +# CONFIG_MEDIA_TUNER_TDA18250 is not set +# CONFIG_MEDIA_TUNER_TDA8290 is not set +# CONFIG_MEDIA_TUNER_TDA827X is not set +# CONFIG_MEDIA_TUNER_TDA18271 is not set +# CONFIG_MEDIA_TUNER_TDA9887 is not set +# CONFIG_MEDIA_TUNER_TEA5761 is not set +# CONFIG_MEDIA_TUNER_TEA5767 is not set +# CONFIG_MEDIA_TUNER_MSI001 is not set +# CONFIG_MEDIA_TUNER_MT20XX is not set +# CONFIG_MEDIA_TUNER_MT2060 is not set +# CONFIG_MEDIA_TUNER_MT2063 is not set +# CONFIG_MEDIA_TUNER_MT2266 is not set +# CONFIG_MEDIA_TUNER_MT2131 is not set +# CONFIG_MEDIA_TUNER_QT1010 is not set +# CONFIG_MEDIA_TUNER_XC2028 is not set +# CONFIG_MEDIA_TUNER_XC5000 is not set +# CONFIG_MEDIA_TUNER_XC4000 is not set +# CONFIG_MEDIA_TUNER_MXL5005S is not set +# CONFIG_MEDIA_TUNER_MXL5007T is not set +# CONFIG_MEDIA_TUNER_MC44S803 is not set +# CONFIG_MEDIA_TUNER_MAX2165 is not set +# CONFIG_MEDIA_TUNER_TDA18218 is not set +# CONFIG_MEDIA_TUNER_FC0011 is not set +# CONFIG_MEDIA_TUNER_FC0012 is not set +# CONFIG_MEDIA_TUNER_FC0013 is not set +# CONFIG_MEDIA_TUNER_TDA18212 is not set +# CONFIG_MEDIA_TUNER_E4000 is not set +# CONFIG_MEDIA_TUNER_FC2580 is not set +# CONFIG_MEDIA_TUNER_M88RS6000T is not set +# CONFIG_MEDIA_TUNER_TUA9001 is not set +# CONFIG_MEDIA_TUNER_SI2157 is not set +# CONFIG_MEDIA_TUNER_IT913X is not set +# CONFIG_MEDIA_TUNER_R820T is not set +# CONFIG_MEDIA_TUNER_MXL301RF is not set +# CONFIG_MEDIA_TUNER_QM1D1C0042 is not set +# CONFIG_MEDIA_TUNER_QM1D1B0004 is not set +# end of Customize TV tuners +# +# Customise DVB Frontends +# + +# +# Multistandard (satellite) frontends +# +# CONFIG_DVB_STB0899 is not set +# CONFIG_DVB_STB6100 is not set +# CONFIG_DVB_STV090x is not set +# CONFIG_DVB_STV0910 is not set +# CONFIG_DVB_STV6110x is not set +# CONFIG_DVB_STV6111 is not set +# CONFIG_DVB_MXL5XX is not set +# CONFIG_DVB_M88DS3103 is not set + +# +# Multistandard (cable + terrestrial) frontends +# +# CONFIG_DVB_DRXK is not set +# CONFIG_DVB_TDA18271C2DD is not set +# CONFIG_DVB_SI2165 is not set +# CONFIG_DVB_MN88472 is not set +# CONFIG_DVB_MN88473 is not set + +# +# DVB-S (satellite) frontends +# +# CONFIG_DVB_CX24110 is not set +# CONFIG_DVB_CX24123 is not set +# CONFIG_DVB_MT312 is not set +# CONFIG_DVB_ZL10036 is not set +# CONFIG_DVB_ZL10039 is not set +# CONFIG_DVB_S5H1420 is not set +# CONFIG_DVB_STV0288 is not set +# CONFIG_DVB_STB6000 is not set +# CONFIG_DVB_STV0299 is not set +# CONFIG_DVB_STV6110 is not set +# CONFIG_DVB_STV0900 is not set +# CONFIG_DVB_TDA8083 is not set +# CONFIG_DVB_TDA10086 is not set +# CONFIG_DVB_TDA8261 is not set +# CONFIG_DVB_VES1X93 is not set +# CONFIG_DVB_TUNER_ITD1000 is not set +# CONFIG_DVB_TUNER_CX24113 is not set +# CONFIG_DVB_TDA826X is not set +# CONFIG_DVB_TUA6100 is not set +# CONFIG_DVB_CX24116 is not set +# CONFIG_DVB_CX24117 is not set +# CONFIG_DVB_CX24120 is not set +# CONFIG_DVB_SI21XX is not set +# CONFIG_DVB_TS2020 is not set +# CONFIG_DVB_DS3000 is not set +# CONFIG_DVB_MB86A16 is not set +# CONFIG_DVB_TDA10071 is not set + +# +# DVB-T (terrestrial) frontends +# +# CONFIG_DVB_SP8870 is not set +# CONFIG_DVB_SP887X is not set +# CONFIG_DVB_CX22700 is not set +# CONFIG_DVB_CX22702 is not set +# CONFIG_DVB_S5H1432 is not set +# CONFIG_DVB_DRXD is not set +# CONFIG_DVB_L64781 is not set +# CONFIG_DVB_TDA1004X is not set +# CONFIG_DVB_NXT6000 is not set +# CONFIG_DVB_MT352 is not set +# CONFIG_DVB_ZL10353 is not set +# CONFIG_DVB_DIB3000MB is not set +# CONFIG_DVB_DIB3000MC is not set +# CONFIG_DVB_DIB7000M is not set +# CONFIG_DVB_DIB7000P is not set +# CONFIG_DVB_DIB9000 is not set +# CONFIG_DVB_TDA10048 is not set +# CONFIG_DVB_AF9013 is not set +# CONFIG_DVB_EC100 is not set +# CONFIG_DVB_STV0367 is not set +# CONFIG_DVB_CXD2820R is not set +# CONFIG_DVB_CXD2841ER is not set +# CONFIG_DVB_RTL2830 is not set +# CONFIG_DVB_RTL2832 is not set +# CONFIG_DVB_RTL2832_SDR is not set +# CONFIG_DVB_SI2168 is not set +# CONFIG_DVB_ZD1301_DEMOD is not set +# CONFIG_DVB_CXD2880 is not set + +# +# DVB-C (cable) frontends +# +# CONFIG_DVB_VES1820 is not set +# CONFIG_DVB_TDA10021 is not set +# CONFIG_DVB_TDA10023 is not set +# CONFIG_DVB_STV0297 is not set + +# +# ATSC (North American/Korean Terrestrial/Cable DTV) frontends +# +# CONFIG_DVB_NXT200X is not set +# CONFIG_DVB_OR51211 is not set +# CONFIG_DVB_OR51132 is not set +# CONFIG_DVB_BCM3510 is not set +# CONFIG_DVB_LGDT330X is not set +# CONFIG_DVB_LGDT3305 is not set +# CONFIG_DVB_LGDT3306A is not set +# CONFIG_DVB_LG2160 is not set +# CONFIG_DVB_S5H1409 is not set +# CONFIG_DVB_AU8522_DTV is not set +# CONFIG_DVB_AU8522_V4L is not set +# CONFIG_DVB_S5H1411 is not set + +# +# ISDB-T (terrestrial) frontends +# +# CONFIG_DVB_S921 is not set +# CONFIG_DVB_DIB8000 is not set +# CONFIG_DVB_MB86A20S is not set + +# +# ISDB-S (satellite) & ISDB-T (terrestrial) frontends +# +# CONFIG_DVB_TC90522 is not set +# CONFIG_DVB_MN88443X is not set + +# +# Digital terrestrial only tuners/PLL +# +# CONFIG_DVB_PLL is not set +# CONFIG_DVB_TUNER_DIB0070 is not set +# CONFIG_DVB_TUNER_DIB0090 is not set +# +# SEC control devices for DVB-S +# +# CONFIG_DVB_DRX39XYJ is not set +# CONFIG_DVB_LNBH25 is not set +# CONFIG_DVB_LNBH29 is not set +# CONFIG_DVB_LNBP21 is not set +# CONFIG_DVB_LNBP22 is not set +# CONFIG_DVB_ISL6405 is not set +# CONFIG_DVB_ISL6421 is not set +# CONFIG_DVB_ISL6423 is not set +# CONFIG_DVB_A8293 is not set +# CONFIG_DVB_LGS8GL5 is not set +# CONFIG_DVB_LGS8GXX is not set +# CONFIG_DVB_ATBM8830 is not set +# CONFIG_DVB_TDA665x is not set +# CONFIG_DVB_IX2505V is not set +# CONFIG_DVB_M88RS2000 is not set +# CONFIG_DVB_AF9033 is not set +# CONFIG_DVB_HORUS3A is not set +# CONFIG_DVB_ASCOT2E is not set +# CONFIG_DVB_HELENE is not set +# +# Common Interface (EN50221) controller drivers +# +# CONFIG_DVB_CXD2099 is not set +# CONFIG_DVB_SP2 is not set +# end of Customise DVB Frontends +# +# Digital TV options +# +# CONFIG_DVB_NET is not set +# CONFIG_DVB_DYNAMIC_MINORS is not set +# end of Digital TV options + +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=m +CONFIG_USB_GADGET=y +CONFIG_MMC=y +CONFIG_MMC_SDHCI=y +CONFIG_MMC_SDHCI_PLTFM=y +CONFIG_MMC_SDHCI_CVI=y +CONFIG_BLK_CMDLINE_PARSER=y +CONFIG_PARTITION_ADVANCED=y +CONFIG_CMDLINE_PARTITION=y +CONFIG_EFI_PARTITION=n +CONFIG_DYNAMIC_DEBUG=y +CONFIG_EXT4_FS=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_SQUASHFS_ZLIB is not set +CONFIG_SQUASHFS_LZ4=y +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_DYNAMIC_DEBUG=y +# CONFIG_DEBUG_BUGVERBOSE is not set +CONFIG_DEBUG_INFO=n +CONFIG_DEBUG_INFO_DWARF4=n +CONFIG_GDB_SCRIPTS=y +# CONFIG_ENABLE_MUST_CHECK is not set +CONFIG_DEBUG_FS=y +CONFIG_BLK_DEV_INITRD=n +CONFIG_KALLSYMS=y +CONFIG_FRAME_POINTER=n +CONFIG_DEBUG_MISC=n +CONFIG_RCU_TRACE=n +# 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_USB_ROLE_SWITCH=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_ACM=y +# CONFIG_USB_CONFIGFS_OBEX is not set +# CONFIG_USB_CONFIGFS_NCM is not set +CONFIG_USB_CONFIGFS_ECM=y +# CONFIG_USB_CONFIGFS_ECM_SUBSET is not set +CONFIG_USB_CONFIGFS_RNDIS=y +CONFIG_USB_CONFIGFS_EEM=y +CONFIG_USB_CONFIGFS_MASS_STORAGE=y +# CONFIG_USB_CONFIGFS_F_LB_SS is not set +CONFIG_USB_CONFIGFS_F_FS=y +CONFIG_USB_CONFIGFS_UEVENT=y +CONFIG_USB_CONFIGFS_F_UAC1=y +# CONFIG_USB_CONFIGFS_F_UAC1_LEGACY is not set +# CONFIG_USB_CONFIGFS_F_UAC2 is not set +# CONFIG_USB_CONFIGFS_F_MIDI is not set +# CONFIG_USB_CONFIGFS_F_HID is not set +CONFIG_USB_CONFIGFS_F_UVC=y +CONFIG_BUG=n +CONFIG_IO_URING=n +CONFIG_ADVISE_SYSCALLS=n +CONFIG_SIGNALFD=n +CONFIG_TIMERFD=n +CONFIG_EPOLL=n diff --git a/build/boards/cv181x/sg2002_milkv_duo256m_musl_riscv64_sd/memmap.py b/build/boards/cv181x/sg2002_milkv_duo256m_musl_riscv64_sd/memmap.py new file mode 100755 index 000000000..fcc097d01 --- /dev/null +++ b/build/boards/cv181x/sg2002_milkv_duo256m_musl_riscv64_sd/memmap.py @@ -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 diff --git a/build/boards/cv181x/sg2002_milkv_duo256m_musl_riscv64_sd/partition/partition_sd.xml b/build/boards/cv181x/sg2002_milkv_duo256m_musl_riscv64_sd/partition/partition_sd.xml new file mode 100644 index 000000000..9a2a33aa4 --- /dev/null +++ b/build/boards/cv181x/sg2002_milkv_duo256m_musl_riscv64_sd/partition/partition_sd.xml @@ -0,0 +1,4 @@ + + + + diff --git a/build/boards/cv181x/sg2002_milkv_duo256m_musl_riscv64_sd/rootfs_script/clean_rootfs.sh b/build/boards/cv181x/sg2002_milkv_duo256m_musl_riscv64_sd/rootfs_script/clean_rootfs.sh new file mode 100755 index 000000000..26692d889 --- /dev/null +++ b/build/boards/cv181x/sg2002_milkv_duo256m_musl_riscv64_sd/rootfs_script/clean_rootfs.sh @@ -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 diff --git a/build/boards/cv181x/sg2002_milkv_duo256m_musl_riscv64_sd/sg2002_milkv_duo256m_musl_riscv64_sd_defconfig b/build/boards/cv181x/sg2002_milkv_duo256m_musl_riscv64_sd/sg2002_milkv_duo256m_musl_riscv64_sd_defconfig new file mode 100644 index 000000000..fe789ee41 --- /dev/null +++ b/build/boards/cv181x/sg2002_milkv_duo256m_musl_riscv64_sd/sg2002_milkv_duo256m_musl_riscv64_sd_defconfig @@ -0,0 +1,40 @@ +CONFIG_CHIP_sg2002=y +CONFIG_BOARD_milkv_duo256m_musl_riscv64_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_GCORE_GC4653=y +CONFIG_SENSOR_SMS_SC3335=y +CONFIG_SENSOR_SMS_SC500AI=y +CONFIG_SENSOR_SONY_IMX307=y +CONFIG_SENSOR_SONY_IMX307_2L=y +CONFIG_SENSOR_SONY_IMX307_SLAVE=y +CONFIG_SENSOR_SONY_IMX327=y +CONFIG_SENSOR_SONY_IMX327_2L=y +CONFIG_SENSOR_SONY_IMX327_SLAVE=y +CONFIG_SENSOR_OV_OS04C10=y +CONFIG_SENSOR_OV_OS04A10=y +CONFIG_UBOOT_2021_10=y +CONFIG_KERNEL_SRC_5.10=y +CONFIG_KERNEL_LZMA=y +CONFIG_SKIP_RAMDISK=y +CONFIG_SENSOR_TUNING_PARAM_cv181x_src_gcore_gc4653=y +CONFIG_ROOTFS_OVERLAYFS=y +CONFIG_BUILDROOT_FS=y +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=y +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=y diff --git a/build/boards/cv181x/sg2002_milkv_duo256m_musl_riscv64_sd/u-boot/cvi_board_init.c b/build/boards/cv181x/sg2002_milkv_duo256m_musl_riscv64_sd/u-boot/cvi_board_init.c new file mode 100644 index 000000000..2938a3ec9 --- /dev/null +++ b/build/boards/cv181x/sg2002_milkv_duo256m_musl_riscv64_sd/u-boot/cvi_board_init.c @@ -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; +} diff --git a/build/boards/cv181x/sg2002_milkv_duo256m_musl_riscv64_sd/u-boot/cvitek.h b/build/boards/cv181x/sg2002_milkv_duo256m_musl_riscv64_sd/u-boot/cvitek.h new file mode 100644 index 000000000..8a122c238 --- /dev/null +++ b/build/boards/cv181x/sg2002_milkv_duo256m_musl_riscv64_sd/u-boot/cvitek.h @@ -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 diff --git a/build/boards/cv181x/sg2002_milkv_duo256m_musl_riscv64_sd/u-boot/cvitek_sg2002_milkv_duo256m_musl_riscv64_sd_defconfig b/build/boards/cv181x/sg2002_milkv_duo256m_musl_riscv64_sd/u-boot/cvitek_sg2002_milkv_duo256m_musl_riscv64_sd_defconfig new file mode 100644 index 000000000..512ea4d25 --- /dev/null +++ b/build/boards/cv181x/sg2002_milkv_duo256m_musl_riscv64_sd/u-boot/cvitek_sg2002_milkv_duo256m_musl_riscv64_sd_defconfig @@ -0,0 +1,43 @@ +CONFIG_RISCV=y +CONFIG_SYS_MALLOC_F_LEN=0x2000 +CONFIG_NR_DRAM_BANKS=1 +CONFIG_DEFAULT_DEVICE_TREE="soph_asic" +CONFIG_IDENT_STRING=" soph" +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="soph# " +# 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