add(duo config):support SPINand image compilation on IOB board
This commit is contained in:
@ -589,6 +589,14 @@ endif
|
||||
${Q}mkdir -p $(BR_OVERLAY_DIR)
|
||||
${Q}cp -arf $(BR_ROOTFS_DIR)/* $(BR_OVERLAY_DIR)
|
||||
|
||||
# create partition mounting points and move sytems to read-write partitions
|
||||
ifeq ($(STORAGE_TYPE), spinand)
|
||||
${Q}mkdir -p $(BR_OVERLAY_DIR)/mnt/cfg
|
||||
${Q}mkdir -p $(BR_OVERLAY_DIR)/mnt/data
|
||||
${Q}mkdir -p $(OUTPUT_DIR)/system
|
||||
${Q}cp -arf $(BR_OVERLAY_DIR)/mnt/system/* $(OUTPUT_DIR)/system
|
||||
endif
|
||||
|
||||
br-rootfs-pack:export TARGET_OUTPUT_DIR=$(BR_DIR)/output/$(BR_BOARD)
|
||||
br-rootfs-pack:
|
||||
$(call print_target)
|
||||
@ -597,7 +605,7 @@ br-rootfs-pack:
|
||||
# ${Q}rm -rf $(BR_ROOTFS_DIR)/*
|
||||
${Q}rm -rf $(BR_MV_VENDOR_DIR)
|
||||
# copy rootfs to rawimg dir
|
||||
ifeq ($(STORAGE_TYPE),spinand)
|
||||
ifeq ($(STORAGE_TYPE), spinand)
|
||||
${Q}python3 $(COMMON_TOOLS_PATH)/spinand_tool/mkubiimg.py --ubionly $(FLASH_PARTITION_XML) ROOTFS $(TARGET_OUTPUT_DIR)/images/rootfs.squashfs $(OUTPUT_DIR)/rawimages/rootfs.spinand -b $(CONFIG_NANDFLASH_BLOCKSIZE) -p $(CONFIG_NANDFLASH_PAGESIZE)
|
||||
$(call raw2cimg ,rootfs.$(STORAGE_TYPE))
|
||||
else ifeq ($(STORAGE_TYPE), spinor)
|
||||
|
||||
@ -0,0 +1,6 @@
|
||||
{
|
||||
"ddr_cfg_list": [
|
||||
"ddr2_1333_x16"
|
||||
],
|
||||
"board_information": "C906B + SPINAND 128MB + QFN SIP 64MB"
|
||||
}
|
||||
@ -0,0 +1,44 @@
|
||||
CONFIG_CHIP_cv1800b=y
|
||||
CONFIG_BOARD_milkv_duo_spinand=y
|
||||
CONFIG_DDR_CFG_ddr2_1333_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_NO_FB=y
|
||||
CONFIG_NO_TP=y
|
||||
CONFIG_DDR_64MB_SIZE=y
|
||||
CONFIG_BOOT_IMAGE_SINGLE_DTB=y
|
||||
CONFIG_STORAGE_TYPE_spinand=y
|
||||
CONFIG_SENSOR_TUNING_PARAM_cv180x_src_sms_sc200ai=y
|
||||
CONFIG_SENSOR_SMS_SC200AI=y
|
||||
CONFIG_SENSOR_GCORE_GC2053=y
|
||||
CONFIG_SENSOR_GCORE_GC2083=y
|
||||
CONFIG_SENSOR_SMS_SC035HGS=y
|
||||
CONFIG_SENSOR_OV_OV5647=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_CVITRACER is not set
|
||||
# CONFIG_TARGET_PACKAGE_GDBSERVER is not set
|
||||
# CONFIG_TARGET_PACKAGE_LIBCRYPTO is not set
|
||||
# CONFIG_TARGET_PACKAGE_LIBZ is not set
|
||||
# CONFIG_TARGET_PACKAGE_OTASERVER is not set
|
||||
# CONFIG_TARGET_PACKAGE_RSYSLOG is not set
|
||||
CONFIG_TARGET_PACKAGE_CRONTABS=y
|
||||
# CONFIG_TARGET_PACKAGE_GATORD is not set
|
||||
CONFIG_TARGET_PACKAGE_WIFI=y
|
||||
CONFIG_TARGET_PACKAGE_DROPBEAR=y
|
||||
CONFIG_TARGET_PACKAGE_NTP=y
|
||||
CONFIG_ENABLE_FREERTOS=y
|
||||
CONFIG_ENABLE_RTOS_DUMP_PRINT=y
|
||||
CONFIG_DUMP_PRINT_SZ_IDX=17
|
||||
CONFIG_USE_4K_ERASE_SIZE_FOR_JFFS2=y
|
||||
CONFIG_USB_OSDRV_CVITEK_GADGET=n
|
||||
CONFIG_BUILDROOT_FS=y
|
||||
CONFIG_BUILD_FOR_DEBUG=y
|
||||
@ -0,0 +1,39 @@
|
||||
/dts-v1/;
|
||||
#include "cv180x_base_riscv.dtsi"
|
||||
#include "cv180x_asic_qfn.dtsi"
|
||||
#include "cv180x_asic_spinand.dtsi"
|
||||
#include "cv180x_default_memmap.dtsi"
|
||||
|
||||
&mipi_rx{
|
||||
snsr-reset = <&portc 8 GPIO_ACTIVE_LOW>, <&portc 8 GPIO_ACTIVE_LOW>, <&portc 8 GPIO_ACTIVE_LOW>;
|
||||
};
|
||||
|
||||
&spi0 {
|
||||
status = "okay";
|
||||
flash@0 {
|
||||
compatible = "winbond,w25n01", "spi-nand";
|
||||
reg = <0>;
|
||||
};
|
||||
};
|
||||
|
||||
|
||||
&spi2 {
|
||||
status = "okay";
|
||||
|
||||
spidev@0 {
|
||||
status = "okay";
|
||||
};
|
||||
};
|
||||
|
||||
&uart4 {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&i2c1 {
|
||||
status = "okay";
|
||||
clock-frequency = <100000>;
|
||||
};
|
||||
|
||||
/ {
|
||||
|
||||
};
|
||||
@ -0,0 +1,271 @@
|
||||
# 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=n
|
||||
CONFIG_IKCONFIG_PROC=n
|
||||
CONFIG_LOG_BUF_SHIFT=15
|
||||
CONFIG_BLK_DEV_INITRD=y
|
||||
CONFIG_CC_OPTIMIZE_FOR_SIZE=y
|
||||
# CONFIG_SYSFS_SYSCALL is not set
|
||||
# CONFIG_FHANDLE is not set
|
||||
# CONFIG_BUG is not set
|
||||
# CONFIG_BASE_FULL is not set
|
||||
# CONFIG_EPOLL is not set
|
||||
# CONFIG_SIGNALFD is not set
|
||||
# CONFIG_TIMERFD is not set
|
||||
# CONFIG_AIO is not set
|
||||
# CONFIG_IO_URING is not set
|
||||
# CONFIG_ADVISE_SYSCALLS 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_CV180X=y
|
||||
CONFIG_ARCH_CVITEK_CHIP="cv180x"
|
||||
CONFIG_ARCH_CV180X_ASIC=y
|
||||
CONFIG_COMPAT_32BIT_TIME=y
|
||||
# CONFIG_STRICT_KERNEL_RWX is not set
|
||||
CONFIG_MODULES=y
|
||||
CONFIG_MODULE_FORCE_LOAD=y
|
||||
CONFIG_MODULE_UNLOAD=y
|
||||
CONFIG_BLOCK=y
|
||||
CONFIG_BLK_SCSI_REQUEST=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_IP_MULTICAST=y
|
||||
CONFIG_IP_PNP=y
|
||||
CONFIG_IP_PNP_DHCP=y
|
||||
# CONFIG_INET_DIAG is not set
|
||||
CONFIG_IPV6_ROUTER_PREF=y
|
||||
CONFIG_IPV6_ROUTE_INFO=y
|
||||
CONFIG_IPV6_OPTIMISTIC_DAD=y
|
||||
# CONFIG_IPV6_SIT is not set
|
||||
CONFIG_IPV6_MROUTE=y
|
||||
CONFIG_CFG80211=y
|
||||
# CONFIG_CFG80211_CRDA_SUPPORT is not set
|
||||
CONFIG_CFG80211_WEXT=y
|
||||
CONFIG_MAC80211=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_NAND_CVSNFC=y
|
||||
CONFIG_MTD_SPI_NOR=y
|
||||
CONFIG_SPI_CVI_SPIF=y
|
||||
CONFIG_SCSI=y
|
||||
CONFIG_SCSI_DMA=y
|
||||
CONFIG_SCSI_PROC_FS=y
|
||||
CONFIG_BLK_DEV_SD=y
|
||||
CONFIG_SCSI_LOWLEVEL=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_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_MICROCHIP is not set
|
||||
# CONFIG_WLAN_VENDOR_RALINK is not set
|
||||
# CONFIG_WLAN_VENDOR_REALTEK 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_WLAN_VENDOR_QUANTENNA is not set
|
||||
# CONFIG_WLAN_VENDOR_ICOMMSEMI is not set
|
||||
# CONFIG_WLAN_VENDOR_AICSEMI 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_CV180X_THERMAL=m
|
||||
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_FB_TFT=y
|
||||
CONFIG_FB_TFT_SSD1306=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_STORAGE=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_USB_ROLE_SWITCH=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_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_CVI_MAILBOX=y
|
||||
CONFIG_PWM=y
|
||||
CONFIG_SIFIVE_PLIC=y
|
||||
CONFIG_ANDROID=y
|
||||
CONFIG_EXT3_FS=y
|
||||
CONFIG_EXT4_DEBUG=y
|
||||
# CONFIG_MANDATORY_FILE_LOCKING is not set
|
||||
CONFIG_VFAT_FS=y
|
||||
# CONFIG_PROC_PAGE_MONITOR is not set
|
||||
CONFIG_TMPFS=y
|
||||
CONFIG_JFFS2_FS=y
|
||||
CONFIG_JFFS2_FS_WBUF_VERIFY=y
|
||||
CONFIG_UBIFS_FS=y
|
||||
CONFIG_SQUASHFS=y
|
||||
CONFIG_SQUASHFS_XZ=y
|
||||
CONFIG_NFS_FS=y
|
||||
CONFIG_NFS_V4=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_ECDH=y
|
||||
CONFIG_CRYPTO_ECB=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_ENABLE_MUST_CHECK is not set
|
||||
# CONFIG_FRAME_POINTER is not set
|
||||
CONFIG_DEBUG_FS=y
|
||||
# CONFIG_DEBUG_MISC 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
|
||||
82
build/boards/cv180x/cv1800b_milkv_duo_spinand/memmap.py
Normal file
82
build/boards/cv180x/cv1800b_milkv_duo_spinand/memmap.py
Normal file
@ -0,0 +1,82 @@
|
||||
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 = 64 * SIZE_1M
|
||||
|
||||
# ==============
|
||||
# C906L FreeRTOS
|
||||
# ==============
|
||||
FREERTOS_SIZE = 768 * SIZE_1K
|
||||
# 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 = 26.80078125 * SIZE_1M
|
||||
H26X_BITSTREAM_SIZE = 0 * SIZE_1M
|
||||
H26X_ENC_BUFF_SIZE = 0
|
||||
ISP_MEM_BASE_SIZE = 0 * SIZE_1M
|
||||
BOOTLOGO_SIZE = 0 * SIZE_1M
|
||||
FREERTOS_RESERVED_ION_SIZE = H26X_BITSTREAM_SIZE + H26X_ENC_BUFF_SIZE + ISP_MEM_BASE_SIZE + BOOTLOGO_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
|
||||
|
||||
# Boot logo is after ISP buffer and inside the ION buffer
|
||||
BOOTLOGO_ADDR = ISP_MEM_BASE_ADDR + ISP_MEM_BASE_SIZE
|
||||
|
||||
assert BOOTLOGO_ADDR + BOOTLOGO_SIZE <= ION_ADDR + ION_SIZE
|
||||
|
||||
# ===================
|
||||
# FSBL and u-boot-2021
|
||||
# ===================
|
||||
CVI_UPDATE_HEADER_SIZE = SIZE_1K
|
||||
UIMAG_SIZE = 15 * SIZE_1M
|
||||
|
||||
# kernel image loading buffer
|
||||
UIMAG_ADDR = DRAM_BASE + 20 * 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 <= ION_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,10 @@
|
||||
<physical_partition type="spinand">
|
||||
<partition label="fip" size_in_kb="2560" file="fip.bin"/>
|
||||
<partition label="BOOT" size_in_kb="6144" file="boot.spinand"/>
|
||||
<partition label="ENV" size_in_kb="128" file="" />
|
||||
<partition label="ENV_BAK" size_in_kb="128" file="" />
|
||||
<partition label="ROOTFS" size_in_kb="40960" file="rootfs.spinand" />
|
||||
<partition label="SYSTEM" size_in_kb="71680" file="system.spinand" mountpoint="/mnt/system" type="ubifs" />
|
||||
<partition label="CFG" size_in_kb="4096" file="cfg.spinand" mountpoint="/mnt/cfg" type="ubifs" />
|
||||
<partition label="DATA" file="" mountpoint="/mnt/data" type="ubifs" />
|
||||
</physical_partition>
|
||||
30
build/boards/cv180x/cv1800b_milkv_duo_spinand/rootfs_script/clean_rootfs.sh
Executable file
30
build/boards/cv180x/cv1800b_milkv_duo_spinand/rootfs_script/clean_rootfs.sh
Executable file
@ -0,0 +1,30 @@
|
||||
#!/bin/bash
|
||||
|
||||
SYSTEM_DIR=$1
|
||||
rm -rf $SYSTEM_DIR/mnt/system/usr
|
||||
rm -rf $SYSTEM_DIR/mnt/system/lib
|
||||
|
||||
rm -rf $SYSTEM_DIR/etc/init.d/S01syslogd
|
||||
rm -rf $SYSTEM_DIR/etc/init.d/S02klogd
|
||||
rm -rf $SYSTEM_DIR/etc/init.d/S02sysctl
|
||||
rm -rf $SYSTEM_DIR/etc/init.d/S20urandom
|
||||
rm -rf $SYSTEM_DIR/etc/init.d/S40network
|
||||
rm -rf $SYSTEM_DIR/etc/init.d/S23ntp
|
||||
|
||||
rm -rf $SYSTEM_DIR/bin/ntpd
|
||||
rm -rf $SYSTEM_DIR/mnt/cfg/secure.img
|
||||
|
||||
#del cv181x_mipi_tx.ko
|
||||
rm -rf $SYSTEM_DIR/mnt/system/ko/cv181x_mipi_tx.ko
|
||||
sed -i "/cv181x_mipi_tx.ko/d" $SYSTEM_DIR/mnt/system/ko/loadsystemko.sh
|
||||
|
||||
if [ $BUILD_FOR_DEBUG != "y" ]
|
||||
then
|
||||
#del dmesg cmd if CONFIG_PRINTK=n
|
||||
#sed -i "/dmesg/d" $SYSTEM_DIR/mnt/system/ko/loadsystemko.sh
|
||||
|
||||
#del debugfs node
|
||||
sed -i "/debugfs/d" $SYSTEM_DIR/etc/fstab
|
||||
fi
|
||||
|
||||
du -sh $SYSTEM_DIR/* |sort -rh
|
||||
@ -0,0 +1,45 @@
|
||||
int cvi_board_init(void)
|
||||
{
|
||||
// sensor mclk reset
|
||||
PINMUX_CONFIG(PAD_MIPIRX0P, CAM_MCLK0); // Camera MCLK0
|
||||
PINMUX_CONFIG(PAD_MIPIRX1N, XGPIOC_8); // Camera Reset
|
||||
|
||||
// all default gpio
|
||||
PINMUX_CONFIG(SD0_PWR_EN, XGPIOA_14); // Duo Pin 19
|
||||
PINMUX_CONFIG(SPK_EN, XGPIOA_15); // Duo Pin 20
|
||||
//PINMUX_CONFIG(SPINOR_MISO, XGPIOA_23); // Duo Pin 21
|
||||
//PINMUX_CONFIG(SPINOR_CS_X, XGPIOA_24); // Duo Pin 22
|
||||
//PINMUX_CONFIG(SPINOR_SCK, XGPIOA_22); // Duo Pin 24
|
||||
//PINMUX_CONFIG(SPINOR_MOSI, XGPIOA_25); // Duo Pin 25
|
||||
//PINMUX_CONFIG(SPINOR_WP_X, XGPIOA_27); // Duo Pin 26
|
||||
//PINMUX_CONFIG(SPINOR_HOLD_X, XGPIOA_26); // Duo Pin 27
|
||||
PINMUX_CONFIG(PWR_SEQ2, PWR_GPIO_4); // Duo Pin 29
|
||||
|
||||
// ADC pins set to gpio
|
||||
PINMUX_CONFIG(ADC1, XGPIOB_3); // ADC1
|
||||
PINMUX_CONFIG(USB_VBUS_DET, XGPIOB_6); // ADC2
|
||||
|
||||
// I2C0
|
||||
PINMUX_CONFIG(IIC0_SCL, IIC0_SCL);
|
||||
PINMUX_CONFIG(IIC0_SDA, IIC0_SDA);
|
||||
|
||||
// I2C1
|
||||
PINMUX_CONFIG(PAD_MIPIRX1P, IIC1_SDA);
|
||||
PINMUX_CONFIG(PAD_MIPIRX0N, IIC1_SCL);
|
||||
|
||||
// PWM
|
||||
PINMUX_CONFIG(SD1_D2, PWM_5);
|
||||
PINMUX_CONFIG(SD1_D1, PWM_6);
|
||||
|
||||
// UART 4
|
||||
PINMUX_CONFIG(SD1_GPIO1, UART4_TX);
|
||||
PINMUX_CONFIG(SD1_GPIO0, UART4_RX);
|
||||
|
||||
// SPI
|
||||
PINMUX_CONFIG(SD1_CLK, SPI2_SCK);
|
||||
PINMUX_CONFIG(SD1_CMD, SPI2_SDO);
|
||||
PINMUX_CONFIG(SD1_D0, SPI2_SDI);
|
||||
PINMUX_CONFIG(SD1_D3, SPI2_CS_X);
|
||||
|
||||
return 0;
|
||||
}
|
||||
@ -0,0 +1,13 @@
|
||||
/*
|
||||
*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,50 @@
|
||||
CONFIG_RISCV=y
|
||||
CONFIG_SYS_MALLOC_F_LEN=0x2000
|
||||
CONFIG_NR_DRAM_BANKS=1
|
||||
CONFIG_DEFAULT_DEVICE_TREE="cv180x_asic"
|
||||
CONFIG_IDENT_STRING=" cvitek_cv180x"
|
||||
CONFIG_ARCH_RV64I=y
|
||||
CONFIG_RISCV_SMODE=y
|
||||
CONFIG_TARGET_CVITEK_CV180X=y
|
||||
CONFIG_DISTRO_DEFAULTS=y
|
||||
CONFIG_FIT=y
|
||||
# CONFIG_ARCH_FIXUP_FDT_MEMORY is not set
|
||||
CONFIG_BOOTDELAY=1
|
||||
CONFIG_SYS_PROMPT="cv180x_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_SPI_FLASH is not set
|
||||
# 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_SPI_FLASH_USE_4K_SECTORS is not set
|
||||
CONFIG_NAND_BOOT=y
|
||||
CONFIG_NAND_SUPPORT=y
|
||||
CONFIG_MTD_RAW_NAND=y
|
||||
CONFIG_NAND_FLASH_CVSNFC_V3=y
|
||||
CONFIG_ENV_IS_IN_NAND=y
|
||||
|
||||
@ -529,19 +529,19 @@ function cvi_setup_env()
|
||||
# envs setup for specific ${SDK_VER}
|
||||
envs_sdk_ver
|
||||
|
||||
if [ "${STORAGE_TYPE}" == "spinand" ]; then
|
||||
PAGE_SUFFIX=2k
|
||||
if [ ${NANDFLASH_PAGESIZE} == 4096 ]; then
|
||||
PAGE_SUFFIX=4k
|
||||
fi
|
||||
# if [ "${STORAGE_TYPE}" == "spinand" ]; then
|
||||
# PAGE_SUFFIX=2k
|
||||
# if [ ${NANDFLASH_PAGESIZE} == 4096 ]; then
|
||||
# PAGE_SUFFIX=4k
|
||||
# fi
|
||||
|
||||
if [[ "$ENABLE_ALIOS" != "y" ]]; then
|
||||
pushd "$BUILD_PATH"/boards/"${CHIP_ARCH,,}"/"$PROJECT_FULLNAME"/partition/
|
||||
ln -fs ../../../default/partition/partition_spinand_page_"$PAGE_SUFFIX".xml \
|
||||
partition_"$STORAGE_TYPE".xml
|
||||
popd
|
||||
fi
|
||||
fi
|
||||
# if [[ "$ENABLE_ALIOS" != "y" ]]; then
|
||||
# pushd "$BUILD_PATH"/boards/"${CHIP_ARCH,,}"/"$PROJECT_FULLNAME"/partition/
|
||||
# ln -fs ../../../default/partition/partition_spinand_page_"$PAGE_SUFFIX".xml \
|
||||
# partition_"$STORAGE_TYPE".xml
|
||||
# popd
|
||||
# fi
|
||||
# fi
|
||||
|
||||
# configure flash partition table
|
||||
if [ -z "${STORAGE_TYPE}" ]; then
|
||||
|
||||
Reference in New Issue
Block a user