From f4b2035c03e6c2ef84cf400734e6e1811a31843e Mon Sep 17 00:00:00 2001 From: Macro <51401569+LiuCheeHom@users.noreply.github.com> Date: Fri, 8 Dec 2023 17:57:55 +0800 Subject: [PATCH] [bsp/phytium] driver and config update (#8344) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 更新驱动代码,完成对新版rt-thread内核的支持工作。更新默认config文件,保证各驱动被顺利添加后,程序能正常运行 --- bsp/phytium/.gitignore | 2 +- bsp/phytium/README.md | 1 + bsp/phytium/aarch32/.config | 173 ++++++--- bsp/phytium/aarch32/README.md | 10 +- bsp/phytium/aarch32/SConstruct | 2 + .../aarch32/configs/e2000d_demo_rtsmart | 141 ++++--- .../aarch32/configs/e2000d_demo_rtsmart.h | 52 ++- .../aarch32/configs/e2000d_demo_rtthread | 151 +++++--- .../aarch32/configs/e2000d_demo_rtthread.h | 56 ++- .../aarch32/configs/e2000q_demo_rtsmart | 137 ++++--- .../aarch32/configs/e2000q_demo_rtsmart.h | 49 ++- .../aarch32/configs/e2000q_demo_rtthread | 137 ++++--- .../aarch32/configs/e2000q_demo_rtthread.h | 49 ++- .../aarch32/configs/phytium_pi_rtsmart | 118 +++--- .../aarch32/configs/phytium_pi_rtsmart.h | 36 +- .../aarch32/configs/phytium_pi_rtthread | 118 +++--- .../aarch32/configs/phytium_pi_rtthread.h | 36 +- .../{1682477587050.png => rtsmart_config.png} | Bin bsp/phytium/aarch32/rtconfig.h | 68 +++- bsp/phytium/aarch64/.config | 144 ++++--- bsp/phytium/aarch64/Kconfig | 1 + bsp/phytium/aarch64/README.md | 10 +- bsp/phytium/aarch64/SConstruct | 2 + .../aarch64/configs/e2000d_demo_rtsmart | 146 +++++--- .../aarch64/configs/e2000d_demo_rtsmart.h | 57 ++- .../aarch64/configs/e2000d_demo_rtthread | 156 +++++--- .../aarch64/configs/e2000d_demo_rtthread.h | 61 ++- .../aarch64/configs/e2000q_demo_rtsmart | 146 +++++--- .../aarch64/configs/e2000q_demo_rtsmart.h | 57 ++- .../aarch64/configs/e2000q_demo_rtthread | 146 +++++--- .../aarch64/configs/e2000q_demo_rtthread.h | 57 ++- .../aarch64/configs/phytium_pi_rtsmart | 126 ++++--- .../aarch64/configs/phytium_pi_rtsmart.h | 44 ++- .../aarch64/configs/phytium_pi_rtthread | 128 ++++--- .../aarch64/configs/phytium_pi_rtthread.h | 48 ++- .../{1682474861110.png => rtsmart_config.png} | Bin bsp/phytium/aarch64/rtconfig.h | 60 ++- bsp/phytium/board/README.md | 4 +- bsp/phytium/board/board.c | 9 - bsp/phytium/board/board.kconfig | 34 +- bsp/phytium/libraries/SConscript | 4 + bsp/phytium/libraries/drivers/Kconfig | 160 ++++---- bsp/phytium/libraries/drivers/drv_can.c | 243 ++++-------- bsp/phytium/libraries/drivers/drv_can.h | 5 - bsp/phytium/libraries/drivers/drv_gpio.c | 14 +- bsp/phytium/libraries/drivers/drv_i2c.c | 354 +++++++----------- bsp/phytium/libraries/drivers/drv_i2c.h | 4 +- bsp/phytium/libraries/drivers/drv_pwm.c | 143 ++++--- bsp/phytium/libraries/drivers/drv_pwm.h | 5 +- bsp/phytium/libraries/drivers/drv_qspi.c | 140 ++----- bsp/phytium/libraries/drivers/drv_qspi.h | 20 +- bsp/phytium/libraries/drivers/drv_sdif.c | 8 +- bsp/phytium/libraries/drivers/drv_spi.c | 177 +++------ bsp/phytium/libraries/drivers/drv_spi.h | 14 +- bsp/phytium/libraries/drivers/drv_usart.c | 95 ++--- bsp/phytium/libraries/drivers/drv_usart.h | 10 +- bsp/phytium/libraries/drivers/drv_xmac.c | 134 ++++--- .../libraries/port/fdriver_port/sdkconfig.h | 5 + .../libraries/port/lwip_port/lwip_port.h | 32 ++ 59 files changed, 2538 insertions(+), 1801 deletions(-) rename bsp/phytium/aarch32/figures/{1682477587050.png => rtsmart_config.png} (100%) rename bsp/phytium/aarch64/figures/{1682474861110.png => rtsmart_config.png} (100%) create mode 100644 bsp/phytium/libraries/port/fdriver_port/sdkconfig.h create mode 100644 bsp/phytium/libraries/port/lwip_port/lwip_port.h diff --git a/bsp/phytium/.gitignore b/bsp/phytium/.gitignore index ca53c59acf..c43afef629 100644 --- a/bsp/phytium/.gitignore +++ b/bsp/phytium/.gitignore @@ -14,4 +14,4 @@ /aarch64/smart-env.bat **/**/makefile /libraries/tests/* -/libraries/phytium_standalone_sdk/* +/libraries/phytium_standalone_sdk/ diff --git a/bsp/phytium/README.md b/bsp/phytium/README.md index 3e3f628a2d..b3177f244d 100644 --- a/bsp/phytium/README.md +++ b/bsp/phytium/README.md @@ -36,6 +36,7 @@ | PWM | 支持 | PWM 脉宽调制电压输出 | | CAN | 支持 | CAN/CANFD设备通信 | | I2C | 支持 | I2C设备通信 | +| SPI | 支持 | SPI设备通信 | | **芯片** | **支持情况** | **备注** | | :----------------- | :----------: | :------------------------------------- | diff --git a/bsp/phytium/aarch32/.config b/bsp/phytium/aarch32/.config index 6b56edb613..5fb526c92c 100644 --- a/bsp/phytium/aarch32/.config +++ b/bsp/phytium/aarch32/.config @@ -8,10 +8,10 @@ # CONFIG_RT_NAME_MAX=16 # CONFIG_RT_USING_ARCH_DATA_TYPE is not set -# CONFIG_RT_USING_SMART is not set +CONFIG_RT_USING_SMART=y # CONFIG_RT_USING_AMP is not set -CONFIG_RT_USING_SMP=y -CONFIG_RT_CPUS_NR=4 +# CONFIG_RT_USING_SMP is not set +CONFIG_RT_CPUS_NR=1 CONFIG_RT_ALIGN_SIZE=4 # CONFIG_RT_THREAD_PRIORITY_8 is not set CONFIG_RT_THREAD_PRIORITY_32=y @@ -24,7 +24,6 @@ CONFIG_RT_HOOK_USING_FUNC_PTR=y CONFIG_RT_USING_IDLE_HOOK=y CONFIG_RT_IDLE_HOOK_LIST_SIZE=4 CONFIG_IDLE_THREAD_STACK_SIZE=4096 -CONFIG_SYSTEM_THREAD_STACK_SIZE=4096 CONFIG_RT_USING_TIMER_SOFT=y CONFIG_RT_TIMER_THREAD_PRIO=4 CONFIG_RT_TIMER_THREAD_STACK_SIZE=4096 @@ -40,7 +39,7 @@ CONFIG_RT_KPRINTF_USING_LONGLONG=y CONFIG_RT_USING_DEBUG=y CONFIG_RT_DEBUGING_COLOR=y CONFIG_RT_DEBUGING_CONTEXT=y -CONFIG_RT_DEBUGING_INIT=y +# CONFIG_RT_DEBUGING_AUTO_INIT is not set # CONFIG_RT_DEBUGING_PAGE_LEAK is not set # @@ -89,6 +88,8 @@ CONFIG_RT_USING_CPU_FFS=y CONFIG_ARCH_MM_MMU=y CONFIG_ARCH_ARM=y CONFIG_ARCH_ARM_MMU=y +CONFIG_KERNEL_VADDR_START=0xc0000000 +# CONFIG_RT_IOREMAP_LATE is not set CONFIG_ARCH_ARM_CORTEX_A=y # CONFIG_RT_SMP_AUTO_BOOT is not set # CONFIG_RT_USING_GIC_V2 is not set @@ -156,6 +157,7 @@ CONFIG_RT_DFS_ELM_MAX_SECTOR_SIZE=512 # CONFIG_RT_DFS_ELM_USE_ERASE is not set CONFIG_RT_DFS_ELM_REENTRANT=y CONFIG_RT_DFS_ELM_MUTEX_TIMEOUT=3000 +# CONFIG_RT_DFS_ELM_USE_EXFAT is not set CONFIG_RT_USING_DFS_DEVFS=y # CONFIG_RT_USING_DFS_ROMFS is not set # CONFIG_RT_USING_DFS_CROMFS is not set @@ -164,6 +166,16 @@ CONFIG_RT_USING_DFS_RAMFS=y CONFIG_RT_USING_DFS_MQUEUE=y # CONFIG_RT_USING_DFS_NFS is not set # CONFIG_RT_USING_FAL is not set +CONFIG_RT_USING_LWP=y +# CONFIG_LWP_DEBUG is not set +CONFIG_RT_LWP_MAX_NR=30 +CONFIG_LWP_TASK_STACK_SIZE=16384 +CONFIG_RT_CH_MSG_MAX_NR=1024 +CONFIG_LWP_CONSOLE_INPUT_BUFFER_SIZE=1024 +CONFIG_LWP_TID_MAX_NR=64 +CONFIG_LWP_ENABLE_ASID=y +CONFIG_RT_LWP_SHM_MAX_NR=64 +# CONFIG_LWP_UNIX98_PTY is not set # # Device Drivers @@ -179,18 +191,26 @@ CONFIG_RT_USING_SERIAL_V1=y # CONFIG_RT_USING_SERIAL_V2 is not set CONFIG_RT_SERIAL_USING_DMA=y CONFIG_RT_SERIAL_RB_BUFSZ=1024 -# CONFIG_RT_USING_CAN is not set +CONFIG_RT_USING_TTY=y +# CONFIG_RT_TTY_DEBUG is not set +CONFIG_RT_USING_CAN=y +CONFIG_RT_CAN_USING_HDR=y +CONFIG_RT_CAN_USING_CANFD=y # CONFIG_RT_USING_HWTIMER is not set # CONFIG_RT_USING_CPUTIME is not set -# CONFIG_RT_USING_I2C is not set +CONFIG_RT_USING_I2C=y +# CONFIG_RT_I2C_DEBUG is not set +CONFIG_RT_USING_I2C_BITOPS=y +# CONFIG_RT_I2C_BITOPS_DEBUG is not set +# CONFIG_RT_USING_SOFT_I2C is not set # CONFIG_RT_USING_PHY is not set -# CONFIG_RT_USING_PIN is not set +CONFIG_RT_USING_PIN=y # CONFIG_RT_USING_ADC is not set # CONFIG_RT_USING_DAC is not set CONFIG_RT_USING_NULL=y CONFIG_RT_USING_ZERO=y CONFIG_RT_USING_RANDOM=y -# CONFIG_RT_USING_PWM is not set +CONFIG_RT_USING_PWM=y # CONFIG_RT_USING_MTD_NOR is not set # CONFIG_RT_USING_MTD_NAND is not set # CONFIG_RT_USING_PM is not set @@ -204,7 +224,13 @@ CONFIG_RT_MMCSD_STACK_SIZE=4096 CONFIG_RT_MMCSD_THREAD_PREORITY=22 CONFIG_RT_MMCSD_MAX_PARTITION=16 # CONFIG_RT_SDIO_DEBUG is not set -# CONFIG_RT_USING_SPI is not set +CONFIG_RT_USING_SPI=y +# CONFIG_RT_USING_SPI_BITOPS is not set +CONFIG_RT_USING_QSPI=y +# CONFIG_RT_USING_SPI_MSD is not set +# CONFIG_RT_USING_SFUD is not set +# CONFIG_RT_USING_ENC28J60 is not set +# CONFIG_RT_USING_SPI_WIFI is not set # CONFIG_RT_USING_WDT is not set # CONFIG_RT_USING_AUDIO is not set # CONFIG_RT_USING_SENSOR is not set @@ -228,6 +254,7 @@ CONFIG_RT_USING_KTIME=y # # C/C++ and POSIX layer # +# CONFIG_RT_USING_INTERNAL_LIBC_ONLY is not set # # ISO-ANSI C layer @@ -251,6 +278,8 @@ CONFIG_RT_USING_POSIX_STDIO=y CONFIG_RT_USING_POSIX_POLL=y CONFIG_RT_USING_POSIX_SELECT=y # CONFIG_RT_USING_POSIX_EVENTFD is not set +# CONFIG_RT_USING_POSIX_EPOLL is not set +# CONFIG_RT_USING_POSIX_SIGNALFD is not set # CONFIG_RT_USING_POSIX_TIMERFD is not set # CONFIG_RT_USING_POSIX_SOCKET is not set CONFIG_RT_USING_POSIX_TERMIOS=y @@ -381,6 +410,12 @@ CONFIG_RT_USING_ADT_REF=y # # CONFIG_RT_USING_MEMBLOCK is not set +# +# Memory protection +# +# CONFIG_RT_USING_MEM_PROTECTION is not set +# CONFIG_RT_USING_HW_STACK_GUARD is not set + # # RT-Thread Utestcases # @@ -421,11 +456,6 @@ CONFIG_RT_USING_ADT_REF=y # # CONFIG_PKG_USING_WLAN_WICED is not set # CONFIG_PKG_USING_RW007 is not set - -# -# CYW43012 WiFi -# -# CONFIG_PKG_USING_WLAN_CYW43012 is not set # CONFIG_PKG_USING_COAP is not set # CONFIG_PKG_USING_NOPOLL is not set # CONFIG_PKG_USING_NETUTILS is not set @@ -468,7 +498,6 @@ CONFIG_RT_USING_ADT_REF=y # CONFIG_PKG_USING_NMEALIB is not set # CONFIG_PKG_USING_PDULIB is not set # CONFIG_PKG_USING_BTSTACK is not set -# CONFIG_PKG_USING_BT_CYW43012 is not set # CONFIG_PKG_USING_LORAWAN_ED_STACK is not set # CONFIG_PKG_USING_WAYZ_IOTKIT is not set # CONFIG_PKG_USING_MAVLINK is not set @@ -488,8 +517,6 @@ CONFIG_RT_USING_ADT_REF=y # CONFIG_PKG_USING_ZFTP is not set # CONFIG_PKG_USING_WOL is not set # CONFIG_PKG_USING_ZEPHYR_POLLING is not set -# CONFIG_PKG_USING_MATTER_ADAPTATION_LAYER is not set -# CONFIG_PKG_USING_LHC_MODBUS is not set # # security packages @@ -536,6 +563,7 @@ CONFIG_RT_USING_ADT_REF=y # LVGL: powerful and easy-to-use embedded GUI library # # CONFIG_PKG_USING_LVGL is not set +# CONFIG_PKG_USING_LITTLEVGL2RTT is not set # CONFIG_PKG_USING_LV_MUSIC_DEMO is not set # CONFIG_PKG_USING_GUI_GUIDER_DEMO is not set @@ -611,7 +639,6 @@ CONFIG_RT_USING_ADT_REF=y # CONFIG_PKG_USING_HASH_MATCH is not set # CONFIG_PKG_USING_ARMV7M_DWT_TOOL is not set # CONFIG_PKG_USING_VOFA_PLUS is not set -# CONFIG_PKG_USING_ZDEBUG is not set # # system packages @@ -648,8 +675,6 @@ CONFIG_RT_USING_ADT_REF=y # CONFIG_PKG_USING_UC_COMMON is not set # CONFIG_PKG_USING_UC_MODBUS is not set # CONFIG_PKG_USING_FREERTOS_WRAPPER is not set -# CONFIG_PKG_USING_LITEOS_SDK is not set -# CONFIG_PKG_USING_TZ_DATABASE is not set # CONFIG_PKG_USING_CAIRO is not set # CONFIG_PKG_USING_PIXMAN is not set # CONFIG_PKG_USING_PARTITION is not set @@ -673,7 +698,6 @@ CONFIG_RT_USING_ADT_REF=y # CONFIG_PKG_USING_QBOOT is not set # CONFIG_PKG_USING_PPOOL is not set # CONFIG_PKG_USING_OPENAMP is not set -# CONFIG_PKG_USING_RPMSG_LITE is not set # CONFIG_PKG_USING_LPM is not set # CONFIG_PKG_USING_TLSF is not set # CONFIG_PKG_USING_EVENT_RECORDER is not set @@ -687,11 +711,6 @@ CONFIG_RT_USING_ADT_REF=y # CONFIG_PKG_USING_AGILE_UPGRADE is not set # CONFIG_PKG_USING_FLASH_BLOB is not set # CONFIG_PKG_USING_MLIBC is not set -# CONFIG_PKG_USING_TASK_MSG_BUS is not set -# CONFIG_PKG_USING_SFDB is not set -# CONFIG_PKG_USING_RTP is not set -# CONFIG_PKG_USING_REB is not set -# CONFIG_PKG_USING_R_RHEALSTONE is not set # # peripheral libraries and drivers @@ -756,7 +775,6 @@ CONFIG_RT_USING_ADT_REF=y # CONFIG_PKG_USING_BALANCE is not set # CONFIG_PKG_USING_SHT2X is not set # CONFIG_PKG_USING_SHT3X is not set -# CONFIG_PKG_USING_SHT4X is not set # CONFIG_PKG_USING_AD7746 is not set # CONFIG_PKG_USING_ADT74XX is not set # CONFIG_PKG_USING_MAX17048 is not set @@ -857,11 +875,6 @@ CONFIG_RT_USING_ADT_REF=y # CONFIG_PKG_USING_FINGERPRINT is not set # CONFIG_PKG_USING_BT_ECB02C is not set # CONFIG_PKG_USING_UAT is not set -# CONFIG_PKG_USING_ST7789 is not set -# CONFIG_PKG_USING_VS1003 is not set -# CONFIG_PKG_USING_X9555 is not set -# CONFIG_PKG_USING_SYSTEM_RUN_LED is not set -# CONFIG_PKG_USING_PHYTIUM_SDK is not set # CONFIG_PKG_USING_SPI_TOOLS is not set # @@ -876,7 +889,6 @@ CONFIG_RT_USING_ADT_REF=y # CONFIG_PKG_USING_ULAPACK is not set # CONFIG_PKG_USING_QUEST is not set # CONFIG_PKG_USING_NAXOS is not set -# CONFIG_PKG_USING_R_TINYMAIX is not set # # Signal Processing and Control Algorithm Packages @@ -886,7 +898,6 @@ CONFIG_RT_USING_ADT_REF=y # CONFIG_PKG_USING_UKAL is not set # CONFIG_PKG_USING_DIGITALCTRL is not set # CONFIG_PKG_USING_KISSFFT is not set -# CONFIG_PKG_USING_CMSIS_DSP is not set # # miscellaneous packages @@ -924,7 +935,6 @@ CONFIG_RT_USING_ADT_REF=y # CONFIG_PKG_USING_MINILZO is not set # CONFIG_PKG_USING_QUICKLZ is not set # CONFIG_PKG_USING_LZMA is not set -# CONFIG_PKG_USING_RALARAM is not set # CONFIG_PKG_USING_MULTIBUTTON is not set # CONFIG_PKG_USING_FLEXIBLE_BUTTON is not set # CONFIG_PKG_USING_CANFESTIVAL is not set @@ -1109,7 +1119,6 @@ CONFIG_RT_USING_ADT_REF=y # # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_GFX_LIBRARY is not set # CONFIG_PKG_USING_ARDUINO_U8G2 is not set -# CONFIG_PKG_USING_ARDUINO_TFT_ESPI is not set # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_ST7735 is not set # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_SSD1306 is not set # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_ILI9341 is not set @@ -1118,7 +1127,6 @@ CONFIG_RT_USING_ADT_REF=y # # Timing # -# CONFIG_PKG_USING_ARDUINO_RTCLIB is not set # CONFIG_PKG_USING_ARDUINO_MSTIMER2 is not set # CONFIG_PKG_USING_ARDUINO_TICKER is not set # CONFIG_PKG_USING_ARDUINO_TASKSCHEDULER is not set @@ -1155,6 +1163,7 @@ CONFIG_RT_USING_ADT_REF=y # # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_MFRC630 is not set # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_SI5351 is not set +# CONFIG_PKG_USING_ARDUINO_RTCLIB is not set # # Signal IO @@ -1182,20 +1191,64 @@ CONFIG_RT_USING_ADT_REF=y # CONFIG_BSP_USING_IOPAD=y CONFIG_BSP_USING_UART=y +CONFIG_RT_USING_UART0=y CONFIG_RT_USING_UART1=y -# CONFIG_RT_USING_UART0 is not set -# CONFIG_BSP_USING_SPI is not set -# CONFIG_BSP_USING_CAN is not set -# CONFIG_BSP_USING_GPIO is not set -# CONFIG_BSP_USING_QSPI is not set -# CONFIG_BSP_USING_ETH is not set -# CONFIG_BSP_USING_PWM is not set -# CONFIG_BSP_USING_I2C is not set +# CONFIG_RT_USING_UART2 is not set +# CONFIG_RT_USING_UART3 is not set +CONFIG_BSP_USING_SPI=y +# CONFIG_RT_USING_SPIM0 is not set +# CONFIG_RT_USING_SPIM1 is not set +CONFIG_RT_USING_SPIM2=y +# CONFIG_RT_USING_SPIM3 is not set +CONFIG_BSP_USING_CAN=y +CONFIG_RT_USING_CANFD=y +CONFIG_RT_USING_FILTER=y +CONFIG_RT_USING_CAN0=y +CONFIG_RT_USING_CAN1=y +CONFIG_BSP_USING_GPIO=y +CONFIG_BSP_USING_QSPI=y +CONFIG_RT_USING_QSPI0=y +CONFIG_USING_QSPI_CHANNEL0=y +# CONFIG_USING_QSPI_CHANNEL1 is not set +CONFIG_BSP_USING_ETH=y +CONFIG_RT_LWIP_PBUF_POOL_BUFSIZE=1700 +CONFIG_BSP_USING_PWM=y +# CONFIG_RT_USING_PWM0 is not set +# CONFIG_RT_USING_PWM1 is not set +# CONFIG_RT_USING_PWM2 is not set +# CONFIG_RT_USING_PWM3 is not set +# CONFIG_RT_USING_PWM4 is not set +# CONFIG_RT_USING_PWM5 is not set +CONFIG_RT_USING_PWM6=y +# CONFIG_RT_USING_PWM7 is not set +CONFIG_BSP_USING_I2C=y +CONFIG_I2C_USE_MIO=y +# CONFIG_RT_USING_MIO0 is not set +# CONFIG_RT_USING_MIO1 is not set +# CONFIG_RT_USING_MIO2 is not set +# CONFIG_RT_USING_MIO3 is not set +# CONFIG_RT_USING_MIO4 is not set +# CONFIG_RT_USING_MIO5 is not set +# CONFIG_RT_USING_MIO6 is not set +# CONFIG_RT_USING_MIO7 is not set +# CONFIG_RT_USING_MIO8 is not set +# CONFIG_RT_USING_MIO9 is not set +# CONFIG_RT_USING_MIO10 is not set +# CONFIG_RT_USING_MIO11 is not set +# CONFIG_RT_USING_MIO12 is not set +# CONFIG_RT_USING_MIO13 is not set +# CONFIG_RT_USING_MIO14 is not set +CONFIG_RT_USING_MIO15=y +CONFIG_I2C_USE_CONTROLLER=y +CONFIG_RT_USING_I2C0=y +# CONFIG_RT_USING_I2C1 is not set +# CONFIG_RT_USING_I2C2 is not set +# CONFIG_RT_USING_I2C3 is not set CONFIG_BSP_USING_SDIF=y CONFIG_BSP_USING_SDCARD_FATFS=y -CONFIG_BSP_USING_SDCARD_PARTITION="sd1" -CONFIG_USING_SDIF0=y -# CONFIG_USING_SDIF1 is not set +CONFIG_BSP_USING_SDCARD_PARTITION="sd0" +# CONFIG_USING_SDIF0 is not set +CONFIG_USING_SDIF1=y # CONFIG_USING_EMMC is not set # @@ -1212,14 +1265,15 @@ CONFIG_USE_AARCH64_L1_TO_AARCH32=y # # Soc configuration # -CONFIG_TARGET_PHYTIUMPI=y +# CONFIG_TARGET_PHYTIUMPI is not set # CONFIG_TARGET_E2000Q is not set -# CONFIG_TARGET_E2000D is not set +CONFIG_TARGET_E2000D=y # CONFIG_TARGET_E2000S is not set # CONFIG_TARGET_FT2004 is not set # CONFIG_TARGET_D2000 is not set -CONFIG_SOC_NAME="phytiumpi" -CONFIG_SOC_CORE_NUM=4 +CONFIG_SOC_NAME="e2000" +CONFIG_TARGET_TYPE_NAME="d" +CONFIG_SOC_CORE_NUM=2 CONFIG_F32BIT_MEMORY_ADDRESS=0x80000000 CONFIG_F32BIT_MEMORY_LENGTH=0x80000000 CONFIG_F64BIT_MEMORY_ADDRESS=0x2000000000 @@ -1233,21 +1287,22 @@ CONFIG_DEFAULT_DEBUG_PRINT_UART1=y # # Board Configuration # -CONFIG_BOARD_NAME="firefly" +CONFIG_E2000D_DEMO_BOARD=y +CONFIG_BOARD_NAME="demo" + +# +# IO mux configuration when board start up +# # CONFIG_USE_SPI_IOPAD is not set # CONFIG_USE_GPIO_IOPAD is not set # CONFIG_USE_CAN_IOPAD is not set # CONFIG_USE_QSPI_IOPAD is not set # CONFIG_USE_PWM_IOPAD is not set +# CONFIG_USE_ADC_IOPAD is not set # CONFIG_USE_MIO_IOPAD is not set # CONFIG_USE_TACHO_IOPAD is not set # CONFIG_USE_UART_IOPAD is not set # CONFIG_USE_THIRD_PARTY_IOPAD is not set -CONFIG_FIREFLY_DEMO_BOARD=y - -# -# IO mux configuration when board start up -# # CONFIG_CUS_DEMO_BOARD is not set # diff --git a/bsp/phytium/aarch32/README.md b/bsp/phytium/aarch32/README.md index 4f70d4aa6a..947c04d6a7 100644 --- a/bsp/phytium/aarch32/README.md +++ b/bsp/phytium/aarch32/README.md @@ -100,7 +100,7 @@ Hardware Drivers > On-chip Peripheral Drivers ``` -![1682477587050](figures/1682477587050.png) +![rtsmart_config](figures/rtsmart_config.png) 开发者通过以上配置开启RT-Thread Smart 功能 @@ -163,17 +163,17 @@ config BSP_DIR option env="BSP_ROOT" default "." -config STANDALONE_DIR +config SDK_DIR string - option env="STANDALONE_DIR" - default "libraries/standalone" + option env="SDK_DIR" + default "./libraries/phytium_standalone_sdk" ``` - 输入 menuconfig 和 scons 完成编译 ## 9. 将工程导入 RT-Studio -- 在 RT-Studio 使用功能 `RT-Thread Bsp 到工作空间`,导入 5. 中导出的 BSP 工程 +- 在 RT-Studio 使用功能 `RT-Thread Bsp 到工作空间`,导入 8. 中导出的 BSP 工程 - 设置 BSP 工程的交叉编译链后进行后续开发 ![](./figures/import_project.png) diff --git a/bsp/phytium/aarch32/SConstruct b/bsp/phytium/aarch32/SConstruct index ef9bc22466..a1671f2235 100644 --- a/bsp/phytium/aarch32/SConstruct +++ b/bsp/phytium/aarch32/SConstruct @@ -54,6 +54,8 @@ def install_phytium_sdk(): print("Checking for the presence of phytium_standalone_sdk_install.py script...") sconstruct_dir = os.getcwd() install_script_path = os.path.join(sconstruct_dir, "phytium_standalone_sdk_install.py") + if os.path.exists(install_script_path): + subprocess.call(["rm","-rf", install_script_path]) try: subprocess.call(["wget", "https://gitee.com/phytium_embedded/phytium-standalone-sdk/raw/Standalone-Sdk_RT-thread/phytium_standalone_sdk_install.py"]) diff --git a/bsp/phytium/aarch32/configs/e2000d_demo_rtsmart b/bsp/phytium/aarch32/configs/e2000d_demo_rtsmart index 72a31f3985..5fb526c92c 100644 --- a/bsp/phytium/aarch32/configs/e2000d_demo_rtsmart +++ b/bsp/phytium/aarch32/configs/e2000d_demo_rtsmart @@ -10,8 +10,8 @@ CONFIG_RT_NAME_MAX=16 # CONFIG_RT_USING_ARCH_DATA_TYPE is not set CONFIG_RT_USING_SMART=y # CONFIG_RT_USING_AMP is not set -CONFIG_RT_USING_SMP=y -CONFIG_RT_CPUS_NR=2 +# CONFIG_RT_USING_SMP is not set +CONFIG_RT_CPUS_NR=1 CONFIG_RT_ALIGN_SIZE=4 # CONFIG_RT_THREAD_PRIORITY_8 is not set CONFIG_RT_THREAD_PRIORITY_32=y @@ -24,7 +24,6 @@ CONFIG_RT_HOOK_USING_FUNC_PTR=y CONFIG_RT_USING_IDLE_HOOK=y CONFIG_RT_IDLE_HOOK_LIST_SIZE=4 CONFIG_IDLE_THREAD_STACK_SIZE=4096 -CONFIG_SYSTEM_THREAD_STACK_SIZE=4096 CONFIG_RT_USING_TIMER_SOFT=y CONFIG_RT_TIMER_THREAD_PRIO=4 CONFIG_RT_TIMER_THREAD_STACK_SIZE=4096 @@ -40,7 +39,7 @@ CONFIG_RT_KPRINTF_USING_LONGLONG=y CONFIG_RT_USING_DEBUG=y CONFIG_RT_DEBUGING_COLOR=y CONFIG_RT_DEBUGING_CONTEXT=y -CONFIG_RT_DEBUGING_INIT=y +# CONFIG_RT_DEBUGING_AUTO_INIT is not set # CONFIG_RT_DEBUGING_PAGE_LEAK is not set # @@ -158,6 +157,7 @@ CONFIG_RT_DFS_ELM_MAX_SECTOR_SIZE=512 # CONFIG_RT_DFS_ELM_USE_ERASE is not set CONFIG_RT_DFS_ELM_REENTRANT=y CONFIG_RT_DFS_ELM_MUTEX_TIMEOUT=3000 +# CONFIG_RT_DFS_ELM_USE_EXFAT is not set CONFIG_RT_USING_DFS_DEVFS=y # CONFIG_RT_USING_DFS_ROMFS is not set # CONFIG_RT_USING_DFS_CROMFS is not set @@ -193,26 +193,44 @@ CONFIG_RT_SERIAL_USING_DMA=y CONFIG_RT_SERIAL_RB_BUFSZ=1024 CONFIG_RT_USING_TTY=y # CONFIG_RT_TTY_DEBUG is not set -# CONFIG_RT_USING_CAN is not set +CONFIG_RT_USING_CAN=y +CONFIG_RT_CAN_USING_HDR=y +CONFIG_RT_CAN_USING_CANFD=y # CONFIG_RT_USING_HWTIMER is not set # CONFIG_RT_USING_CPUTIME is not set -# CONFIG_RT_USING_I2C is not set +CONFIG_RT_USING_I2C=y +# CONFIG_RT_I2C_DEBUG is not set +CONFIG_RT_USING_I2C_BITOPS=y +# CONFIG_RT_I2C_BITOPS_DEBUG is not set +# CONFIG_RT_USING_SOFT_I2C is not set # CONFIG_RT_USING_PHY is not set -# CONFIG_RT_USING_PIN is not set +CONFIG_RT_USING_PIN=y # CONFIG_RT_USING_ADC is not set # CONFIG_RT_USING_DAC is not set CONFIG_RT_USING_NULL=y CONFIG_RT_USING_ZERO=y CONFIG_RT_USING_RANDOM=y -# CONFIG_RT_USING_PWM is not set +CONFIG_RT_USING_PWM=y # CONFIG_RT_USING_MTD_NOR is not set # CONFIG_RT_USING_MTD_NAND is not set # CONFIG_RT_USING_PM is not set CONFIG_RT_USING_RTC=y # CONFIG_RT_USING_ALARM is not set # CONFIG_RT_USING_SOFT_RTC is not set -# CONFIG_RT_USING_SDIO is not set -# CONFIG_RT_USING_SPI is not set +CONFIG_RT_USING_SDIO=y +CONFIG_RT_SDIO_STACK_SIZE=4096 +CONFIG_RT_SDIO_THREAD_PRIORITY=15 +CONFIG_RT_MMCSD_STACK_SIZE=4096 +CONFIG_RT_MMCSD_THREAD_PREORITY=22 +CONFIG_RT_MMCSD_MAX_PARTITION=16 +# CONFIG_RT_SDIO_DEBUG is not set +CONFIG_RT_USING_SPI=y +# CONFIG_RT_USING_SPI_BITOPS is not set +CONFIG_RT_USING_QSPI=y +# CONFIG_RT_USING_SPI_MSD is not set +# CONFIG_RT_USING_SFUD is not set +# CONFIG_RT_USING_ENC28J60 is not set +# CONFIG_RT_USING_SPI_WIFI is not set # CONFIG_RT_USING_WDT is not set # CONFIG_RT_USING_AUDIO is not set # CONFIG_RT_USING_SENSOR is not set @@ -236,6 +254,7 @@ CONFIG_RT_USING_KTIME=y # # C/C++ and POSIX layer # +# CONFIG_RT_USING_INTERNAL_LIBC_ONLY is not set # # ISO-ANSI C layer @@ -391,6 +410,12 @@ CONFIG_RT_USING_ADT_REF=y # # CONFIG_RT_USING_MEMBLOCK is not set +# +# Memory protection +# +# CONFIG_RT_USING_MEM_PROTECTION is not set +# CONFIG_RT_USING_HW_STACK_GUARD is not set + # # RT-Thread Utestcases # @@ -431,11 +456,6 @@ CONFIG_RT_USING_ADT_REF=y # # CONFIG_PKG_USING_WLAN_WICED is not set # CONFIG_PKG_USING_RW007 is not set - -# -# CYW43012 WiFi -# -# CONFIG_PKG_USING_WLAN_CYW43012 is not set # CONFIG_PKG_USING_COAP is not set # CONFIG_PKG_USING_NOPOLL is not set # CONFIG_PKG_USING_NETUTILS is not set @@ -478,7 +498,6 @@ CONFIG_RT_USING_ADT_REF=y # CONFIG_PKG_USING_NMEALIB is not set # CONFIG_PKG_USING_PDULIB is not set # CONFIG_PKG_USING_BTSTACK is not set -# CONFIG_PKG_USING_BT_CYW43012 is not set # CONFIG_PKG_USING_LORAWAN_ED_STACK is not set # CONFIG_PKG_USING_WAYZ_IOTKIT is not set # CONFIG_PKG_USING_MAVLINK is not set @@ -498,8 +517,6 @@ CONFIG_RT_USING_ADT_REF=y # CONFIG_PKG_USING_ZFTP is not set # CONFIG_PKG_USING_WOL is not set # CONFIG_PKG_USING_ZEPHYR_POLLING is not set -# CONFIG_PKG_USING_MATTER_ADAPTATION_LAYER is not set -# CONFIG_PKG_USING_LHC_MODBUS is not set # # security packages @@ -546,6 +563,7 @@ CONFIG_RT_USING_ADT_REF=y # LVGL: powerful and easy-to-use embedded GUI library # # CONFIG_PKG_USING_LVGL is not set +# CONFIG_PKG_USING_LITTLEVGL2RTT is not set # CONFIG_PKG_USING_LV_MUSIC_DEMO is not set # CONFIG_PKG_USING_GUI_GUIDER_DEMO is not set @@ -621,7 +639,6 @@ CONFIG_RT_USING_ADT_REF=y # CONFIG_PKG_USING_HASH_MATCH is not set # CONFIG_PKG_USING_ARMV7M_DWT_TOOL is not set # CONFIG_PKG_USING_VOFA_PLUS is not set -# CONFIG_PKG_USING_ZDEBUG is not set # # system packages @@ -658,8 +675,6 @@ CONFIG_RT_USING_ADT_REF=y # CONFIG_PKG_USING_UC_COMMON is not set # CONFIG_PKG_USING_UC_MODBUS is not set # CONFIG_PKG_USING_FREERTOS_WRAPPER is not set -# CONFIG_PKG_USING_LITEOS_SDK is not set -# CONFIG_PKG_USING_TZ_DATABASE is not set # CONFIG_PKG_USING_CAIRO is not set # CONFIG_PKG_USING_PIXMAN is not set # CONFIG_PKG_USING_PARTITION is not set @@ -683,7 +698,6 @@ CONFIG_RT_USING_ADT_REF=y # CONFIG_PKG_USING_QBOOT is not set # CONFIG_PKG_USING_PPOOL is not set # CONFIG_PKG_USING_OPENAMP is not set -# CONFIG_PKG_USING_RPMSG_LITE is not set # CONFIG_PKG_USING_LPM is not set # CONFIG_PKG_USING_TLSF is not set # CONFIG_PKG_USING_EVENT_RECORDER is not set @@ -697,11 +711,6 @@ CONFIG_RT_USING_ADT_REF=y # CONFIG_PKG_USING_AGILE_UPGRADE is not set # CONFIG_PKG_USING_FLASH_BLOB is not set # CONFIG_PKG_USING_MLIBC is not set -# CONFIG_PKG_USING_TASK_MSG_BUS is not set -# CONFIG_PKG_USING_SFDB is not set -# CONFIG_PKG_USING_RTP is not set -# CONFIG_PKG_USING_REB is not set -# CONFIG_PKG_USING_R_RHEALSTONE is not set # # peripheral libraries and drivers @@ -766,7 +775,6 @@ CONFIG_RT_USING_ADT_REF=y # CONFIG_PKG_USING_BALANCE is not set # CONFIG_PKG_USING_SHT2X is not set # CONFIG_PKG_USING_SHT3X is not set -# CONFIG_PKG_USING_SHT4X is not set # CONFIG_PKG_USING_AD7746 is not set # CONFIG_PKG_USING_ADT74XX is not set # CONFIG_PKG_USING_MAX17048 is not set @@ -867,10 +875,6 @@ CONFIG_RT_USING_ADT_REF=y # CONFIG_PKG_USING_FINGERPRINT is not set # CONFIG_PKG_USING_BT_ECB02C is not set # CONFIG_PKG_USING_UAT is not set -# CONFIG_PKG_USING_ST7789 is not set -# CONFIG_PKG_USING_VS1003 is not set -# CONFIG_PKG_USING_X9555 is not set -# CONFIG_PKG_USING_SYSTEM_RUN_LED is not set # CONFIG_PKG_USING_SPI_TOOLS is not set # @@ -885,7 +889,6 @@ CONFIG_RT_USING_ADT_REF=y # CONFIG_PKG_USING_ULAPACK is not set # CONFIG_PKG_USING_QUEST is not set # CONFIG_PKG_USING_NAXOS is not set -# CONFIG_PKG_USING_R_TINYMAIX is not set # # Signal Processing and Control Algorithm Packages @@ -895,7 +898,6 @@ CONFIG_RT_USING_ADT_REF=y # CONFIG_PKG_USING_UKAL is not set # CONFIG_PKG_USING_DIGITALCTRL is not set # CONFIG_PKG_USING_KISSFFT is not set -# CONFIG_PKG_USING_CMSIS_DSP is not set # # miscellaneous packages @@ -933,7 +935,6 @@ CONFIG_RT_USING_ADT_REF=y # CONFIG_PKG_USING_MINILZO is not set # CONFIG_PKG_USING_QUICKLZ is not set # CONFIG_PKG_USING_LZMA is not set -# CONFIG_PKG_USING_RALARAM is not set # CONFIG_PKG_USING_MULTIBUTTON is not set # CONFIG_PKG_USING_FLEXIBLE_BUTTON is not set # CONFIG_PKG_USING_CANFESTIVAL is not set @@ -1118,7 +1119,6 @@ CONFIG_RT_USING_ADT_REF=y # # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_GFX_LIBRARY is not set # CONFIG_PKG_USING_ARDUINO_U8G2 is not set -# CONFIG_PKG_USING_ARDUINO_TFT_ESPI is not set # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_ST7735 is not set # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_SSD1306 is not set # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_ILI9341 is not set @@ -1127,7 +1127,6 @@ CONFIG_RT_USING_ADT_REF=y # # Timing # -# CONFIG_PKG_USING_ARDUINO_RTCLIB is not set # CONFIG_PKG_USING_ARDUINO_MSTIMER2 is not set # CONFIG_PKG_USING_ARDUINO_TICKER is not set # CONFIG_PKG_USING_ARDUINO_TASKSCHEDULER is not set @@ -1164,6 +1163,7 @@ CONFIG_RT_USING_ADT_REF=y # # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_MFRC630 is not set # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_SI5351 is not set +# CONFIG_PKG_USING_ARDUINO_RTCLIB is not set # # Signal IO @@ -1191,16 +1191,65 @@ CONFIG_RT_USING_ADT_REF=y # CONFIG_BSP_USING_IOPAD=y CONFIG_BSP_USING_UART=y +CONFIG_RT_USING_UART0=y CONFIG_RT_USING_UART1=y -# CONFIG_RT_USING_UART0 is not set -# CONFIG_BSP_USING_SPI is not set -# CONFIG_BSP_USING_CAN is not set -# CONFIG_BSP_USING_GPIO is not set -# CONFIG_BSP_USING_QSPI is not set -# CONFIG_BSP_USING_ETH is not set -# CONFIG_BSP_USING_PWM is not set -# CONFIG_BSP_USING_I2C is not set -# CONFIG_BSP_USING_SDIF is not set +# CONFIG_RT_USING_UART2 is not set +# CONFIG_RT_USING_UART3 is not set +CONFIG_BSP_USING_SPI=y +# CONFIG_RT_USING_SPIM0 is not set +# CONFIG_RT_USING_SPIM1 is not set +CONFIG_RT_USING_SPIM2=y +# CONFIG_RT_USING_SPIM3 is not set +CONFIG_BSP_USING_CAN=y +CONFIG_RT_USING_CANFD=y +CONFIG_RT_USING_FILTER=y +CONFIG_RT_USING_CAN0=y +CONFIG_RT_USING_CAN1=y +CONFIG_BSP_USING_GPIO=y +CONFIG_BSP_USING_QSPI=y +CONFIG_RT_USING_QSPI0=y +CONFIG_USING_QSPI_CHANNEL0=y +# CONFIG_USING_QSPI_CHANNEL1 is not set +CONFIG_BSP_USING_ETH=y +CONFIG_RT_LWIP_PBUF_POOL_BUFSIZE=1700 +CONFIG_BSP_USING_PWM=y +# CONFIG_RT_USING_PWM0 is not set +# CONFIG_RT_USING_PWM1 is not set +# CONFIG_RT_USING_PWM2 is not set +# CONFIG_RT_USING_PWM3 is not set +# CONFIG_RT_USING_PWM4 is not set +# CONFIG_RT_USING_PWM5 is not set +CONFIG_RT_USING_PWM6=y +# CONFIG_RT_USING_PWM7 is not set +CONFIG_BSP_USING_I2C=y +CONFIG_I2C_USE_MIO=y +# CONFIG_RT_USING_MIO0 is not set +# CONFIG_RT_USING_MIO1 is not set +# CONFIG_RT_USING_MIO2 is not set +# CONFIG_RT_USING_MIO3 is not set +# CONFIG_RT_USING_MIO4 is not set +# CONFIG_RT_USING_MIO5 is not set +# CONFIG_RT_USING_MIO6 is not set +# CONFIG_RT_USING_MIO7 is not set +# CONFIG_RT_USING_MIO8 is not set +# CONFIG_RT_USING_MIO9 is not set +# CONFIG_RT_USING_MIO10 is not set +# CONFIG_RT_USING_MIO11 is not set +# CONFIG_RT_USING_MIO12 is not set +# CONFIG_RT_USING_MIO13 is not set +# CONFIG_RT_USING_MIO14 is not set +CONFIG_RT_USING_MIO15=y +CONFIG_I2C_USE_CONTROLLER=y +CONFIG_RT_USING_I2C0=y +# CONFIG_RT_USING_I2C1 is not set +# CONFIG_RT_USING_I2C2 is not set +# CONFIG_RT_USING_I2C3 is not set +CONFIG_BSP_USING_SDIF=y +CONFIG_BSP_USING_SDCARD_FATFS=y +CONFIG_BSP_USING_SDCARD_PARTITION="sd0" +# CONFIG_USING_SDIF0 is not set +CONFIG_USING_SDIF1=y +# CONFIG_USING_EMMC is not set # # Board extended module Drivers diff --git a/bsp/phytium/aarch32/configs/e2000d_demo_rtsmart.h b/bsp/phytium/aarch32/configs/e2000d_demo_rtsmart.h index 0b4fb3adaf..b3dd703e38 100644 --- a/bsp/phytium/aarch32/configs/e2000d_demo_rtsmart.h +++ b/bsp/phytium/aarch32/configs/e2000d_demo_rtsmart.h @@ -8,8 +8,7 @@ #define RT_NAME_MAX 16 #define RT_USING_SMART -#define RT_USING_SMP -#define RT_CPUS_NR 2 +#define RT_CPUS_NR 1 #define RT_ALIGN_SIZE 4 #define RT_THREAD_PRIORITY_32 #define RT_THREAD_PRIORITY_MAX 32 @@ -20,7 +19,6 @@ #define RT_USING_IDLE_HOOK #define RT_IDLE_HOOK_LIST_SIZE 4 #define IDLE_THREAD_STACK_SIZE 4096 -#define SYSTEM_THREAD_STACK_SIZE 4096 #define RT_USING_TIMER_SOFT #define RT_TIMER_THREAD_PRIO 4 #define RT_TIMER_THREAD_STACK_SIZE 4096 @@ -32,7 +30,6 @@ #define RT_USING_DEBUG #define RT_DEBUGING_COLOR #define RT_DEBUGING_CONTEXT -#define RT_DEBUGING_INIT /* Inter-Thread communication */ @@ -137,10 +134,25 @@ #define RT_SERIAL_USING_DMA #define RT_SERIAL_RB_BUFSZ 1024 #define RT_USING_TTY +#define RT_USING_CAN +#define RT_CAN_USING_HDR +#define RT_CAN_USING_CANFD +#define RT_USING_I2C +#define RT_USING_I2C_BITOPS +#define RT_USING_PIN #define RT_USING_NULL #define RT_USING_ZERO #define RT_USING_RANDOM +#define RT_USING_PWM #define RT_USING_RTC +#define RT_USING_SDIO +#define RT_SDIO_STACK_SIZE 4096 +#define RT_SDIO_THREAD_PRIORITY 15 +#define RT_MMCSD_STACK_SIZE 4096 +#define RT_MMCSD_THREAD_PREORITY 22 +#define RT_MMCSD_MAX_PARTITION 16 +#define RT_USING_SPI +#define RT_USING_QSPI #define RT_USING_DEV_BUS #define RT_USING_KTIME @@ -149,6 +161,7 @@ /* C/C++ and POSIX layer */ + /* ISO-ANSI C layer */ /* Timezone and Daylight Saving Time */ @@ -254,6 +267,9 @@ /* Memory management */ +/* Memory protection */ + + /* RT-Thread Utestcases */ @@ -270,9 +286,6 @@ /* Wiced WiFi */ -/* CYW43012 WiFi */ - - /* IoT Cloud */ @@ -380,7 +393,32 @@ #define BSP_USING_IOPAD #define BSP_USING_UART +#define RT_USING_UART0 #define RT_USING_UART1 +#define BSP_USING_SPI +#define RT_USING_SPIM2 +#define BSP_USING_CAN +#define RT_USING_CANFD +#define RT_USING_FILTER +#define RT_USING_CAN0 +#define RT_USING_CAN1 +#define BSP_USING_GPIO +#define BSP_USING_QSPI +#define RT_USING_QSPI0 +#define USING_QSPI_CHANNEL0 +#define BSP_USING_ETH +#define RT_LWIP_PBUF_POOL_BUFSIZE 1700 +#define BSP_USING_PWM +#define RT_USING_PWM6 +#define BSP_USING_I2C +#define I2C_USE_MIO +#define RT_USING_MIO15 +#define I2C_USE_CONTROLLER +#define RT_USING_I2C0 +#define BSP_USING_SDIF +#define BSP_USING_SDCARD_FATFS +#define BSP_USING_SDCARD_PARTITION "sd0" +#define USING_SDIF1 /* Board extended module Drivers */ diff --git a/bsp/phytium/aarch32/configs/e2000d_demo_rtthread b/bsp/phytium/aarch32/configs/e2000d_demo_rtthread index 5660ee73eb..cef10da0c5 100644 --- a/bsp/phytium/aarch32/configs/e2000d_demo_rtthread +++ b/bsp/phytium/aarch32/configs/e2000d_demo_rtthread @@ -10,8 +10,8 @@ CONFIG_RT_NAME_MAX=16 # CONFIG_RT_USING_ARCH_DATA_TYPE is not set # CONFIG_RT_USING_SMART is not set # CONFIG_RT_USING_AMP is not set -CONFIG_RT_USING_SMP=y -CONFIG_RT_CPUS_NR=2 +# CONFIG_RT_USING_SMP is not set +CONFIG_RT_CPUS_NR=1 CONFIG_RT_ALIGN_SIZE=4 # CONFIG_RT_THREAD_PRIORITY_8 is not set CONFIG_RT_THREAD_PRIORITY_32=y @@ -24,7 +24,6 @@ CONFIG_RT_HOOK_USING_FUNC_PTR=y CONFIG_RT_USING_IDLE_HOOK=y CONFIG_RT_IDLE_HOOK_LIST_SIZE=4 CONFIG_IDLE_THREAD_STACK_SIZE=4096 -CONFIG_SYSTEM_THREAD_STACK_SIZE=4096 CONFIG_RT_USING_TIMER_SOFT=y CONFIG_RT_TIMER_THREAD_PRIO=4 CONFIG_RT_TIMER_THREAD_STACK_SIZE=4096 @@ -40,7 +39,7 @@ CONFIG_RT_KPRINTF_USING_LONGLONG=y CONFIG_RT_USING_DEBUG=y CONFIG_RT_DEBUGING_COLOR=y CONFIG_RT_DEBUGING_CONTEXT=y -CONFIG_RT_DEBUGING_INIT=y +# CONFIG_RT_DEBUGING_AUTO_INIT is not set # CONFIG_RT_DEBUGING_PAGE_LEAK is not set # @@ -156,6 +155,7 @@ CONFIG_RT_DFS_ELM_MAX_SECTOR_SIZE=512 # CONFIG_RT_DFS_ELM_USE_ERASE is not set CONFIG_RT_DFS_ELM_REENTRANT=y CONFIG_RT_DFS_ELM_MUTEX_TIMEOUT=3000 +# CONFIG_RT_DFS_ELM_USE_EXFAT is not set CONFIG_RT_USING_DFS_DEVFS=y # CONFIG_RT_USING_DFS_ROMFS is not set # CONFIG_RT_USING_DFS_CROMFS is not set @@ -179,24 +179,44 @@ CONFIG_RT_USING_SERIAL_V1=y # CONFIG_RT_USING_SERIAL_V2 is not set CONFIG_RT_SERIAL_USING_DMA=y CONFIG_RT_SERIAL_RB_BUFSZ=1024 -# CONFIG_RT_USING_CAN is not set +CONFIG_RT_USING_CAN=y +CONFIG_RT_CAN_USING_HDR=y +CONFIG_RT_CAN_USING_CANFD=y # CONFIG_RT_USING_HWTIMER is not set # CONFIG_RT_USING_CPUTIME is not set -# CONFIG_RT_USING_I2C is not set +CONFIG_RT_USING_I2C=y +# CONFIG_RT_I2C_DEBUG is not set +CONFIG_RT_USING_I2C_BITOPS=y +# CONFIG_RT_I2C_BITOPS_DEBUG is not set +# CONFIG_RT_USING_SOFT_I2C is not set # CONFIG_RT_USING_PHY is not set -# CONFIG_RT_USING_PIN is not set +CONFIG_RT_USING_PIN=y # CONFIG_RT_USING_ADC is not set # CONFIG_RT_USING_DAC is not set -# CONFIG_RT_USING_NULL is not set -# CONFIG_RT_USING_ZERO is not set -# CONFIG_RT_USING_RANDOM is not set -# CONFIG_RT_USING_PWM is not set +CONFIG_RT_USING_NULL=y +CONFIG_RT_USING_ZERO=y +CONFIG_RT_USING_RANDOM=y +CONFIG_RT_USING_PWM=y # CONFIG_RT_USING_MTD_NOR is not set # CONFIG_RT_USING_MTD_NAND is not set # CONFIG_RT_USING_PM is not set -# CONFIG_RT_USING_RTC is not set -# CONFIG_RT_USING_SDIO is not set -# CONFIG_RT_USING_SPI is not set +CONFIG_RT_USING_RTC=y +# CONFIG_RT_USING_ALARM is not set +# CONFIG_RT_USING_SOFT_RTC is not set +CONFIG_RT_USING_SDIO=y +CONFIG_RT_SDIO_STACK_SIZE=4096 +CONFIG_RT_SDIO_THREAD_PRIORITY=15 +CONFIG_RT_MMCSD_STACK_SIZE=4096 +CONFIG_RT_MMCSD_THREAD_PREORITY=22 +CONFIG_RT_MMCSD_MAX_PARTITION=16 +# CONFIG_RT_SDIO_DEBUG is not set +CONFIG_RT_USING_SPI=y +# CONFIG_RT_USING_SPI_BITOPS is not set +CONFIG_RT_USING_QSPI=y +# CONFIG_RT_USING_SPI_MSD is not set +# CONFIG_RT_USING_SFUD is not set +# CONFIG_RT_USING_ENC28J60 is not set +# CONFIG_RT_USING_SPI_WIFI is not set # CONFIG_RT_USING_WDT is not set # CONFIG_RT_USING_AUDIO is not set # CONFIG_RT_USING_SENSOR is not set @@ -220,6 +240,7 @@ CONFIG_RT_USING_KTIME=y # # C/C++ and POSIX layer # +# CONFIG_RT_USING_INTERNAL_LIBC_ONLY is not set # # ISO-ANSI C layer @@ -373,6 +394,12 @@ CONFIG_RT_USING_ADT_REF=y # # CONFIG_RT_USING_MEMBLOCK is not set +# +# Memory protection +# +# CONFIG_RT_USING_MEM_PROTECTION is not set +# CONFIG_RT_USING_HW_STACK_GUARD is not set + # # RT-Thread Utestcases # @@ -413,11 +440,6 @@ CONFIG_RT_USING_ADT_REF=y # # CONFIG_PKG_USING_WLAN_WICED is not set # CONFIG_PKG_USING_RW007 is not set - -# -# CYW43012 WiFi -# -# CONFIG_PKG_USING_WLAN_CYW43012 is not set # CONFIG_PKG_USING_COAP is not set # CONFIG_PKG_USING_NOPOLL is not set # CONFIG_PKG_USING_NETUTILS is not set @@ -460,7 +482,6 @@ CONFIG_RT_USING_ADT_REF=y # CONFIG_PKG_USING_NMEALIB is not set # CONFIG_PKG_USING_PDULIB is not set # CONFIG_PKG_USING_BTSTACK is not set -# CONFIG_PKG_USING_BT_CYW43012 is not set # CONFIG_PKG_USING_LORAWAN_ED_STACK is not set # CONFIG_PKG_USING_WAYZ_IOTKIT is not set # CONFIG_PKG_USING_MAVLINK is not set @@ -480,8 +501,6 @@ CONFIG_RT_USING_ADT_REF=y # CONFIG_PKG_USING_ZFTP is not set # CONFIG_PKG_USING_WOL is not set # CONFIG_PKG_USING_ZEPHYR_POLLING is not set -# CONFIG_PKG_USING_MATTER_ADAPTATION_LAYER is not set -# CONFIG_PKG_USING_LHC_MODBUS is not set # # security packages @@ -528,6 +547,7 @@ CONFIG_RT_USING_ADT_REF=y # LVGL: powerful and easy-to-use embedded GUI library # # CONFIG_PKG_USING_LVGL is not set +# CONFIG_PKG_USING_LITTLEVGL2RTT is not set # CONFIG_PKG_USING_LV_MUSIC_DEMO is not set # CONFIG_PKG_USING_GUI_GUIDER_DEMO is not set @@ -603,7 +623,6 @@ CONFIG_RT_USING_ADT_REF=y # CONFIG_PKG_USING_HASH_MATCH is not set # CONFIG_PKG_USING_ARMV7M_DWT_TOOL is not set # CONFIG_PKG_USING_VOFA_PLUS is not set -# CONFIG_PKG_USING_ZDEBUG is not set # # system packages @@ -640,8 +659,6 @@ CONFIG_RT_USING_ADT_REF=y # CONFIG_PKG_USING_UC_COMMON is not set # CONFIG_PKG_USING_UC_MODBUS is not set # CONFIG_PKG_USING_FREERTOS_WRAPPER is not set -# CONFIG_PKG_USING_LITEOS_SDK is not set -# CONFIG_PKG_USING_TZ_DATABASE is not set # CONFIG_PKG_USING_CAIRO is not set # CONFIG_PKG_USING_PIXMAN is not set # CONFIG_PKG_USING_PARTITION is not set @@ -665,7 +682,6 @@ CONFIG_RT_USING_ADT_REF=y # CONFIG_PKG_USING_QBOOT is not set # CONFIG_PKG_USING_PPOOL is not set # CONFIG_PKG_USING_OPENAMP is not set -# CONFIG_PKG_USING_RPMSG_LITE is not set # CONFIG_PKG_USING_LPM is not set # CONFIG_PKG_USING_TLSF is not set # CONFIG_PKG_USING_EVENT_RECORDER is not set @@ -679,11 +695,6 @@ CONFIG_RT_USING_ADT_REF=y # CONFIG_PKG_USING_AGILE_UPGRADE is not set # CONFIG_PKG_USING_FLASH_BLOB is not set # CONFIG_PKG_USING_MLIBC is not set -# CONFIG_PKG_USING_TASK_MSG_BUS is not set -# CONFIG_PKG_USING_SFDB is not set -# CONFIG_PKG_USING_RTP is not set -# CONFIG_PKG_USING_REB is not set -# CONFIG_PKG_USING_R_RHEALSTONE is not set # # peripheral libraries and drivers @@ -748,7 +759,6 @@ CONFIG_RT_USING_ADT_REF=y # CONFIG_PKG_USING_BALANCE is not set # CONFIG_PKG_USING_SHT2X is not set # CONFIG_PKG_USING_SHT3X is not set -# CONFIG_PKG_USING_SHT4X is not set # CONFIG_PKG_USING_AD7746 is not set # CONFIG_PKG_USING_ADT74XX is not set # CONFIG_PKG_USING_MAX17048 is not set @@ -849,10 +859,6 @@ CONFIG_RT_USING_ADT_REF=y # CONFIG_PKG_USING_FINGERPRINT is not set # CONFIG_PKG_USING_BT_ECB02C is not set # CONFIG_PKG_USING_UAT is not set -# CONFIG_PKG_USING_ST7789 is not set -# CONFIG_PKG_USING_VS1003 is not set -# CONFIG_PKG_USING_X9555 is not set -# CONFIG_PKG_USING_SYSTEM_RUN_LED is not set # CONFIG_PKG_USING_SPI_TOOLS is not set # @@ -867,7 +873,6 @@ CONFIG_RT_USING_ADT_REF=y # CONFIG_PKG_USING_ULAPACK is not set # CONFIG_PKG_USING_QUEST is not set # CONFIG_PKG_USING_NAXOS is not set -# CONFIG_PKG_USING_R_TINYMAIX is not set # # Signal Processing and Control Algorithm Packages @@ -877,7 +882,6 @@ CONFIG_RT_USING_ADT_REF=y # CONFIG_PKG_USING_UKAL is not set # CONFIG_PKG_USING_DIGITALCTRL is not set # CONFIG_PKG_USING_KISSFFT is not set -# CONFIG_PKG_USING_CMSIS_DSP is not set # # miscellaneous packages @@ -915,7 +919,6 @@ CONFIG_RT_USING_ADT_REF=y # CONFIG_PKG_USING_MINILZO is not set # CONFIG_PKG_USING_QUICKLZ is not set # CONFIG_PKG_USING_LZMA is not set -# CONFIG_PKG_USING_RALARAM is not set # CONFIG_PKG_USING_MULTIBUTTON is not set # CONFIG_PKG_USING_FLEXIBLE_BUTTON is not set # CONFIG_PKG_USING_CANFESTIVAL is not set @@ -1100,7 +1103,6 @@ CONFIG_RT_USING_ADT_REF=y # # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_GFX_LIBRARY is not set # CONFIG_PKG_USING_ARDUINO_U8G2 is not set -# CONFIG_PKG_USING_ARDUINO_TFT_ESPI is not set # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_ST7735 is not set # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_SSD1306 is not set # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_ILI9341 is not set @@ -1109,7 +1111,6 @@ CONFIG_RT_USING_ADT_REF=y # # Timing # -# CONFIG_PKG_USING_ARDUINO_RTCLIB is not set # CONFIG_PKG_USING_ARDUINO_MSTIMER2 is not set # CONFIG_PKG_USING_ARDUINO_TICKER is not set # CONFIG_PKG_USING_ARDUINO_TASKSCHEDULER is not set @@ -1146,6 +1147,7 @@ CONFIG_RT_USING_ADT_REF=y # # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_MFRC630 is not set # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_SI5351 is not set +# CONFIG_PKG_USING_ARDUINO_RTCLIB is not set # # Signal IO @@ -1173,16 +1175,65 @@ CONFIG_RT_USING_ADT_REF=y # CONFIG_BSP_USING_IOPAD=y CONFIG_BSP_USING_UART=y +CONFIG_RT_USING_UART0=y CONFIG_RT_USING_UART1=y -# CONFIG_RT_USING_UART0 is not set -# CONFIG_BSP_USING_SPI is not set -# CONFIG_BSP_USING_CAN is not set -# CONFIG_BSP_USING_GPIO is not set -# CONFIG_BSP_USING_QSPI is not set -# CONFIG_BSP_USING_ETH is not set -# CONFIG_BSP_USING_PWM is not set -# CONFIG_BSP_USING_I2C is not set -# CONFIG_BSP_USING_SDIF is not set +# CONFIG_RT_USING_UART2 is not set +# CONFIG_RT_USING_UART3 is not set +CONFIG_BSP_USING_SPI=y +# CONFIG_RT_USING_SPIM0 is not set +# CONFIG_RT_USING_SPIM1 is not set +CONFIG_RT_USING_SPIM2=y +# CONFIG_RT_USING_SPIM3 is not set +CONFIG_BSP_USING_CAN=y +CONFIG_RT_USING_CANFD=y +CONFIG_RT_USING_FILTER=y +CONFIG_RT_USING_CAN0=y +CONFIG_RT_USING_CAN1=y +CONFIG_BSP_USING_GPIO=y +CONFIG_BSP_USING_QSPI=y +CONFIG_RT_USING_QSPI0=y +CONFIG_USING_QSPI_CHANNEL0=y +# CONFIG_USING_QSPI_CHANNEL1 is not set +CONFIG_BSP_USING_ETH=y +CONFIG_RT_LWIP_PBUF_POOL_BUFSIZE=1700 +CONFIG_BSP_USING_PWM=y +# CONFIG_RT_USING_PWM0 is not set +# CONFIG_RT_USING_PWM1 is not set +# CONFIG_RT_USING_PWM2 is not set +# CONFIG_RT_USING_PWM3 is not set +# CONFIG_RT_USING_PWM4 is not set +# CONFIG_RT_USING_PWM5 is not set +CONFIG_RT_USING_PWM6=y +# CONFIG_RT_USING_PWM7 is not set +CONFIG_BSP_USING_I2C=y +CONFIG_I2C_USE_MIO=y +# CONFIG_RT_USING_MIO0 is not set +# CONFIG_RT_USING_MIO1 is not set +# CONFIG_RT_USING_MIO2 is not set +# CONFIG_RT_USING_MIO3 is not set +# CONFIG_RT_USING_MIO4 is not set +# CONFIG_RT_USING_MIO5 is not set +# CONFIG_RT_USING_MIO6 is not set +# CONFIG_RT_USING_MIO7 is not set +# CONFIG_RT_USING_MIO8 is not set +# CONFIG_RT_USING_MIO9 is not set +# CONFIG_RT_USING_MIO10 is not set +# CONFIG_RT_USING_MIO11 is not set +# CONFIG_RT_USING_MIO12 is not set +# CONFIG_RT_USING_MIO13 is not set +# CONFIG_RT_USING_MIO14 is not set +CONFIG_RT_USING_MIO15=y +CONFIG_I2C_USE_CONTROLLER=y +CONFIG_RT_USING_I2C0=y +# CONFIG_RT_USING_I2C1 is not set +# CONFIG_RT_USING_I2C2 is not set +# CONFIG_RT_USING_I2C3 is not set +CONFIG_BSP_USING_SDIF=y +CONFIG_BSP_USING_SDCARD_FATFS=y +CONFIG_BSP_USING_SDCARD_PARTITION="sd0" +# CONFIG_USING_SDIF0 is not set +CONFIG_USING_SDIF1=y +# CONFIG_USING_EMMC is not set # # Board extended module Drivers diff --git a/bsp/phytium/aarch32/configs/e2000d_demo_rtthread.h b/bsp/phytium/aarch32/configs/e2000d_demo_rtthread.h index ebf4c745ae..a0f156141a 100644 --- a/bsp/phytium/aarch32/configs/e2000d_demo_rtthread.h +++ b/bsp/phytium/aarch32/configs/e2000d_demo_rtthread.h @@ -7,8 +7,7 @@ /* RT-Thread Kernel */ #define RT_NAME_MAX 16 -#define RT_USING_SMP -#define RT_CPUS_NR 2 +#define RT_CPUS_NR 1 #define RT_ALIGN_SIZE 4 #define RT_THREAD_PRIORITY_32 #define RT_THREAD_PRIORITY_MAX 32 @@ -19,7 +18,6 @@ #define RT_USING_IDLE_HOOK #define RT_IDLE_HOOK_LIST_SIZE 4 #define IDLE_THREAD_STACK_SIZE 4096 -#define SYSTEM_THREAD_STACK_SIZE 4096 #define RT_USING_TIMER_SOFT #define RT_TIMER_THREAD_PRIO 4 #define RT_TIMER_THREAD_STACK_SIZE 4096 @@ -31,7 +29,6 @@ #define RT_USING_DEBUG #define RT_DEBUGING_COLOR #define RT_DEBUGING_CONTEXT -#define RT_DEBUGING_INIT /* Inter-Thread communication */ @@ -126,6 +123,25 @@ #define RT_USING_SERIAL_V1 #define RT_SERIAL_USING_DMA #define RT_SERIAL_RB_BUFSZ 1024 +#define RT_USING_CAN +#define RT_CAN_USING_HDR +#define RT_CAN_USING_CANFD +#define RT_USING_I2C +#define RT_USING_I2C_BITOPS +#define RT_USING_PIN +#define RT_USING_NULL +#define RT_USING_ZERO +#define RT_USING_RANDOM +#define RT_USING_PWM +#define RT_USING_RTC +#define RT_USING_SDIO +#define RT_SDIO_STACK_SIZE 4096 +#define RT_SDIO_THREAD_PRIORITY 15 +#define RT_MMCSD_STACK_SIZE 4096 +#define RT_MMCSD_THREAD_PREORITY 22 +#define RT_MMCSD_MAX_PARTITION 16 +#define RT_USING_SPI +#define RT_USING_QSPI #define RT_USING_DEV_BUS #define RT_USING_KTIME @@ -134,6 +150,7 @@ /* C/C++ and POSIX layer */ + /* ISO-ANSI C layer */ /* Timezone and Daylight Saving Time */ @@ -239,6 +256,9 @@ /* Memory management */ +/* Memory protection */ + + /* RT-Thread Utestcases */ @@ -255,9 +275,6 @@ /* Wiced WiFi */ -/* CYW43012 WiFi */ - - /* IoT Cloud */ @@ -365,7 +382,32 @@ #define BSP_USING_IOPAD #define BSP_USING_UART +#define RT_USING_UART0 #define RT_USING_UART1 +#define BSP_USING_SPI +#define RT_USING_SPIM2 +#define BSP_USING_CAN +#define RT_USING_CANFD +#define RT_USING_FILTER +#define RT_USING_CAN0 +#define RT_USING_CAN1 +#define BSP_USING_GPIO +#define BSP_USING_QSPI +#define RT_USING_QSPI0 +#define USING_QSPI_CHANNEL0 +#define BSP_USING_ETH +#define RT_LWIP_PBUF_POOL_BUFSIZE 1700 +#define BSP_USING_PWM +#define RT_USING_PWM6 +#define BSP_USING_I2C +#define I2C_USE_MIO +#define RT_USING_MIO15 +#define I2C_USE_CONTROLLER +#define RT_USING_I2C0 +#define BSP_USING_SDIF +#define BSP_USING_SDCARD_FATFS +#define BSP_USING_SDCARD_PARTITION "sd0" +#define USING_SDIF1 /* Board extended module Drivers */ diff --git a/bsp/phytium/aarch32/configs/e2000q_demo_rtsmart b/bsp/phytium/aarch32/configs/e2000q_demo_rtsmart index 97c9cc73f7..82a67186fb 100644 --- a/bsp/phytium/aarch32/configs/e2000q_demo_rtsmart +++ b/bsp/phytium/aarch32/configs/e2000q_demo_rtsmart @@ -10,8 +10,8 @@ CONFIG_RT_NAME_MAX=16 # CONFIG_RT_USING_ARCH_DATA_TYPE is not set CONFIG_RT_USING_SMART=y # CONFIG_RT_USING_AMP is not set -CONFIG_RT_USING_SMP=y -CONFIG_RT_CPUS_NR=2 +# CONFIG_RT_USING_SMP is not set +CONFIG_RT_CPUS_NR=1 CONFIG_RT_ALIGN_SIZE=4 # CONFIG_RT_THREAD_PRIORITY_8 is not set CONFIG_RT_THREAD_PRIORITY_32=y @@ -24,7 +24,6 @@ CONFIG_RT_HOOK_USING_FUNC_PTR=y CONFIG_RT_USING_IDLE_HOOK=y CONFIG_RT_IDLE_HOOK_LIST_SIZE=4 CONFIG_IDLE_THREAD_STACK_SIZE=4096 -CONFIG_SYSTEM_THREAD_STACK_SIZE=4096 CONFIG_RT_USING_TIMER_SOFT=y CONFIG_RT_TIMER_THREAD_PRIO=4 CONFIG_RT_TIMER_THREAD_STACK_SIZE=4096 @@ -40,7 +39,7 @@ CONFIG_RT_KPRINTF_USING_LONGLONG=y CONFIG_RT_USING_DEBUG=y CONFIG_RT_DEBUGING_COLOR=y CONFIG_RT_DEBUGING_CONTEXT=y -CONFIG_RT_DEBUGING_INIT=y +# CONFIG_RT_DEBUGING_AUTO_INIT is not set # CONFIG_RT_DEBUGING_PAGE_LEAK is not set # @@ -158,6 +157,7 @@ CONFIG_RT_DFS_ELM_MAX_SECTOR_SIZE=512 # CONFIG_RT_DFS_ELM_USE_ERASE is not set CONFIG_RT_DFS_ELM_REENTRANT=y CONFIG_RT_DFS_ELM_MUTEX_TIMEOUT=3000 +# CONFIG_RT_DFS_ELM_USE_EXFAT is not set CONFIG_RT_USING_DFS_DEVFS=y # CONFIG_RT_USING_DFS_ROMFS is not set # CONFIG_RT_USING_DFS_CROMFS is not set @@ -193,26 +193,44 @@ CONFIG_RT_SERIAL_USING_DMA=y CONFIG_RT_SERIAL_RB_BUFSZ=1024 CONFIG_RT_USING_TTY=y # CONFIG_RT_TTY_DEBUG is not set -# CONFIG_RT_USING_CAN is not set +CONFIG_RT_USING_CAN=y +CONFIG_RT_CAN_USING_HDR=y +CONFIG_RT_CAN_USING_CANFD=y # CONFIG_RT_USING_HWTIMER is not set # CONFIG_RT_USING_CPUTIME is not set -# CONFIG_RT_USING_I2C is not set +CONFIG_RT_USING_I2C=y +# CONFIG_RT_I2C_DEBUG is not set +CONFIG_RT_USING_I2C_BITOPS=y +# CONFIG_RT_I2C_BITOPS_DEBUG is not set +# CONFIG_RT_USING_SOFT_I2C is not set # CONFIG_RT_USING_PHY is not set -# CONFIG_RT_USING_PIN is not set +CONFIG_RT_USING_PIN=y # CONFIG_RT_USING_ADC is not set # CONFIG_RT_USING_DAC is not set CONFIG_RT_USING_NULL=y CONFIG_RT_USING_ZERO=y CONFIG_RT_USING_RANDOM=y -# CONFIG_RT_USING_PWM is not set +CONFIG_RT_USING_PWM=y # CONFIG_RT_USING_MTD_NOR is not set # CONFIG_RT_USING_MTD_NAND is not set # CONFIG_RT_USING_PM is not set CONFIG_RT_USING_RTC=y # CONFIG_RT_USING_ALARM is not set # CONFIG_RT_USING_SOFT_RTC is not set -# CONFIG_RT_USING_SDIO is not set -# CONFIG_RT_USING_SPI is not set +CONFIG_RT_USING_SDIO=y +CONFIG_RT_SDIO_STACK_SIZE=4096 +CONFIG_RT_SDIO_THREAD_PRIORITY=15 +CONFIG_RT_MMCSD_STACK_SIZE=4096 +CONFIG_RT_MMCSD_THREAD_PREORITY=22 +CONFIG_RT_MMCSD_MAX_PARTITION=16 +# CONFIG_RT_SDIO_DEBUG is not set +CONFIG_RT_USING_SPI=y +# CONFIG_RT_USING_SPI_BITOPS is not set +CONFIG_RT_USING_QSPI=y +# CONFIG_RT_USING_SPI_MSD is not set +# CONFIG_RT_USING_SFUD is not set +# CONFIG_RT_USING_ENC28J60 is not set +# CONFIG_RT_USING_SPI_WIFI is not set # CONFIG_RT_USING_WDT is not set # CONFIG_RT_USING_AUDIO is not set # CONFIG_RT_USING_SENSOR is not set @@ -236,6 +254,7 @@ CONFIG_RT_USING_KTIME=y # # C/C++ and POSIX layer # +# CONFIG_RT_USING_INTERNAL_LIBC_ONLY is not set # # ISO-ANSI C layer @@ -391,6 +410,12 @@ CONFIG_RT_USING_ADT_REF=y # # CONFIG_RT_USING_MEMBLOCK is not set +# +# Memory protection +# +# CONFIG_RT_USING_MEM_PROTECTION is not set +# CONFIG_RT_USING_HW_STACK_GUARD is not set + # # RT-Thread Utestcases # @@ -431,11 +456,6 @@ CONFIG_RT_USING_ADT_REF=y # # CONFIG_PKG_USING_WLAN_WICED is not set # CONFIG_PKG_USING_RW007 is not set - -# -# CYW43012 WiFi -# -# CONFIG_PKG_USING_WLAN_CYW43012 is not set # CONFIG_PKG_USING_COAP is not set # CONFIG_PKG_USING_NOPOLL is not set # CONFIG_PKG_USING_NETUTILS is not set @@ -478,7 +498,6 @@ CONFIG_RT_USING_ADT_REF=y # CONFIG_PKG_USING_NMEALIB is not set # CONFIG_PKG_USING_PDULIB is not set # CONFIG_PKG_USING_BTSTACK is not set -# CONFIG_PKG_USING_BT_CYW43012 is not set # CONFIG_PKG_USING_LORAWAN_ED_STACK is not set # CONFIG_PKG_USING_WAYZ_IOTKIT is not set # CONFIG_PKG_USING_MAVLINK is not set @@ -498,8 +517,6 @@ CONFIG_RT_USING_ADT_REF=y # CONFIG_PKG_USING_ZFTP is not set # CONFIG_PKG_USING_WOL is not set # CONFIG_PKG_USING_ZEPHYR_POLLING is not set -# CONFIG_PKG_USING_MATTER_ADAPTATION_LAYER is not set -# CONFIG_PKG_USING_LHC_MODBUS is not set # # security packages @@ -546,6 +563,7 @@ CONFIG_RT_USING_ADT_REF=y # LVGL: powerful and easy-to-use embedded GUI library # # CONFIG_PKG_USING_LVGL is not set +# CONFIG_PKG_USING_LITTLEVGL2RTT is not set # CONFIG_PKG_USING_LV_MUSIC_DEMO is not set # CONFIG_PKG_USING_GUI_GUIDER_DEMO is not set @@ -621,7 +639,6 @@ CONFIG_RT_USING_ADT_REF=y # CONFIG_PKG_USING_HASH_MATCH is not set # CONFIG_PKG_USING_ARMV7M_DWT_TOOL is not set # CONFIG_PKG_USING_VOFA_PLUS is not set -# CONFIG_PKG_USING_ZDEBUG is not set # # system packages @@ -658,8 +675,6 @@ CONFIG_RT_USING_ADT_REF=y # CONFIG_PKG_USING_UC_COMMON is not set # CONFIG_PKG_USING_UC_MODBUS is not set # CONFIG_PKG_USING_FREERTOS_WRAPPER is not set -# CONFIG_PKG_USING_LITEOS_SDK is not set -# CONFIG_PKG_USING_TZ_DATABASE is not set # CONFIG_PKG_USING_CAIRO is not set # CONFIG_PKG_USING_PIXMAN is not set # CONFIG_PKG_USING_PARTITION is not set @@ -683,7 +698,6 @@ CONFIG_RT_USING_ADT_REF=y # CONFIG_PKG_USING_QBOOT is not set # CONFIG_PKG_USING_PPOOL is not set # CONFIG_PKG_USING_OPENAMP is not set -# CONFIG_PKG_USING_RPMSG_LITE is not set # CONFIG_PKG_USING_LPM is not set # CONFIG_PKG_USING_TLSF is not set # CONFIG_PKG_USING_EVENT_RECORDER is not set @@ -697,11 +711,6 @@ CONFIG_RT_USING_ADT_REF=y # CONFIG_PKG_USING_AGILE_UPGRADE is not set # CONFIG_PKG_USING_FLASH_BLOB is not set # CONFIG_PKG_USING_MLIBC is not set -# CONFIG_PKG_USING_TASK_MSG_BUS is not set -# CONFIG_PKG_USING_SFDB is not set -# CONFIG_PKG_USING_RTP is not set -# CONFIG_PKG_USING_REB is not set -# CONFIG_PKG_USING_R_RHEALSTONE is not set # # peripheral libraries and drivers @@ -766,7 +775,6 @@ CONFIG_RT_USING_ADT_REF=y # CONFIG_PKG_USING_BALANCE is not set # CONFIG_PKG_USING_SHT2X is not set # CONFIG_PKG_USING_SHT3X is not set -# CONFIG_PKG_USING_SHT4X is not set # CONFIG_PKG_USING_AD7746 is not set # CONFIG_PKG_USING_ADT74XX is not set # CONFIG_PKG_USING_MAX17048 is not set @@ -867,10 +875,6 @@ CONFIG_RT_USING_ADT_REF=y # CONFIG_PKG_USING_FINGERPRINT is not set # CONFIG_PKG_USING_BT_ECB02C is not set # CONFIG_PKG_USING_UAT is not set -# CONFIG_PKG_USING_ST7789 is not set -# CONFIG_PKG_USING_VS1003 is not set -# CONFIG_PKG_USING_X9555 is not set -# CONFIG_PKG_USING_SYSTEM_RUN_LED is not set # CONFIG_PKG_USING_SPI_TOOLS is not set # @@ -885,7 +889,6 @@ CONFIG_RT_USING_ADT_REF=y # CONFIG_PKG_USING_ULAPACK is not set # CONFIG_PKG_USING_QUEST is not set # CONFIG_PKG_USING_NAXOS is not set -# CONFIG_PKG_USING_R_TINYMAIX is not set # # Signal Processing and Control Algorithm Packages @@ -895,7 +898,6 @@ CONFIG_RT_USING_ADT_REF=y # CONFIG_PKG_USING_UKAL is not set # CONFIG_PKG_USING_DIGITALCTRL is not set # CONFIG_PKG_USING_KISSFFT is not set -# CONFIG_PKG_USING_CMSIS_DSP is not set # # miscellaneous packages @@ -933,7 +935,6 @@ CONFIG_RT_USING_ADT_REF=y # CONFIG_PKG_USING_MINILZO is not set # CONFIG_PKG_USING_QUICKLZ is not set # CONFIG_PKG_USING_LZMA is not set -# CONFIG_PKG_USING_RALARAM is not set # CONFIG_PKG_USING_MULTIBUTTON is not set # CONFIG_PKG_USING_FLEXIBLE_BUTTON is not set # CONFIG_PKG_USING_CANFESTIVAL is not set @@ -1118,7 +1119,6 @@ CONFIG_RT_USING_ADT_REF=y # # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_GFX_LIBRARY is not set # CONFIG_PKG_USING_ARDUINO_U8G2 is not set -# CONFIG_PKG_USING_ARDUINO_TFT_ESPI is not set # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_ST7735 is not set # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_SSD1306 is not set # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_ILI9341 is not set @@ -1127,7 +1127,6 @@ CONFIG_RT_USING_ADT_REF=y # # Timing # -# CONFIG_PKG_USING_ARDUINO_RTCLIB is not set # CONFIG_PKG_USING_ARDUINO_MSTIMER2 is not set # CONFIG_PKG_USING_ARDUINO_TICKER is not set # CONFIG_PKG_USING_ARDUINO_TASKSCHEDULER is not set @@ -1164,6 +1163,7 @@ CONFIG_RT_USING_ADT_REF=y # # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_MFRC630 is not set # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_SI5351 is not set +# CONFIG_PKG_USING_ARDUINO_RTCLIB is not set # # Signal IO @@ -1191,16 +1191,61 @@ CONFIG_RT_USING_ADT_REF=y # CONFIG_BSP_USING_IOPAD=y CONFIG_BSP_USING_UART=y +CONFIG_RT_USING_UART0=y CONFIG_RT_USING_UART1=y -# CONFIG_RT_USING_UART0 is not set -# CONFIG_BSP_USING_SPI is not set -# CONFIG_BSP_USING_CAN is not set -# CONFIG_BSP_USING_GPIO is not set -# CONFIG_BSP_USING_QSPI is not set -# CONFIG_BSP_USING_ETH is not set -# CONFIG_BSP_USING_PWM is not set -# CONFIG_BSP_USING_I2C is not set -# CONFIG_BSP_USING_SDIF is not set +# CONFIG_RT_USING_UART2 is not set +# CONFIG_RT_USING_UART3 is not set +CONFIG_BSP_USING_SPI=y +# CONFIG_RT_USING_SPIM0 is not set +# CONFIG_RT_USING_SPIM1 is not set +CONFIG_RT_USING_SPIM2=y +# CONFIG_RT_USING_SPIM3 is not set +CONFIG_BSP_USING_CAN=y +CONFIG_RT_USING_CANFD=y +CONFIG_RT_USING_FILTER=y +CONFIG_RT_USING_CAN0=y +# CONFIG_RT_USING_CAN1 is not set +CONFIG_BSP_USING_GPIO=y +CONFIG_BSP_USING_QSPI=y +CONFIG_RT_USING_QSPI0=y +CONFIG_USING_QSPI_CHANNEL0=y +# CONFIG_USING_QSPI_CHANNEL1 is not set +CONFIG_BSP_USING_ETH=y +CONFIG_RT_LWIP_PBUF_POOL_BUFSIZE=1700 +CONFIG_BSP_USING_PWM=y +# CONFIG_RT_USING_PWM0 is not set +# CONFIG_RT_USING_PWM1 is not set +# CONFIG_RT_USING_PWM2 is not set +# CONFIG_RT_USING_PWM3 is not set +# CONFIG_RT_USING_PWM4 is not set +# CONFIG_RT_USING_PWM5 is not set +CONFIG_RT_USING_PWM6=y +# CONFIG_RT_USING_PWM7 is not set +CONFIG_BSP_USING_I2C=y +CONFIG_I2C_USE_MIO=y +# CONFIG_RT_USING_MIO0 is not set +# CONFIG_RT_USING_MIO1 is not set +# CONFIG_RT_USING_MIO2 is not set +# CONFIG_RT_USING_MIO3 is not set +# CONFIG_RT_USING_MIO4 is not set +# CONFIG_RT_USING_MIO5 is not set +# CONFIG_RT_USING_MIO6 is not set +# CONFIG_RT_USING_MIO7 is not set +# CONFIG_RT_USING_MIO8 is not set +# CONFIG_RT_USING_MIO9 is not set +# CONFIG_RT_USING_MIO10 is not set +# CONFIG_RT_USING_MIO11 is not set +# CONFIG_RT_USING_MIO12 is not set +# CONFIG_RT_USING_MIO13 is not set +# CONFIG_RT_USING_MIO14 is not set +CONFIG_RT_USING_MIO15=y +# CONFIG_I2C_USE_CONTROLLER is not set +CONFIG_BSP_USING_SDIF=y +CONFIG_BSP_USING_SDCARD_FATFS=y +CONFIG_BSP_USING_SDCARD_PARTITION="sd0" +# CONFIG_USING_SDIF0 is not set +CONFIG_USING_SDIF1=y +# CONFIG_USING_EMMC is not set # # Board extended module Drivers diff --git a/bsp/phytium/aarch32/configs/e2000q_demo_rtsmart.h b/bsp/phytium/aarch32/configs/e2000q_demo_rtsmart.h index 1d678446b3..f25be84f4b 100644 --- a/bsp/phytium/aarch32/configs/e2000q_demo_rtsmart.h +++ b/bsp/phytium/aarch32/configs/e2000q_demo_rtsmart.h @@ -8,8 +8,7 @@ #define RT_NAME_MAX 16 #define RT_USING_SMART -#define RT_USING_SMP -#define RT_CPUS_NR 2 +#define RT_CPUS_NR 1 #define RT_ALIGN_SIZE 4 #define RT_THREAD_PRIORITY_32 #define RT_THREAD_PRIORITY_MAX 32 @@ -20,7 +19,6 @@ #define RT_USING_IDLE_HOOK #define RT_IDLE_HOOK_LIST_SIZE 4 #define IDLE_THREAD_STACK_SIZE 4096 -#define SYSTEM_THREAD_STACK_SIZE 4096 #define RT_USING_TIMER_SOFT #define RT_TIMER_THREAD_PRIO 4 #define RT_TIMER_THREAD_STACK_SIZE 4096 @@ -32,7 +30,6 @@ #define RT_USING_DEBUG #define RT_DEBUGING_COLOR #define RT_DEBUGING_CONTEXT -#define RT_DEBUGING_INIT /* Inter-Thread communication */ @@ -137,10 +134,25 @@ #define RT_SERIAL_USING_DMA #define RT_SERIAL_RB_BUFSZ 1024 #define RT_USING_TTY +#define RT_USING_CAN +#define RT_CAN_USING_HDR +#define RT_CAN_USING_CANFD +#define RT_USING_I2C +#define RT_USING_I2C_BITOPS +#define RT_USING_PIN #define RT_USING_NULL #define RT_USING_ZERO #define RT_USING_RANDOM +#define RT_USING_PWM #define RT_USING_RTC +#define RT_USING_SDIO +#define RT_SDIO_STACK_SIZE 4096 +#define RT_SDIO_THREAD_PRIORITY 15 +#define RT_MMCSD_STACK_SIZE 4096 +#define RT_MMCSD_THREAD_PREORITY 22 +#define RT_MMCSD_MAX_PARTITION 16 +#define RT_USING_SPI +#define RT_USING_QSPI #define RT_USING_DEV_BUS #define RT_USING_KTIME @@ -149,6 +161,7 @@ /* C/C++ and POSIX layer */ + /* ISO-ANSI C layer */ /* Timezone and Daylight Saving Time */ @@ -254,6 +267,9 @@ /* Memory management */ +/* Memory protection */ + + /* RT-Thread Utestcases */ @@ -270,9 +286,6 @@ /* Wiced WiFi */ -/* CYW43012 WiFi */ - - /* IoT Cloud */ @@ -380,7 +393,29 @@ #define BSP_USING_IOPAD #define BSP_USING_UART +#define RT_USING_UART0 #define RT_USING_UART1 +#define BSP_USING_SPI +#define RT_USING_SPIM2 +#define BSP_USING_CAN +#define RT_USING_CANFD +#define RT_USING_FILTER +#define RT_USING_CAN0 +#define BSP_USING_GPIO +#define BSP_USING_QSPI +#define RT_USING_QSPI0 +#define USING_QSPI_CHANNEL0 +#define BSP_USING_ETH +#define RT_LWIP_PBUF_POOL_BUFSIZE 1700 +#define BSP_USING_PWM +#define RT_USING_PWM6 +#define BSP_USING_I2C +#define I2C_USE_MIO +#define RT_USING_MIO15 +#define BSP_USING_SDIF +#define BSP_USING_SDCARD_FATFS +#define BSP_USING_SDCARD_PARTITION "sd0" +#define USING_SDIF1 /* Board extended module Drivers */ diff --git a/bsp/phytium/aarch32/configs/e2000q_demo_rtthread b/bsp/phytium/aarch32/configs/e2000q_demo_rtthread index 5d745f167f..2c36652b6f 100644 --- a/bsp/phytium/aarch32/configs/e2000q_demo_rtthread +++ b/bsp/phytium/aarch32/configs/e2000q_demo_rtthread @@ -10,8 +10,8 @@ CONFIG_RT_NAME_MAX=16 # CONFIG_RT_USING_ARCH_DATA_TYPE is not set # CONFIG_RT_USING_SMART is not set # CONFIG_RT_USING_AMP is not set -CONFIG_RT_USING_SMP=y -CONFIG_RT_CPUS_NR=2 +# CONFIG_RT_USING_SMP is not set +CONFIG_RT_CPUS_NR=1 CONFIG_RT_ALIGN_SIZE=4 # CONFIG_RT_THREAD_PRIORITY_8 is not set CONFIG_RT_THREAD_PRIORITY_32=y @@ -24,7 +24,6 @@ CONFIG_RT_HOOK_USING_FUNC_PTR=y CONFIG_RT_USING_IDLE_HOOK=y CONFIG_RT_IDLE_HOOK_LIST_SIZE=4 CONFIG_IDLE_THREAD_STACK_SIZE=4096 -CONFIG_SYSTEM_THREAD_STACK_SIZE=4096 CONFIG_RT_USING_TIMER_SOFT=y CONFIG_RT_TIMER_THREAD_PRIO=4 CONFIG_RT_TIMER_THREAD_STACK_SIZE=4096 @@ -40,7 +39,7 @@ CONFIG_RT_KPRINTF_USING_LONGLONG=y CONFIG_RT_USING_DEBUG=y CONFIG_RT_DEBUGING_COLOR=y CONFIG_RT_DEBUGING_CONTEXT=y -CONFIG_RT_DEBUGING_INIT=y +# CONFIG_RT_DEBUGING_AUTO_INIT is not set # CONFIG_RT_DEBUGING_PAGE_LEAK is not set # @@ -156,6 +155,7 @@ CONFIG_RT_DFS_ELM_MAX_SECTOR_SIZE=512 # CONFIG_RT_DFS_ELM_USE_ERASE is not set CONFIG_RT_DFS_ELM_REENTRANT=y CONFIG_RT_DFS_ELM_MUTEX_TIMEOUT=3000 +# CONFIG_RT_DFS_ELM_USE_EXFAT is not set CONFIG_RT_USING_DFS_DEVFS=y # CONFIG_RT_USING_DFS_ROMFS is not set # CONFIG_RT_USING_DFS_CROMFS is not set @@ -179,26 +179,44 @@ CONFIG_RT_USING_SERIAL_V1=y # CONFIG_RT_USING_SERIAL_V2 is not set CONFIG_RT_SERIAL_USING_DMA=y CONFIG_RT_SERIAL_RB_BUFSZ=1024 -# CONFIG_RT_USING_CAN is not set +CONFIG_RT_USING_CAN=y +CONFIG_RT_CAN_USING_HDR=y +CONFIG_RT_CAN_USING_CANFD=y # CONFIG_RT_USING_HWTIMER is not set # CONFIG_RT_USING_CPUTIME is not set -# CONFIG_RT_USING_I2C is not set +CONFIG_RT_USING_I2C=y +# CONFIG_RT_I2C_DEBUG is not set +CONFIG_RT_USING_I2C_BITOPS=y +# CONFIG_RT_I2C_BITOPS_DEBUG is not set +# CONFIG_RT_USING_SOFT_I2C is not set # CONFIG_RT_USING_PHY is not set -# CONFIG_RT_USING_PIN is not set +CONFIG_RT_USING_PIN=y # CONFIG_RT_USING_ADC is not set # CONFIG_RT_USING_DAC is not set CONFIG_RT_USING_NULL=y CONFIG_RT_USING_ZERO=y CONFIG_RT_USING_RANDOM=y -# CONFIG_RT_USING_PWM is not set +CONFIG_RT_USING_PWM=y # CONFIG_RT_USING_MTD_NOR is not set # CONFIG_RT_USING_MTD_NAND is not set # CONFIG_RT_USING_PM is not set CONFIG_RT_USING_RTC=y # CONFIG_RT_USING_ALARM is not set # CONFIG_RT_USING_SOFT_RTC is not set -# CONFIG_RT_USING_SDIO is not set -# CONFIG_RT_USING_SPI is not set +CONFIG_RT_USING_SDIO=y +CONFIG_RT_SDIO_STACK_SIZE=4096 +CONFIG_RT_SDIO_THREAD_PRIORITY=15 +CONFIG_RT_MMCSD_STACK_SIZE=4096 +CONFIG_RT_MMCSD_THREAD_PREORITY=22 +CONFIG_RT_MMCSD_MAX_PARTITION=16 +# CONFIG_RT_SDIO_DEBUG is not set +CONFIG_RT_USING_SPI=y +# CONFIG_RT_USING_SPI_BITOPS is not set +CONFIG_RT_USING_QSPI=y +# CONFIG_RT_USING_SPI_MSD is not set +# CONFIG_RT_USING_SFUD is not set +# CONFIG_RT_USING_ENC28J60 is not set +# CONFIG_RT_USING_SPI_WIFI is not set # CONFIG_RT_USING_WDT is not set # CONFIG_RT_USING_AUDIO is not set # CONFIG_RT_USING_SENSOR is not set @@ -222,6 +240,7 @@ CONFIG_RT_USING_KTIME=y # # C/C++ and POSIX layer # +# CONFIG_RT_USING_INTERNAL_LIBC_ONLY is not set # # ISO-ANSI C layer @@ -375,6 +394,12 @@ CONFIG_RT_USING_ADT_REF=y # # CONFIG_RT_USING_MEMBLOCK is not set +# +# Memory protection +# +# CONFIG_RT_USING_MEM_PROTECTION is not set +# CONFIG_RT_USING_HW_STACK_GUARD is not set + # # RT-Thread Utestcases # @@ -415,11 +440,6 @@ CONFIG_RT_USING_ADT_REF=y # # CONFIG_PKG_USING_WLAN_WICED is not set # CONFIG_PKG_USING_RW007 is not set - -# -# CYW43012 WiFi -# -# CONFIG_PKG_USING_WLAN_CYW43012 is not set # CONFIG_PKG_USING_COAP is not set # CONFIG_PKG_USING_NOPOLL is not set # CONFIG_PKG_USING_NETUTILS is not set @@ -462,7 +482,6 @@ CONFIG_RT_USING_ADT_REF=y # CONFIG_PKG_USING_NMEALIB is not set # CONFIG_PKG_USING_PDULIB is not set # CONFIG_PKG_USING_BTSTACK is not set -# CONFIG_PKG_USING_BT_CYW43012 is not set # CONFIG_PKG_USING_LORAWAN_ED_STACK is not set # CONFIG_PKG_USING_WAYZ_IOTKIT is not set # CONFIG_PKG_USING_MAVLINK is not set @@ -482,8 +501,6 @@ CONFIG_RT_USING_ADT_REF=y # CONFIG_PKG_USING_ZFTP is not set # CONFIG_PKG_USING_WOL is not set # CONFIG_PKG_USING_ZEPHYR_POLLING is not set -# CONFIG_PKG_USING_MATTER_ADAPTATION_LAYER is not set -# CONFIG_PKG_USING_LHC_MODBUS is not set # # security packages @@ -530,6 +547,7 @@ CONFIG_RT_USING_ADT_REF=y # LVGL: powerful and easy-to-use embedded GUI library # # CONFIG_PKG_USING_LVGL is not set +# CONFIG_PKG_USING_LITTLEVGL2RTT is not set # CONFIG_PKG_USING_LV_MUSIC_DEMO is not set # CONFIG_PKG_USING_GUI_GUIDER_DEMO is not set @@ -605,7 +623,6 @@ CONFIG_RT_USING_ADT_REF=y # CONFIG_PKG_USING_HASH_MATCH is not set # CONFIG_PKG_USING_ARMV7M_DWT_TOOL is not set # CONFIG_PKG_USING_VOFA_PLUS is not set -# CONFIG_PKG_USING_ZDEBUG is not set # # system packages @@ -642,8 +659,6 @@ CONFIG_RT_USING_ADT_REF=y # CONFIG_PKG_USING_UC_COMMON is not set # CONFIG_PKG_USING_UC_MODBUS is not set # CONFIG_PKG_USING_FREERTOS_WRAPPER is not set -# CONFIG_PKG_USING_LITEOS_SDK is not set -# CONFIG_PKG_USING_TZ_DATABASE is not set # CONFIG_PKG_USING_CAIRO is not set # CONFIG_PKG_USING_PIXMAN is not set # CONFIG_PKG_USING_PARTITION is not set @@ -667,7 +682,6 @@ CONFIG_RT_USING_ADT_REF=y # CONFIG_PKG_USING_QBOOT is not set # CONFIG_PKG_USING_PPOOL is not set # CONFIG_PKG_USING_OPENAMP is not set -# CONFIG_PKG_USING_RPMSG_LITE is not set # CONFIG_PKG_USING_LPM is not set # CONFIG_PKG_USING_TLSF is not set # CONFIG_PKG_USING_EVENT_RECORDER is not set @@ -681,11 +695,6 @@ CONFIG_RT_USING_ADT_REF=y # CONFIG_PKG_USING_AGILE_UPGRADE is not set # CONFIG_PKG_USING_FLASH_BLOB is not set # CONFIG_PKG_USING_MLIBC is not set -# CONFIG_PKG_USING_TASK_MSG_BUS is not set -# CONFIG_PKG_USING_SFDB is not set -# CONFIG_PKG_USING_RTP is not set -# CONFIG_PKG_USING_REB is not set -# CONFIG_PKG_USING_R_RHEALSTONE is not set # # peripheral libraries and drivers @@ -750,7 +759,6 @@ CONFIG_RT_USING_ADT_REF=y # CONFIG_PKG_USING_BALANCE is not set # CONFIG_PKG_USING_SHT2X is not set # CONFIG_PKG_USING_SHT3X is not set -# CONFIG_PKG_USING_SHT4X is not set # CONFIG_PKG_USING_AD7746 is not set # CONFIG_PKG_USING_ADT74XX is not set # CONFIG_PKG_USING_MAX17048 is not set @@ -851,10 +859,6 @@ CONFIG_RT_USING_ADT_REF=y # CONFIG_PKG_USING_FINGERPRINT is not set # CONFIG_PKG_USING_BT_ECB02C is not set # CONFIG_PKG_USING_UAT is not set -# CONFIG_PKG_USING_ST7789 is not set -# CONFIG_PKG_USING_VS1003 is not set -# CONFIG_PKG_USING_X9555 is not set -# CONFIG_PKG_USING_SYSTEM_RUN_LED is not set # CONFIG_PKG_USING_SPI_TOOLS is not set # @@ -869,7 +873,6 @@ CONFIG_RT_USING_ADT_REF=y # CONFIG_PKG_USING_ULAPACK is not set # CONFIG_PKG_USING_QUEST is not set # CONFIG_PKG_USING_NAXOS is not set -# CONFIG_PKG_USING_R_TINYMAIX is not set # # Signal Processing and Control Algorithm Packages @@ -879,7 +882,6 @@ CONFIG_RT_USING_ADT_REF=y # CONFIG_PKG_USING_UKAL is not set # CONFIG_PKG_USING_DIGITALCTRL is not set # CONFIG_PKG_USING_KISSFFT is not set -# CONFIG_PKG_USING_CMSIS_DSP is not set # # miscellaneous packages @@ -917,7 +919,6 @@ CONFIG_RT_USING_ADT_REF=y # CONFIG_PKG_USING_MINILZO is not set # CONFIG_PKG_USING_QUICKLZ is not set # CONFIG_PKG_USING_LZMA is not set -# CONFIG_PKG_USING_RALARAM is not set # CONFIG_PKG_USING_MULTIBUTTON is not set # CONFIG_PKG_USING_FLEXIBLE_BUTTON is not set # CONFIG_PKG_USING_CANFESTIVAL is not set @@ -1102,7 +1103,6 @@ CONFIG_RT_USING_ADT_REF=y # # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_GFX_LIBRARY is not set # CONFIG_PKG_USING_ARDUINO_U8G2 is not set -# CONFIG_PKG_USING_ARDUINO_TFT_ESPI is not set # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_ST7735 is not set # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_SSD1306 is not set # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_ILI9341 is not set @@ -1111,7 +1111,6 @@ CONFIG_RT_USING_ADT_REF=y # # Timing # -# CONFIG_PKG_USING_ARDUINO_RTCLIB is not set # CONFIG_PKG_USING_ARDUINO_MSTIMER2 is not set # CONFIG_PKG_USING_ARDUINO_TICKER is not set # CONFIG_PKG_USING_ARDUINO_TASKSCHEDULER is not set @@ -1148,6 +1147,7 @@ CONFIG_RT_USING_ADT_REF=y # # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_MFRC630 is not set # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_SI5351 is not set +# CONFIG_PKG_USING_ARDUINO_RTCLIB is not set # # Signal IO @@ -1175,16 +1175,61 @@ CONFIG_RT_USING_ADT_REF=y # CONFIG_BSP_USING_IOPAD=y CONFIG_BSP_USING_UART=y +CONFIG_RT_USING_UART0=y CONFIG_RT_USING_UART1=y -# CONFIG_RT_USING_UART0 is not set -# CONFIG_BSP_USING_SPI is not set -# CONFIG_BSP_USING_CAN is not set -# CONFIG_BSP_USING_GPIO is not set -# CONFIG_BSP_USING_QSPI is not set -# CONFIG_BSP_USING_ETH is not set -# CONFIG_BSP_USING_PWM is not set -# CONFIG_BSP_USING_I2C is not set -# CONFIG_BSP_USING_SDIF is not set +# CONFIG_RT_USING_UART2 is not set +# CONFIG_RT_USING_UART3 is not set +CONFIG_BSP_USING_SPI=y +# CONFIG_RT_USING_SPIM0 is not set +# CONFIG_RT_USING_SPIM1 is not set +CONFIG_RT_USING_SPIM2=y +# CONFIG_RT_USING_SPIM3 is not set +CONFIG_BSP_USING_CAN=y +CONFIG_RT_USING_CANFD=y +CONFIG_RT_USING_FILTER=y +CONFIG_RT_USING_CAN0=y +# CONFIG_RT_USING_CAN1 is not set +CONFIG_BSP_USING_GPIO=y +CONFIG_BSP_USING_QSPI=y +CONFIG_RT_USING_QSPI0=y +CONFIG_USING_QSPI_CHANNEL0=y +# CONFIG_USING_QSPI_CHANNEL1 is not set +CONFIG_BSP_USING_ETH=y +CONFIG_RT_LWIP_PBUF_POOL_BUFSIZE=1700 +CONFIG_BSP_USING_PWM=y +# CONFIG_RT_USING_PWM0 is not set +# CONFIG_RT_USING_PWM1 is not set +# CONFIG_RT_USING_PWM2 is not set +# CONFIG_RT_USING_PWM3 is not set +# CONFIG_RT_USING_PWM4 is not set +# CONFIG_RT_USING_PWM5 is not set +CONFIG_RT_USING_PWM6=y +# CONFIG_RT_USING_PWM7 is not set +CONFIG_BSP_USING_I2C=y +CONFIG_I2C_USE_MIO=y +# CONFIG_RT_USING_MIO0 is not set +# CONFIG_RT_USING_MIO1 is not set +# CONFIG_RT_USING_MIO2 is not set +# CONFIG_RT_USING_MIO3 is not set +# CONFIG_RT_USING_MIO4 is not set +# CONFIG_RT_USING_MIO5 is not set +# CONFIG_RT_USING_MIO6 is not set +# CONFIG_RT_USING_MIO7 is not set +# CONFIG_RT_USING_MIO8 is not set +# CONFIG_RT_USING_MIO9 is not set +# CONFIG_RT_USING_MIO10 is not set +# CONFIG_RT_USING_MIO11 is not set +# CONFIG_RT_USING_MIO12 is not set +# CONFIG_RT_USING_MIO13 is not set +# CONFIG_RT_USING_MIO14 is not set +CONFIG_RT_USING_MIO15=y +# CONFIG_I2C_USE_CONTROLLER is not set +CONFIG_BSP_USING_SDIF=y +CONFIG_BSP_USING_SDCARD_FATFS=y +CONFIG_BSP_USING_SDCARD_PARTITION="sd0" +# CONFIG_USING_SDIF0 is not set +CONFIG_USING_SDIF1=y +# CONFIG_USING_EMMC is not set # # Board extended module Drivers diff --git a/bsp/phytium/aarch32/configs/e2000q_demo_rtthread.h b/bsp/phytium/aarch32/configs/e2000q_demo_rtthread.h index 0751ddcbc3..e98ba78016 100644 --- a/bsp/phytium/aarch32/configs/e2000q_demo_rtthread.h +++ b/bsp/phytium/aarch32/configs/e2000q_demo_rtthread.h @@ -7,8 +7,7 @@ /* RT-Thread Kernel */ #define RT_NAME_MAX 16 -#define RT_USING_SMP -#define RT_CPUS_NR 2 +#define RT_CPUS_NR 1 #define RT_ALIGN_SIZE 4 #define RT_THREAD_PRIORITY_32 #define RT_THREAD_PRIORITY_MAX 32 @@ -19,7 +18,6 @@ #define RT_USING_IDLE_HOOK #define RT_IDLE_HOOK_LIST_SIZE 4 #define IDLE_THREAD_STACK_SIZE 4096 -#define SYSTEM_THREAD_STACK_SIZE 4096 #define RT_USING_TIMER_SOFT #define RT_TIMER_THREAD_PRIO 4 #define RT_TIMER_THREAD_STACK_SIZE 4096 @@ -31,7 +29,6 @@ #define RT_USING_DEBUG #define RT_DEBUGING_COLOR #define RT_DEBUGING_CONTEXT -#define RT_DEBUGING_INIT /* Inter-Thread communication */ @@ -126,10 +123,25 @@ #define RT_USING_SERIAL_V1 #define RT_SERIAL_USING_DMA #define RT_SERIAL_RB_BUFSZ 1024 +#define RT_USING_CAN +#define RT_CAN_USING_HDR +#define RT_CAN_USING_CANFD +#define RT_USING_I2C +#define RT_USING_I2C_BITOPS +#define RT_USING_PIN #define RT_USING_NULL #define RT_USING_ZERO #define RT_USING_RANDOM +#define RT_USING_PWM #define RT_USING_RTC +#define RT_USING_SDIO +#define RT_SDIO_STACK_SIZE 4096 +#define RT_SDIO_THREAD_PRIORITY 15 +#define RT_MMCSD_STACK_SIZE 4096 +#define RT_MMCSD_THREAD_PREORITY 22 +#define RT_MMCSD_MAX_PARTITION 16 +#define RT_USING_SPI +#define RT_USING_QSPI #define RT_USING_DEV_BUS #define RT_USING_KTIME @@ -138,6 +150,7 @@ /* C/C++ and POSIX layer */ + /* ISO-ANSI C layer */ /* Timezone and Daylight Saving Time */ @@ -243,6 +256,9 @@ /* Memory management */ +/* Memory protection */ + + /* RT-Thread Utestcases */ @@ -259,9 +275,6 @@ /* Wiced WiFi */ -/* CYW43012 WiFi */ - - /* IoT Cloud */ @@ -369,7 +382,29 @@ #define BSP_USING_IOPAD #define BSP_USING_UART +#define RT_USING_UART0 #define RT_USING_UART1 +#define BSP_USING_SPI +#define RT_USING_SPIM2 +#define BSP_USING_CAN +#define RT_USING_CANFD +#define RT_USING_FILTER +#define RT_USING_CAN0 +#define BSP_USING_GPIO +#define BSP_USING_QSPI +#define RT_USING_QSPI0 +#define USING_QSPI_CHANNEL0 +#define BSP_USING_ETH +#define RT_LWIP_PBUF_POOL_BUFSIZE 1700 +#define BSP_USING_PWM +#define RT_USING_PWM6 +#define BSP_USING_I2C +#define I2C_USE_MIO +#define RT_USING_MIO15 +#define BSP_USING_SDIF +#define BSP_USING_SDCARD_FATFS +#define BSP_USING_SDCARD_PARTITION "sd0" +#define USING_SDIF1 /* Board extended module Drivers */ diff --git a/bsp/phytium/aarch32/configs/phytium_pi_rtsmart b/bsp/phytium/aarch32/configs/phytium_pi_rtsmart index e8b922496a..d1602f0386 100644 --- a/bsp/phytium/aarch32/configs/phytium_pi_rtsmart +++ b/bsp/phytium/aarch32/configs/phytium_pi_rtsmart @@ -10,8 +10,8 @@ CONFIG_RT_NAME_MAX=16 # CONFIG_RT_USING_ARCH_DATA_TYPE is not set CONFIG_RT_USING_SMART=y # CONFIG_RT_USING_AMP is not set -CONFIG_RT_USING_SMP=y -CONFIG_RT_CPUS_NR=4 +# CONFIG_RT_USING_SMP is not set +CONFIG_RT_CPUS_NR=1 CONFIG_RT_ALIGN_SIZE=4 # CONFIG_RT_THREAD_PRIORITY_8 is not set CONFIG_RT_THREAD_PRIORITY_32=y @@ -24,7 +24,6 @@ CONFIG_RT_HOOK_USING_FUNC_PTR=y CONFIG_RT_USING_IDLE_HOOK=y CONFIG_RT_IDLE_HOOK_LIST_SIZE=4 CONFIG_IDLE_THREAD_STACK_SIZE=4096 -CONFIG_SYSTEM_THREAD_STACK_SIZE=4096 CONFIG_RT_USING_TIMER_SOFT=y CONFIG_RT_TIMER_THREAD_PRIO=4 CONFIG_RT_TIMER_THREAD_STACK_SIZE=4096 @@ -40,7 +39,7 @@ CONFIG_RT_KPRINTF_USING_LONGLONG=y CONFIG_RT_USING_DEBUG=y CONFIG_RT_DEBUGING_COLOR=y CONFIG_RT_DEBUGING_CONTEXT=y -CONFIG_RT_DEBUGING_INIT=y +# CONFIG_RT_DEBUGING_AUTO_INIT is not set # CONFIG_RT_DEBUGING_PAGE_LEAK is not set # @@ -158,6 +157,7 @@ CONFIG_RT_DFS_ELM_MAX_SECTOR_SIZE=512 # CONFIG_RT_DFS_ELM_USE_ERASE is not set CONFIG_RT_DFS_ELM_REENTRANT=y CONFIG_RT_DFS_ELM_MUTEX_TIMEOUT=3000 +# CONFIG_RT_DFS_ELM_USE_EXFAT is not set CONFIG_RT_USING_DFS_DEVFS=y # CONFIG_RT_USING_DFS_ROMFS is not set # CONFIG_RT_USING_DFS_CROMFS is not set @@ -193,18 +193,24 @@ CONFIG_RT_SERIAL_USING_DMA=y CONFIG_RT_SERIAL_RB_BUFSZ=1024 CONFIG_RT_USING_TTY=y # CONFIG_RT_TTY_DEBUG is not set -# CONFIG_RT_USING_CAN is not set +CONFIG_RT_USING_CAN=y +# CONFIG_RT_CAN_USING_HDR is not set +CONFIG_RT_CAN_USING_CANFD=y # CONFIG_RT_USING_HWTIMER is not set # CONFIG_RT_USING_CPUTIME is not set -# CONFIG_RT_USING_I2C is not set +CONFIG_RT_USING_I2C=y +# CONFIG_RT_I2C_DEBUG is not set +CONFIG_RT_USING_I2C_BITOPS=y +# CONFIG_RT_I2C_BITOPS_DEBUG is not set +# CONFIG_RT_USING_SOFT_I2C is not set # CONFIG_RT_USING_PHY is not set -# CONFIG_RT_USING_PIN is not set +CONFIG_RT_USING_PIN=y # CONFIG_RT_USING_ADC is not set # CONFIG_RT_USING_DAC is not set CONFIG_RT_USING_NULL=y CONFIG_RT_USING_ZERO=y CONFIG_RT_USING_RANDOM=y -# CONFIG_RT_USING_PWM is not set +CONFIG_RT_USING_PWM=y # CONFIG_RT_USING_MTD_NOR is not set # CONFIG_RT_USING_MTD_NAND is not set # CONFIG_RT_USING_PM is not set @@ -218,7 +224,13 @@ CONFIG_RT_MMCSD_STACK_SIZE=4096 CONFIG_RT_MMCSD_THREAD_PREORITY=22 CONFIG_RT_MMCSD_MAX_PARTITION=16 # CONFIG_RT_SDIO_DEBUG is not set -# CONFIG_RT_USING_SPI is not set +CONFIG_RT_USING_SPI=y +# CONFIG_RT_USING_SPI_BITOPS is not set +CONFIG_RT_USING_QSPI=y +# CONFIG_RT_USING_SPI_MSD is not set +# CONFIG_RT_USING_SFUD is not set +# CONFIG_RT_USING_ENC28J60 is not set +# CONFIG_RT_USING_SPI_WIFI is not set # CONFIG_RT_USING_WDT is not set # CONFIG_RT_USING_AUDIO is not set # CONFIG_RT_USING_SENSOR is not set @@ -242,6 +254,7 @@ CONFIG_RT_USING_KTIME=y # # C/C++ and POSIX layer # +# CONFIG_RT_USING_INTERNAL_LIBC_ONLY is not set # # ISO-ANSI C layer @@ -397,6 +410,12 @@ CONFIG_RT_USING_ADT_REF=y # # CONFIG_RT_USING_MEMBLOCK is not set +# +# Memory protection +# +# CONFIG_RT_USING_MEM_PROTECTION is not set +# CONFIG_RT_USING_HW_STACK_GUARD is not set + # # RT-Thread Utestcases # @@ -437,11 +456,6 @@ CONFIG_RT_USING_ADT_REF=y # # CONFIG_PKG_USING_WLAN_WICED is not set # CONFIG_PKG_USING_RW007 is not set - -# -# CYW43012 WiFi -# -# CONFIG_PKG_USING_WLAN_CYW43012 is not set # CONFIG_PKG_USING_COAP is not set # CONFIG_PKG_USING_NOPOLL is not set # CONFIG_PKG_USING_NETUTILS is not set @@ -484,7 +498,6 @@ CONFIG_RT_USING_ADT_REF=y # CONFIG_PKG_USING_NMEALIB is not set # CONFIG_PKG_USING_PDULIB is not set # CONFIG_PKG_USING_BTSTACK is not set -# CONFIG_PKG_USING_BT_CYW43012 is not set # CONFIG_PKG_USING_LORAWAN_ED_STACK is not set # CONFIG_PKG_USING_WAYZ_IOTKIT is not set # CONFIG_PKG_USING_MAVLINK is not set @@ -504,8 +517,6 @@ CONFIG_RT_USING_ADT_REF=y # CONFIG_PKG_USING_ZFTP is not set # CONFIG_PKG_USING_WOL is not set # CONFIG_PKG_USING_ZEPHYR_POLLING is not set -# CONFIG_PKG_USING_MATTER_ADAPTATION_LAYER is not set -# CONFIG_PKG_USING_LHC_MODBUS is not set # # security packages @@ -552,6 +563,7 @@ CONFIG_RT_USING_ADT_REF=y # LVGL: powerful and easy-to-use embedded GUI library # # CONFIG_PKG_USING_LVGL is not set +# CONFIG_PKG_USING_LITTLEVGL2RTT is not set # CONFIG_PKG_USING_LV_MUSIC_DEMO is not set # CONFIG_PKG_USING_GUI_GUIDER_DEMO is not set @@ -627,7 +639,6 @@ CONFIG_RT_USING_ADT_REF=y # CONFIG_PKG_USING_HASH_MATCH is not set # CONFIG_PKG_USING_ARMV7M_DWT_TOOL is not set # CONFIG_PKG_USING_VOFA_PLUS is not set -# CONFIG_PKG_USING_ZDEBUG is not set # # system packages @@ -664,8 +675,6 @@ CONFIG_RT_USING_ADT_REF=y # CONFIG_PKG_USING_UC_COMMON is not set # CONFIG_PKG_USING_UC_MODBUS is not set # CONFIG_PKG_USING_FREERTOS_WRAPPER is not set -# CONFIG_PKG_USING_LITEOS_SDK is not set -# CONFIG_PKG_USING_TZ_DATABASE is not set # CONFIG_PKG_USING_CAIRO is not set # CONFIG_PKG_USING_PIXMAN is not set # CONFIG_PKG_USING_PARTITION is not set @@ -689,7 +698,6 @@ CONFIG_RT_USING_ADT_REF=y # CONFIG_PKG_USING_QBOOT is not set # CONFIG_PKG_USING_PPOOL is not set # CONFIG_PKG_USING_OPENAMP is not set -# CONFIG_PKG_USING_RPMSG_LITE is not set # CONFIG_PKG_USING_LPM is not set # CONFIG_PKG_USING_TLSF is not set # CONFIG_PKG_USING_EVENT_RECORDER is not set @@ -703,11 +711,6 @@ CONFIG_RT_USING_ADT_REF=y # CONFIG_PKG_USING_AGILE_UPGRADE is not set # CONFIG_PKG_USING_FLASH_BLOB is not set # CONFIG_PKG_USING_MLIBC is not set -# CONFIG_PKG_USING_TASK_MSG_BUS is not set -# CONFIG_PKG_USING_SFDB is not set -# CONFIG_PKG_USING_RTP is not set -# CONFIG_PKG_USING_REB is not set -# CONFIG_PKG_USING_R_RHEALSTONE is not set # # peripheral libraries and drivers @@ -772,7 +775,6 @@ CONFIG_RT_USING_ADT_REF=y # CONFIG_PKG_USING_BALANCE is not set # CONFIG_PKG_USING_SHT2X is not set # CONFIG_PKG_USING_SHT3X is not set -# CONFIG_PKG_USING_SHT4X is not set # CONFIG_PKG_USING_AD7746 is not set # CONFIG_PKG_USING_ADT74XX is not set # CONFIG_PKG_USING_MAX17048 is not set @@ -873,10 +875,6 @@ CONFIG_RT_USING_ADT_REF=y # CONFIG_PKG_USING_FINGERPRINT is not set # CONFIG_PKG_USING_BT_ECB02C is not set # CONFIG_PKG_USING_UAT is not set -# CONFIG_PKG_USING_ST7789 is not set -# CONFIG_PKG_USING_VS1003 is not set -# CONFIG_PKG_USING_X9555 is not set -# CONFIG_PKG_USING_SYSTEM_RUN_LED is not set # CONFIG_PKG_USING_SPI_TOOLS is not set # @@ -891,7 +889,6 @@ CONFIG_RT_USING_ADT_REF=y # CONFIG_PKG_USING_ULAPACK is not set # CONFIG_PKG_USING_QUEST is not set # CONFIG_PKG_USING_NAXOS is not set -# CONFIG_PKG_USING_R_TINYMAIX is not set # # Signal Processing and Control Algorithm Packages @@ -901,7 +898,6 @@ CONFIG_RT_USING_ADT_REF=y # CONFIG_PKG_USING_UKAL is not set # CONFIG_PKG_USING_DIGITALCTRL is not set # CONFIG_PKG_USING_KISSFFT is not set -# CONFIG_PKG_USING_CMSIS_DSP is not set # # miscellaneous packages @@ -939,7 +935,6 @@ CONFIG_RT_USING_ADT_REF=y # CONFIG_PKG_USING_MINILZO is not set # CONFIG_PKG_USING_QUICKLZ is not set # CONFIG_PKG_USING_LZMA is not set -# CONFIG_PKG_USING_RALARAM is not set # CONFIG_PKG_USING_MULTIBUTTON is not set # CONFIG_PKG_USING_FLEXIBLE_BUTTON is not set # CONFIG_PKG_USING_CANFESTIVAL is not set @@ -1124,7 +1119,6 @@ CONFIG_RT_USING_ADT_REF=y # # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_GFX_LIBRARY is not set # CONFIG_PKG_USING_ARDUINO_U8G2 is not set -# CONFIG_PKG_USING_ARDUINO_TFT_ESPI is not set # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_ST7735 is not set # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_SSD1306 is not set # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_ILI9341 is not set @@ -1133,7 +1127,6 @@ CONFIG_RT_USING_ADT_REF=y # # Timing # -# CONFIG_PKG_USING_ARDUINO_RTCLIB is not set # CONFIG_PKG_USING_ARDUINO_MSTIMER2 is not set # CONFIG_PKG_USING_ARDUINO_TICKER is not set # CONFIG_PKG_USING_ARDUINO_TASKSCHEDULER is not set @@ -1170,6 +1163,7 @@ CONFIG_RT_USING_ADT_REF=y # # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_MFRC630 is not set # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_SI5351 is not set +# CONFIG_PKG_USING_ARDUINO_RTCLIB is not set # # Signal IO @@ -1197,21 +1191,49 @@ CONFIG_RT_USING_ADT_REF=y # CONFIG_BSP_USING_IOPAD=y CONFIG_BSP_USING_UART=y +CONFIG_RT_USING_UART0=y CONFIG_RT_USING_UART1=y -# CONFIG_RT_USING_UART0 is not set -# CONFIG_BSP_USING_SPI is not set +# CONFIG_RT_USING_UART2 is not set +# CONFIG_RT_USING_UART3 is not set +CONFIG_BSP_USING_SPI=y +CONFIG_RT_USING_SPIM0=y +# CONFIG_RT_USING_SPIM1 is not set +# CONFIG_RT_USING_SPIM2 is not set +# CONFIG_RT_USING_SPIM3 is not set # CONFIG_BSP_USING_CAN is not set -# CONFIG_BSP_USING_GPIO is not set +CONFIG_BSP_USING_GPIO=y # CONFIG_BSP_USING_QSPI is not set -# CONFIG_BSP_USING_ETH is not set -# CONFIG_BSP_USING_PWM is not set -# CONFIG_BSP_USING_I2C is not set -CONFIG_BSP_USING_SDIF=y -CONFIG_BSP_USING_SDCARD_FATFS=y -CONFIG_BSP_USING_SDCARD_PARTITION="sd1" -CONFIG_USING_SDIF0=y -# CONFIG_USING_SDIF1 is not set -# CONFIG_USING_EMMC is not set +CONFIG_BSP_USING_ETH=y +CONFIG_RT_LWIP_PBUF_POOL_BUFSIZE=1700 +CONFIG_BSP_USING_PWM=y +# CONFIG_RT_USING_PWM0 is not set +# CONFIG_RT_USING_PWM1 is not set +CONFIG_RT_USING_PWM2=y +# CONFIG_RT_USING_PWM3 is not set +# CONFIG_RT_USING_PWM4 is not set +# CONFIG_RT_USING_PWM5 is not set +# CONFIG_RT_USING_PWM6 is not set +# CONFIG_RT_USING_PWM7 is not set +CONFIG_BSP_USING_I2C=y +CONFIG_I2C_USE_MIO=y +CONFIG_RT_USING_MIO0=y +CONFIG_RT_USING_MIO1=y +# CONFIG_RT_USING_MIO2 is not set +# CONFIG_RT_USING_MIO3 is not set +# CONFIG_RT_USING_MIO4 is not set +# CONFIG_RT_USING_MIO5 is not set +# CONFIG_RT_USING_MIO6 is not set +# CONFIG_RT_USING_MIO7 is not set +# CONFIG_RT_USING_MIO8 is not set +# CONFIG_RT_USING_MIO9 is not set +# CONFIG_RT_USING_MIO10 is not set +# CONFIG_RT_USING_MIO11 is not set +# CONFIG_RT_USING_MIO12 is not set +# CONFIG_RT_USING_MIO13 is not set +# CONFIG_RT_USING_MIO14 is not set +# CONFIG_RT_USING_MIO15 is not set +# CONFIG_I2C_USE_CONTROLLER is not set +# CONFIG_BSP_USING_SDIF is not set # # Board extended module Drivers diff --git a/bsp/phytium/aarch32/configs/phytium_pi_rtsmart.h b/bsp/phytium/aarch32/configs/phytium_pi_rtsmart.h index 4267111672..bde9234d29 100644 --- a/bsp/phytium/aarch32/configs/phytium_pi_rtsmart.h +++ b/bsp/phytium/aarch32/configs/phytium_pi_rtsmart.h @@ -8,8 +8,7 @@ #define RT_NAME_MAX 16 #define RT_USING_SMART -#define RT_USING_SMP -#define RT_CPUS_NR 4 +#define RT_CPUS_NR 1 #define RT_ALIGN_SIZE 4 #define RT_THREAD_PRIORITY_32 #define RT_THREAD_PRIORITY_MAX 32 @@ -20,7 +19,6 @@ #define RT_USING_IDLE_HOOK #define RT_IDLE_HOOK_LIST_SIZE 4 #define IDLE_THREAD_STACK_SIZE 4096 -#define SYSTEM_THREAD_STACK_SIZE 4096 #define RT_USING_TIMER_SOFT #define RT_TIMER_THREAD_PRIO 4 #define RT_TIMER_THREAD_STACK_SIZE 4096 @@ -32,7 +30,6 @@ #define RT_USING_DEBUG #define RT_DEBUGING_COLOR #define RT_DEBUGING_CONTEXT -#define RT_DEBUGING_INIT /* Inter-Thread communication */ @@ -137,9 +134,15 @@ #define RT_SERIAL_USING_DMA #define RT_SERIAL_RB_BUFSZ 1024 #define RT_USING_TTY +#define RT_USING_CAN +#define RT_CAN_USING_CANFD +#define RT_USING_I2C +#define RT_USING_I2C_BITOPS +#define RT_USING_PIN #define RT_USING_NULL #define RT_USING_ZERO #define RT_USING_RANDOM +#define RT_USING_PWM #define RT_USING_RTC #define RT_USING_SDIO #define RT_SDIO_STACK_SIZE 4096 @@ -147,6 +150,8 @@ #define RT_MMCSD_STACK_SIZE 4096 #define RT_MMCSD_THREAD_PREORITY 22 #define RT_MMCSD_MAX_PARTITION 16 +#define RT_USING_SPI +#define RT_USING_QSPI #define RT_USING_DEV_BUS #define RT_USING_KTIME @@ -155,6 +160,7 @@ /* C/C++ and POSIX layer */ + /* ISO-ANSI C layer */ /* Timezone and Daylight Saving Time */ @@ -260,6 +266,9 @@ /* Memory management */ +/* Memory protection */ + + /* RT-Thread Utestcases */ @@ -276,9 +285,6 @@ /* Wiced WiFi */ -/* CYW43012 WiFi */ - - /* IoT Cloud */ @@ -386,11 +392,19 @@ #define BSP_USING_IOPAD #define BSP_USING_UART +#define RT_USING_UART0 #define RT_USING_UART1 -#define BSP_USING_SDIF -#define BSP_USING_SDCARD_FATFS -#define BSP_USING_SDCARD_PARTITION "sd1" -#define USING_SDIF0 +#define BSP_USING_SPI +#define RT_USING_SPIM0 +#define BSP_USING_GPIO +#define BSP_USING_ETH +#define RT_LWIP_PBUF_POOL_BUFSIZE 1700 +#define BSP_USING_PWM +#define RT_USING_PWM2 +#define BSP_USING_I2C +#define I2C_USE_MIO +#define RT_USING_MIO0 +#define RT_USING_MIO1 /* Board extended module Drivers */ diff --git a/bsp/phytium/aarch32/configs/phytium_pi_rtthread b/bsp/phytium/aarch32/configs/phytium_pi_rtthread index c7d8ec77c9..a1cb734547 100644 --- a/bsp/phytium/aarch32/configs/phytium_pi_rtthread +++ b/bsp/phytium/aarch32/configs/phytium_pi_rtthread @@ -10,8 +10,8 @@ CONFIG_RT_NAME_MAX=16 # CONFIG_RT_USING_ARCH_DATA_TYPE is not set # CONFIG_RT_USING_SMART is not set # CONFIG_RT_USING_AMP is not set -CONFIG_RT_USING_SMP=y -CONFIG_RT_CPUS_NR=4 +# CONFIG_RT_USING_SMP is not set +CONFIG_RT_CPUS_NR=1 CONFIG_RT_ALIGN_SIZE=4 # CONFIG_RT_THREAD_PRIORITY_8 is not set CONFIG_RT_THREAD_PRIORITY_32=y @@ -24,7 +24,6 @@ CONFIG_RT_HOOK_USING_FUNC_PTR=y CONFIG_RT_USING_IDLE_HOOK=y CONFIG_RT_IDLE_HOOK_LIST_SIZE=4 CONFIG_IDLE_THREAD_STACK_SIZE=4096 -CONFIG_SYSTEM_THREAD_STACK_SIZE=4096 CONFIG_RT_USING_TIMER_SOFT=y CONFIG_RT_TIMER_THREAD_PRIO=4 CONFIG_RT_TIMER_THREAD_STACK_SIZE=4096 @@ -40,7 +39,7 @@ CONFIG_RT_KPRINTF_USING_LONGLONG=y CONFIG_RT_USING_DEBUG=y CONFIG_RT_DEBUGING_COLOR=y CONFIG_RT_DEBUGING_CONTEXT=y -CONFIG_RT_DEBUGING_INIT=y +# CONFIG_RT_DEBUGING_AUTO_INIT is not set # CONFIG_RT_DEBUGING_PAGE_LEAK is not set # @@ -156,6 +155,7 @@ CONFIG_RT_DFS_ELM_MAX_SECTOR_SIZE=512 # CONFIG_RT_DFS_ELM_USE_ERASE is not set CONFIG_RT_DFS_ELM_REENTRANT=y CONFIG_RT_DFS_ELM_MUTEX_TIMEOUT=3000 +# CONFIG_RT_DFS_ELM_USE_EXFAT is not set CONFIG_RT_USING_DFS_DEVFS=y # CONFIG_RT_USING_DFS_ROMFS is not set # CONFIG_RT_USING_DFS_CROMFS is not set @@ -179,18 +179,24 @@ CONFIG_RT_USING_SERIAL_V1=y # CONFIG_RT_USING_SERIAL_V2 is not set CONFIG_RT_SERIAL_USING_DMA=y CONFIG_RT_SERIAL_RB_BUFSZ=1024 -# CONFIG_RT_USING_CAN is not set +CONFIG_RT_USING_CAN=y +# CONFIG_RT_CAN_USING_HDR is not set +CONFIG_RT_CAN_USING_CANFD=y # CONFIG_RT_USING_HWTIMER is not set # CONFIG_RT_USING_CPUTIME is not set -# CONFIG_RT_USING_I2C is not set +CONFIG_RT_USING_I2C=y +# CONFIG_RT_I2C_DEBUG is not set +CONFIG_RT_USING_I2C_BITOPS=y +# CONFIG_RT_I2C_BITOPS_DEBUG is not set +# CONFIG_RT_USING_SOFT_I2C is not set # CONFIG_RT_USING_PHY is not set -# CONFIG_RT_USING_PIN is not set +CONFIG_RT_USING_PIN=y # CONFIG_RT_USING_ADC is not set # CONFIG_RT_USING_DAC is not set CONFIG_RT_USING_NULL=y CONFIG_RT_USING_ZERO=y CONFIG_RT_USING_RANDOM=y -# CONFIG_RT_USING_PWM is not set +CONFIG_RT_USING_PWM=y # CONFIG_RT_USING_MTD_NOR is not set # CONFIG_RT_USING_MTD_NAND is not set # CONFIG_RT_USING_PM is not set @@ -204,7 +210,13 @@ CONFIG_RT_MMCSD_STACK_SIZE=4096 CONFIG_RT_MMCSD_THREAD_PREORITY=22 CONFIG_RT_MMCSD_MAX_PARTITION=16 # CONFIG_RT_SDIO_DEBUG is not set -# CONFIG_RT_USING_SPI is not set +CONFIG_RT_USING_SPI=y +# CONFIG_RT_USING_SPI_BITOPS is not set +CONFIG_RT_USING_QSPI=y +# CONFIG_RT_USING_SPI_MSD is not set +# CONFIG_RT_USING_SFUD is not set +# CONFIG_RT_USING_ENC28J60 is not set +# CONFIG_RT_USING_SPI_WIFI is not set # CONFIG_RT_USING_WDT is not set # CONFIG_RT_USING_AUDIO is not set # CONFIG_RT_USING_SENSOR is not set @@ -228,6 +240,7 @@ CONFIG_RT_USING_KTIME=y # # C/C++ and POSIX layer # +# CONFIG_RT_USING_INTERNAL_LIBC_ONLY is not set # # ISO-ANSI C layer @@ -381,6 +394,12 @@ CONFIG_RT_USING_ADT_REF=y # # CONFIG_RT_USING_MEMBLOCK is not set +# +# Memory protection +# +# CONFIG_RT_USING_MEM_PROTECTION is not set +# CONFIG_RT_USING_HW_STACK_GUARD is not set + # # RT-Thread Utestcases # @@ -421,11 +440,6 @@ CONFIG_RT_USING_ADT_REF=y # # CONFIG_PKG_USING_WLAN_WICED is not set # CONFIG_PKG_USING_RW007 is not set - -# -# CYW43012 WiFi -# -# CONFIG_PKG_USING_WLAN_CYW43012 is not set # CONFIG_PKG_USING_COAP is not set # CONFIG_PKG_USING_NOPOLL is not set # CONFIG_PKG_USING_NETUTILS is not set @@ -468,7 +482,6 @@ CONFIG_RT_USING_ADT_REF=y # CONFIG_PKG_USING_NMEALIB is not set # CONFIG_PKG_USING_PDULIB is not set # CONFIG_PKG_USING_BTSTACK is not set -# CONFIG_PKG_USING_BT_CYW43012 is not set # CONFIG_PKG_USING_LORAWAN_ED_STACK is not set # CONFIG_PKG_USING_WAYZ_IOTKIT is not set # CONFIG_PKG_USING_MAVLINK is not set @@ -488,8 +501,6 @@ CONFIG_RT_USING_ADT_REF=y # CONFIG_PKG_USING_ZFTP is not set # CONFIG_PKG_USING_WOL is not set # CONFIG_PKG_USING_ZEPHYR_POLLING is not set -# CONFIG_PKG_USING_MATTER_ADAPTATION_LAYER is not set -# CONFIG_PKG_USING_LHC_MODBUS is not set # # security packages @@ -536,6 +547,7 @@ CONFIG_RT_USING_ADT_REF=y # LVGL: powerful and easy-to-use embedded GUI library # # CONFIG_PKG_USING_LVGL is not set +# CONFIG_PKG_USING_LITTLEVGL2RTT is not set # CONFIG_PKG_USING_LV_MUSIC_DEMO is not set # CONFIG_PKG_USING_GUI_GUIDER_DEMO is not set @@ -611,7 +623,6 @@ CONFIG_RT_USING_ADT_REF=y # CONFIG_PKG_USING_HASH_MATCH is not set # CONFIG_PKG_USING_ARMV7M_DWT_TOOL is not set # CONFIG_PKG_USING_VOFA_PLUS is not set -# CONFIG_PKG_USING_ZDEBUG is not set # # system packages @@ -648,8 +659,6 @@ CONFIG_RT_USING_ADT_REF=y # CONFIG_PKG_USING_UC_COMMON is not set # CONFIG_PKG_USING_UC_MODBUS is not set # CONFIG_PKG_USING_FREERTOS_WRAPPER is not set -# CONFIG_PKG_USING_LITEOS_SDK is not set -# CONFIG_PKG_USING_TZ_DATABASE is not set # CONFIG_PKG_USING_CAIRO is not set # CONFIG_PKG_USING_PIXMAN is not set # CONFIG_PKG_USING_PARTITION is not set @@ -673,7 +682,6 @@ CONFIG_RT_USING_ADT_REF=y # CONFIG_PKG_USING_QBOOT is not set # CONFIG_PKG_USING_PPOOL is not set # CONFIG_PKG_USING_OPENAMP is not set -# CONFIG_PKG_USING_RPMSG_LITE is not set # CONFIG_PKG_USING_LPM is not set # CONFIG_PKG_USING_TLSF is not set # CONFIG_PKG_USING_EVENT_RECORDER is not set @@ -687,11 +695,6 @@ CONFIG_RT_USING_ADT_REF=y # CONFIG_PKG_USING_AGILE_UPGRADE is not set # CONFIG_PKG_USING_FLASH_BLOB is not set # CONFIG_PKG_USING_MLIBC is not set -# CONFIG_PKG_USING_TASK_MSG_BUS is not set -# CONFIG_PKG_USING_SFDB is not set -# CONFIG_PKG_USING_RTP is not set -# CONFIG_PKG_USING_REB is not set -# CONFIG_PKG_USING_R_RHEALSTONE is not set # # peripheral libraries and drivers @@ -756,7 +759,6 @@ CONFIG_RT_USING_ADT_REF=y # CONFIG_PKG_USING_BALANCE is not set # CONFIG_PKG_USING_SHT2X is not set # CONFIG_PKG_USING_SHT3X is not set -# CONFIG_PKG_USING_SHT4X is not set # CONFIG_PKG_USING_AD7746 is not set # CONFIG_PKG_USING_ADT74XX is not set # CONFIG_PKG_USING_MAX17048 is not set @@ -857,10 +859,6 @@ CONFIG_RT_USING_ADT_REF=y # CONFIG_PKG_USING_FINGERPRINT is not set # CONFIG_PKG_USING_BT_ECB02C is not set # CONFIG_PKG_USING_UAT is not set -# CONFIG_PKG_USING_ST7789 is not set -# CONFIG_PKG_USING_VS1003 is not set -# CONFIG_PKG_USING_X9555 is not set -# CONFIG_PKG_USING_SYSTEM_RUN_LED is not set # CONFIG_PKG_USING_SPI_TOOLS is not set # @@ -875,7 +873,6 @@ CONFIG_RT_USING_ADT_REF=y # CONFIG_PKG_USING_ULAPACK is not set # CONFIG_PKG_USING_QUEST is not set # CONFIG_PKG_USING_NAXOS is not set -# CONFIG_PKG_USING_R_TINYMAIX is not set # # Signal Processing and Control Algorithm Packages @@ -885,7 +882,6 @@ CONFIG_RT_USING_ADT_REF=y # CONFIG_PKG_USING_UKAL is not set # CONFIG_PKG_USING_DIGITALCTRL is not set # CONFIG_PKG_USING_KISSFFT is not set -# CONFIG_PKG_USING_CMSIS_DSP is not set # # miscellaneous packages @@ -923,7 +919,6 @@ CONFIG_RT_USING_ADT_REF=y # CONFIG_PKG_USING_MINILZO is not set # CONFIG_PKG_USING_QUICKLZ is not set # CONFIG_PKG_USING_LZMA is not set -# CONFIG_PKG_USING_RALARAM is not set # CONFIG_PKG_USING_MULTIBUTTON is not set # CONFIG_PKG_USING_FLEXIBLE_BUTTON is not set # CONFIG_PKG_USING_CANFESTIVAL is not set @@ -1108,7 +1103,6 @@ CONFIG_RT_USING_ADT_REF=y # # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_GFX_LIBRARY is not set # CONFIG_PKG_USING_ARDUINO_U8G2 is not set -# CONFIG_PKG_USING_ARDUINO_TFT_ESPI is not set # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_ST7735 is not set # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_SSD1306 is not set # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_ILI9341 is not set @@ -1117,7 +1111,6 @@ CONFIG_RT_USING_ADT_REF=y # # Timing # -# CONFIG_PKG_USING_ARDUINO_RTCLIB is not set # CONFIG_PKG_USING_ARDUINO_MSTIMER2 is not set # CONFIG_PKG_USING_ARDUINO_TICKER is not set # CONFIG_PKG_USING_ARDUINO_TASKSCHEDULER is not set @@ -1154,6 +1147,7 @@ CONFIG_RT_USING_ADT_REF=y # # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_MFRC630 is not set # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_SI5351 is not set +# CONFIG_PKG_USING_ARDUINO_RTCLIB is not set # # Signal IO @@ -1181,21 +1175,49 @@ CONFIG_RT_USING_ADT_REF=y # CONFIG_BSP_USING_IOPAD=y CONFIG_BSP_USING_UART=y +CONFIG_RT_USING_UART0=y CONFIG_RT_USING_UART1=y -# CONFIG_RT_USING_UART0 is not set -# CONFIG_BSP_USING_SPI is not set +# CONFIG_RT_USING_UART2 is not set +# CONFIG_RT_USING_UART3 is not set +CONFIG_BSP_USING_SPI=y +CONFIG_RT_USING_SPIM0=y +# CONFIG_RT_USING_SPIM1 is not set +# CONFIG_RT_USING_SPIM2 is not set +# CONFIG_RT_USING_SPIM3 is not set # CONFIG_BSP_USING_CAN is not set -# CONFIG_BSP_USING_GPIO is not set +CONFIG_BSP_USING_GPIO=y # CONFIG_BSP_USING_QSPI is not set -# CONFIG_BSP_USING_ETH is not set -# CONFIG_BSP_USING_PWM is not set -# CONFIG_BSP_USING_I2C is not set -CONFIG_BSP_USING_SDIF=y -CONFIG_BSP_USING_SDCARD_FATFS=y -CONFIG_BSP_USING_SDCARD_PARTITION="sd1" -CONFIG_USING_SDIF0=y -# CONFIG_USING_SDIF1 is not set -# CONFIG_USING_EMMC is not set +CONFIG_BSP_USING_ETH=y +CONFIG_RT_LWIP_PBUF_POOL_BUFSIZE=1700 +CONFIG_BSP_USING_PWM=y +# CONFIG_RT_USING_PWM0 is not set +# CONFIG_RT_USING_PWM1 is not set +CONFIG_RT_USING_PWM2=y +# CONFIG_RT_USING_PWM3 is not set +# CONFIG_RT_USING_PWM4 is not set +# CONFIG_RT_USING_PWM5 is not set +# CONFIG_RT_USING_PWM6 is not set +# CONFIG_RT_USING_PWM7 is not set +CONFIG_BSP_USING_I2C=y +CONFIG_I2C_USE_MIO=y +CONFIG_RT_USING_MIO0=y +CONFIG_RT_USING_MIO1=y +# CONFIG_RT_USING_MIO2 is not set +# CONFIG_RT_USING_MIO3 is not set +# CONFIG_RT_USING_MIO4 is not set +# CONFIG_RT_USING_MIO5 is not set +# CONFIG_RT_USING_MIO6 is not set +# CONFIG_RT_USING_MIO7 is not set +# CONFIG_RT_USING_MIO8 is not set +# CONFIG_RT_USING_MIO9 is not set +# CONFIG_RT_USING_MIO10 is not set +# CONFIG_RT_USING_MIO11 is not set +# CONFIG_RT_USING_MIO12 is not set +# CONFIG_RT_USING_MIO13 is not set +# CONFIG_RT_USING_MIO14 is not set +# CONFIG_RT_USING_MIO15 is not set +# CONFIG_I2C_USE_CONTROLLER is not set +# CONFIG_BSP_USING_SDIF is not set # # Board extended module Drivers diff --git a/bsp/phytium/aarch32/configs/phytium_pi_rtthread.h b/bsp/phytium/aarch32/configs/phytium_pi_rtthread.h index e38d0cac17..8625ec3df3 100644 --- a/bsp/phytium/aarch32/configs/phytium_pi_rtthread.h +++ b/bsp/phytium/aarch32/configs/phytium_pi_rtthread.h @@ -7,8 +7,7 @@ /* RT-Thread Kernel */ #define RT_NAME_MAX 16 -#define RT_USING_SMP -#define RT_CPUS_NR 4 +#define RT_CPUS_NR 1 #define RT_ALIGN_SIZE 4 #define RT_THREAD_PRIORITY_32 #define RT_THREAD_PRIORITY_MAX 32 @@ -19,7 +18,6 @@ #define RT_USING_IDLE_HOOK #define RT_IDLE_HOOK_LIST_SIZE 4 #define IDLE_THREAD_STACK_SIZE 4096 -#define SYSTEM_THREAD_STACK_SIZE 4096 #define RT_USING_TIMER_SOFT #define RT_TIMER_THREAD_PRIO 4 #define RT_TIMER_THREAD_STACK_SIZE 4096 @@ -31,7 +29,6 @@ #define RT_USING_DEBUG #define RT_DEBUGING_COLOR #define RT_DEBUGING_CONTEXT -#define RT_DEBUGING_INIT /* Inter-Thread communication */ @@ -126,9 +123,15 @@ #define RT_USING_SERIAL_V1 #define RT_SERIAL_USING_DMA #define RT_SERIAL_RB_BUFSZ 1024 +#define RT_USING_CAN +#define RT_CAN_USING_CANFD +#define RT_USING_I2C +#define RT_USING_I2C_BITOPS +#define RT_USING_PIN #define RT_USING_NULL #define RT_USING_ZERO #define RT_USING_RANDOM +#define RT_USING_PWM #define RT_USING_RTC #define RT_USING_SDIO #define RT_SDIO_STACK_SIZE 4096 @@ -136,6 +139,8 @@ #define RT_MMCSD_STACK_SIZE 4096 #define RT_MMCSD_THREAD_PREORITY 22 #define RT_MMCSD_MAX_PARTITION 16 +#define RT_USING_SPI +#define RT_USING_QSPI #define RT_USING_DEV_BUS #define RT_USING_KTIME @@ -144,6 +149,7 @@ /* C/C++ and POSIX layer */ + /* ISO-ANSI C layer */ /* Timezone and Daylight Saving Time */ @@ -249,6 +255,9 @@ /* Memory management */ +/* Memory protection */ + + /* RT-Thread Utestcases */ @@ -265,9 +274,6 @@ /* Wiced WiFi */ -/* CYW43012 WiFi */ - - /* IoT Cloud */ @@ -375,11 +381,19 @@ #define BSP_USING_IOPAD #define BSP_USING_UART +#define RT_USING_UART0 #define RT_USING_UART1 -#define BSP_USING_SDIF -#define BSP_USING_SDCARD_FATFS -#define BSP_USING_SDCARD_PARTITION "sd1" -#define USING_SDIF0 +#define BSP_USING_SPI +#define RT_USING_SPIM0 +#define BSP_USING_GPIO +#define BSP_USING_ETH +#define RT_LWIP_PBUF_POOL_BUFSIZE 1700 +#define BSP_USING_PWM +#define RT_USING_PWM2 +#define BSP_USING_I2C +#define I2C_USE_MIO +#define RT_USING_MIO0 +#define RT_USING_MIO1 /* Board extended module Drivers */ diff --git a/bsp/phytium/aarch32/figures/1682477587050.png b/bsp/phytium/aarch32/figures/rtsmart_config.png similarity index 100% rename from bsp/phytium/aarch32/figures/1682477587050.png rename to bsp/phytium/aarch32/figures/rtsmart_config.png diff --git a/bsp/phytium/aarch32/rtconfig.h b/bsp/phytium/aarch32/rtconfig.h index e38d0cac17..b3dd703e38 100644 --- a/bsp/phytium/aarch32/rtconfig.h +++ b/bsp/phytium/aarch32/rtconfig.h @@ -7,8 +7,8 @@ /* RT-Thread Kernel */ #define RT_NAME_MAX 16 -#define RT_USING_SMP -#define RT_CPUS_NR 4 +#define RT_USING_SMART +#define RT_CPUS_NR 1 #define RT_ALIGN_SIZE 4 #define RT_THREAD_PRIORITY_32 #define RT_THREAD_PRIORITY_MAX 32 @@ -19,7 +19,6 @@ #define RT_USING_IDLE_HOOK #define RT_IDLE_HOOK_LIST_SIZE 4 #define IDLE_THREAD_STACK_SIZE 4096 -#define SYSTEM_THREAD_STACK_SIZE 4096 #define RT_USING_TIMER_SOFT #define RT_TIMER_THREAD_PRIO 4 #define RT_TIMER_THREAD_STACK_SIZE 4096 @@ -31,7 +30,6 @@ #define RT_USING_DEBUG #define RT_DEBUGING_COLOR #define RT_DEBUGING_CONTEXT -#define RT_DEBUGING_INIT /* Inter-Thread communication */ @@ -63,6 +61,7 @@ #define ARCH_MM_MMU #define ARCH_ARM #define ARCH_ARM_MMU +#define KERNEL_VADDR_START 0xc0000000 #define ARCH_ARM_CORTEX_A #define RT_USING_GIC_V3 @@ -114,6 +113,14 @@ #define RT_USING_DFS_DEVFS #define RT_USING_DFS_RAMFS #define RT_USING_DFS_MQUEUE +#define RT_USING_LWP +#define RT_LWP_MAX_NR 30 +#define LWP_TASK_STACK_SIZE 16384 +#define RT_CH_MSG_MAX_NR 1024 +#define LWP_CONSOLE_INPUT_BUFFER_SIZE 1024 +#define LWP_TID_MAX_NR 64 +#define LWP_ENABLE_ASID +#define RT_LWP_SHM_MAX_NR 64 /* Device Drivers */ @@ -126,9 +133,17 @@ #define RT_USING_SERIAL_V1 #define RT_SERIAL_USING_DMA #define RT_SERIAL_RB_BUFSZ 1024 +#define RT_USING_TTY +#define RT_USING_CAN +#define RT_CAN_USING_HDR +#define RT_CAN_USING_CANFD +#define RT_USING_I2C +#define RT_USING_I2C_BITOPS +#define RT_USING_PIN #define RT_USING_NULL #define RT_USING_ZERO #define RT_USING_RANDOM +#define RT_USING_PWM #define RT_USING_RTC #define RT_USING_SDIO #define RT_SDIO_STACK_SIZE 4096 @@ -136,6 +151,8 @@ #define RT_MMCSD_STACK_SIZE 4096 #define RT_MMCSD_THREAD_PREORITY 22 #define RT_MMCSD_MAX_PARTITION 16 +#define RT_USING_SPI +#define RT_USING_QSPI #define RT_USING_DEV_BUS #define RT_USING_KTIME @@ -144,6 +161,7 @@ /* C/C++ and POSIX layer */ + /* ISO-ANSI C layer */ /* Timezone and Daylight Saving Time */ @@ -249,6 +267,9 @@ /* Memory management */ +/* Memory protection */ + + /* RT-Thread Utestcases */ @@ -265,9 +286,6 @@ /* Wiced WiFi */ -/* CYW43012 WiFi */ - - /* IoT Cloud */ @@ -375,11 +393,32 @@ #define BSP_USING_IOPAD #define BSP_USING_UART +#define RT_USING_UART0 #define RT_USING_UART1 +#define BSP_USING_SPI +#define RT_USING_SPIM2 +#define BSP_USING_CAN +#define RT_USING_CANFD +#define RT_USING_FILTER +#define RT_USING_CAN0 +#define RT_USING_CAN1 +#define BSP_USING_GPIO +#define BSP_USING_QSPI +#define RT_USING_QSPI0 +#define USING_QSPI_CHANNEL0 +#define BSP_USING_ETH +#define RT_LWIP_PBUF_POOL_BUFSIZE 1700 +#define BSP_USING_PWM +#define RT_USING_PWM6 +#define BSP_USING_I2C +#define I2C_USE_MIO +#define RT_USING_MIO15 +#define I2C_USE_CONTROLLER +#define RT_USING_I2C0 #define BSP_USING_SDIF #define BSP_USING_SDCARD_FATFS -#define BSP_USING_SDCARD_PARTITION "sd1" -#define USING_SDIF0 +#define BSP_USING_SDCARD_PARTITION "sd0" +#define USING_SDIF1 /* Board extended module Drivers */ @@ -392,9 +431,10 @@ /* Soc configuration */ -#define TARGET_PHYTIUMPI -#define SOC_NAME "phytiumpi" -#define SOC_CORE_NUM 4 +#define TARGET_E2000D +#define SOC_NAME "e2000" +#define TARGET_TYPE_NAME "d" +#define SOC_CORE_NUM 2 #define F32BIT_MEMORY_ADDRESS 0x80000000 #define F32BIT_MEMORY_LENGTH 0x80000000 #define F64BIT_MEMORY_ADDRESS 0x2000000000 @@ -404,8 +444,8 @@ /* Board Configuration */ -#define BOARD_NAME "firefly" -#define FIREFLY_DEMO_BOARD +#define E2000D_DEMO_BOARD +#define BOARD_NAME "demo" /* IO mux configuration when board start up */ diff --git a/bsp/phytium/aarch64/.config b/bsp/phytium/aarch64/.config index c65e8998d2..1b76defef5 100644 --- a/bsp/phytium/aarch64/.config +++ b/bsp/phytium/aarch64/.config @@ -24,6 +24,7 @@ CONFIG_RT_HOOK_USING_FUNC_PTR=y CONFIG_RT_USING_IDLE_HOOK=y CONFIG_RT_IDLE_HOOK_LIST_SIZE=4 CONFIG_IDLE_THREAD_STACK_SIZE=8192 +CONFIG_SYSTEM_THREAD_STACK_SIZE=8192 CONFIG_RT_USING_TIMER_SOFT=y CONFIG_RT_TIMER_THREAD_PRIO=4 CONFIG_RT_TIMER_THREAD_STACK_SIZE=8192 @@ -39,8 +40,9 @@ CONFIG_RT_KPRINTF_USING_LONGLONG=y CONFIG_RT_USING_DEBUG=y CONFIG_RT_DEBUGING_COLOR=y CONFIG_RT_DEBUGING_CONTEXT=y -CONFIG_RT_DEBUGING_INIT=y +# CONFIG_RT_DEBUGING_AUTO_INIT is not set # CONFIG_RT_DEBUGING_PAGE_LEAK is not set +# CONFIG_RT_DEBUGING_SPINLOCK is not set # # Inter-Thread communication @@ -90,10 +92,10 @@ CONFIG_ARCH_SECONDARY_CPU_STACK_SIZE=4096 CONFIG_ARCH_HAVE_EFFICIENT_UNALIGNED_ACCESS=y CONFIG_ARCH_CPU_64BIT=y CONFIG_RT_USING_CACHE=y -# CONFIG_RT_USING_HW_ATOMIC is not set +CONFIG_RT_USING_HW_ATOMIC=y CONFIG_ARCH_ARM_BOOTWITH_FLUSH_CACHE=y # CONFIG_ARCH_CPU_STACK_GROWS_UPWARD is not set -# CONFIG_RT_USING_CPU_FFS is not set +CONFIG_RT_USING_CPU_FFS=y CONFIG_ARCH_MM_MMU=y CONFIG_ARCH_ARM=y CONFIG_ARCH_ARM_MMU=y @@ -159,6 +161,7 @@ CONFIG_RT_DFS_ELM_MAX_SECTOR_SIZE=512 # CONFIG_RT_DFS_ELM_USE_ERASE is not set CONFIG_RT_DFS_ELM_REENTRANT=y CONFIG_RT_DFS_ELM_MUTEX_TIMEOUT=3000 +# CONFIG_RT_DFS_ELM_USE_EXFAT is not set CONFIG_RT_USING_DFS_DEVFS=y # CONFIG_RT_USING_DFS_ROMFS is not set # CONFIG_RT_USING_DFS_CROMFS is not set @@ -182,18 +185,24 @@ CONFIG_RT_USING_SERIAL_V1=y # CONFIG_RT_USING_SERIAL_V2 is not set CONFIG_RT_SERIAL_USING_DMA=y CONFIG_RT_SERIAL_RB_BUFSZ=64 -# CONFIG_RT_USING_CAN is not set +CONFIG_RT_USING_CAN=y +CONFIG_RT_CAN_USING_HDR=y +CONFIG_RT_CAN_USING_CANFD=y # CONFIG_RT_USING_HWTIMER is not set # CONFIG_RT_USING_CPUTIME is not set -# CONFIG_RT_USING_I2C is not set +CONFIG_RT_USING_I2C=y +# CONFIG_RT_I2C_DEBUG is not set +CONFIG_RT_USING_I2C_BITOPS=y +# CONFIG_RT_I2C_BITOPS_DEBUG is not set +# CONFIG_RT_USING_SOFT_I2C is not set # CONFIG_RT_USING_PHY is not set -# CONFIG_RT_USING_PIN is not set +CONFIG_RT_USING_PIN=y # CONFIG_RT_USING_ADC is not set # CONFIG_RT_USING_DAC is not set CONFIG_RT_USING_NULL=y CONFIG_RT_USING_ZERO=y CONFIG_RT_USING_RANDOM=y -# CONFIG_RT_USING_PWM is not set +CONFIG_RT_USING_PWM=y # CONFIG_RT_USING_MTD_NOR is not set # CONFIG_RT_USING_MTD_NAND is not set # CONFIG_RT_USING_PM is not set @@ -207,7 +216,13 @@ CONFIG_RT_MMCSD_STACK_SIZE=8192 CONFIG_RT_MMCSD_THREAD_PREORITY=22 CONFIG_RT_MMCSD_MAX_PARTITION=16 # CONFIG_RT_SDIO_DEBUG is not set -# CONFIG_RT_USING_SPI is not set +CONFIG_RT_USING_SPI=y +# CONFIG_RT_USING_SPI_BITOPS is not set +CONFIG_RT_USING_QSPI=y +# CONFIG_RT_USING_SPI_MSD is not set +# CONFIG_RT_USING_SFUD is not set +# CONFIG_RT_USING_ENC28J60 is not set +# CONFIG_RT_USING_SPI_WIFI is not set # CONFIG_RT_USING_WDT is not set # CONFIG_RT_USING_AUDIO is not set # CONFIG_RT_USING_SENSOR is not set @@ -216,7 +231,7 @@ CONFIG_RT_MMCSD_MAX_PARTITION=16 # CONFIG_RT_USING_HWCRYPTO is not set # CONFIG_RT_USING_PULSE_ENCODER is not set # CONFIG_RT_USING_INPUT_CAPTURE is not set -# CONFIG_RT_USING_DEV_BUS is not set +CONFIG_RT_USING_DEV_BUS=y # CONFIG_RT_USING_WIFI is not set # CONFIG_RT_USING_VIRTIO is not set CONFIG_RT_USING_KTIME=y @@ -231,6 +246,7 @@ CONFIG_RT_USING_KTIME=y # # C/C++ and POSIX layer # +# CONFIG_RT_USING_INTERNAL_LIBC_ONLY is not set # # ISO-ANSI C layer @@ -409,6 +425,12 @@ CONFIG_RT_USING_ADT_REF=y # # CONFIG_RT_USING_MEMBLOCK is not set +# +# Memory protection +# +# CONFIG_RT_USING_MEM_PROTECTION is not set +# CONFIG_RT_USING_HW_STACK_GUARD is not set + # # RT-Thread Utestcases # @@ -449,11 +471,6 @@ CONFIG_RT_USING_ADT_REF=y # # CONFIG_PKG_USING_WLAN_WICED is not set # CONFIG_PKG_USING_RW007 is not set - -# -# CYW43012 WiFi -# -# CONFIG_PKG_USING_WLAN_CYW43012 is not set # CONFIG_PKG_USING_COAP is not set # CONFIG_PKG_USING_NOPOLL is not set # CONFIG_PKG_USING_NETUTILS is not set @@ -496,7 +513,6 @@ CONFIG_RT_USING_ADT_REF=y # CONFIG_PKG_USING_NMEALIB is not set # CONFIG_PKG_USING_PDULIB is not set # CONFIG_PKG_USING_BTSTACK is not set -# CONFIG_PKG_USING_BT_CYW43012 is not set # CONFIG_PKG_USING_LORAWAN_ED_STACK is not set # CONFIG_PKG_USING_WAYZ_IOTKIT is not set # CONFIG_PKG_USING_MAVLINK is not set @@ -516,8 +532,6 @@ CONFIG_RT_USING_ADT_REF=y # CONFIG_PKG_USING_ZFTP is not set # CONFIG_PKG_USING_WOL is not set # CONFIG_PKG_USING_ZEPHYR_POLLING is not set -# CONFIG_PKG_USING_MATTER_ADAPTATION_LAYER is not set -# CONFIG_PKG_USING_LHC_MODBUS is not set # # security packages @@ -564,6 +578,7 @@ CONFIG_RT_USING_ADT_REF=y # LVGL: powerful and easy-to-use embedded GUI library # # CONFIG_PKG_USING_LVGL is not set +# CONFIG_PKG_USING_LITTLEVGL2RTT is not set # CONFIG_PKG_USING_LV_MUSIC_DEMO is not set # CONFIG_PKG_USING_GUI_GUIDER_DEMO is not set @@ -638,7 +653,6 @@ CONFIG_RT_USING_ADT_REF=y # CONFIG_PKG_USING_HASH_MATCH is not set # CONFIG_PKG_USING_ARMV7M_DWT_TOOL is not set # CONFIG_PKG_USING_VOFA_PLUS is not set -# CONFIG_PKG_USING_ZDEBUG is not set # # system packages @@ -675,8 +689,6 @@ CONFIG_RT_USING_ADT_REF=y # CONFIG_PKG_USING_UC_COMMON is not set # CONFIG_PKG_USING_UC_MODBUS is not set # CONFIG_PKG_USING_FREERTOS_WRAPPER is not set -# CONFIG_PKG_USING_LITEOS_SDK is not set -# CONFIG_PKG_USING_TZ_DATABASE is not set # CONFIG_PKG_USING_CAIRO is not set # CONFIG_PKG_USING_PIXMAN is not set # CONFIG_PKG_USING_PARTITION is not set @@ -700,7 +712,6 @@ CONFIG_RT_USING_ADT_REF=y # CONFIG_PKG_USING_QBOOT is not set # CONFIG_PKG_USING_PPOOL is not set # CONFIG_PKG_USING_OPENAMP is not set -# CONFIG_PKG_USING_RPMSG_LITE is not set # CONFIG_PKG_USING_LPM is not set # CONFIG_PKG_USING_TLSF is not set # CONFIG_PKG_USING_EVENT_RECORDER is not set @@ -714,11 +725,6 @@ CONFIG_RT_USING_ADT_REF=y # CONFIG_PKG_USING_AGILE_UPGRADE is not set # CONFIG_PKG_USING_FLASH_BLOB is not set # CONFIG_PKG_USING_MLIBC is not set -# CONFIG_PKG_USING_TASK_MSG_BUS is not set -# CONFIG_PKG_USING_SFDB is not set -# CONFIG_PKG_USING_RTP is not set -# CONFIG_PKG_USING_REB is not set -# CONFIG_PKG_USING_R_RHEALSTONE is not set # # peripheral libraries and drivers @@ -783,7 +789,6 @@ CONFIG_RT_USING_ADT_REF=y # CONFIG_PKG_USING_BALANCE is not set # CONFIG_PKG_USING_SHT2X is not set # CONFIG_PKG_USING_SHT3X is not set -# CONFIG_PKG_USING_SHT4X is not set # CONFIG_PKG_USING_AD7746 is not set # CONFIG_PKG_USING_ADT74XX is not set # CONFIG_PKG_USING_MAX17048 is not set @@ -884,10 +889,6 @@ CONFIG_RT_USING_ADT_REF=y # CONFIG_PKG_USING_FINGERPRINT is not set # CONFIG_PKG_USING_BT_ECB02C is not set # CONFIG_PKG_USING_UAT is not set -# CONFIG_PKG_USING_ST7789 is not set -# CONFIG_PKG_USING_VS1003 is not set -# CONFIG_PKG_USING_X9555 is not set -# CONFIG_PKG_USING_SYSTEM_RUN_LED is not set # CONFIG_PKG_USING_SPI_TOOLS is not set # @@ -903,7 +904,6 @@ CONFIG_RT_USING_ADT_REF=y # CONFIG_PKG_USING_QUEST is not set # CONFIG_PKG_USING_NAXOS is not set # CONFIG_PKG_USING_NCNN is not set -# CONFIG_PKG_USING_R_TINYMAIX is not set # # Signal Processing and Control Algorithm Packages @@ -974,7 +974,6 @@ CONFIG_PKG_USING_KERNEL_SAMPLES_EN=y # CONFIG_PKG_USING_MINILZO is not set # CONFIG_PKG_USING_QUICKLZ is not set # CONFIG_PKG_USING_LZMA is not set -# CONFIG_PKG_USING_RALARAM is not set # CONFIG_PKG_USING_MULTIBUTTON is not set # CONFIG_PKG_USING_FLEXIBLE_BUTTON is not set # CONFIG_PKG_USING_CANFESTIVAL is not set @@ -1159,7 +1158,6 @@ CONFIG_PKG_USING_KERNEL_SAMPLES_EN=y # # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_GFX_LIBRARY is not set # CONFIG_PKG_USING_ARDUINO_U8G2 is not set -# CONFIG_PKG_USING_ARDUINO_TFT_ESPI is not set # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_ST7735 is not set # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_SSD1306 is not set # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_ILI9341 is not set @@ -1168,7 +1166,6 @@ CONFIG_PKG_USING_KERNEL_SAMPLES_EN=y # # Timing # -# CONFIG_PKG_USING_ARDUINO_RTCLIB is not set # CONFIG_PKG_USING_ARDUINO_MSTIMER2 is not set # CONFIG_PKG_USING_ARDUINO_TICKER is not set # CONFIG_PKG_USING_ARDUINO_TASKSCHEDULER is not set @@ -1205,6 +1202,7 @@ CONFIG_PKG_USING_KERNEL_SAMPLES_EN=y # # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_MFRC630 is not set # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_SI5351 is not set +# CONFIG_PKG_USING_ARDUINO_RTCLIB is not set # # Signal IO @@ -1225,27 +1223,67 @@ CONFIG_PKG_USING_KERNEL_SAMPLES_EN=y # # Hardware Drivers # -CONFIG_DRV_DEBUG=y +# CONFIG_DRV_DEBUG is not set # # On-chip Peripheral Drivers # CONFIG_BSP_USING_IOPAD=y CONFIG_BSP_USING_UART=y +CONFIG_RT_USING_UART0=y CONFIG_RT_USING_UART1=y -# CONFIG_RT_USING_UART0 is not set -# CONFIG_BSP_USING_SPI is not set -# CONFIG_BSP_USING_CAN is not set -# CONFIG_BSP_USING_GPIO is not set -# CONFIG_BSP_USING_QSPI is not set -# CONFIG_BSP_USING_ETH is not set -# CONFIG_BSP_USING_PWM is not set -# CONFIG_BSP_USING_I2C is not set +# CONFIG_RT_USING_UART2 is not set +# CONFIG_RT_USING_UART3 is not set +CONFIG_BSP_USING_SPI=y +CONFIG_RT_USING_SPIM0=y +CONFIG_RT_USING_SPIM1=y +CONFIG_RT_USING_SPIM2=y +CONFIG_RT_USING_SPIM3=y +CONFIG_BSP_USING_CAN=y +CONFIG_RT_USING_CANFD=y +CONFIG_RT_USING_FILTER=y +CONFIG_RT_USING_CAN0=y +CONFIG_RT_USING_CAN1=y +CONFIG_BSP_USING_GPIO=y +CONFIG_BSP_USING_QSPI=y +CONFIG_RT_USING_QSPI0=y +CONFIG_USING_QSPI_CHANNEL0=y +# CONFIG_USING_QSPI_CHANNEL1 is not set +CONFIG_BSP_USING_ETH=y +CONFIG_RT_LWIP_PBUF_POOL_BUFSIZE=1700 +CONFIG_BSP_USING_PWM=y +# CONFIG_RT_USING_PWM0 is not set +# CONFIG_RT_USING_PWM1 is not set +# CONFIG_RT_USING_PWM2 is not set +# CONFIG_RT_USING_PWM3 is not set +# CONFIG_RT_USING_PWM4 is not set +# CONFIG_RT_USING_PWM5 is not set +CONFIG_RT_USING_PWM6=y +# CONFIG_RT_USING_PWM7 is not set +CONFIG_BSP_USING_I2C=y +CONFIG_I2C_USE_MIO=y +# CONFIG_RT_USING_MIO0 is not set +# CONFIG_RT_USING_MIO1 is not set +# CONFIG_RT_USING_MIO2 is not set +# CONFIG_RT_USING_MIO3 is not set +# CONFIG_RT_USING_MIO4 is not set +# CONFIG_RT_USING_MIO5 is not set +# CONFIG_RT_USING_MIO6 is not set +# CONFIG_RT_USING_MIO7 is not set +# CONFIG_RT_USING_MIO8 is not set +# CONFIG_RT_USING_MIO9 is not set +# CONFIG_RT_USING_MIO10 is not set +# CONFIG_RT_USING_MIO11 is not set +# CONFIG_RT_USING_MIO12 is not set +# CONFIG_RT_USING_MIO13 is not set +# CONFIG_RT_USING_MIO14 is not set +CONFIG_RT_USING_MIO15=y +# CONFIG_I2C_USE_CONTROLLER is not set CONFIG_BSP_USING_SDIF=y CONFIG_BSP_USING_SDCARD_FATFS=y -CONFIG_BSP_USING_SDCARD_PARTITION="sd1" -CONFIG_USING_SDIF0=y -# CONFIG_USING_SDIF1 is not set +CONFIG_BSP_USING_SDCARD_PARTITION="sd0" +# CONFIG_USING_SDIF0 is not set +CONFIG_USING_SDIF1=y # CONFIG_USING_EMMC is not set # @@ -1264,13 +1302,14 @@ CONFIG_TARGET_ARMV8_AARCH64=y # # Soc configuration # -CONFIG_TARGET_PHYTIUMPI=y -# CONFIG_TARGET_E2000Q is not set +# CONFIG_TARGET_PHYTIUMPI is not set +CONFIG_TARGET_E2000Q=y # CONFIG_TARGET_E2000D is not set # CONFIG_TARGET_E2000S is not set # CONFIG_TARGET_FT2004 is not set # CONFIG_TARGET_D2000 is not set -CONFIG_SOC_NAME="phytiumpi" +CONFIG_SOC_NAME="e2000" +CONFIG_TARGET_TYPE_NAME="q" CONFIG_SOC_CORE_NUM=4 CONFIG_F32BIT_MEMORY_ADDRESS=0x80000000 CONFIG_F32BIT_MEMORY_LENGTH=0x80000000 @@ -1285,7 +1324,7 @@ CONFIG_DEFAULT_DEBUG_PRINT_UART1=y # # Board Configuration # -CONFIG_BOARD_NAME="firefly" +CONFIG_BOARD_NAME="demo" # CONFIG_USE_SPI_IOPAD is not set # CONFIG_USE_GPIO_IOPAD is not set # CONFIG_USE_CAN_IOPAD is not set @@ -1295,8 +1334,7 @@ CONFIG_BOARD_NAME="firefly" # CONFIG_USE_TACHO_IOPAD is not set # CONFIG_USE_UART_IOPAD is not set # CONFIG_USE_THIRD_PARTY_IOPAD is not set -# CONFIG_E2000Q_DEMO_BOARD is not set -CONFIG_FIREFLY_DEMO_BOARD=y +CONFIG_E2000Q_DEMO_BOARD=y # # IO mux configuration when board start up diff --git a/bsp/phytium/aarch64/Kconfig b/bsp/phytium/aarch64/Kconfig index fa6a1d92bc..7b11064382 100644 --- a/bsp/phytium/aarch64/Kconfig +++ b/bsp/phytium/aarch64/Kconfig @@ -40,6 +40,7 @@ config PHYTIUM_ARCH_AARCH64 select RT_USING_CACHE select TARGET_ARMV8_AARCH64 select ARCH_ARM_BOOTWITH_FLUSH_CACHE + select RT_USING_HW_ATOMIC default y diff --git a/bsp/phytium/aarch64/README.md b/bsp/phytium/aarch64/README.md index 8970153bbd..eae008b01a 100644 --- a/bsp/phytium/aarch64/README.md +++ b/bsp/phytium/aarch64/README.md @@ -88,7 +88,7 @@ Hardware Drivers Config > On-chip Peripheral Drivers scons --menuconfig ``` -![1682474861110](./figures/1682474861110.png) +![rtsmart_config](./figures/rtsmart_config.png) 开发者通过以上配置开启RT-Thread Smart 功能 @@ -164,17 +164,17 @@ config BSP_DIR option env="BSP_ROOT" default "." -config STANDALONE_DIR +config SDK_DIR string - option env="STANDALONE_DIR" - default "libraries/standalone" + option env="SDK_DIR" + default "./libraries/phytium_standalone_sdk" ``` - 输入 menuconfig 和 scons 完成编译 ## 9. 将工程导入 RT-Studio -- 在 RT-Studio 使用功能 `RT-Thread Bsp 到工作空间`,导入 5. 中导出的 BSP 工程 +- 在 RT-Studio 使用功能 `RT-Thread Bsp 到工作空间`,导入 8. 中导出的 BSP 工程 - 设置 BSP 工程的交叉编译链后进行后续开发 ![](./figures/import_project.png) diff --git a/bsp/phytium/aarch64/SConstruct b/bsp/phytium/aarch64/SConstruct index d2e1216988..1ec38ffa6b 100644 --- a/bsp/phytium/aarch64/SConstruct +++ b/bsp/phytium/aarch64/SConstruct @@ -54,6 +54,8 @@ def install_phytium_sdk(): print("Checking for the presence of phytium_standalone_sdk_install.py script...") sconstruct_dir = os.getcwd() install_script_path = os.path.join(sconstruct_dir, "phytium_standalone_sdk_install.py") + if os.path.exists(install_script_path): + subprocess.call(["rm","-rf", install_script_path]) try: subprocess.call(["wget", "https://gitee.com/phytium_embedded/phytium-standalone-sdk/raw/Standalone-Sdk_RT-thread/phytium_standalone_sdk_install.py"]) diff --git a/bsp/phytium/aarch64/configs/e2000d_demo_rtsmart b/bsp/phytium/aarch64/configs/e2000d_demo_rtsmart index 0138e55864..7226f68dd5 100644 --- a/bsp/phytium/aarch64/configs/e2000d_demo_rtsmart +++ b/bsp/phytium/aarch64/configs/e2000d_demo_rtsmart @@ -40,8 +40,9 @@ CONFIG_RT_KPRINTF_USING_LONGLONG=y CONFIG_RT_USING_DEBUG=y CONFIG_RT_DEBUGING_COLOR=y CONFIG_RT_DEBUGING_CONTEXT=y -CONFIG_RT_DEBUGING_INIT=y +# CONFIG_RT_DEBUGING_AUTO_INIT is not set # CONFIG_RT_DEBUGING_PAGE_LEAK is not set +# CONFIG_RT_DEBUGING_SPINLOCK is not set # # Inter-Thread communication @@ -91,10 +92,10 @@ CONFIG_ARCH_SECONDARY_CPU_STACK_SIZE=4096 CONFIG_ARCH_HAVE_EFFICIENT_UNALIGNED_ACCESS=y CONFIG_ARCH_CPU_64BIT=y CONFIG_RT_USING_CACHE=y -# CONFIG_RT_USING_HW_ATOMIC is not set +CONFIG_RT_USING_HW_ATOMIC=y CONFIG_ARCH_ARM_BOOTWITH_FLUSH_CACHE=y # CONFIG_ARCH_CPU_STACK_GROWS_UPWARD is not set -# CONFIG_RT_USING_CPU_FFS is not set +CONFIG_RT_USING_CPU_FFS=y CONFIG_ARCH_MM_MMU=y CONFIG_ARCH_ARM=y CONFIG_ARCH_ARM_MMU=y @@ -161,6 +162,7 @@ CONFIG_RT_DFS_ELM_MAX_SECTOR_SIZE=512 # CONFIG_RT_DFS_ELM_USE_ERASE is not set CONFIG_RT_DFS_ELM_REENTRANT=y CONFIG_RT_DFS_ELM_MUTEX_TIMEOUT=3000 +# CONFIG_RT_DFS_ELM_USE_EXFAT is not set CONFIG_RT_USING_DFS_DEVFS=y # CONFIG_RT_USING_DFS_ROMFS is not set # CONFIG_RT_USING_DFS_CROMFS is not set @@ -195,26 +197,44 @@ CONFIG_RT_SERIAL_USING_DMA=y CONFIG_RT_SERIAL_RB_BUFSZ=64 CONFIG_RT_USING_TTY=y # CONFIG_RT_TTY_DEBUG is not set -# CONFIG_RT_USING_CAN is not set +CONFIG_RT_USING_CAN=y +CONFIG_RT_CAN_USING_HDR=y +CONFIG_RT_CAN_USING_CANFD=y # CONFIG_RT_USING_HWTIMER is not set # CONFIG_RT_USING_CPUTIME is not set -# CONFIG_RT_USING_I2C is not set +CONFIG_RT_USING_I2C=y +# CONFIG_RT_I2C_DEBUG is not set +CONFIG_RT_USING_I2C_BITOPS=y +# CONFIG_RT_I2C_BITOPS_DEBUG is not set +# CONFIG_RT_USING_SOFT_I2C is not set # CONFIG_RT_USING_PHY is not set -# CONFIG_RT_USING_PIN is not set +CONFIG_RT_USING_PIN=y # CONFIG_RT_USING_ADC is not set # CONFIG_RT_USING_DAC is not set CONFIG_RT_USING_NULL=y CONFIG_RT_USING_ZERO=y CONFIG_RT_USING_RANDOM=y -# CONFIG_RT_USING_PWM is not set +CONFIG_RT_USING_PWM=y # CONFIG_RT_USING_MTD_NOR is not set # CONFIG_RT_USING_MTD_NAND is not set # CONFIG_RT_USING_PM is not set CONFIG_RT_USING_RTC=y # CONFIG_RT_USING_ALARM is not set # CONFIG_RT_USING_SOFT_RTC is not set -# CONFIG_RT_USING_SDIO is not set -# CONFIG_RT_USING_SPI is not set +CONFIG_RT_USING_SDIO=y +CONFIG_RT_SDIO_STACK_SIZE=8192 +CONFIG_RT_SDIO_THREAD_PRIORITY=15 +CONFIG_RT_MMCSD_STACK_SIZE=8192 +CONFIG_RT_MMCSD_THREAD_PREORITY=22 +CONFIG_RT_MMCSD_MAX_PARTITION=16 +# CONFIG_RT_SDIO_DEBUG is not set +CONFIG_RT_USING_SPI=y +# CONFIG_RT_USING_SPI_BITOPS is not set +CONFIG_RT_USING_QSPI=y +# CONFIG_RT_USING_SPI_MSD is not set +# CONFIG_RT_USING_SFUD is not set +# CONFIG_RT_USING_ENC28J60 is not set +# CONFIG_RT_USING_SPI_WIFI is not set # CONFIG_RT_USING_WDT is not set # CONFIG_RT_USING_AUDIO is not set # CONFIG_RT_USING_SENSOR is not set @@ -223,7 +243,7 @@ CONFIG_RT_USING_RTC=y # CONFIG_RT_USING_HWCRYPTO is not set # CONFIG_RT_USING_PULSE_ENCODER is not set # CONFIG_RT_USING_INPUT_CAPTURE is not set -# CONFIG_RT_USING_DEV_BUS is not set +CONFIG_RT_USING_DEV_BUS=y # CONFIG_RT_USING_WIFI is not set # CONFIG_RT_USING_VIRTIO is not set CONFIG_RT_USING_KTIME=y @@ -238,6 +258,7 @@ CONFIG_RT_USING_KTIME=y # # C/C++ and POSIX layer # +# CONFIG_RT_USING_INTERNAL_LIBC_ONLY is not set # # ISO-ANSI C layer @@ -348,7 +369,7 @@ CONFIG_RT_LWIP_TCPTHREAD_STACKSIZE=16184 # CONFIG_LWIP_NO_RX_THREAD is not set # CONFIG_LWIP_NO_TX_THREAD is not set CONFIG_RT_LWIP_ETHTHREAD_PRIORITY=12 -CONFIG_RT_LWIP_ETHTHREAD_STACKSIZE=2048 +CONFIG_RT_LWIP_ETHTHREAD_STACKSIZE=8192 CONFIG_RT_LWIP_ETHTHREAD_MBOX_SIZE=8 # CONFIG_RT_LWIP_REASSEMBLY_FRAG is not set CONFIG_LWIP_NETIF_STATUS_CALLBACK=1 @@ -418,6 +439,12 @@ CONFIG_RT_USING_ADT_REF=y # # CONFIG_RT_USING_MEMBLOCK is not set +# +# Memory protection +# +# CONFIG_RT_USING_MEM_PROTECTION is not set +# CONFIG_RT_USING_HW_STACK_GUARD is not set + # # RT-Thread Utestcases # @@ -458,11 +485,6 @@ CONFIG_RT_USING_ADT_REF=y # # CONFIG_PKG_USING_WLAN_WICED is not set # CONFIG_PKG_USING_RW007 is not set - -# -# CYW43012 WiFi -# -# CONFIG_PKG_USING_WLAN_CYW43012 is not set # CONFIG_PKG_USING_COAP is not set # CONFIG_PKG_USING_NOPOLL is not set # CONFIG_PKG_USING_NETUTILS is not set @@ -505,7 +527,6 @@ CONFIG_RT_USING_ADT_REF=y # CONFIG_PKG_USING_NMEALIB is not set # CONFIG_PKG_USING_PDULIB is not set # CONFIG_PKG_USING_BTSTACK is not set -# CONFIG_PKG_USING_BT_CYW43012 is not set # CONFIG_PKG_USING_LORAWAN_ED_STACK is not set # CONFIG_PKG_USING_WAYZ_IOTKIT is not set # CONFIG_PKG_USING_MAVLINK is not set @@ -525,8 +546,6 @@ CONFIG_RT_USING_ADT_REF=y # CONFIG_PKG_USING_ZFTP is not set # CONFIG_PKG_USING_WOL is not set # CONFIG_PKG_USING_ZEPHYR_POLLING is not set -# CONFIG_PKG_USING_MATTER_ADAPTATION_LAYER is not set -# CONFIG_PKG_USING_LHC_MODBUS is not set # # security packages @@ -573,6 +592,7 @@ CONFIG_RT_USING_ADT_REF=y # LVGL: powerful and easy-to-use embedded GUI library # # CONFIG_PKG_USING_LVGL is not set +# CONFIG_PKG_USING_LITTLEVGL2RTT is not set # CONFIG_PKG_USING_LV_MUSIC_DEMO is not set # CONFIG_PKG_USING_GUI_GUIDER_DEMO is not set @@ -647,7 +667,6 @@ CONFIG_RT_USING_ADT_REF=y # CONFIG_PKG_USING_HASH_MATCH is not set # CONFIG_PKG_USING_ARMV7M_DWT_TOOL is not set # CONFIG_PKG_USING_VOFA_PLUS is not set -# CONFIG_PKG_USING_ZDEBUG is not set # # system packages @@ -684,8 +703,6 @@ CONFIG_RT_USING_ADT_REF=y # CONFIG_PKG_USING_UC_COMMON is not set # CONFIG_PKG_USING_UC_MODBUS is not set # CONFIG_PKG_USING_FREERTOS_WRAPPER is not set -# CONFIG_PKG_USING_LITEOS_SDK is not set -# CONFIG_PKG_USING_TZ_DATABASE is not set # CONFIG_PKG_USING_CAIRO is not set # CONFIG_PKG_USING_PIXMAN is not set # CONFIG_PKG_USING_PARTITION is not set @@ -709,7 +726,6 @@ CONFIG_RT_USING_ADT_REF=y # CONFIG_PKG_USING_QBOOT is not set # CONFIG_PKG_USING_PPOOL is not set # CONFIG_PKG_USING_OPENAMP is not set -# CONFIG_PKG_USING_RPMSG_LITE is not set # CONFIG_PKG_USING_LPM is not set # CONFIG_PKG_USING_TLSF is not set # CONFIG_PKG_USING_EVENT_RECORDER is not set @@ -723,11 +739,6 @@ CONFIG_RT_USING_ADT_REF=y # CONFIG_PKG_USING_AGILE_UPGRADE is not set # CONFIG_PKG_USING_FLASH_BLOB is not set # CONFIG_PKG_USING_MLIBC is not set -# CONFIG_PKG_USING_TASK_MSG_BUS is not set -# CONFIG_PKG_USING_SFDB is not set -# CONFIG_PKG_USING_RTP is not set -# CONFIG_PKG_USING_REB is not set -# CONFIG_PKG_USING_R_RHEALSTONE is not set # # peripheral libraries and drivers @@ -792,7 +803,6 @@ CONFIG_RT_USING_ADT_REF=y # CONFIG_PKG_USING_BALANCE is not set # CONFIG_PKG_USING_SHT2X is not set # CONFIG_PKG_USING_SHT3X is not set -# CONFIG_PKG_USING_SHT4X is not set # CONFIG_PKG_USING_AD7746 is not set # CONFIG_PKG_USING_ADT74XX is not set # CONFIG_PKG_USING_MAX17048 is not set @@ -893,10 +903,6 @@ CONFIG_RT_USING_ADT_REF=y # CONFIG_PKG_USING_FINGERPRINT is not set # CONFIG_PKG_USING_BT_ECB02C is not set # CONFIG_PKG_USING_UAT is not set -# CONFIG_PKG_USING_ST7789 is not set -# CONFIG_PKG_USING_VS1003 is not set -# CONFIG_PKG_USING_X9555 is not set -# CONFIG_PKG_USING_SYSTEM_RUN_LED is not set # CONFIG_PKG_USING_SPI_TOOLS is not set # @@ -912,7 +918,6 @@ CONFIG_RT_USING_ADT_REF=y # CONFIG_PKG_USING_QUEST is not set # CONFIG_PKG_USING_NAXOS is not set # CONFIG_PKG_USING_NCNN is not set -# CONFIG_PKG_USING_R_TINYMAIX is not set # # Signal Processing and Control Algorithm Packages @@ -983,7 +988,6 @@ CONFIG_PKG_USING_KERNEL_SAMPLES_EN=y # CONFIG_PKG_USING_MINILZO is not set # CONFIG_PKG_USING_QUICKLZ is not set # CONFIG_PKG_USING_LZMA is not set -# CONFIG_PKG_USING_RALARAM is not set # CONFIG_PKG_USING_MULTIBUTTON is not set # CONFIG_PKG_USING_FLEXIBLE_BUTTON is not set # CONFIG_PKG_USING_CANFESTIVAL is not set @@ -1168,7 +1172,6 @@ CONFIG_PKG_USING_KERNEL_SAMPLES_EN=y # # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_GFX_LIBRARY is not set # CONFIG_PKG_USING_ARDUINO_U8G2 is not set -# CONFIG_PKG_USING_ARDUINO_TFT_ESPI is not set # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_ST7735 is not set # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_SSD1306 is not set # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_ILI9341 is not set @@ -1177,7 +1180,6 @@ CONFIG_PKG_USING_KERNEL_SAMPLES_EN=y # # Timing # -# CONFIG_PKG_USING_ARDUINO_RTCLIB is not set # CONFIG_PKG_USING_ARDUINO_MSTIMER2 is not set # CONFIG_PKG_USING_ARDUINO_TICKER is not set # CONFIG_PKG_USING_ARDUINO_TASKSCHEDULER is not set @@ -1214,6 +1216,7 @@ CONFIG_PKG_USING_KERNEL_SAMPLES_EN=y # # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_MFRC630 is not set # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_SI5351 is not set +# CONFIG_PKG_USING_ARDUINO_RTCLIB is not set # # Signal IO @@ -1234,23 +1237,68 @@ CONFIG_PKG_USING_KERNEL_SAMPLES_EN=y # # Hardware Drivers # -CONFIG_DRV_DEBUG=y +# CONFIG_DRV_DEBUG is not set # # On-chip Peripheral Drivers # CONFIG_BSP_USING_IOPAD=y CONFIG_BSP_USING_UART=y +CONFIG_RT_USING_UART0=y CONFIG_RT_USING_UART1=y -# CONFIG_RT_USING_UART0 is not set -# CONFIG_BSP_USING_SPI is not set -# CONFIG_BSP_USING_CAN is not set -# CONFIG_BSP_USING_GPIO is not set -# CONFIG_BSP_USING_QSPI is not set -# CONFIG_BSP_USING_ETH is not set -# CONFIG_BSP_USING_PWM is not set -# CONFIG_BSP_USING_I2C is not set -# CONFIG_BSP_USING_SDIF is not set +# CONFIG_RT_USING_UART2 is not set +# CONFIG_RT_USING_UART3 is not set +CONFIG_BSP_USING_SPI=y +CONFIG_RT_USING_SPIM0=y +CONFIG_RT_USING_SPIM1=y +CONFIG_RT_USING_SPIM2=y +CONFIG_RT_USING_SPIM3=y +CONFIG_BSP_USING_CAN=y +CONFIG_RT_USING_CANFD=y +CONFIG_RT_USING_FILTER=y +CONFIG_RT_USING_CAN0=y +CONFIG_RT_USING_CAN1=y +CONFIG_BSP_USING_GPIO=y +CONFIG_BSP_USING_QSPI=y +CONFIG_RT_USING_QSPI0=y +CONFIG_USING_QSPI_CHANNEL0=y +# CONFIG_USING_QSPI_CHANNEL1 is not set +CONFIG_BSP_USING_ETH=y +CONFIG_RT_LWIP_PBUF_POOL_BUFSIZE=1700 +CONFIG_BSP_USING_PWM=y +# CONFIG_RT_USING_PWM0 is not set +# CONFIG_RT_USING_PWM1 is not set +# CONFIG_RT_USING_PWM2 is not set +# CONFIG_RT_USING_PWM3 is not set +# CONFIG_RT_USING_PWM4 is not set +# CONFIG_RT_USING_PWM5 is not set +CONFIG_RT_USING_PWM6=y +# CONFIG_RT_USING_PWM7 is not set +CONFIG_BSP_USING_I2C=y +CONFIG_I2C_USE_MIO=y +# CONFIG_RT_USING_MIO0 is not set +# CONFIG_RT_USING_MIO1 is not set +# CONFIG_RT_USING_MIO2 is not set +# CONFIG_RT_USING_MIO3 is not set +# CONFIG_RT_USING_MIO4 is not set +# CONFIG_RT_USING_MIO5 is not set +# CONFIG_RT_USING_MIO6 is not set +# CONFIG_RT_USING_MIO7 is not set +# CONFIG_RT_USING_MIO8 is not set +# CONFIG_RT_USING_MIO9 is not set +# CONFIG_RT_USING_MIO10 is not set +# CONFIG_RT_USING_MIO11 is not set +# CONFIG_RT_USING_MIO12 is not set +# CONFIG_RT_USING_MIO13 is not set +# CONFIG_RT_USING_MIO14 is not set +CONFIG_RT_USING_MIO15=y +# CONFIG_I2C_USE_CONTROLLER is not set +CONFIG_BSP_USING_SDIF=y +CONFIG_BSP_USING_SDCARD_FATFS=y +CONFIG_BSP_USING_SDCARD_PARTITION="sd0" +# CONFIG_USING_SDIF0 is not set +CONFIG_USING_SDIF1=y +# CONFIG_USING_EMMC is not set # # Board extended module Drivers @@ -1312,10 +1360,10 @@ CONFIG_BOARD_NAME="demo" # Sdk common configuration # # CONFIG_LOG_VERBOS is not set -# CONFIG_LOG_DEBUG is not set +CONFIG_LOG_DEBUG=y # CONFIG_LOG_INFO is not set # CONFIG_LOG_WARN is not set -CONFIG_LOG_ERROR=y +# CONFIG_LOG_ERROR is not set # CONFIG_LOG_NONE is not set # CONFIG_LOG_EXTRA_INFO is not set # CONFIG_LOG_DISPALY_CORE_NUM is not set diff --git a/bsp/phytium/aarch64/configs/e2000d_demo_rtsmart.h b/bsp/phytium/aarch64/configs/e2000d_demo_rtsmart.h index e73fac6b26..a4b50c1c82 100644 --- a/bsp/phytium/aarch64/configs/e2000d_demo_rtsmart.h +++ b/bsp/phytium/aarch64/configs/e2000d_demo_rtsmart.h @@ -32,7 +32,6 @@ #define RT_USING_DEBUG #define RT_DEBUGING_COLOR #define RT_DEBUGING_CONTEXT -#define RT_DEBUGING_INIT /* Inter-Thread communication */ @@ -66,7 +65,9 @@ #define ARCH_HAVE_EFFICIENT_UNALIGNED_ACCESS #define ARCH_CPU_64BIT #define RT_USING_CACHE +#define RT_USING_HW_ATOMIC #define ARCH_ARM_BOOTWITH_FLUSH_CACHE +#define RT_USING_CPU_FFS #define ARCH_MM_MMU #define ARCH_ARM #define ARCH_ARM_MMU @@ -140,10 +141,26 @@ #define RT_SERIAL_USING_DMA #define RT_SERIAL_RB_BUFSZ 64 #define RT_USING_TTY +#define RT_USING_CAN +#define RT_CAN_USING_HDR +#define RT_CAN_USING_CANFD +#define RT_USING_I2C +#define RT_USING_I2C_BITOPS +#define RT_USING_PIN #define RT_USING_NULL #define RT_USING_ZERO #define RT_USING_RANDOM +#define RT_USING_PWM #define RT_USING_RTC +#define RT_USING_SDIO +#define RT_SDIO_STACK_SIZE 8192 +#define RT_SDIO_THREAD_PRIORITY 15 +#define RT_MMCSD_STACK_SIZE 8192 +#define RT_MMCSD_THREAD_PREORITY 22 +#define RT_MMCSD_MAX_PARTITION 16 +#define RT_USING_SPI +#define RT_USING_QSPI +#define RT_USING_DEV_BUS #define RT_USING_KTIME /* Using USB */ @@ -151,6 +168,7 @@ /* C/C++ and POSIX layer */ + /* ISO-ANSI C layer */ /* Timezone and Daylight Saving Time */ @@ -220,7 +238,7 @@ #define RT_LWIP_TCPTHREAD_MBOX_SIZE 8 #define RT_LWIP_TCPTHREAD_STACKSIZE 16184 #define RT_LWIP_ETHTHREAD_PRIORITY 12 -#define RT_LWIP_ETHTHREAD_STACKSIZE 2048 +#define RT_LWIP_ETHTHREAD_STACKSIZE 8192 #define RT_LWIP_ETHTHREAD_MBOX_SIZE 8 #define LWIP_NETIF_STATUS_CALLBACK 1 #define LWIP_NETIF_LINK_CALLBACK 1 @@ -248,6 +266,9 @@ /* Memory management */ +/* Memory protection */ + + /* RT-Thread Utestcases */ @@ -264,9 +285,6 @@ /* Wiced WiFi */ -/* CYW43012 WiFi */ - - /* IoT Cloud */ @@ -372,13 +390,38 @@ /* Hardware Drivers */ -#define DRV_DEBUG /* On-chip Peripheral Drivers */ #define BSP_USING_IOPAD #define BSP_USING_UART +#define RT_USING_UART0 #define RT_USING_UART1 +#define BSP_USING_SPI +#define RT_USING_SPIM0 +#define RT_USING_SPIM1 +#define RT_USING_SPIM2 +#define RT_USING_SPIM3 +#define BSP_USING_CAN +#define RT_USING_CANFD +#define RT_USING_FILTER +#define RT_USING_CAN0 +#define RT_USING_CAN1 +#define BSP_USING_GPIO +#define BSP_USING_QSPI +#define RT_USING_QSPI0 +#define USING_QSPI_CHANNEL0 +#define BSP_USING_ETH +#define RT_LWIP_PBUF_POOL_BUFSIZE 1700 +#define BSP_USING_PWM +#define RT_USING_PWM6 +#define BSP_USING_I2C +#define I2C_USE_MIO +#define RT_USING_MIO15 +#define BSP_USING_SDIF +#define BSP_USING_SDCARD_FATFS +#define BSP_USING_SDCARD_PARTITION "sd0" +#define USING_SDIF1 /* Board extended module Drivers */ @@ -414,7 +457,7 @@ /* Sdk common configuration */ -#define LOG_ERROR +#define LOG_DEBUG /* Image information configuration */ diff --git a/bsp/phytium/aarch64/configs/e2000d_demo_rtthread b/bsp/phytium/aarch64/configs/e2000d_demo_rtthread index 9c049c392a..b04163fb8f 100644 --- a/bsp/phytium/aarch64/configs/e2000d_demo_rtthread +++ b/bsp/phytium/aarch64/configs/e2000d_demo_rtthread @@ -40,8 +40,9 @@ CONFIG_RT_KPRINTF_USING_LONGLONG=y CONFIG_RT_USING_DEBUG=y CONFIG_RT_DEBUGING_COLOR=y CONFIG_RT_DEBUGING_CONTEXT=y -CONFIG_RT_DEBUGING_INIT=y +# CONFIG_RT_DEBUGING_AUTO_INIT is not set # CONFIG_RT_DEBUGING_PAGE_LEAK is not set +# CONFIG_RT_DEBUGING_SPINLOCK is not set # # Inter-Thread communication @@ -91,10 +92,10 @@ CONFIG_ARCH_SECONDARY_CPU_STACK_SIZE=4096 CONFIG_ARCH_HAVE_EFFICIENT_UNALIGNED_ACCESS=y CONFIG_ARCH_CPU_64BIT=y CONFIG_RT_USING_CACHE=y -# CONFIG_RT_USING_HW_ATOMIC is not set +CONFIG_RT_USING_HW_ATOMIC=y CONFIG_ARCH_ARM_BOOTWITH_FLUSH_CACHE=y # CONFIG_ARCH_CPU_STACK_GROWS_UPWARD is not set -# CONFIG_RT_USING_CPU_FFS is not set +CONFIG_RT_USING_CPU_FFS=y CONFIG_ARCH_MM_MMU=y CONFIG_ARCH_ARM=y CONFIG_ARCH_ARM_MMU=y @@ -160,6 +161,7 @@ CONFIG_RT_DFS_ELM_MAX_SECTOR_SIZE=512 # CONFIG_RT_DFS_ELM_USE_ERASE is not set CONFIG_RT_DFS_ELM_REENTRANT=y CONFIG_RT_DFS_ELM_MUTEX_TIMEOUT=3000 +# CONFIG_RT_DFS_ELM_USE_EXFAT is not set CONFIG_RT_USING_DFS_DEVFS=y # CONFIG_RT_USING_DFS_ROMFS is not set # CONFIG_RT_USING_DFS_CROMFS is not set @@ -183,24 +185,44 @@ CONFIG_RT_USING_SERIAL_V1=y # CONFIG_RT_USING_SERIAL_V2 is not set CONFIG_RT_SERIAL_USING_DMA=y CONFIG_RT_SERIAL_RB_BUFSZ=64 -# CONFIG_RT_USING_CAN is not set +CONFIG_RT_USING_CAN=y +CONFIG_RT_CAN_USING_HDR=y +CONFIG_RT_CAN_USING_CANFD=y # CONFIG_RT_USING_HWTIMER is not set # CONFIG_RT_USING_CPUTIME is not set -# CONFIG_RT_USING_I2C is not set +CONFIG_RT_USING_I2C=y +# CONFIG_RT_I2C_DEBUG is not set +CONFIG_RT_USING_I2C_BITOPS=y +# CONFIG_RT_I2C_BITOPS_DEBUG is not set +# CONFIG_RT_USING_SOFT_I2C is not set # CONFIG_RT_USING_PHY is not set -# CONFIG_RT_USING_PIN is not set +CONFIG_RT_USING_PIN=y # CONFIG_RT_USING_ADC is not set # CONFIG_RT_USING_DAC is not set -# CONFIG_RT_USING_NULL is not set -# CONFIG_RT_USING_ZERO is not set -# CONFIG_RT_USING_RANDOM is not set -# CONFIG_RT_USING_PWM is not set +CONFIG_RT_USING_NULL=y +CONFIG_RT_USING_ZERO=y +CONFIG_RT_USING_RANDOM=y +CONFIG_RT_USING_PWM=y # CONFIG_RT_USING_MTD_NOR is not set # CONFIG_RT_USING_MTD_NAND is not set # CONFIG_RT_USING_PM is not set -# CONFIG_RT_USING_RTC is not set -# CONFIG_RT_USING_SDIO is not set -# CONFIG_RT_USING_SPI is not set +CONFIG_RT_USING_RTC=y +# CONFIG_RT_USING_ALARM is not set +# CONFIG_RT_USING_SOFT_RTC is not set +CONFIG_RT_USING_SDIO=y +CONFIG_RT_SDIO_STACK_SIZE=8192 +CONFIG_RT_SDIO_THREAD_PRIORITY=15 +CONFIG_RT_MMCSD_STACK_SIZE=8192 +CONFIG_RT_MMCSD_THREAD_PREORITY=22 +CONFIG_RT_MMCSD_MAX_PARTITION=16 +# CONFIG_RT_SDIO_DEBUG is not set +CONFIG_RT_USING_SPI=y +# CONFIG_RT_USING_SPI_BITOPS is not set +CONFIG_RT_USING_QSPI=y +# CONFIG_RT_USING_SPI_MSD is not set +# CONFIG_RT_USING_SFUD is not set +# CONFIG_RT_USING_ENC28J60 is not set +# CONFIG_RT_USING_SPI_WIFI is not set # CONFIG_RT_USING_WDT is not set # CONFIG_RT_USING_AUDIO is not set # CONFIG_RT_USING_SENSOR is not set @@ -209,7 +231,7 @@ CONFIG_RT_SERIAL_RB_BUFSZ=64 # CONFIG_RT_USING_HWCRYPTO is not set # CONFIG_RT_USING_PULSE_ENCODER is not set # CONFIG_RT_USING_INPUT_CAPTURE is not set -# CONFIG_RT_USING_DEV_BUS is not set +CONFIG_RT_USING_DEV_BUS=y # CONFIG_RT_USING_WIFI is not set # CONFIG_RT_USING_VIRTIO is not set CONFIG_RT_USING_KTIME=y @@ -224,6 +246,7 @@ CONFIG_RT_USING_KTIME=y # # C/C++ and POSIX layer # +# CONFIG_RT_USING_INTERNAL_LIBC_ONLY is not set # # ISO-ANSI C layer @@ -332,7 +355,7 @@ CONFIG_RT_LWIP_TCPTHREAD_STACKSIZE=16184 # CONFIG_LWIP_NO_RX_THREAD is not set # CONFIG_LWIP_NO_TX_THREAD is not set CONFIG_RT_LWIP_ETHTHREAD_PRIORITY=12 -CONFIG_RT_LWIP_ETHTHREAD_STACKSIZE=2048 +CONFIG_RT_LWIP_ETHTHREAD_STACKSIZE=8192 CONFIG_RT_LWIP_ETHTHREAD_MBOX_SIZE=8 # CONFIG_RT_LWIP_REASSEMBLY_FRAG is not set CONFIG_LWIP_NETIF_STATUS_CALLBACK=1 @@ -402,6 +425,12 @@ CONFIG_RT_USING_ADT_REF=y # # CONFIG_RT_USING_MEMBLOCK is not set +# +# Memory protection +# +# CONFIG_RT_USING_MEM_PROTECTION is not set +# CONFIG_RT_USING_HW_STACK_GUARD is not set + # # RT-Thread Utestcases # @@ -442,11 +471,6 @@ CONFIG_RT_USING_ADT_REF=y # # CONFIG_PKG_USING_WLAN_WICED is not set # CONFIG_PKG_USING_RW007 is not set - -# -# CYW43012 WiFi -# -# CONFIG_PKG_USING_WLAN_CYW43012 is not set # CONFIG_PKG_USING_COAP is not set # CONFIG_PKG_USING_NOPOLL is not set # CONFIG_PKG_USING_NETUTILS is not set @@ -489,7 +513,6 @@ CONFIG_RT_USING_ADT_REF=y # CONFIG_PKG_USING_NMEALIB is not set # CONFIG_PKG_USING_PDULIB is not set # CONFIG_PKG_USING_BTSTACK is not set -# CONFIG_PKG_USING_BT_CYW43012 is not set # CONFIG_PKG_USING_LORAWAN_ED_STACK is not set # CONFIG_PKG_USING_WAYZ_IOTKIT is not set # CONFIG_PKG_USING_MAVLINK is not set @@ -509,8 +532,6 @@ CONFIG_RT_USING_ADT_REF=y # CONFIG_PKG_USING_ZFTP is not set # CONFIG_PKG_USING_WOL is not set # CONFIG_PKG_USING_ZEPHYR_POLLING is not set -# CONFIG_PKG_USING_MATTER_ADAPTATION_LAYER is not set -# CONFIG_PKG_USING_LHC_MODBUS is not set # # security packages @@ -557,6 +578,7 @@ CONFIG_RT_USING_ADT_REF=y # LVGL: powerful and easy-to-use embedded GUI library # # CONFIG_PKG_USING_LVGL is not set +# CONFIG_PKG_USING_LITTLEVGL2RTT is not set # CONFIG_PKG_USING_LV_MUSIC_DEMO is not set # CONFIG_PKG_USING_GUI_GUIDER_DEMO is not set @@ -631,7 +653,6 @@ CONFIG_RT_USING_ADT_REF=y # CONFIG_PKG_USING_HASH_MATCH is not set # CONFIG_PKG_USING_ARMV7M_DWT_TOOL is not set # CONFIG_PKG_USING_VOFA_PLUS is not set -# CONFIG_PKG_USING_ZDEBUG is not set # # system packages @@ -668,8 +689,6 @@ CONFIG_RT_USING_ADT_REF=y # CONFIG_PKG_USING_UC_COMMON is not set # CONFIG_PKG_USING_UC_MODBUS is not set # CONFIG_PKG_USING_FREERTOS_WRAPPER is not set -# CONFIG_PKG_USING_LITEOS_SDK is not set -# CONFIG_PKG_USING_TZ_DATABASE is not set # CONFIG_PKG_USING_CAIRO is not set # CONFIG_PKG_USING_PIXMAN is not set # CONFIG_PKG_USING_PARTITION is not set @@ -693,7 +712,6 @@ CONFIG_RT_USING_ADT_REF=y # CONFIG_PKG_USING_QBOOT is not set # CONFIG_PKG_USING_PPOOL is not set # CONFIG_PKG_USING_OPENAMP is not set -# CONFIG_PKG_USING_RPMSG_LITE is not set # CONFIG_PKG_USING_LPM is not set # CONFIG_PKG_USING_TLSF is not set # CONFIG_PKG_USING_EVENT_RECORDER is not set @@ -707,11 +725,6 @@ CONFIG_RT_USING_ADT_REF=y # CONFIG_PKG_USING_AGILE_UPGRADE is not set # CONFIG_PKG_USING_FLASH_BLOB is not set # CONFIG_PKG_USING_MLIBC is not set -# CONFIG_PKG_USING_TASK_MSG_BUS is not set -# CONFIG_PKG_USING_SFDB is not set -# CONFIG_PKG_USING_RTP is not set -# CONFIG_PKG_USING_REB is not set -# CONFIG_PKG_USING_R_RHEALSTONE is not set # # peripheral libraries and drivers @@ -776,7 +789,6 @@ CONFIG_RT_USING_ADT_REF=y # CONFIG_PKG_USING_BALANCE is not set # CONFIG_PKG_USING_SHT2X is not set # CONFIG_PKG_USING_SHT3X is not set -# CONFIG_PKG_USING_SHT4X is not set # CONFIG_PKG_USING_AD7746 is not set # CONFIG_PKG_USING_ADT74XX is not set # CONFIG_PKG_USING_MAX17048 is not set @@ -877,10 +889,6 @@ CONFIG_RT_USING_ADT_REF=y # CONFIG_PKG_USING_FINGERPRINT is not set # CONFIG_PKG_USING_BT_ECB02C is not set # CONFIG_PKG_USING_UAT is not set -# CONFIG_PKG_USING_ST7789 is not set -# CONFIG_PKG_USING_VS1003 is not set -# CONFIG_PKG_USING_X9555 is not set -# CONFIG_PKG_USING_SYSTEM_RUN_LED is not set # CONFIG_PKG_USING_SPI_TOOLS is not set # @@ -896,7 +904,6 @@ CONFIG_RT_USING_ADT_REF=y # CONFIG_PKG_USING_QUEST is not set # CONFIG_PKG_USING_NAXOS is not set # CONFIG_PKG_USING_NCNN is not set -# CONFIG_PKG_USING_R_TINYMAIX is not set # # Signal Processing and Control Algorithm Packages @@ -967,7 +974,6 @@ CONFIG_PKG_USING_KERNEL_SAMPLES_EN=y # CONFIG_PKG_USING_MINILZO is not set # CONFIG_PKG_USING_QUICKLZ is not set # CONFIG_PKG_USING_LZMA is not set -# CONFIG_PKG_USING_RALARAM is not set # CONFIG_PKG_USING_MULTIBUTTON is not set # CONFIG_PKG_USING_FLEXIBLE_BUTTON is not set # CONFIG_PKG_USING_CANFESTIVAL is not set @@ -1152,7 +1158,6 @@ CONFIG_PKG_USING_KERNEL_SAMPLES_EN=y # # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_GFX_LIBRARY is not set # CONFIG_PKG_USING_ARDUINO_U8G2 is not set -# CONFIG_PKG_USING_ARDUINO_TFT_ESPI is not set # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_ST7735 is not set # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_SSD1306 is not set # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_ILI9341 is not set @@ -1161,7 +1166,6 @@ CONFIG_PKG_USING_KERNEL_SAMPLES_EN=y # # Timing # -# CONFIG_PKG_USING_ARDUINO_RTCLIB is not set # CONFIG_PKG_USING_ARDUINO_MSTIMER2 is not set # CONFIG_PKG_USING_ARDUINO_TICKER is not set # CONFIG_PKG_USING_ARDUINO_TASKSCHEDULER is not set @@ -1198,6 +1202,7 @@ CONFIG_PKG_USING_KERNEL_SAMPLES_EN=y # # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_MFRC630 is not set # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_SI5351 is not set +# CONFIG_PKG_USING_ARDUINO_RTCLIB is not set # # Signal IO @@ -1218,23 +1223,68 @@ CONFIG_PKG_USING_KERNEL_SAMPLES_EN=y # # Hardware Drivers # -CONFIG_DRV_DEBUG=y +# CONFIG_DRV_DEBUG is not set # # On-chip Peripheral Drivers # CONFIG_BSP_USING_IOPAD=y CONFIG_BSP_USING_UART=y +CONFIG_RT_USING_UART0=y CONFIG_RT_USING_UART1=y -# CONFIG_RT_USING_UART0 is not set -# CONFIG_BSP_USING_SPI is not set -# CONFIG_BSP_USING_CAN is not set -# CONFIG_BSP_USING_GPIO is not set -# CONFIG_BSP_USING_QSPI is not set -# CONFIG_BSP_USING_ETH is not set -# CONFIG_BSP_USING_PWM is not set -# CONFIG_BSP_USING_I2C is not set -# CONFIG_BSP_USING_SDIF is not set +# CONFIG_RT_USING_UART2 is not set +# CONFIG_RT_USING_UART3 is not set +CONFIG_BSP_USING_SPI=y +CONFIG_RT_USING_SPIM0=y +CONFIG_RT_USING_SPIM1=y +CONFIG_RT_USING_SPIM2=y +CONFIG_RT_USING_SPIM3=y +CONFIG_BSP_USING_CAN=y +CONFIG_RT_USING_CANFD=y +CONFIG_RT_USING_FILTER=y +CONFIG_RT_USING_CAN0=y +CONFIG_RT_USING_CAN1=y +CONFIG_BSP_USING_GPIO=y +CONFIG_BSP_USING_QSPI=y +CONFIG_RT_USING_QSPI0=y +CONFIG_USING_QSPI_CHANNEL0=y +# CONFIG_USING_QSPI_CHANNEL1 is not set +CONFIG_BSP_USING_ETH=y +CONFIG_RT_LWIP_PBUF_POOL_BUFSIZE=1700 +CONFIG_BSP_USING_PWM=y +# CONFIG_RT_USING_PWM0 is not set +# CONFIG_RT_USING_PWM1 is not set +# CONFIG_RT_USING_PWM2 is not set +# CONFIG_RT_USING_PWM3 is not set +# CONFIG_RT_USING_PWM4 is not set +# CONFIG_RT_USING_PWM5 is not set +CONFIG_RT_USING_PWM6=y +# CONFIG_RT_USING_PWM7 is not set +CONFIG_BSP_USING_I2C=y +CONFIG_I2C_USE_MIO=y +# CONFIG_RT_USING_MIO0 is not set +# CONFIG_RT_USING_MIO1 is not set +# CONFIG_RT_USING_MIO2 is not set +# CONFIG_RT_USING_MIO3 is not set +# CONFIG_RT_USING_MIO4 is not set +# CONFIG_RT_USING_MIO5 is not set +# CONFIG_RT_USING_MIO6 is not set +# CONFIG_RT_USING_MIO7 is not set +# CONFIG_RT_USING_MIO8 is not set +# CONFIG_RT_USING_MIO9 is not set +# CONFIG_RT_USING_MIO10 is not set +# CONFIG_RT_USING_MIO11 is not set +# CONFIG_RT_USING_MIO12 is not set +# CONFIG_RT_USING_MIO13 is not set +# CONFIG_RT_USING_MIO14 is not set +CONFIG_RT_USING_MIO15=y +# CONFIG_I2C_USE_CONTROLLER is not set +CONFIG_BSP_USING_SDIF=y +CONFIG_BSP_USING_SDCARD_FATFS=y +CONFIG_BSP_USING_SDCARD_PARTITION="sd0" +# CONFIG_USING_SDIF0 is not set +CONFIG_USING_SDIF1=y +# CONFIG_USING_EMMC is not set # # Board extended module Drivers @@ -1296,10 +1346,10 @@ CONFIG_BOARD_NAME="demo" # Sdk common configuration # # CONFIG_LOG_VERBOS is not set -# CONFIG_LOG_DEBUG is not set +CONFIG_LOG_DEBUG=y # CONFIG_LOG_INFO is not set # CONFIG_LOG_WARN is not set -CONFIG_LOG_ERROR=y +# CONFIG_LOG_ERROR is not set # CONFIG_LOG_NONE is not set # CONFIG_LOG_EXTRA_INFO is not set # CONFIG_LOG_DISPALY_CORE_NUM is not set diff --git a/bsp/phytium/aarch64/configs/e2000d_demo_rtthread.h b/bsp/phytium/aarch64/configs/e2000d_demo_rtthread.h index 8e56e6c5d8..bbb66a6ab4 100644 --- a/bsp/phytium/aarch64/configs/e2000d_demo_rtthread.h +++ b/bsp/phytium/aarch64/configs/e2000d_demo_rtthread.h @@ -31,7 +31,6 @@ #define RT_USING_DEBUG #define RT_DEBUGING_COLOR #define RT_DEBUGING_CONTEXT -#define RT_DEBUGING_INIT /* Inter-Thread communication */ @@ -65,7 +64,9 @@ #define ARCH_HAVE_EFFICIENT_UNALIGNED_ACCESS #define ARCH_CPU_64BIT #define RT_USING_CACHE +#define RT_USING_HW_ATOMIC #define ARCH_ARM_BOOTWITH_FLUSH_CACHE +#define RT_USING_CPU_FFS #define ARCH_MM_MMU #define ARCH_ARM #define ARCH_ARM_MMU @@ -130,6 +131,26 @@ #define RT_USING_SERIAL_V1 #define RT_SERIAL_USING_DMA #define RT_SERIAL_RB_BUFSZ 64 +#define RT_USING_CAN +#define RT_CAN_USING_HDR +#define RT_CAN_USING_CANFD +#define RT_USING_I2C +#define RT_USING_I2C_BITOPS +#define RT_USING_PIN +#define RT_USING_NULL +#define RT_USING_ZERO +#define RT_USING_RANDOM +#define RT_USING_PWM +#define RT_USING_RTC +#define RT_USING_SDIO +#define RT_SDIO_STACK_SIZE 8192 +#define RT_SDIO_THREAD_PRIORITY 15 +#define RT_MMCSD_STACK_SIZE 8192 +#define RT_MMCSD_THREAD_PREORITY 22 +#define RT_MMCSD_MAX_PARTITION 16 +#define RT_USING_SPI +#define RT_USING_QSPI +#define RT_USING_DEV_BUS #define RT_USING_KTIME /* Using USB */ @@ -137,6 +158,7 @@ /* C/C++ and POSIX layer */ + /* ISO-ANSI C layer */ /* Timezone and Daylight Saving Time */ @@ -206,7 +228,7 @@ #define RT_LWIP_TCPTHREAD_MBOX_SIZE 8 #define RT_LWIP_TCPTHREAD_STACKSIZE 16184 #define RT_LWIP_ETHTHREAD_PRIORITY 12 -#define RT_LWIP_ETHTHREAD_STACKSIZE 2048 +#define RT_LWIP_ETHTHREAD_STACKSIZE 8192 #define RT_LWIP_ETHTHREAD_MBOX_SIZE 8 #define LWIP_NETIF_STATUS_CALLBACK 1 #define LWIP_NETIF_LINK_CALLBACK 1 @@ -234,6 +256,9 @@ /* Memory management */ +/* Memory protection */ + + /* RT-Thread Utestcases */ @@ -250,9 +275,6 @@ /* Wiced WiFi */ -/* CYW43012 WiFi */ - - /* IoT Cloud */ @@ -358,13 +380,38 @@ /* Hardware Drivers */ -#define DRV_DEBUG /* On-chip Peripheral Drivers */ #define BSP_USING_IOPAD #define BSP_USING_UART +#define RT_USING_UART0 #define RT_USING_UART1 +#define BSP_USING_SPI +#define RT_USING_SPIM0 +#define RT_USING_SPIM1 +#define RT_USING_SPIM2 +#define RT_USING_SPIM3 +#define BSP_USING_CAN +#define RT_USING_CANFD +#define RT_USING_FILTER +#define RT_USING_CAN0 +#define RT_USING_CAN1 +#define BSP_USING_GPIO +#define BSP_USING_QSPI +#define RT_USING_QSPI0 +#define USING_QSPI_CHANNEL0 +#define BSP_USING_ETH +#define RT_LWIP_PBUF_POOL_BUFSIZE 1700 +#define BSP_USING_PWM +#define RT_USING_PWM6 +#define BSP_USING_I2C +#define I2C_USE_MIO +#define RT_USING_MIO15 +#define BSP_USING_SDIF +#define BSP_USING_SDCARD_FATFS +#define BSP_USING_SDCARD_PARTITION "sd0" +#define USING_SDIF1 /* Board extended module Drivers */ @@ -400,7 +447,7 @@ /* Sdk common configuration */ -#define LOG_ERROR +#define LOG_DEBUG /* Image information configuration */ diff --git a/bsp/phytium/aarch64/configs/e2000q_demo_rtsmart b/bsp/phytium/aarch64/configs/e2000q_demo_rtsmart index 8b21d4b597..d03d884258 100644 --- a/bsp/phytium/aarch64/configs/e2000q_demo_rtsmart +++ b/bsp/phytium/aarch64/configs/e2000q_demo_rtsmart @@ -40,8 +40,9 @@ CONFIG_RT_KPRINTF_USING_LONGLONG=y CONFIG_RT_USING_DEBUG=y CONFIG_RT_DEBUGING_COLOR=y CONFIG_RT_DEBUGING_CONTEXT=y -CONFIG_RT_DEBUGING_INIT=y +# CONFIG_RT_DEBUGING_AUTO_INIT is not set # CONFIG_RT_DEBUGING_PAGE_LEAK is not set +# CONFIG_RT_DEBUGING_SPINLOCK is not set # # Inter-Thread communication @@ -91,10 +92,10 @@ CONFIG_ARCH_SECONDARY_CPU_STACK_SIZE=4096 CONFIG_ARCH_HAVE_EFFICIENT_UNALIGNED_ACCESS=y CONFIG_ARCH_CPU_64BIT=y CONFIG_RT_USING_CACHE=y -# CONFIG_RT_USING_HW_ATOMIC is not set +CONFIG_RT_USING_HW_ATOMIC=y CONFIG_ARCH_ARM_BOOTWITH_FLUSH_CACHE=y # CONFIG_ARCH_CPU_STACK_GROWS_UPWARD is not set -# CONFIG_RT_USING_CPU_FFS is not set +CONFIG_RT_USING_CPU_FFS=y CONFIG_ARCH_MM_MMU=y CONFIG_ARCH_ARM=y CONFIG_ARCH_ARM_MMU=y @@ -161,6 +162,7 @@ CONFIG_RT_DFS_ELM_MAX_SECTOR_SIZE=512 # CONFIG_RT_DFS_ELM_USE_ERASE is not set CONFIG_RT_DFS_ELM_REENTRANT=y CONFIG_RT_DFS_ELM_MUTEX_TIMEOUT=3000 +# CONFIG_RT_DFS_ELM_USE_EXFAT is not set CONFIG_RT_USING_DFS_DEVFS=y # CONFIG_RT_USING_DFS_ROMFS is not set # CONFIG_RT_USING_DFS_CROMFS is not set @@ -195,26 +197,44 @@ CONFIG_RT_SERIAL_USING_DMA=y CONFIG_RT_SERIAL_RB_BUFSZ=64 CONFIG_RT_USING_TTY=y # CONFIG_RT_TTY_DEBUG is not set -# CONFIG_RT_USING_CAN is not set +CONFIG_RT_USING_CAN=y +CONFIG_RT_CAN_USING_HDR=y +CONFIG_RT_CAN_USING_CANFD=y # CONFIG_RT_USING_HWTIMER is not set # CONFIG_RT_USING_CPUTIME is not set -# CONFIG_RT_USING_I2C is not set +CONFIG_RT_USING_I2C=y +# CONFIG_RT_I2C_DEBUG is not set +CONFIG_RT_USING_I2C_BITOPS=y +# CONFIG_RT_I2C_BITOPS_DEBUG is not set +# CONFIG_RT_USING_SOFT_I2C is not set # CONFIG_RT_USING_PHY is not set -# CONFIG_RT_USING_PIN is not set +CONFIG_RT_USING_PIN=y # CONFIG_RT_USING_ADC is not set # CONFIG_RT_USING_DAC is not set CONFIG_RT_USING_NULL=y CONFIG_RT_USING_ZERO=y CONFIG_RT_USING_RANDOM=y -# CONFIG_RT_USING_PWM is not set +CONFIG_RT_USING_PWM=y # CONFIG_RT_USING_MTD_NOR is not set # CONFIG_RT_USING_MTD_NAND is not set # CONFIG_RT_USING_PM is not set CONFIG_RT_USING_RTC=y # CONFIG_RT_USING_ALARM is not set # CONFIG_RT_USING_SOFT_RTC is not set -# CONFIG_RT_USING_SDIO is not set -# CONFIG_RT_USING_SPI is not set +CONFIG_RT_USING_SDIO=y +CONFIG_RT_SDIO_STACK_SIZE=8192 +CONFIG_RT_SDIO_THREAD_PRIORITY=15 +CONFIG_RT_MMCSD_STACK_SIZE=8192 +CONFIG_RT_MMCSD_THREAD_PREORITY=22 +CONFIG_RT_MMCSD_MAX_PARTITION=16 +# CONFIG_RT_SDIO_DEBUG is not set +CONFIG_RT_USING_SPI=y +# CONFIG_RT_USING_SPI_BITOPS is not set +CONFIG_RT_USING_QSPI=y +# CONFIG_RT_USING_SPI_MSD is not set +# CONFIG_RT_USING_SFUD is not set +# CONFIG_RT_USING_ENC28J60 is not set +# CONFIG_RT_USING_SPI_WIFI is not set # CONFIG_RT_USING_WDT is not set # CONFIG_RT_USING_AUDIO is not set # CONFIG_RT_USING_SENSOR is not set @@ -223,7 +243,7 @@ CONFIG_RT_USING_RTC=y # CONFIG_RT_USING_HWCRYPTO is not set # CONFIG_RT_USING_PULSE_ENCODER is not set # CONFIG_RT_USING_INPUT_CAPTURE is not set -# CONFIG_RT_USING_DEV_BUS is not set +CONFIG_RT_USING_DEV_BUS=y # CONFIG_RT_USING_WIFI is not set # CONFIG_RT_USING_VIRTIO is not set CONFIG_RT_USING_KTIME=y @@ -238,6 +258,7 @@ CONFIG_RT_USING_KTIME=y # # C/C++ and POSIX layer # +# CONFIG_RT_USING_INTERNAL_LIBC_ONLY is not set # # ISO-ANSI C layer @@ -348,7 +369,7 @@ CONFIG_RT_LWIP_TCPTHREAD_STACKSIZE=16184 # CONFIG_LWIP_NO_RX_THREAD is not set # CONFIG_LWIP_NO_TX_THREAD is not set CONFIG_RT_LWIP_ETHTHREAD_PRIORITY=12 -CONFIG_RT_LWIP_ETHTHREAD_STACKSIZE=2048 +CONFIG_RT_LWIP_ETHTHREAD_STACKSIZE=8192 CONFIG_RT_LWIP_ETHTHREAD_MBOX_SIZE=8 # CONFIG_RT_LWIP_REASSEMBLY_FRAG is not set CONFIG_LWIP_NETIF_STATUS_CALLBACK=1 @@ -418,6 +439,12 @@ CONFIG_RT_USING_ADT_REF=y # # CONFIG_RT_USING_MEMBLOCK is not set +# +# Memory protection +# +# CONFIG_RT_USING_MEM_PROTECTION is not set +# CONFIG_RT_USING_HW_STACK_GUARD is not set + # # RT-Thread Utestcases # @@ -458,11 +485,6 @@ CONFIG_RT_USING_ADT_REF=y # # CONFIG_PKG_USING_WLAN_WICED is not set # CONFIG_PKG_USING_RW007 is not set - -# -# CYW43012 WiFi -# -# CONFIG_PKG_USING_WLAN_CYW43012 is not set # CONFIG_PKG_USING_COAP is not set # CONFIG_PKG_USING_NOPOLL is not set # CONFIG_PKG_USING_NETUTILS is not set @@ -505,7 +527,6 @@ CONFIG_RT_USING_ADT_REF=y # CONFIG_PKG_USING_NMEALIB is not set # CONFIG_PKG_USING_PDULIB is not set # CONFIG_PKG_USING_BTSTACK is not set -# CONFIG_PKG_USING_BT_CYW43012 is not set # CONFIG_PKG_USING_LORAWAN_ED_STACK is not set # CONFIG_PKG_USING_WAYZ_IOTKIT is not set # CONFIG_PKG_USING_MAVLINK is not set @@ -525,8 +546,6 @@ CONFIG_RT_USING_ADT_REF=y # CONFIG_PKG_USING_ZFTP is not set # CONFIG_PKG_USING_WOL is not set # CONFIG_PKG_USING_ZEPHYR_POLLING is not set -# CONFIG_PKG_USING_MATTER_ADAPTATION_LAYER is not set -# CONFIG_PKG_USING_LHC_MODBUS is not set # # security packages @@ -573,6 +592,7 @@ CONFIG_RT_USING_ADT_REF=y # LVGL: powerful and easy-to-use embedded GUI library # # CONFIG_PKG_USING_LVGL is not set +# CONFIG_PKG_USING_LITTLEVGL2RTT is not set # CONFIG_PKG_USING_LV_MUSIC_DEMO is not set # CONFIG_PKG_USING_GUI_GUIDER_DEMO is not set @@ -647,7 +667,6 @@ CONFIG_RT_USING_ADT_REF=y # CONFIG_PKG_USING_HASH_MATCH is not set # CONFIG_PKG_USING_ARMV7M_DWT_TOOL is not set # CONFIG_PKG_USING_VOFA_PLUS is not set -# CONFIG_PKG_USING_ZDEBUG is not set # # system packages @@ -684,8 +703,6 @@ CONFIG_RT_USING_ADT_REF=y # CONFIG_PKG_USING_UC_COMMON is not set # CONFIG_PKG_USING_UC_MODBUS is not set # CONFIG_PKG_USING_FREERTOS_WRAPPER is not set -# CONFIG_PKG_USING_LITEOS_SDK is not set -# CONFIG_PKG_USING_TZ_DATABASE is not set # CONFIG_PKG_USING_CAIRO is not set # CONFIG_PKG_USING_PIXMAN is not set # CONFIG_PKG_USING_PARTITION is not set @@ -709,7 +726,6 @@ CONFIG_RT_USING_ADT_REF=y # CONFIG_PKG_USING_QBOOT is not set # CONFIG_PKG_USING_PPOOL is not set # CONFIG_PKG_USING_OPENAMP is not set -# CONFIG_PKG_USING_RPMSG_LITE is not set # CONFIG_PKG_USING_LPM is not set # CONFIG_PKG_USING_TLSF is not set # CONFIG_PKG_USING_EVENT_RECORDER is not set @@ -723,11 +739,6 @@ CONFIG_RT_USING_ADT_REF=y # CONFIG_PKG_USING_AGILE_UPGRADE is not set # CONFIG_PKG_USING_FLASH_BLOB is not set # CONFIG_PKG_USING_MLIBC is not set -# CONFIG_PKG_USING_TASK_MSG_BUS is not set -# CONFIG_PKG_USING_SFDB is not set -# CONFIG_PKG_USING_RTP is not set -# CONFIG_PKG_USING_REB is not set -# CONFIG_PKG_USING_R_RHEALSTONE is not set # # peripheral libraries and drivers @@ -792,7 +803,6 @@ CONFIG_RT_USING_ADT_REF=y # CONFIG_PKG_USING_BALANCE is not set # CONFIG_PKG_USING_SHT2X is not set # CONFIG_PKG_USING_SHT3X is not set -# CONFIG_PKG_USING_SHT4X is not set # CONFIG_PKG_USING_AD7746 is not set # CONFIG_PKG_USING_ADT74XX is not set # CONFIG_PKG_USING_MAX17048 is not set @@ -893,10 +903,6 @@ CONFIG_RT_USING_ADT_REF=y # CONFIG_PKG_USING_FINGERPRINT is not set # CONFIG_PKG_USING_BT_ECB02C is not set # CONFIG_PKG_USING_UAT is not set -# CONFIG_PKG_USING_ST7789 is not set -# CONFIG_PKG_USING_VS1003 is not set -# CONFIG_PKG_USING_X9555 is not set -# CONFIG_PKG_USING_SYSTEM_RUN_LED is not set # CONFIG_PKG_USING_SPI_TOOLS is not set # @@ -912,7 +918,6 @@ CONFIG_RT_USING_ADT_REF=y # CONFIG_PKG_USING_QUEST is not set # CONFIG_PKG_USING_NAXOS is not set # CONFIG_PKG_USING_NCNN is not set -# CONFIG_PKG_USING_R_TINYMAIX is not set # # Signal Processing and Control Algorithm Packages @@ -983,7 +988,6 @@ CONFIG_PKG_USING_KERNEL_SAMPLES_EN=y # CONFIG_PKG_USING_MINILZO is not set # CONFIG_PKG_USING_QUICKLZ is not set # CONFIG_PKG_USING_LZMA is not set -# CONFIG_PKG_USING_RALARAM is not set # CONFIG_PKG_USING_MULTIBUTTON is not set # CONFIG_PKG_USING_FLEXIBLE_BUTTON is not set # CONFIG_PKG_USING_CANFESTIVAL is not set @@ -1168,7 +1172,6 @@ CONFIG_PKG_USING_KERNEL_SAMPLES_EN=y # # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_GFX_LIBRARY is not set # CONFIG_PKG_USING_ARDUINO_U8G2 is not set -# CONFIG_PKG_USING_ARDUINO_TFT_ESPI is not set # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_ST7735 is not set # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_SSD1306 is not set # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_ILI9341 is not set @@ -1177,7 +1180,6 @@ CONFIG_PKG_USING_KERNEL_SAMPLES_EN=y # # Timing # -# CONFIG_PKG_USING_ARDUINO_RTCLIB is not set # CONFIG_PKG_USING_ARDUINO_MSTIMER2 is not set # CONFIG_PKG_USING_ARDUINO_TICKER is not set # CONFIG_PKG_USING_ARDUINO_TASKSCHEDULER is not set @@ -1214,6 +1216,7 @@ CONFIG_PKG_USING_KERNEL_SAMPLES_EN=y # # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_MFRC630 is not set # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_SI5351 is not set +# CONFIG_PKG_USING_ARDUINO_RTCLIB is not set # # Signal IO @@ -1234,23 +1237,68 @@ CONFIG_PKG_USING_KERNEL_SAMPLES_EN=y # # Hardware Drivers # -CONFIG_DRV_DEBUG=y +# CONFIG_DRV_DEBUG is not set # # On-chip Peripheral Drivers # CONFIG_BSP_USING_IOPAD=y CONFIG_BSP_USING_UART=y +CONFIG_RT_USING_UART0=y CONFIG_RT_USING_UART1=y -# CONFIG_RT_USING_UART0 is not set -# CONFIG_BSP_USING_SPI is not set -# CONFIG_BSP_USING_CAN is not set -# CONFIG_BSP_USING_GPIO is not set -# CONFIG_BSP_USING_QSPI is not set -# CONFIG_BSP_USING_ETH is not set -# CONFIG_BSP_USING_PWM is not set -# CONFIG_BSP_USING_I2C is not set -# CONFIG_BSP_USING_SDIF is not set +# CONFIG_RT_USING_UART2 is not set +# CONFIG_RT_USING_UART3 is not set +CONFIG_BSP_USING_SPI=y +CONFIG_RT_USING_SPIM0=y +CONFIG_RT_USING_SPIM1=y +CONFIG_RT_USING_SPIM2=y +CONFIG_RT_USING_SPIM3=y +CONFIG_BSP_USING_CAN=y +CONFIG_RT_USING_CANFD=y +CONFIG_RT_USING_FILTER=y +CONFIG_RT_USING_CAN0=y +CONFIG_RT_USING_CAN1=y +CONFIG_BSP_USING_GPIO=y +CONFIG_BSP_USING_QSPI=y +CONFIG_RT_USING_QSPI0=y +CONFIG_USING_QSPI_CHANNEL0=y +# CONFIG_USING_QSPI_CHANNEL1 is not set +CONFIG_BSP_USING_ETH=y +CONFIG_RT_LWIP_PBUF_POOL_BUFSIZE=1700 +CONFIG_BSP_USING_PWM=y +# CONFIG_RT_USING_PWM0 is not set +# CONFIG_RT_USING_PWM1 is not set +# CONFIG_RT_USING_PWM2 is not set +# CONFIG_RT_USING_PWM3 is not set +# CONFIG_RT_USING_PWM4 is not set +# CONFIG_RT_USING_PWM5 is not set +CONFIG_RT_USING_PWM6=y +# CONFIG_RT_USING_PWM7 is not set +CONFIG_BSP_USING_I2C=y +CONFIG_I2C_USE_MIO=y +# CONFIG_RT_USING_MIO0 is not set +# CONFIG_RT_USING_MIO1 is not set +# CONFIG_RT_USING_MIO2 is not set +# CONFIG_RT_USING_MIO3 is not set +# CONFIG_RT_USING_MIO4 is not set +# CONFIG_RT_USING_MIO5 is not set +# CONFIG_RT_USING_MIO6 is not set +# CONFIG_RT_USING_MIO7 is not set +# CONFIG_RT_USING_MIO8 is not set +# CONFIG_RT_USING_MIO9 is not set +# CONFIG_RT_USING_MIO10 is not set +# CONFIG_RT_USING_MIO11 is not set +# CONFIG_RT_USING_MIO12 is not set +# CONFIG_RT_USING_MIO13 is not set +# CONFIG_RT_USING_MIO14 is not set +CONFIG_RT_USING_MIO15=y +# CONFIG_I2C_USE_CONTROLLER is not set +CONFIG_BSP_USING_SDIF=y +CONFIG_BSP_USING_SDCARD_FATFS=y +CONFIG_BSP_USING_SDCARD_PARTITION="sd0" +# CONFIG_USING_SDIF0 is not set +CONFIG_USING_SDIF1=y +# CONFIG_USING_EMMC is not set # # Board extended module Drivers @@ -1311,10 +1359,10 @@ CONFIG_E2000Q_DEMO_BOARD=y # Sdk common configuration # # CONFIG_LOG_VERBOS is not set -# CONFIG_LOG_DEBUG is not set +CONFIG_LOG_DEBUG=y # CONFIG_LOG_INFO is not set # CONFIG_LOG_WARN is not set -CONFIG_LOG_ERROR=y +# CONFIG_LOG_ERROR is not set # CONFIG_LOG_NONE is not set # CONFIG_LOG_EXTRA_INFO is not set # CONFIG_LOG_DISPALY_CORE_NUM is not set diff --git a/bsp/phytium/aarch64/configs/e2000q_demo_rtsmart.h b/bsp/phytium/aarch64/configs/e2000q_demo_rtsmart.h index 217b0c0524..201bbed7e0 100644 --- a/bsp/phytium/aarch64/configs/e2000q_demo_rtsmart.h +++ b/bsp/phytium/aarch64/configs/e2000q_demo_rtsmart.h @@ -32,7 +32,6 @@ #define RT_USING_DEBUG #define RT_DEBUGING_COLOR #define RT_DEBUGING_CONTEXT -#define RT_DEBUGING_INIT /* Inter-Thread communication */ @@ -66,7 +65,9 @@ #define ARCH_HAVE_EFFICIENT_UNALIGNED_ACCESS #define ARCH_CPU_64BIT #define RT_USING_CACHE +#define RT_USING_HW_ATOMIC #define ARCH_ARM_BOOTWITH_FLUSH_CACHE +#define RT_USING_CPU_FFS #define ARCH_MM_MMU #define ARCH_ARM #define ARCH_ARM_MMU @@ -140,10 +141,26 @@ #define RT_SERIAL_USING_DMA #define RT_SERIAL_RB_BUFSZ 64 #define RT_USING_TTY +#define RT_USING_CAN +#define RT_CAN_USING_HDR +#define RT_CAN_USING_CANFD +#define RT_USING_I2C +#define RT_USING_I2C_BITOPS +#define RT_USING_PIN #define RT_USING_NULL #define RT_USING_ZERO #define RT_USING_RANDOM +#define RT_USING_PWM #define RT_USING_RTC +#define RT_USING_SDIO +#define RT_SDIO_STACK_SIZE 8192 +#define RT_SDIO_THREAD_PRIORITY 15 +#define RT_MMCSD_STACK_SIZE 8192 +#define RT_MMCSD_THREAD_PREORITY 22 +#define RT_MMCSD_MAX_PARTITION 16 +#define RT_USING_SPI +#define RT_USING_QSPI +#define RT_USING_DEV_BUS #define RT_USING_KTIME /* Using USB */ @@ -151,6 +168,7 @@ /* C/C++ and POSIX layer */ + /* ISO-ANSI C layer */ /* Timezone and Daylight Saving Time */ @@ -220,7 +238,7 @@ #define RT_LWIP_TCPTHREAD_MBOX_SIZE 8 #define RT_LWIP_TCPTHREAD_STACKSIZE 16184 #define RT_LWIP_ETHTHREAD_PRIORITY 12 -#define RT_LWIP_ETHTHREAD_STACKSIZE 2048 +#define RT_LWIP_ETHTHREAD_STACKSIZE 8192 #define RT_LWIP_ETHTHREAD_MBOX_SIZE 8 #define LWIP_NETIF_STATUS_CALLBACK 1 #define LWIP_NETIF_LINK_CALLBACK 1 @@ -248,6 +266,9 @@ /* Memory management */ +/* Memory protection */ + + /* RT-Thread Utestcases */ @@ -264,9 +285,6 @@ /* Wiced WiFi */ -/* CYW43012 WiFi */ - - /* IoT Cloud */ @@ -372,13 +390,38 @@ /* Hardware Drivers */ -#define DRV_DEBUG /* On-chip Peripheral Drivers */ #define BSP_USING_IOPAD #define BSP_USING_UART +#define RT_USING_UART0 #define RT_USING_UART1 +#define BSP_USING_SPI +#define RT_USING_SPIM0 +#define RT_USING_SPIM1 +#define RT_USING_SPIM2 +#define RT_USING_SPIM3 +#define BSP_USING_CAN +#define RT_USING_CANFD +#define RT_USING_FILTER +#define RT_USING_CAN0 +#define RT_USING_CAN1 +#define BSP_USING_GPIO +#define BSP_USING_QSPI +#define RT_USING_QSPI0 +#define USING_QSPI_CHANNEL0 +#define BSP_USING_ETH +#define RT_LWIP_PBUF_POOL_BUFSIZE 1700 +#define BSP_USING_PWM +#define RT_USING_PWM6 +#define BSP_USING_I2C +#define I2C_USE_MIO +#define RT_USING_MIO15 +#define BSP_USING_SDIF +#define BSP_USING_SDCARD_FATFS +#define BSP_USING_SDCARD_PARTITION "sd0" +#define USING_SDIF1 /* Board extended module Drivers */ @@ -414,7 +457,7 @@ /* Sdk common configuration */ -#define LOG_ERROR +#define LOG_DEBUG /* Image information configuration */ diff --git a/bsp/phytium/aarch64/configs/e2000q_demo_rtthread b/bsp/phytium/aarch64/configs/e2000q_demo_rtthread index 6da92dc00e..1b76defef5 100644 --- a/bsp/phytium/aarch64/configs/e2000q_demo_rtthread +++ b/bsp/phytium/aarch64/configs/e2000q_demo_rtthread @@ -40,8 +40,9 @@ CONFIG_RT_KPRINTF_USING_LONGLONG=y CONFIG_RT_USING_DEBUG=y CONFIG_RT_DEBUGING_COLOR=y CONFIG_RT_DEBUGING_CONTEXT=y -CONFIG_RT_DEBUGING_INIT=y +# CONFIG_RT_DEBUGING_AUTO_INIT is not set # CONFIG_RT_DEBUGING_PAGE_LEAK is not set +# CONFIG_RT_DEBUGING_SPINLOCK is not set # # Inter-Thread communication @@ -91,10 +92,10 @@ CONFIG_ARCH_SECONDARY_CPU_STACK_SIZE=4096 CONFIG_ARCH_HAVE_EFFICIENT_UNALIGNED_ACCESS=y CONFIG_ARCH_CPU_64BIT=y CONFIG_RT_USING_CACHE=y -# CONFIG_RT_USING_HW_ATOMIC is not set +CONFIG_RT_USING_HW_ATOMIC=y CONFIG_ARCH_ARM_BOOTWITH_FLUSH_CACHE=y # CONFIG_ARCH_CPU_STACK_GROWS_UPWARD is not set -# CONFIG_RT_USING_CPU_FFS is not set +CONFIG_RT_USING_CPU_FFS=y CONFIG_ARCH_MM_MMU=y CONFIG_ARCH_ARM=y CONFIG_ARCH_ARM_MMU=y @@ -160,6 +161,7 @@ CONFIG_RT_DFS_ELM_MAX_SECTOR_SIZE=512 # CONFIG_RT_DFS_ELM_USE_ERASE is not set CONFIG_RT_DFS_ELM_REENTRANT=y CONFIG_RT_DFS_ELM_MUTEX_TIMEOUT=3000 +# CONFIG_RT_DFS_ELM_USE_EXFAT is not set CONFIG_RT_USING_DFS_DEVFS=y # CONFIG_RT_USING_DFS_ROMFS is not set # CONFIG_RT_USING_DFS_CROMFS is not set @@ -183,26 +185,44 @@ CONFIG_RT_USING_SERIAL_V1=y # CONFIG_RT_USING_SERIAL_V2 is not set CONFIG_RT_SERIAL_USING_DMA=y CONFIG_RT_SERIAL_RB_BUFSZ=64 -# CONFIG_RT_USING_CAN is not set +CONFIG_RT_USING_CAN=y +CONFIG_RT_CAN_USING_HDR=y +CONFIG_RT_CAN_USING_CANFD=y # CONFIG_RT_USING_HWTIMER is not set # CONFIG_RT_USING_CPUTIME is not set -# CONFIG_RT_USING_I2C is not set +CONFIG_RT_USING_I2C=y +# CONFIG_RT_I2C_DEBUG is not set +CONFIG_RT_USING_I2C_BITOPS=y +# CONFIG_RT_I2C_BITOPS_DEBUG is not set +# CONFIG_RT_USING_SOFT_I2C is not set # CONFIG_RT_USING_PHY is not set -# CONFIG_RT_USING_PIN is not set +CONFIG_RT_USING_PIN=y # CONFIG_RT_USING_ADC is not set # CONFIG_RT_USING_DAC is not set CONFIG_RT_USING_NULL=y CONFIG_RT_USING_ZERO=y CONFIG_RT_USING_RANDOM=y -# CONFIG_RT_USING_PWM is not set +CONFIG_RT_USING_PWM=y # CONFIG_RT_USING_MTD_NOR is not set # CONFIG_RT_USING_MTD_NAND is not set # CONFIG_RT_USING_PM is not set CONFIG_RT_USING_RTC=y # CONFIG_RT_USING_ALARM is not set # CONFIG_RT_USING_SOFT_RTC is not set -# CONFIG_RT_USING_SDIO is not set -# CONFIG_RT_USING_SPI is not set +CONFIG_RT_USING_SDIO=y +CONFIG_RT_SDIO_STACK_SIZE=8192 +CONFIG_RT_SDIO_THREAD_PRIORITY=15 +CONFIG_RT_MMCSD_STACK_SIZE=8192 +CONFIG_RT_MMCSD_THREAD_PREORITY=22 +CONFIG_RT_MMCSD_MAX_PARTITION=16 +# CONFIG_RT_SDIO_DEBUG is not set +CONFIG_RT_USING_SPI=y +# CONFIG_RT_USING_SPI_BITOPS is not set +CONFIG_RT_USING_QSPI=y +# CONFIG_RT_USING_SPI_MSD is not set +# CONFIG_RT_USING_SFUD is not set +# CONFIG_RT_USING_ENC28J60 is not set +# CONFIG_RT_USING_SPI_WIFI is not set # CONFIG_RT_USING_WDT is not set # CONFIG_RT_USING_AUDIO is not set # CONFIG_RT_USING_SENSOR is not set @@ -211,7 +231,7 @@ CONFIG_RT_USING_RTC=y # CONFIG_RT_USING_HWCRYPTO is not set # CONFIG_RT_USING_PULSE_ENCODER is not set # CONFIG_RT_USING_INPUT_CAPTURE is not set -# CONFIG_RT_USING_DEV_BUS is not set +CONFIG_RT_USING_DEV_BUS=y # CONFIG_RT_USING_WIFI is not set # CONFIG_RT_USING_VIRTIO is not set CONFIG_RT_USING_KTIME=y @@ -226,6 +246,7 @@ CONFIG_RT_USING_KTIME=y # # C/C++ and POSIX layer # +# CONFIG_RT_USING_INTERNAL_LIBC_ONLY is not set # # ISO-ANSI C layer @@ -334,7 +355,7 @@ CONFIG_RT_LWIP_TCPTHREAD_STACKSIZE=16184 # CONFIG_LWIP_NO_RX_THREAD is not set # CONFIG_LWIP_NO_TX_THREAD is not set CONFIG_RT_LWIP_ETHTHREAD_PRIORITY=12 -CONFIG_RT_LWIP_ETHTHREAD_STACKSIZE=2048 +CONFIG_RT_LWIP_ETHTHREAD_STACKSIZE=8192 CONFIG_RT_LWIP_ETHTHREAD_MBOX_SIZE=8 # CONFIG_RT_LWIP_REASSEMBLY_FRAG is not set CONFIG_LWIP_NETIF_STATUS_CALLBACK=1 @@ -404,6 +425,12 @@ CONFIG_RT_USING_ADT_REF=y # # CONFIG_RT_USING_MEMBLOCK is not set +# +# Memory protection +# +# CONFIG_RT_USING_MEM_PROTECTION is not set +# CONFIG_RT_USING_HW_STACK_GUARD is not set + # # RT-Thread Utestcases # @@ -444,11 +471,6 @@ CONFIG_RT_USING_ADT_REF=y # # CONFIG_PKG_USING_WLAN_WICED is not set # CONFIG_PKG_USING_RW007 is not set - -# -# CYW43012 WiFi -# -# CONFIG_PKG_USING_WLAN_CYW43012 is not set # CONFIG_PKG_USING_COAP is not set # CONFIG_PKG_USING_NOPOLL is not set # CONFIG_PKG_USING_NETUTILS is not set @@ -491,7 +513,6 @@ CONFIG_RT_USING_ADT_REF=y # CONFIG_PKG_USING_NMEALIB is not set # CONFIG_PKG_USING_PDULIB is not set # CONFIG_PKG_USING_BTSTACK is not set -# CONFIG_PKG_USING_BT_CYW43012 is not set # CONFIG_PKG_USING_LORAWAN_ED_STACK is not set # CONFIG_PKG_USING_WAYZ_IOTKIT is not set # CONFIG_PKG_USING_MAVLINK is not set @@ -511,8 +532,6 @@ CONFIG_RT_USING_ADT_REF=y # CONFIG_PKG_USING_ZFTP is not set # CONFIG_PKG_USING_WOL is not set # CONFIG_PKG_USING_ZEPHYR_POLLING is not set -# CONFIG_PKG_USING_MATTER_ADAPTATION_LAYER is not set -# CONFIG_PKG_USING_LHC_MODBUS is not set # # security packages @@ -559,6 +578,7 @@ CONFIG_RT_USING_ADT_REF=y # LVGL: powerful and easy-to-use embedded GUI library # # CONFIG_PKG_USING_LVGL is not set +# CONFIG_PKG_USING_LITTLEVGL2RTT is not set # CONFIG_PKG_USING_LV_MUSIC_DEMO is not set # CONFIG_PKG_USING_GUI_GUIDER_DEMO is not set @@ -633,7 +653,6 @@ CONFIG_RT_USING_ADT_REF=y # CONFIG_PKG_USING_HASH_MATCH is not set # CONFIG_PKG_USING_ARMV7M_DWT_TOOL is not set # CONFIG_PKG_USING_VOFA_PLUS is not set -# CONFIG_PKG_USING_ZDEBUG is not set # # system packages @@ -670,8 +689,6 @@ CONFIG_RT_USING_ADT_REF=y # CONFIG_PKG_USING_UC_COMMON is not set # CONFIG_PKG_USING_UC_MODBUS is not set # CONFIG_PKG_USING_FREERTOS_WRAPPER is not set -# CONFIG_PKG_USING_LITEOS_SDK is not set -# CONFIG_PKG_USING_TZ_DATABASE is not set # CONFIG_PKG_USING_CAIRO is not set # CONFIG_PKG_USING_PIXMAN is not set # CONFIG_PKG_USING_PARTITION is not set @@ -695,7 +712,6 @@ CONFIG_RT_USING_ADT_REF=y # CONFIG_PKG_USING_QBOOT is not set # CONFIG_PKG_USING_PPOOL is not set # CONFIG_PKG_USING_OPENAMP is not set -# CONFIG_PKG_USING_RPMSG_LITE is not set # CONFIG_PKG_USING_LPM is not set # CONFIG_PKG_USING_TLSF is not set # CONFIG_PKG_USING_EVENT_RECORDER is not set @@ -709,11 +725,6 @@ CONFIG_RT_USING_ADT_REF=y # CONFIG_PKG_USING_AGILE_UPGRADE is not set # CONFIG_PKG_USING_FLASH_BLOB is not set # CONFIG_PKG_USING_MLIBC is not set -# CONFIG_PKG_USING_TASK_MSG_BUS is not set -# CONFIG_PKG_USING_SFDB is not set -# CONFIG_PKG_USING_RTP is not set -# CONFIG_PKG_USING_REB is not set -# CONFIG_PKG_USING_R_RHEALSTONE is not set # # peripheral libraries and drivers @@ -778,7 +789,6 @@ CONFIG_RT_USING_ADT_REF=y # CONFIG_PKG_USING_BALANCE is not set # CONFIG_PKG_USING_SHT2X is not set # CONFIG_PKG_USING_SHT3X is not set -# CONFIG_PKG_USING_SHT4X is not set # CONFIG_PKG_USING_AD7746 is not set # CONFIG_PKG_USING_ADT74XX is not set # CONFIG_PKG_USING_MAX17048 is not set @@ -879,10 +889,6 @@ CONFIG_RT_USING_ADT_REF=y # CONFIG_PKG_USING_FINGERPRINT is not set # CONFIG_PKG_USING_BT_ECB02C is not set # CONFIG_PKG_USING_UAT is not set -# CONFIG_PKG_USING_ST7789 is not set -# CONFIG_PKG_USING_VS1003 is not set -# CONFIG_PKG_USING_X9555 is not set -# CONFIG_PKG_USING_SYSTEM_RUN_LED is not set # CONFIG_PKG_USING_SPI_TOOLS is not set # @@ -898,7 +904,6 @@ CONFIG_RT_USING_ADT_REF=y # CONFIG_PKG_USING_QUEST is not set # CONFIG_PKG_USING_NAXOS is not set # CONFIG_PKG_USING_NCNN is not set -# CONFIG_PKG_USING_R_TINYMAIX is not set # # Signal Processing and Control Algorithm Packages @@ -969,7 +974,6 @@ CONFIG_PKG_USING_KERNEL_SAMPLES_EN=y # CONFIG_PKG_USING_MINILZO is not set # CONFIG_PKG_USING_QUICKLZ is not set # CONFIG_PKG_USING_LZMA is not set -# CONFIG_PKG_USING_RALARAM is not set # CONFIG_PKG_USING_MULTIBUTTON is not set # CONFIG_PKG_USING_FLEXIBLE_BUTTON is not set # CONFIG_PKG_USING_CANFESTIVAL is not set @@ -1154,7 +1158,6 @@ CONFIG_PKG_USING_KERNEL_SAMPLES_EN=y # # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_GFX_LIBRARY is not set # CONFIG_PKG_USING_ARDUINO_U8G2 is not set -# CONFIG_PKG_USING_ARDUINO_TFT_ESPI is not set # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_ST7735 is not set # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_SSD1306 is not set # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_ILI9341 is not set @@ -1163,7 +1166,6 @@ CONFIG_PKG_USING_KERNEL_SAMPLES_EN=y # # Timing # -# CONFIG_PKG_USING_ARDUINO_RTCLIB is not set # CONFIG_PKG_USING_ARDUINO_MSTIMER2 is not set # CONFIG_PKG_USING_ARDUINO_TICKER is not set # CONFIG_PKG_USING_ARDUINO_TASKSCHEDULER is not set @@ -1200,6 +1202,7 @@ CONFIG_PKG_USING_KERNEL_SAMPLES_EN=y # # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_MFRC630 is not set # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_SI5351 is not set +# CONFIG_PKG_USING_ARDUINO_RTCLIB is not set # # Signal IO @@ -1220,23 +1223,68 @@ CONFIG_PKG_USING_KERNEL_SAMPLES_EN=y # # Hardware Drivers # -CONFIG_DRV_DEBUG=y +# CONFIG_DRV_DEBUG is not set # # On-chip Peripheral Drivers # CONFIG_BSP_USING_IOPAD=y CONFIG_BSP_USING_UART=y +CONFIG_RT_USING_UART0=y CONFIG_RT_USING_UART1=y -# CONFIG_RT_USING_UART0 is not set -# CONFIG_BSP_USING_SPI is not set -# CONFIG_BSP_USING_CAN is not set -# CONFIG_BSP_USING_GPIO is not set -# CONFIG_BSP_USING_QSPI is not set -# CONFIG_BSP_USING_ETH is not set -# CONFIG_BSP_USING_PWM is not set -# CONFIG_BSP_USING_I2C is not set -# CONFIG_BSP_USING_SDIF is not set +# CONFIG_RT_USING_UART2 is not set +# CONFIG_RT_USING_UART3 is not set +CONFIG_BSP_USING_SPI=y +CONFIG_RT_USING_SPIM0=y +CONFIG_RT_USING_SPIM1=y +CONFIG_RT_USING_SPIM2=y +CONFIG_RT_USING_SPIM3=y +CONFIG_BSP_USING_CAN=y +CONFIG_RT_USING_CANFD=y +CONFIG_RT_USING_FILTER=y +CONFIG_RT_USING_CAN0=y +CONFIG_RT_USING_CAN1=y +CONFIG_BSP_USING_GPIO=y +CONFIG_BSP_USING_QSPI=y +CONFIG_RT_USING_QSPI0=y +CONFIG_USING_QSPI_CHANNEL0=y +# CONFIG_USING_QSPI_CHANNEL1 is not set +CONFIG_BSP_USING_ETH=y +CONFIG_RT_LWIP_PBUF_POOL_BUFSIZE=1700 +CONFIG_BSP_USING_PWM=y +# CONFIG_RT_USING_PWM0 is not set +# CONFIG_RT_USING_PWM1 is not set +# CONFIG_RT_USING_PWM2 is not set +# CONFIG_RT_USING_PWM3 is not set +# CONFIG_RT_USING_PWM4 is not set +# CONFIG_RT_USING_PWM5 is not set +CONFIG_RT_USING_PWM6=y +# CONFIG_RT_USING_PWM7 is not set +CONFIG_BSP_USING_I2C=y +CONFIG_I2C_USE_MIO=y +# CONFIG_RT_USING_MIO0 is not set +# CONFIG_RT_USING_MIO1 is not set +# CONFIG_RT_USING_MIO2 is not set +# CONFIG_RT_USING_MIO3 is not set +# CONFIG_RT_USING_MIO4 is not set +# CONFIG_RT_USING_MIO5 is not set +# CONFIG_RT_USING_MIO6 is not set +# CONFIG_RT_USING_MIO7 is not set +# CONFIG_RT_USING_MIO8 is not set +# CONFIG_RT_USING_MIO9 is not set +# CONFIG_RT_USING_MIO10 is not set +# CONFIG_RT_USING_MIO11 is not set +# CONFIG_RT_USING_MIO12 is not set +# CONFIG_RT_USING_MIO13 is not set +# CONFIG_RT_USING_MIO14 is not set +CONFIG_RT_USING_MIO15=y +# CONFIG_I2C_USE_CONTROLLER is not set +CONFIG_BSP_USING_SDIF=y +CONFIG_BSP_USING_SDCARD_FATFS=y +CONFIG_BSP_USING_SDCARD_PARTITION="sd0" +# CONFIG_USING_SDIF0 is not set +CONFIG_USING_SDIF1=y +# CONFIG_USING_EMMC is not set # # Board extended module Drivers @@ -1297,10 +1345,10 @@ CONFIG_E2000Q_DEMO_BOARD=y # Sdk common configuration # # CONFIG_LOG_VERBOS is not set -# CONFIG_LOG_DEBUG is not set +CONFIG_LOG_DEBUG=y # CONFIG_LOG_INFO is not set # CONFIG_LOG_WARN is not set -CONFIG_LOG_ERROR=y +# CONFIG_LOG_ERROR is not set # CONFIG_LOG_NONE is not set # CONFIG_LOG_EXTRA_INFO is not set # CONFIG_LOG_DISPALY_CORE_NUM is not set diff --git a/bsp/phytium/aarch64/configs/e2000q_demo_rtthread.h b/bsp/phytium/aarch64/configs/e2000q_demo_rtthread.h index ed305a2171..6150145f1c 100644 --- a/bsp/phytium/aarch64/configs/e2000q_demo_rtthread.h +++ b/bsp/phytium/aarch64/configs/e2000q_demo_rtthread.h @@ -31,7 +31,6 @@ #define RT_USING_DEBUG #define RT_DEBUGING_COLOR #define RT_DEBUGING_CONTEXT -#define RT_DEBUGING_INIT /* Inter-Thread communication */ @@ -65,7 +64,9 @@ #define ARCH_HAVE_EFFICIENT_UNALIGNED_ACCESS #define ARCH_CPU_64BIT #define RT_USING_CACHE +#define RT_USING_HW_ATOMIC #define ARCH_ARM_BOOTWITH_FLUSH_CACHE +#define RT_USING_CPU_FFS #define ARCH_MM_MMU #define ARCH_ARM #define ARCH_ARM_MMU @@ -130,10 +131,26 @@ #define RT_USING_SERIAL_V1 #define RT_SERIAL_USING_DMA #define RT_SERIAL_RB_BUFSZ 64 +#define RT_USING_CAN +#define RT_CAN_USING_HDR +#define RT_CAN_USING_CANFD +#define RT_USING_I2C +#define RT_USING_I2C_BITOPS +#define RT_USING_PIN #define RT_USING_NULL #define RT_USING_ZERO #define RT_USING_RANDOM +#define RT_USING_PWM #define RT_USING_RTC +#define RT_USING_SDIO +#define RT_SDIO_STACK_SIZE 8192 +#define RT_SDIO_THREAD_PRIORITY 15 +#define RT_MMCSD_STACK_SIZE 8192 +#define RT_MMCSD_THREAD_PREORITY 22 +#define RT_MMCSD_MAX_PARTITION 16 +#define RT_USING_SPI +#define RT_USING_QSPI +#define RT_USING_DEV_BUS #define RT_USING_KTIME /* Using USB */ @@ -141,6 +158,7 @@ /* C/C++ and POSIX layer */ + /* ISO-ANSI C layer */ /* Timezone and Daylight Saving Time */ @@ -210,7 +228,7 @@ #define RT_LWIP_TCPTHREAD_MBOX_SIZE 8 #define RT_LWIP_TCPTHREAD_STACKSIZE 16184 #define RT_LWIP_ETHTHREAD_PRIORITY 12 -#define RT_LWIP_ETHTHREAD_STACKSIZE 2048 +#define RT_LWIP_ETHTHREAD_STACKSIZE 8192 #define RT_LWIP_ETHTHREAD_MBOX_SIZE 8 #define LWIP_NETIF_STATUS_CALLBACK 1 #define LWIP_NETIF_LINK_CALLBACK 1 @@ -238,6 +256,9 @@ /* Memory management */ +/* Memory protection */ + + /* RT-Thread Utestcases */ @@ -254,9 +275,6 @@ /* Wiced WiFi */ -/* CYW43012 WiFi */ - - /* IoT Cloud */ @@ -362,13 +380,38 @@ /* Hardware Drivers */ -#define DRV_DEBUG /* On-chip Peripheral Drivers */ #define BSP_USING_IOPAD #define BSP_USING_UART +#define RT_USING_UART0 #define RT_USING_UART1 +#define BSP_USING_SPI +#define RT_USING_SPIM0 +#define RT_USING_SPIM1 +#define RT_USING_SPIM2 +#define RT_USING_SPIM3 +#define BSP_USING_CAN +#define RT_USING_CANFD +#define RT_USING_FILTER +#define RT_USING_CAN0 +#define RT_USING_CAN1 +#define BSP_USING_GPIO +#define BSP_USING_QSPI +#define RT_USING_QSPI0 +#define USING_QSPI_CHANNEL0 +#define BSP_USING_ETH +#define RT_LWIP_PBUF_POOL_BUFSIZE 1700 +#define BSP_USING_PWM +#define RT_USING_PWM6 +#define BSP_USING_I2C +#define I2C_USE_MIO +#define RT_USING_MIO15 +#define BSP_USING_SDIF +#define BSP_USING_SDCARD_FATFS +#define BSP_USING_SDCARD_PARTITION "sd0" +#define USING_SDIF1 /* Board extended module Drivers */ @@ -404,7 +447,7 @@ /* Sdk common configuration */ -#define LOG_ERROR +#define LOG_DEBUG /* Image information configuration */ diff --git a/bsp/phytium/aarch64/configs/phytium_pi_rtsmart b/bsp/phytium/aarch64/configs/phytium_pi_rtsmart index cbc03f684f..844a84a05f 100644 --- a/bsp/phytium/aarch64/configs/phytium_pi_rtsmart +++ b/bsp/phytium/aarch64/configs/phytium_pi_rtsmart @@ -40,8 +40,9 @@ CONFIG_RT_KPRINTF_USING_LONGLONG=y CONFIG_RT_USING_DEBUG=y CONFIG_RT_DEBUGING_COLOR=y CONFIG_RT_DEBUGING_CONTEXT=y -CONFIG_RT_DEBUGING_INIT=y +# CONFIG_RT_DEBUGING_AUTO_INIT is not set # CONFIG_RT_DEBUGING_PAGE_LEAK is not set +# CONFIG_RT_DEBUGING_SPINLOCK is not set # # Inter-Thread communication @@ -91,10 +92,10 @@ CONFIG_ARCH_SECONDARY_CPU_STACK_SIZE=4096 CONFIG_ARCH_HAVE_EFFICIENT_UNALIGNED_ACCESS=y CONFIG_ARCH_CPU_64BIT=y CONFIG_RT_USING_CACHE=y -# CONFIG_RT_USING_HW_ATOMIC is not set +CONFIG_RT_USING_HW_ATOMIC=y CONFIG_ARCH_ARM_BOOTWITH_FLUSH_CACHE=y # CONFIG_ARCH_CPU_STACK_GROWS_UPWARD is not set -# CONFIG_RT_USING_CPU_FFS is not set +CONFIG_RT_USING_CPU_FFS=y CONFIG_ARCH_MM_MMU=y CONFIG_ARCH_ARM=y CONFIG_ARCH_ARM_MMU=y @@ -161,6 +162,7 @@ CONFIG_RT_DFS_ELM_MAX_SECTOR_SIZE=512 # CONFIG_RT_DFS_ELM_USE_ERASE is not set CONFIG_RT_DFS_ELM_REENTRANT=y CONFIG_RT_DFS_ELM_MUTEX_TIMEOUT=3000 +# CONFIG_RT_DFS_ELM_USE_EXFAT is not set CONFIG_RT_USING_DFS_DEVFS=y # CONFIG_RT_USING_DFS_ROMFS is not set # CONFIG_RT_USING_DFS_CROMFS is not set @@ -195,18 +197,24 @@ CONFIG_RT_SERIAL_USING_DMA=y CONFIG_RT_SERIAL_RB_BUFSZ=64 CONFIG_RT_USING_TTY=y # CONFIG_RT_TTY_DEBUG is not set -# CONFIG_RT_USING_CAN is not set +CONFIG_RT_USING_CAN=y +# CONFIG_RT_CAN_USING_HDR is not set +CONFIG_RT_CAN_USING_CANFD=y # CONFIG_RT_USING_HWTIMER is not set # CONFIG_RT_USING_CPUTIME is not set -# CONFIG_RT_USING_I2C is not set +CONFIG_RT_USING_I2C=y +# CONFIG_RT_I2C_DEBUG is not set +CONFIG_RT_USING_I2C_BITOPS=y +# CONFIG_RT_I2C_BITOPS_DEBUG is not set +# CONFIG_RT_USING_SOFT_I2C is not set # CONFIG_RT_USING_PHY is not set -# CONFIG_RT_USING_PIN is not set +CONFIG_RT_USING_PIN=y # CONFIG_RT_USING_ADC is not set # CONFIG_RT_USING_DAC is not set CONFIG_RT_USING_NULL=y CONFIG_RT_USING_ZERO=y CONFIG_RT_USING_RANDOM=y -# CONFIG_RT_USING_PWM is not set +CONFIG_RT_USING_PWM=y # CONFIG_RT_USING_MTD_NOR is not set # CONFIG_RT_USING_MTD_NAND is not set # CONFIG_RT_USING_PM is not set @@ -220,7 +228,13 @@ CONFIG_RT_MMCSD_STACK_SIZE=8192 CONFIG_RT_MMCSD_THREAD_PREORITY=22 CONFIG_RT_MMCSD_MAX_PARTITION=16 # CONFIG_RT_SDIO_DEBUG is not set -# CONFIG_RT_USING_SPI is not set +CONFIG_RT_USING_SPI=y +# CONFIG_RT_USING_SPI_BITOPS is not set +CONFIG_RT_USING_QSPI=y +# CONFIG_RT_USING_SPI_MSD is not set +# CONFIG_RT_USING_SFUD is not set +# CONFIG_RT_USING_ENC28J60 is not set +# CONFIG_RT_USING_SPI_WIFI is not set # CONFIG_RT_USING_WDT is not set # CONFIG_RT_USING_AUDIO is not set # CONFIG_RT_USING_SENSOR is not set @@ -229,7 +243,7 @@ CONFIG_RT_MMCSD_MAX_PARTITION=16 # CONFIG_RT_USING_HWCRYPTO is not set # CONFIG_RT_USING_PULSE_ENCODER is not set # CONFIG_RT_USING_INPUT_CAPTURE is not set -# CONFIG_RT_USING_DEV_BUS is not set +CONFIG_RT_USING_DEV_BUS=y # CONFIG_RT_USING_WIFI is not set # CONFIG_RT_USING_VIRTIO is not set CONFIG_RT_USING_KTIME=y @@ -244,6 +258,7 @@ CONFIG_RT_USING_KTIME=y # # C/C++ and POSIX layer # +# CONFIG_RT_USING_INTERNAL_LIBC_ONLY is not set # # ISO-ANSI C layer @@ -424,6 +439,12 @@ CONFIG_RT_USING_ADT_REF=y # # CONFIG_RT_USING_MEMBLOCK is not set +# +# Memory protection +# +# CONFIG_RT_USING_MEM_PROTECTION is not set +# CONFIG_RT_USING_HW_STACK_GUARD is not set + # # RT-Thread Utestcases # @@ -464,11 +485,6 @@ CONFIG_RT_USING_ADT_REF=y # # CONFIG_PKG_USING_WLAN_WICED is not set # CONFIG_PKG_USING_RW007 is not set - -# -# CYW43012 WiFi -# -# CONFIG_PKG_USING_WLAN_CYW43012 is not set # CONFIG_PKG_USING_COAP is not set # CONFIG_PKG_USING_NOPOLL is not set # CONFIG_PKG_USING_NETUTILS is not set @@ -511,7 +527,6 @@ CONFIG_RT_USING_ADT_REF=y # CONFIG_PKG_USING_NMEALIB is not set # CONFIG_PKG_USING_PDULIB is not set # CONFIG_PKG_USING_BTSTACK is not set -# CONFIG_PKG_USING_BT_CYW43012 is not set # CONFIG_PKG_USING_LORAWAN_ED_STACK is not set # CONFIG_PKG_USING_WAYZ_IOTKIT is not set # CONFIG_PKG_USING_MAVLINK is not set @@ -531,8 +546,6 @@ CONFIG_RT_USING_ADT_REF=y # CONFIG_PKG_USING_ZFTP is not set # CONFIG_PKG_USING_WOL is not set # CONFIG_PKG_USING_ZEPHYR_POLLING is not set -# CONFIG_PKG_USING_MATTER_ADAPTATION_LAYER is not set -# CONFIG_PKG_USING_LHC_MODBUS is not set # # security packages @@ -579,6 +592,7 @@ CONFIG_RT_USING_ADT_REF=y # LVGL: powerful and easy-to-use embedded GUI library # # CONFIG_PKG_USING_LVGL is not set +# CONFIG_PKG_USING_LITTLEVGL2RTT is not set # CONFIG_PKG_USING_LV_MUSIC_DEMO is not set # CONFIG_PKG_USING_GUI_GUIDER_DEMO is not set @@ -653,7 +667,6 @@ CONFIG_RT_USING_ADT_REF=y # CONFIG_PKG_USING_HASH_MATCH is not set # CONFIG_PKG_USING_ARMV7M_DWT_TOOL is not set # CONFIG_PKG_USING_VOFA_PLUS is not set -# CONFIG_PKG_USING_ZDEBUG is not set # # system packages @@ -690,8 +703,6 @@ CONFIG_RT_USING_ADT_REF=y # CONFIG_PKG_USING_UC_COMMON is not set # CONFIG_PKG_USING_UC_MODBUS is not set # CONFIG_PKG_USING_FREERTOS_WRAPPER is not set -# CONFIG_PKG_USING_LITEOS_SDK is not set -# CONFIG_PKG_USING_TZ_DATABASE is not set # CONFIG_PKG_USING_CAIRO is not set # CONFIG_PKG_USING_PIXMAN is not set # CONFIG_PKG_USING_PARTITION is not set @@ -715,7 +726,6 @@ CONFIG_RT_USING_ADT_REF=y # CONFIG_PKG_USING_QBOOT is not set # CONFIG_PKG_USING_PPOOL is not set # CONFIG_PKG_USING_OPENAMP is not set -# CONFIG_PKG_USING_RPMSG_LITE is not set # CONFIG_PKG_USING_LPM is not set # CONFIG_PKG_USING_TLSF is not set # CONFIG_PKG_USING_EVENT_RECORDER is not set @@ -729,11 +739,6 @@ CONFIG_RT_USING_ADT_REF=y # CONFIG_PKG_USING_AGILE_UPGRADE is not set # CONFIG_PKG_USING_FLASH_BLOB is not set # CONFIG_PKG_USING_MLIBC is not set -# CONFIG_PKG_USING_TASK_MSG_BUS is not set -# CONFIG_PKG_USING_SFDB is not set -# CONFIG_PKG_USING_RTP is not set -# CONFIG_PKG_USING_REB is not set -# CONFIG_PKG_USING_R_RHEALSTONE is not set # # peripheral libraries and drivers @@ -798,7 +803,6 @@ CONFIG_RT_USING_ADT_REF=y # CONFIG_PKG_USING_BALANCE is not set # CONFIG_PKG_USING_SHT2X is not set # CONFIG_PKG_USING_SHT3X is not set -# CONFIG_PKG_USING_SHT4X is not set # CONFIG_PKG_USING_AD7746 is not set # CONFIG_PKG_USING_ADT74XX is not set # CONFIG_PKG_USING_MAX17048 is not set @@ -899,10 +903,6 @@ CONFIG_RT_USING_ADT_REF=y # CONFIG_PKG_USING_FINGERPRINT is not set # CONFIG_PKG_USING_BT_ECB02C is not set # CONFIG_PKG_USING_UAT is not set -# CONFIG_PKG_USING_ST7789 is not set -# CONFIG_PKG_USING_VS1003 is not set -# CONFIG_PKG_USING_X9555 is not set -# CONFIG_PKG_USING_SYSTEM_RUN_LED is not set # CONFIG_PKG_USING_SPI_TOOLS is not set # @@ -918,7 +918,6 @@ CONFIG_RT_USING_ADT_REF=y # CONFIG_PKG_USING_QUEST is not set # CONFIG_PKG_USING_NAXOS is not set # CONFIG_PKG_USING_NCNN is not set -# CONFIG_PKG_USING_R_TINYMAIX is not set # # Signal Processing and Control Algorithm Packages @@ -989,7 +988,6 @@ CONFIG_PKG_USING_KERNEL_SAMPLES_EN=y # CONFIG_PKG_USING_MINILZO is not set # CONFIG_PKG_USING_QUICKLZ is not set # CONFIG_PKG_USING_LZMA is not set -# CONFIG_PKG_USING_RALARAM is not set # CONFIG_PKG_USING_MULTIBUTTON is not set # CONFIG_PKG_USING_FLEXIBLE_BUTTON is not set # CONFIG_PKG_USING_CANFESTIVAL is not set @@ -1174,7 +1172,6 @@ CONFIG_PKG_USING_KERNEL_SAMPLES_EN=y # # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_GFX_LIBRARY is not set # CONFIG_PKG_USING_ARDUINO_U8G2 is not set -# CONFIG_PKG_USING_ARDUINO_TFT_ESPI is not set # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_ST7735 is not set # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_SSD1306 is not set # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_ILI9341 is not set @@ -1183,7 +1180,6 @@ CONFIG_PKG_USING_KERNEL_SAMPLES_EN=y # # Timing # -# CONFIG_PKG_USING_ARDUINO_RTCLIB is not set # CONFIG_PKG_USING_ARDUINO_MSTIMER2 is not set # CONFIG_PKG_USING_ARDUINO_TICKER is not set # CONFIG_PKG_USING_ARDUINO_TASKSCHEDULER is not set @@ -1220,6 +1216,7 @@ CONFIG_PKG_USING_KERNEL_SAMPLES_EN=y # # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_MFRC630 is not set # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_SI5351 is not set +# CONFIG_PKG_USING_ARDUINO_RTCLIB is not set # # Signal IO @@ -1240,28 +1237,59 @@ CONFIG_PKG_USING_KERNEL_SAMPLES_EN=y # # Hardware Drivers # -CONFIG_DRV_DEBUG=y +# CONFIG_DRV_DEBUG is not set # # On-chip Peripheral Drivers # CONFIG_BSP_USING_IOPAD=y CONFIG_BSP_USING_UART=y +CONFIG_RT_USING_UART0=y CONFIG_RT_USING_UART1=y -# CONFIG_RT_USING_UART0 is not set -# CONFIG_BSP_USING_SPI is not set +# CONFIG_RT_USING_UART2 is not set +# CONFIG_RT_USING_UART3 is not set +CONFIG_BSP_USING_SPI=y +CONFIG_RT_USING_SPIM0=y +CONFIG_RT_USING_SPIM1=y +CONFIG_RT_USING_SPIM2=y +CONFIG_RT_USING_SPIM3=y # CONFIG_BSP_USING_CAN is not set -# CONFIG_BSP_USING_GPIO is not set -# CONFIG_BSP_USING_QSPI is not set -# CONFIG_BSP_USING_ETH is not set -# CONFIG_BSP_USING_PWM is not set -# CONFIG_BSP_USING_I2C is not set -CONFIG_BSP_USING_SDIF=y -CONFIG_BSP_USING_SDCARD_FATFS=y -CONFIG_BSP_USING_SDCARD_PARTITION="sd1" -CONFIG_USING_SDIF0=y -# CONFIG_USING_SDIF1 is not set -# CONFIG_USING_EMMC is not set +CONFIG_BSP_USING_GPIO=y +CONFIG_BSP_USING_QSPI=y +CONFIG_RT_USING_QSPI0=y +CONFIG_USING_QSPI_CHANNEL0=y +# CONFIG_USING_QSPI_CHANNEL1 is not set +CONFIG_BSP_USING_ETH=y +CONFIG_RT_LWIP_PBUF_POOL_BUFSIZE=1700 +CONFIG_BSP_USING_PWM=y +# CONFIG_RT_USING_PWM0 is not set +# CONFIG_RT_USING_PWM1 is not set +CONFIG_RT_USING_PWM2=y +# CONFIG_RT_USING_PWM3 is not set +# CONFIG_RT_USING_PWM4 is not set +# CONFIG_RT_USING_PWM5 is not set +# CONFIG_RT_USING_PWM6 is not set +# CONFIG_RT_USING_PWM7 is not set +CONFIG_BSP_USING_I2C=y +CONFIG_I2C_USE_MIO=y +CONFIG_RT_USING_MIO0=y +CONFIG_RT_USING_MIO1=y +CONFIG_RT_USING_MIO2=y +# CONFIG_RT_USING_MIO3 is not set +# CONFIG_RT_USING_MIO4 is not set +# CONFIG_RT_USING_MIO5 is not set +# CONFIG_RT_USING_MIO6 is not set +# CONFIG_RT_USING_MIO7 is not set +# CONFIG_RT_USING_MIO8 is not set +# CONFIG_RT_USING_MIO9 is not set +CONFIG_RT_USING_MIO10=y +# CONFIG_RT_USING_MIO11 is not set +# CONFIG_RT_USING_MIO12 is not set +# CONFIG_RT_USING_MIO13 is not set +# CONFIG_RT_USING_MIO14 is not set +# CONFIG_RT_USING_MIO15 is not set +# CONFIG_I2C_USE_CONTROLLER is not set +# CONFIG_BSP_USING_SDIF is not set # # Board extended module Drivers diff --git a/bsp/phytium/aarch64/configs/phytium_pi_rtsmart.h b/bsp/phytium/aarch64/configs/phytium_pi_rtsmart.h index 30ff5d64af..3bc08868c1 100644 --- a/bsp/phytium/aarch64/configs/phytium_pi_rtsmart.h +++ b/bsp/phytium/aarch64/configs/phytium_pi_rtsmart.h @@ -32,7 +32,6 @@ #define RT_USING_DEBUG #define RT_DEBUGING_COLOR #define RT_DEBUGING_CONTEXT -#define RT_DEBUGING_INIT /* Inter-Thread communication */ @@ -66,7 +65,9 @@ #define ARCH_HAVE_EFFICIENT_UNALIGNED_ACCESS #define ARCH_CPU_64BIT #define RT_USING_CACHE +#define RT_USING_HW_ATOMIC #define ARCH_ARM_BOOTWITH_FLUSH_CACHE +#define RT_USING_CPU_FFS #define ARCH_MM_MMU #define ARCH_ARM #define ARCH_ARM_MMU @@ -140,9 +141,15 @@ #define RT_SERIAL_USING_DMA #define RT_SERIAL_RB_BUFSZ 64 #define RT_USING_TTY +#define RT_USING_CAN +#define RT_CAN_USING_CANFD +#define RT_USING_I2C +#define RT_USING_I2C_BITOPS +#define RT_USING_PIN #define RT_USING_NULL #define RT_USING_ZERO #define RT_USING_RANDOM +#define RT_USING_PWM #define RT_USING_RTC #define RT_USING_SDIO #define RT_SDIO_STACK_SIZE 8192 @@ -150,6 +157,9 @@ #define RT_MMCSD_STACK_SIZE 8192 #define RT_MMCSD_THREAD_PREORITY 22 #define RT_MMCSD_MAX_PARTITION 16 +#define RT_USING_SPI +#define RT_USING_QSPI +#define RT_USING_DEV_BUS #define RT_USING_KTIME /* Using USB */ @@ -157,6 +167,7 @@ /* C/C++ and POSIX layer */ + /* ISO-ANSI C layer */ /* Timezone and Daylight Saving Time */ @@ -254,6 +265,9 @@ /* Memory management */ +/* Memory protection */ + + /* RT-Thread Utestcases */ @@ -270,9 +284,6 @@ /* Wiced WiFi */ -/* CYW43012 WiFi */ - - /* IoT Cloud */ @@ -378,17 +389,32 @@ /* Hardware Drivers */ -#define DRV_DEBUG /* On-chip Peripheral Drivers */ #define BSP_USING_IOPAD #define BSP_USING_UART +#define RT_USING_UART0 #define RT_USING_UART1 -#define BSP_USING_SDIF -#define BSP_USING_SDCARD_FATFS -#define BSP_USING_SDCARD_PARTITION "sd1" -#define USING_SDIF0 +#define BSP_USING_SPI +#define RT_USING_SPIM0 +#define RT_USING_SPIM1 +#define RT_USING_SPIM2 +#define RT_USING_SPIM3 +#define BSP_USING_GPIO +#define BSP_USING_QSPI +#define RT_USING_QSPI0 +#define USING_QSPI_CHANNEL0 +#define BSP_USING_ETH +#define RT_LWIP_PBUF_POOL_BUFSIZE 1700 +#define BSP_USING_PWM +#define RT_USING_PWM2 +#define BSP_USING_I2C +#define I2C_USE_MIO +#define RT_USING_MIO0 +#define RT_USING_MIO1 +#define RT_USING_MIO2 +#define RT_USING_MIO10 /* Board extended module Drivers */ diff --git a/bsp/phytium/aarch64/configs/phytium_pi_rtthread b/bsp/phytium/aarch64/configs/phytium_pi_rtthread index c65e8998d2..9632a40734 100644 --- a/bsp/phytium/aarch64/configs/phytium_pi_rtthread +++ b/bsp/phytium/aarch64/configs/phytium_pi_rtthread @@ -24,6 +24,7 @@ CONFIG_RT_HOOK_USING_FUNC_PTR=y CONFIG_RT_USING_IDLE_HOOK=y CONFIG_RT_IDLE_HOOK_LIST_SIZE=4 CONFIG_IDLE_THREAD_STACK_SIZE=8192 +CONFIG_SYSTEM_THREAD_STACK_SIZE=8192 CONFIG_RT_USING_TIMER_SOFT=y CONFIG_RT_TIMER_THREAD_PRIO=4 CONFIG_RT_TIMER_THREAD_STACK_SIZE=8192 @@ -39,8 +40,9 @@ CONFIG_RT_KPRINTF_USING_LONGLONG=y CONFIG_RT_USING_DEBUG=y CONFIG_RT_DEBUGING_COLOR=y CONFIG_RT_DEBUGING_CONTEXT=y -CONFIG_RT_DEBUGING_INIT=y +# CONFIG_RT_DEBUGING_AUTO_INIT is not set # CONFIG_RT_DEBUGING_PAGE_LEAK is not set +# CONFIG_RT_DEBUGING_SPINLOCK is not set # # Inter-Thread communication @@ -90,10 +92,10 @@ CONFIG_ARCH_SECONDARY_CPU_STACK_SIZE=4096 CONFIG_ARCH_HAVE_EFFICIENT_UNALIGNED_ACCESS=y CONFIG_ARCH_CPU_64BIT=y CONFIG_RT_USING_CACHE=y -# CONFIG_RT_USING_HW_ATOMIC is not set +CONFIG_RT_USING_HW_ATOMIC=y CONFIG_ARCH_ARM_BOOTWITH_FLUSH_CACHE=y # CONFIG_ARCH_CPU_STACK_GROWS_UPWARD is not set -# CONFIG_RT_USING_CPU_FFS is not set +CONFIG_RT_USING_CPU_FFS=y CONFIG_ARCH_MM_MMU=y CONFIG_ARCH_ARM=y CONFIG_ARCH_ARM_MMU=y @@ -159,6 +161,7 @@ CONFIG_RT_DFS_ELM_MAX_SECTOR_SIZE=512 # CONFIG_RT_DFS_ELM_USE_ERASE is not set CONFIG_RT_DFS_ELM_REENTRANT=y CONFIG_RT_DFS_ELM_MUTEX_TIMEOUT=3000 +# CONFIG_RT_DFS_ELM_USE_EXFAT is not set CONFIG_RT_USING_DFS_DEVFS=y # CONFIG_RT_USING_DFS_ROMFS is not set # CONFIG_RT_USING_DFS_CROMFS is not set @@ -182,18 +185,24 @@ CONFIG_RT_USING_SERIAL_V1=y # CONFIG_RT_USING_SERIAL_V2 is not set CONFIG_RT_SERIAL_USING_DMA=y CONFIG_RT_SERIAL_RB_BUFSZ=64 -# CONFIG_RT_USING_CAN is not set +CONFIG_RT_USING_CAN=y +# CONFIG_RT_CAN_USING_HDR is not set +CONFIG_RT_CAN_USING_CANFD=y # CONFIG_RT_USING_HWTIMER is not set # CONFIG_RT_USING_CPUTIME is not set -# CONFIG_RT_USING_I2C is not set +CONFIG_RT_USING_I2C=y +# CONFIG_RT_I2C_DEBUG is not set +CONFIG_RT_USING_I2C_BITOPS=y +# CONFIG_RT_I2C_BITOPS_DEBUG is not set +# CONFIG_RT_USING_SOFT_I2C is not set # CONFIG_RT_USING_PHY is not set -# CONFIG_RT_USING_PIN is not set +CONFIG_RT_USING_PIN=y # CONFIG_RT_USING_ADC is not set # CONFIG_RT_USING_DAC is not set CONFIG_RT_USING_NULL=y CONFIG_RT_USING_ZERO=y CONFIG_RT_USING_RANDOM=y -# CONFIG_RT_USING_PWM is not set +CONFIG_RT_USING_PWM=y # CONFIG_RT_USING_MTD_NOR is not set # CONFIG_RT_USING_MTD_NAND is not set # CONFIG_RT_USING_PM is not set @@ -207,7 +216,13 @@ CONFIG_RT_MMCSD_STACK_SIZE=8192 CONFIG_RT_MMCSD_THREAD_PREORITY=22 CONFIG_RT_MMCSD_MAX_PARTITION=16 # CONFIG_RT_SDIO_DEBUG is not set -# CONFIG_RT_USING_SPI is not set +CONFIG_RT_USING_SPI=y +# CONFIG_RT_USING_SPI_BITOPS is not set +CONFIG_RT_USING_QSPI=y +# CONFIG_RT_USING_SPI_MSD is not set +# CONFIG_RT_USING_SFUD is not set +# CONFIG_RT_USING_ENC28J60 is not set +# CONFIG_RT_USING_SPI_WIFI is not set # CONFIG_RT_USING_WDT is not set # CONFIG_RT_USING_AUDIO is not set # CONFIG_RT_USING_SENSOR is not set @@ -216,7 +231,7 @@ CONFIG_RT_MMCSD_MAX_PARTITION=16 # CONFIG_RT_USING_HWCRYPTO is not set # CONFIG_RT_USING_PULSE_ENCODER is not set # CONFIG_RT_USING_INPUT_CAPTURE is not set -# CONFIG_RT_USING_DEV_BUS is not set +CONFIG_RT_USING_DEV_BUS=y # CONFIG_RT_USING_WIFI is not set # CONFIG_RT_USING_VIRTIO is not set CONFIG_RT_USING_KTIME=y @@ -231,6 +246,7 @@ CONFIG_RT_USING_KTIME=y # # C/C++ and POSIX layer # +# CONFIG_RT_USING_INTERNAL_LIBC_ONLY is not set # # ISO-ANSI C layer @@ -409,6 +425,12 @@ CONFIG_RT_USING_ADT_REF=y # # CONFIG_RT_USING_MEMBLOCK is not set +# +# Memory protection +# +# CONFIG_RT_USING_MEM_PROTECTION is not set +# CONFIG_RT_USING_HW_STACK_GUARD is not set + # # RT-Thread Utestcases # @@ -449,11 +471,6 @@ CONFIG_RT_USING_ADT_REF=y # # CONFIG_PKG_USING_WLAN_WICED is not set # CONFIG_PKG_USING_RW007 is not set - -# -# CYW43012 WiFi -# -# CONFIG_PKG_USING_WLAN_CYW43012 is not set # CONFIG_PKG_USING_COAP is not set # CONFIG_PKG_USING_NOPOLL is not set # CONFIG_PKG_USING_NETUTILS is not set @@ -496,7 +513,6 @@ CONFIG_RT_USING_ADT_REF=y # CONFIG_PKG_USING_NMEALIB is not set # CONFIG_PKG_USING_PDULIB is not set # CONFIG_PKG_USING_BTSTACK is not set -# CONFIG_PKG_USING_BT_CYW43012 is not set # CONFIG_PKG_USING_LORAWAN_ED_STACK is not set # CONFIG_PKG_USING_WAYZ_IOTKIT is not set # CONFIG_PKG_USING_MAVLINK is not set @@ -516,8 +532,6 @@ CONFIG_RT_USING_ADT_REF=y # CONFIG_PKG_USING_ZFTP is not set # CONFIG_PKG_USING_WOL is not set # CONFIG_PKG_USING_ZEPHYR_POLLING is not set -# CONFIG_PKG_USING_MATTER_ADAPTATION_LAYER is not set -# CONFIG_PKG_USING_LHC_MODBUS is not set # # security packages @@ -564,6 +578,7 @@ CONFIG_RT_USING_ADT_REF=y # LVGL: powerful and easy-to-use embedded GUI library # # CONFIG_PKG_USING_LVGL is not set +# CONFIG_PKG_USING_LITTLEVGL2RTT is not set # CONFIG_PKG_USING_LV_MUSIC_DEMO is not set # CONFIG_PKG_USING_GUI_GUIDER_DEMO is not set @@ -638,7 +653,6 @@ CONFIG_RT_USING_ADT_REF=y # CONFIG_PKG_USING_HASH_MATCH is not set # CONFIG_PKG_USING_ARMV7M_DWT_TOOL is not set # CONFIG_PKG_USING_VOFA_PLUS is not set -# CONFIG_PKG_USING_ZDEBUG is not set # # system packages @@ -675,8 +689,6 @@ CONFIG_RT_USING_ADT_REF=y # CONFIG_PKG_USING_UC_COMMON is not set # CONFIG_PKG_USING_UC_MODBUS is not set # CONFIG_PKG_USING_FREERTOS_WRAPPER is not set -# CONFIG_PKG_USING_LITEOS_SDK is not set -# CONFIG_PKG_USING_TZ_DATABASE is not set # CONFIG_PKG_USING_CAIRO is not set # CONFIG_PKG_USING_PIXMAN is not set # CONFIG_PKG_USING_PARTITION is not set @@ -700,7 +712,6 @@ CONFIG_RT_USING_ADT_REF=y # CONFIG_PKG_USING_QBOOT is not set # CONFIG_PKG_USING_PPOOL is not set # CONFIG_PKG_USING_OPENAMP is not set -# CONFIG_PKG_USING_RPMSG_LITE is not set # CONFIG_PKG_USING_LPM is not set # CONFIG_PKG_USING_TLSF is not set # CONFIG_PKG_USING_EVENT_RECORDER is not set @@ -714,11 +725,6 @@ CONFIG_RT_USING_ADT_REF=y # CONFIG_PKG_USING_AGILE_UPGRADE is not set # CONFIG_PKG_USING_FLASH_BLOB is not set # CONFIG_PKG_USING_MLIBC is not set -# CONFIG_PKG_USING_TASK_MSG_BUS is not set -# CONFIG_PKG_USING_SFDB is not set -# CONFIG_PKG_USING_RTP is not set -# CONFIG_PKG_USING_REB is not set -# CONFIG_PKG_USING_R_RHEALSTONE is not set # # peripheral libraries and drivers @@ -783,7 +789,6 @@ CONFIG_RT_USING_ADT_REF=y # CONFIG_PKG_USING_BALANCE is not set # CONFIG_PKG_USING_SHT2X is not set # CONFIG_PKG_USING_SHT3X is not set -# CONFIG_PKG_USING_SHT4X is not set # CONFIG_PKG_USING_AD7746 is not set # CONFIG_PKG_USING_ADT74XX is not set # CONFIG_PKG_USING_MAX17048 is not set @@ -884,10 +889,6 @@ CONFIG_RT_USING_ADT_REF=y # CONFIG_PKG_USING_FINGERPRINT is not set # CONFIG_PKG_USING_BT_ECB02C is not set # CONFIG_PKG_USING_UAT is not set -# CONFIG_PKG_USING_ST7789 is not set -# CONFIG_PKG_USING_VS1003 is not set -# CONFIG_PKG_USING_X9555 is not set -# CONFIG_PKG_USING_SYSTEM_RUN_LED is not set # CONFIG_PKG_USING_SPI_TOOLS is not set # @@ -903,7 +904,6 @@ CONFIG_RT_USING_ADT_REF=y # CONFIG_PKG_USING_QUEST is not set # CONFIG_PKG_USING_NAXOS is not set # CONFIG_PKG_USING_NCNN is not set -# CONFIG_PKG_USING_R_TINYMAIX is not set # # Signal Processing and Control Algorithm Packages @@ -974,7 +974,6 @@ CONFIG_PKG_USING_KERNEL_SAMPLES_EN=y # CONFIG_PKG_USING_MINILZO is not set # CONFIG_PKG_USING_QUICKLZ is not set # CONFIG_PKG_USING_LZMA is not set -# CONFIG_PKG_USING_RALARAM is not set # CONFIG_PKG_USING_MULTIBUTTON is not set # CONFIG_PKG_USING_FLEXIBLE_BUTTON is not set # CONFIG_PKG_USING_CANFESTIVAL is not set @@ -1159,7 +1158,6 @@ CONFIG_PKG_USING_KERNEL_SAMPLES_EN=y # # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_GFX_LIBRARY is not set # CONFIG_PKG_USING_ARDUINO_U8G2 is not set -# CONFIG_PKG_USING_ARDUINO_TFT_ESPI is not set # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_ST7735 is not set # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_SSD1306 is not set # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_ILI9341 is not set @@ -1168,7 +1166,6 @@ CONFIG_PKG_USING_KERNEL_SAMPLES_EN=y # # Timing # -# CONFIG_PKG_USING_ARDUINO_RTCLIB is not set # CONFIG_PKG_USING_ARDUINO_MSTIMER2 is not set # CONFIG_PKG_USING_ARDUINO_TICKER is not set # CONFIG_PKG_USING_ARDUINO_TASKSCHEDULER is not set @@ -1205,6 +1202,7 @@ CONFIG_PKG_USING_KERNEL_SAMPLES_EN=y # # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_MFRC630 is not set # CONFIG_PKG_USING_ARDUINO_ADAFRUIT_SI5351 is not set +# CONFIG_PKG_USING_ARDUINO_RTCLIB is not set # # Signal IO @@ -1225,28 +1223,59 @@ CONFIG_PKG_USING_KERNEL_SAMPLES_EN=y # # Hardware Drivers # -CONFIG_DRV_DEBUG=y +# CONFIG_DRV_DEBUG is not set # # On-chip Peripheral Drivers # CONFIG_BSP_USING_IOPAD=y CONFIG_BSP_USING_UART=y +CONFIG_RT_USING_UART0=y CONFIG_RT_USING_UART1=y -# CONFIG_RT_USING_UART0 is not set -# CONFIG_BSP_USING_SPI is not set +# CONFIG_RT_USING_UART2 is not set +# CONFIG_RT_USING_UART3 is not set +CONFIG_BSP_USING_SPI=y +CONFIG_RT_USING_SPIM0=y +CONFIG_RT_USING_SPIM1=y +CONFIG_RT_USING_SPIM2=y +CONFIG_RT_USING_SPIM3=y # CONFIG_BSP_USING_CAN is not set -# CONFIG_BSP_USING_GPIO is not set -# CONFIG_BSP_USING_QSPI is not set -# CONFIG_BSP_USING_ETH is not set -# CONFIG_BSP_USING_PWM is not set -# CONFIG_BSP_USING_I2C is not set -CONFIG_BSP_USING_SDIF=y -CONFIG_BSP_USING_SDCARD_FATFS=y -CONFIG_BSP_USING_SDCARD_PARTITION="sd1" -CONFIG_USING_SDIF0=y -# CONFIG_USING_SDIF1 is not set -# CONFIG_USING_EMMC is not set +CONFIG_BSP_USING_GPIO=y +CONFIG_BSP_USING_QSPI=y +CONFIG_RT_USING_QSPI0=y +CONFIG_USING_QSPI_CHANNEL0=y +# CONFIG_USING_QSPI_CHANNEL1 is not set +CONFIG_BSP_USING_ETH=y +CONFIG_RT_LWIP_PBUF_POOL_BUFSIZE=1700 +CONFIG_BSP_USING_PWM=y +# CONFIG_RT_USING_PWM0 is not set +# CONFIG_RT_USING_PWM1 is not set +CONFIG_RT_USING_PWM2=y +# CONFIG_RT_USING_PWM3 is not set +# CONFIG_RT_USING_PWM4 is not set +# CONFIG_RT_USING_PWM5 is not set +# CONFIG_RT_USING_PWM6 is not set +# CONFIG_RT_USING_PWM7 is not set +CONFIG_BSP_USING_I2C=y +CONFIG_I2C_USE_MIO=y +CONFIG_RT_USING_MIO0=y +CONFIG_RT_USING_MIO1=y +CONFIG_RT_USING_MIO2=y +# CONFIG_RT_USING_MIO3 is not set +# CONFIG_RT_USING_MIO4 is not set +# CONFIG_RT_USING_MIO5 is not set +# CONFIG_RT_USING_MIO6 is not set +# CONFIG_RT_USING_MIO7 is not set +# CONFIG_RT_USING_MIO8 is not set +# CONFIG_RT_USING_MIO9 is not set +CONFIG_RT_USING_MIO10=y +# CONFIG_RT_USING_MIO11 is not set +# CONFIG_RT_USING_MIO12 is not set +# CONFIG_RT_USING_MIO13 is not set +# CONFIG_RT_USING_MIO14 is not set +# CONFIG_RT_USING_MIO15 is not set +# CONFIG_I2C_USE_CONTROLLER is not set +# CONFIG_BSP_USING_SDIF is not set # # Board extended module Drivers @@ -1295,7 +1324,6 @@ CONFIG_BOARD_NAME="firefly" # CONFIG_USE_TACHO_IOPAD is not set # CONFIG_USE_UART_IOPAD is not set # CONFIG_USE_THIRD_PARTY_IOPAD is not set -# CONFIG_E2000Q_DEMO_BOARD is not set CONFIG_FIREFLY_DEMO_BOARD=y # diff --git a/bsp/phytium/aarch64/configs/phytium_pi_rtthread.h b/bsp/phytium/aarch64/configs/phytium_pi_rtthread.h index 1c11c47fa5..3b0e6b27ac 100644 --- a/bsp/phytium/aarch64/configs/phytium_pi_rtthread.h +++ b/bsp/phytium/aarch64/configs/phytium_pi_rtthread.h @@ -7,7 +7,8 @@ /* RT-Thread Kernel */ #define RT_NAME_MAX 16 -#define RT_CPUS_NR 1 +#define RT_USING_SMP +#define RT_CPUS_NR 4 #define RT_ALIGN_SIZE 4 #define RT_THREAD_PRIORITY_32 #define RT_THREAD_PRIORITY_MAX 32 @@ -18,6 +19,7 @@ #define RT_USING_IDLE_HOOK #define RT_IDLE_HOOK_LIST_SIZE 4 #define IDLE_THREAD_STACK_SIZE 8192 +#define SYSTEM_THREAD_STACK_SIZE 8192 #define RT_USING_TIMER_SOFT #define RT_TIMER_THREAD_PRIO 4 #define RT_TIMER_THREAD_STACK_SIZE 8192 @@ -29,7 +31,6 @@ #define RT_USING_DEBUG #define RT_DEBUGING_COLOR #define RT_DEBUGING_CONTEXT -#define RT_DEBUGING_INIT /* Inter-Thread communication */ @@ -63,7 +64,9 @@ #define ARCH_HAVE_EFFICIENT_UNALIGNED_ACCESS #define ARCH_CPU_64BIT #define RT_USING_CACHE +#define RT_USING_HW_ATOMIC #define ARCH_ARM_BOOTWITH_FLUSH_CACHE +#define RT_USING_CPU_FFS #define ARCH_MM_MMU #define ARCH_ARM #define ARCH_ARM_MMU @@ -128,9 +131,15 @@ #define RT_USING_SERIAL_V1 #define RT_SERIAL_USING_DMA #define RT_SERIAL_RB_BUFSZ 64 +#define RT_USING_CAN +#define RT_CAN_USING_CANFD +#define RT_USING_I2C +#define RT_USING_I2C_BITOPS +#define RT_USING_PIN #define RT_USING_NULL #define RT_USING_ZERO #define RT_USING_RANDOM +#define RT_USING_PWM #define RT_USING_RTC #define RT_USING_SDIO #define RT_SDIO_STACK_SIZE 8192 @@ -138,6 +147,9 @@ #define RT_MMCSD_STACK_SIZE 8192 #define RT_MMCSD_THREAD_PREORITY 22 #define RT_MMCSD_MAX_PARTITION 16 +#define RT_USING_SPI +#define RT_USING_QSPI +#define RT_USING_DEV_BUS #define RT_USING_KTIME /* Using USB */ @@ -145,6 +157,7 @@ /* C/C++ and POSIX layer */ + /* ISO-ANSI C layer */ /* Timezone and Daylight Saving Time */ @@ -242,6 +255,9 @@ /* Memory management */ +/* Memory protection */ + + /* RT-Thread Utestcases */ @@ -258,9 +274,6 @@ /* Wiced WiFi */ -/* CYW43012 WiFi */ - - /* IoT Cloud */ @@ -366,17 +379,32 @@ /* Hardware Drivers */ -#define DRV_DEBUG /* On-chip Peripheral Drivers */ #define BSP_USING_IOPAD #define BSP_USING_UART +#define RT_USING_UART0 #define RT_USING_UART1 -#define BSP_USING_SDIF -#define BSP_USING_SDCARD_FATFS -#define BSP_USING_SDCARD_PARTITION "sd1" -#define USING_SDIF0 +#define BSP_USING_SPI +#define RT_USING_SPIM0 +#define RT_USING_SPIM1 +#define RT_USING_SPIM2 +#define RT_USING_SPIM3 +#define BSP_USING_GPIO +#define BSP_USING_QSPI +#define RT_USING_QSPI0 +#define USING_QSPI_CHANNEL0 +#define BSP_USING_ETH +#define RT_LWIP_PBUF_POOL_BUFSIZE 1700 +#define BSP_USING_PWM +#define RT_USING_PWM2 +#define BSP_USING_I2C +#define I2C_USE_MIO +#define RT_USING_MIO0 +#define RT_USING_MIO1 +#define RT_USING_MIO2 +#define RT_USING_MIO10 /* Board extended module Drivers */ diff --git a/bsp/phytium/aarch64/figures/1682474861110.png b/bsp/phytium/aarch64/figures/rtsmart_config.png similarity index 100% rename from bsp/phytium/aarch64/figures/1682474861110.png rename to bsp/phytium/aarch64/figures/rtsmart_config.png diff --git a/bsp/phytium/aarch64/rtconfig.h b/bsp/phytium/aarch64/rtconfig.h index 1c11c47fa5..6150145f1c 100644 --- a/bsp/phytium/aarch64/rtconfig.h +++ b/bsp/phytium/aarch64/rtconfig.h @@ -7,7 +7,8 @@ /* RT-Thread Kernel */ #define RT_NAME_MAX 16 -#define RT_CPUS_NR 1 +#define RT_USING_SMP +#define RT_CPUS_NR 4 #define RT_ALIGN_SIZE 4 #define RT_THREAD_PRIORITY_32 #define RT_THREAD_PRIORITY_MAX 32 @@ -18,6 +19,7 @@ #define RT_USING_IDLE_HOOK #define RT_IDLE_HOOK_LIST_SIZE 4 #define IDLE_THREAD_STACK_SIZE 8192 +#define SYSTEM_THREAD_STACK_SIZE 8192 #define RT_USING_TIMER_SOFT #define RT_TIMER_THREAD_PRIO 4 #define RT_TIMER_THREAD_STACK_SIZE 8192 @@ -29,7 +31,6 @@ #define RT_USING_DEBUG #define RT_DEBUGING_COLOR #define RT_DEBUGING_CONTEXT -#define RT_DEBUGING_INIT /* Inter-Thread communication */ @@ -63,7 +64,9 @@ #define ARCH_HAVE_EFFICIENT_UNALIGNED_ACCESS #define ARCH_CPU_64BIT #define RT_USING_CACHE +#define RT_USING_HW_ATOMIC #define ARCH_ARM_BOOTWITH_FLUSH_CACHE +#define RT_USING_CPU_FFS #define ARCH_MM_MMU #define ARCH_ARM #define ARCH_ARM_MMU @@ -128,9 +131,16 @@ #define RT_USING_SERIAL_V1 #define RT_SERIAL_USING_DMA #define RT_SERIAL_RB_BUFSZ 64 +#define RT_USING_CAN +#define RT_CAN_USING_HDR +#define RT_CAN_USING_CANFD +#define RT_USING_I2C +#define RT_USING_I2C_BITOPS +#define RT_USING_PIN #define RT_USING_NULL #define RT_USING_ZERO #define RT_USING_RANDOM +#define RT_USING_PWM #define RT_USING_RTC #define RT_USING_SDIO #define RT_SDIO_STACK_SIZE 8192 @@ -138,6 +148,9 @@ #define RT_MMCSD_STACK_SIZE 8192 #define RT_MMCSD_THREAD_PREORITY 22 #define RT_MMCSD_MAX_PARTITION 16 +#define RT_USING_SPI +#define RT_USING_QSPI +#define RT_USING_DEV_BUS #define RT_USING_KTIME /* Using USB */ @@ -145,6 +158,7 @@ /* C/C++ and POSIX layer */ + /* ISO-ANSI C layer */ /* Timezone and Daylight Saving Time */ @@ -242,6 +256,9 @@ /* Memory management */ +/* Memory protection */ + + /* RT-Thread Utestcases */ @@ -258,9 +275,6 @@ /* Wiced WiFi */ -/* CYW43012 WiFi */ - - /* IoT Cloud */ @@ -366,17 +380,38 @@ /* Hardware Drivers */ -#define DRV_DEBUG /* On-chip Peripheral Drivers */ #define BSP_USING_IOPAD #define BSP_USING_UART +#define RT_USING_UART0 #define RT_USING_UART1 +#define BSP_USING_SPI +#define RT_USING_SPIM0 +#define RT_USING_SPIM1 +#define RT_USING_SPIM2 +#define RT_USING_SPIM3 +#define BSP_USING_CAN +#define RT_USING_CANFD +#define RT_USING_FILTER +#define RT_USING_CAN0 +#define RT_USING_CAN1 +#define BSP_USING_GPIO +#define BSP_USING_QSPI +#define RT_USING_QSPI0 +#define USING_QSPI_CHANNEL0 +#define BSP_USING_ETH +#define RT_LWIP_PBUF_POOL_BUFSIZE 1700 +#define BSP_USING_PWM +#define RT_USING_PWM6 +#define BSP_USING_I2C +#define I2C_USE_MIO +#define RT_USING_MIO15 #define BSP_USING_SDIF #define BSP_USING_SDCARD_FATFS -#define BSP_USING_SDCARD_PARTITION "sd1" -#define USING_SDIF0 +#define BSP_USING_SDCARD_PARTITION "sd0" +#define USING_SDIF1 /* Board extended module Drivers */ @@ -391,8 +426,9 @@ /* Soc configuration */ -#define TARGET_PHYTIUMPI -#define SOC_NAME "phytiumpi" +#define TARGET_E2000Q +#define SOC_NAME "e2000" +#define TARGET_TYPE_NAME "q" #define SOC_CORE_NUM 4 #define F32BIT_MEMORY_ADDRESS 0x80000000 #define F32BIT_MEMORY_LENGTH 0x80000000 @@ -403,8 +439,8 @@ /* Board Configuration */ -#define BOARD_NAME "firefly" -#define FIREFLY_DEMO_BOARD +#define BOARD_NAME "demo" +#define E2000Q_DEMO_BOARD /* IO mux configuration when board start up */ diff --git a/bsp/phytium/board/README.md b/bsp/phytium/board/README.md index 70042caaf7..9dd525f111 100644 --- a/bsp/phytium/board/README.md +++ b/bsp/phytium/board/README.md @@ -41,7 +41,9 @@ $ touch fio_mux.c ![board_select](./../figures/board_select.png) -6. 编译测试 +6. 在bsp/libraries/drivers中,驱动实例开启受Kconfig控制,如有更多需求,请自行修改.c文件和Kconfig文件 + +7. 编译测试 diff --git a/bsp/phytium/board/board.c b/bsp/phytium/board/board.c index cee78d71a3..fdd6d48bfe 100644 --- a/bsp/phytium/board/board.c +++ b/bsp/phytium/board/board.c @@ -47,7 +47,6 @@ #endif extern FIOPadCtrl iopad_ctrl; -uintptr flsd_config_base = FLSD_CONFIG_BASE; /* mmu config */ extern struct mem_desc platform_mem_desc[]; extern const rt_uint32_t platform_mem_desc_size; @@ -165,11 +164,6 @@ void rt_hw_board_aarch64_init(void) FEarlyUartProbe(); FIOMuxInit(); -#ifdef RT_USING_SMART -#if defined(FLSD_CONFIG_BASE) - flsd_config_base = (uintptr)rt_ioremap((void *)flsd_config_base, 0x1000); -#endif -#endif /* compoent init */ #ifdef RT_USING_COMPONENTS_INIT @@ -240,9 +234,6 @@ void rt_hw_board_aarch32_init(void) #if defined(RT_USING_SMART) redist_addr = (uint32_t)rt_ioremap(GICV3_RD_BASE_ADDR, 4 * 128 * 1024); -#if defined(FLSD_CONFIG_BASE) - flsd_config_base = (uintptr)rt_ioremap((void *)flsd_config_base, 0x1000); -#endif #else redist_addr = GICV3_RD_BASE_ADDR; #endif diff --git a/bsp/phytium/board/board.kconfig b/bsp/phytium/board/board.kconfig index 6ba8eb4db2..eebb8bd01b 100644 --- a/bsp/phytium/board/board.kconfig +++ b/bsp/phytium/board/board.kconfig @@ -5,7 +5,7 @@ choice default FIREFLY_DEMO_BOARD config E2000D_DEMO_BOARD - select USE_IOMUX + select BSP_USING_IOPAD bool prompt "Use E2000D demo board" depends on TARGET_E2000D @@ -19,7 +19,7 @@ choice endif config E2000Q_DEMO_BOARD - select USE_IOMUX + select BSP_USING_IOPAD bool prompt "Use E2000Q demo board" depends on TARGET_E2000Q @@ -31,37 +31,9 @@ choice default "demo" source "$SDK_DIR/board/e2000q_demo/e2000q_demo.kconfig" endif - - config D2000_TEST_BOARD - select USE_IOMUX - bool - prompt "Use D2000 test board" - depends on TARGET_D2000 - help - select D2000 test board config - if D2000_TEST_BOARD - config BOARD_NAME - string - default "test" - source "$SDK_DIR/board/d2000_test/d2000_test.kconfig" - endif - - config FT2004_DSK_BOARD - select USE_IOMUX - bool - prompt "Use FT2004 dsk board" - depends on TARGET_FT2004 - help - select FT2004 dsk board config - if FT2004_DSK_BOARD - config BOARD_NAME - string - default "dsk" - source "$SDK_DIR/board/ft2004_dsk/ft2004_dsk.kconfig" - endif config FIREFLY_DEMO_BOARD - select USE_IOMUX + select BSP_USING_IOPAD bool prompt "Use firefly board" depends on TARGET_PHYTIUMPI diff --git a/bsp/phytium/libraries/SConscript b/bsp/phytium/libraries/SConscript index 9e70ccbdae..a1bbfbf7bd 100644 --- a/bsp/phytium/libraries/SConscript +++ b/bsp/phytium/libraries/SConscript @@ -137,6 +137,10 @@ path += [cwd + '/port/fdriver_port'] src += Glob(cwd+'/port/fboard_port/*.c') path += [cwd + '/port/fboard_port'] +## lwip port +src += Glob(cwd+'/port/lwip_port/*.c') +path += [cwd + '/port/lwip_port'] + # phytium ports rt-thread examples PORT_DRV_DIR = cwd + '/examples' diff --git a/bsp/phytium/libraries/drivers/Kconfig b/bsp/phytium/libraries/drivers/Kconfig index 34993db395..8c6344b677 100644 --- a/bsp/phytium/libraries/drivers/Kconfig +++ b/bsp/phytium/libraries/drivers/Kconfig @@ -5,7 +5,8 @@ menu "Hardware Drivers" default n menu "On-chip Peripheral Drivers" - menuconfig BSP_USING_IOPAD + + config BSP_USING_IOPAD bool "Enable IOPAD" default y @@ -15,14 +16,18 @@ menu "On-chip Peripheral Drivers" select USE_SERIAL # sdk serial component select RT_USING_SERIAL if BSP_USING_UART - config RT_USING_UART1 - bool "Enable UART1" - default y - config RT_USING_UART0 bool "Enable UART0" default n - + config RT_USING_UART1 + bool "Enable UART1" + default y + config RT_USING_UART2 + bool "Enable UART2" + default n + config RT_USING_UART3 + bool "Enable UART3" + default n endif menuconfig BSP_USING_SPI @@ -63,9 +68,6 @@ menu "On-chip Peripheral Drivers" config RT_USING_CAN1 bool "Enable can1" default n - config RT_USING_CAN2 - bool "Enable can2" - default n endif menuconfig BSP_USING_GPIO @@ -80,12 +82,17 @@ menu "On-chip Peripheral Drivers" select RT_USING_SPI select RT_USING_PIN if BSP_USING_QSPI - config USING_QSPI_CHANNEL0 - bool "using qspi channel_0" - default n - config USING_QSPI_CHANNEL1 - bool "using qspi channel_1" - default n + config RT_USING_QSPI0 + bool "Enable qspi0" + default n + if RT_USING_QSPI0 + config USING_QSPI_CHANNEL0 + bool "using qspi channel_0" + default n + config USING_QSPI_CHANNEL1 + bool "using qspi channel_1" + default n + endif endif menuconfig BSP_USING_ETH @@ -124,6 +131,9 @@ menu "On-chip Peripheral Drivers" config RT_USING_PWM6 bool "Enable pwm6" default n + config RT_USING_PWM7 + bool "Enable pwm7" + default n endif menuconfig BSP_USING_I2C @@ -138,72 +148,74 @@ menu "On-chip Peripheral Drivers" select ENABLE_MIO if I2C_USE_MIO - config RT_USING_MIO0 - bool "Enable mio0" - default n - config RT_USING_MIO1 - bool "Enable mio1" - default n - config RT_USING_MIO2 - bool "Enable mio2" - default n - config RT_USING_MIO3 - bool "Enable mio3" - default n - config RT_USING_MIO4 - bool "Enable mio4" - default n - config RT_USING_MIO5 - bool "Enable mio5" - default n - config RT_USING_MIO6 - bool "Enable mio6" - default n - config RT_USING_MIO7 - bool "Enable mio7" - default n - config RT_USING_MIO8 - bool "Enable mio8" - default n - config RT_USING_MIO9 - bool "Enable mio9" - default n - config RT_USING_MIO10 - bool "Enable mio10" - default n - config RT_USING_MIO11 - bool "Enable mio11" - default n - config RT_USING_MIO12 - bool "Enable mio12" - default n - config RT_USING_MIO13 - bool "Enable mio13" - default n - config RT_USING_MIO14 - bool "Enable mio14" - default n - config RT_USING_MIO15 - bool "Enable mio15" - default n + config RT_USING_MIO0 + bool "Enable mio0" + default n + config RT_USING_MIO1 + bool "Enable mio1" + default n + config RT_USING_MIO2 + bool "Enable mio2" + default n + config RT_USING_MIO3 + bool "Enable mio3" + default n + config RT_USING_MIO4 + bool "Enable mio4" + default n + config RT_USING_MIO5 + bool "Enable mio5" + default n + config RT_USING_MIO6 + bool "Enable mio6" + default n + config RT_USING_MIO7 + bool "Enable mio7" + default n + config RT_USING_MIO8 + bool "Enable mio8" + default n + config RT_USING_MIO9 + bool "Enable mio9" + default n + config RT_USING_MIO10 + bool "Enable mio10" + default n + config RT_USING_MIO11 + bool "Enable mio11" + default n + config RT_USING_MIO12 + bool "Enable mio12" + default n + config RT_USING_MIO13 + bool "Enable mio13" + default n + config RT_USING_MIO14 + bool "Enable mio14" + default n + config RT_USING_MIO15 + bool "Enable mio15" + default n endif config I2C_USE_CONTROLLER bool "using i2c controller" default n if I2C_USE_CONTROLLER - config RT_USING_I2C0 - bool "Enable i2c0" - default n - config RT_USING_I2C1 - bool "Enable i2c1" - default n - config RT_USING_I2C2 - bool "Enable i2c2" - default n + config RT_USING_I2C0 + bool "Enable i2c0" + default n + config RT_USING_I2C1 + bool "Enable i2c1" + default n + config RT_USING_I2C2 + bool "Enable i2c2" + default n + config RT_USING_I2C3 + bool "Enable i2c3" + default n + endif endif - - endif menuconfig BSP_USING_SDIF bool "Enable SDIF" diff --git a/bsp/phytium/libraries/drivers/drv_can.c b/bsp/phytium/libraries/drivers/drv_can.c index bfce14a4ee..1c37a8d929 100644 --- a/bsp/phytium/libraries/drivers/drv_can.c +++ b/bsp/phytium/libraries/drivers/drv_can.c @@ -12,13 +12,17 @@ */ #include "rtconfig.h" -#ifdef BSP_USING_CAN +#include #include "drv_can.h" #define LOG_TAG "can_drv" #include "drv_log.h" #include "fcan.h" #include "fio_mux.h" #include "interrupt.h" +#include "fcpu_info.h" +#ifdef RT_USING_SMART + #include +#endif struct phytium_can { @@ -28,25 +32,31 @@ struct phytium_can struct rt_can_device device; /* inherit from can device */ }; -static struct phytium_can drv_can[FCAN_NUM] = -{ - { - .name = "CAN0", - .can_handle.config.instance_id = 0, - }, - { - .name = "CAN1", - .can_handle.config.instance_id = 1, - }, -}; +#if defined(RT_USING_CAN0) + static struct phytium_can drv_can0; +#endif +#if defined(RT_USING_CAN1) + static struct phytium_can drv_can1; +#endif static void CanRxIrqCallback(void *args) { - FCanCtrl *instance_p = (FCanCtrl *)args; - rt_hw_can_isr(&drv_can[instance_p->config.instance_id].device, RT_CAN_EVENT_RX_IND); + struct phytium_can *drv_can = (struct phytium_can *)args; + + rt_hw_can_isr(&(drv_can->device), RT_CAN_EVENT_RX_IND); + LOG_D("CAN%d irq recv frame callback.", instance_p->config.instance_id); } +static void CanTxIrqCallback(void *args) +{ + struct phytium_can *drv_can = (struct phytium_can *)args; + + rt_hw_can_isr(&(drv_can->device), RT_CAN_EVENT_TX_DONE); + + LOG_D("CAN%d irq send frame callback.", instance_p->config.instance_id); +} + static void CanErrorCallback(void *args) { FCanCtrl *instance_p = (FCanCtrl *)args; @@ -57,13 +67,6 @@ static void CanErrorCallback(void *args) LOG_D("txerr_cnt is %x.", FCAN_ERR_CNT_TFN_GET(FCAN_READ_REG32(base_addr, FCAN_ERR_CNT_OFFSET))); } -static void CanTxIrqCallback(void *args) -{ - FCanCtrl *instance_p = (FCanCtrl *)args; - rt_hw_can_isr(&drv_can[instance_p->config.instance_id].device, RT_CAN_EVENT_TX_DONE); - LOG_D("CAN%d irq send frame callback.", instance_p->config.instance_id); -} - static rt_err_t _can_config(struct rt_can_device *can, struct can_configure *cfg) { RT_ASSERT(can); @@ -75,15 +78,18 @@ static rt_err_t _can_config(struct rt_can_device *can, struct can_configure *cfg rt_kprintf("CAN%d begin to config.\n", drv_can->can_handle.config.instance_id); FIOPadSetCanMux(drv_can->can_handle.config.instance_id); - + FCanConfig *config_p; + config_p = FCanLookupConfig(drv_can->can_handle.config.instance_id); +#ifdef RT_USING_SMART + config_p->base_address = (uintptr)rt_ioremap((void *)config_p->base_address, 0x1000); +#endif /*CAN config init*/ - status = FCanCfgInitialize(&(drv_can->can_handle), FCanLookupConfig(drv_can->can_handle.config.instance_id)); + status = FCanCfgInitialize(&(drv_can->can_handle), config_p); if (status != FT_SUCCESS) { LOG_D("CAN %d initialize error, status = %#x.", drv_can->can_handle.config.instance_id, status); - return RT_ERROR; + return -RT_ERROR; } - /*Set the baudrate*/ FCanBaudrateConfig arb_segment_config; FCanBaudrateConfig data_segment_config; @@ -98,7 +104,7 @@ static rt_err_t _can_config(struct rt_can_device *can, struct can_configure *cfg if (status != RT_EOK) { LOG_D("CAN%d set arb segment baudrate failed.", drv_can->can_handle.config.instance_id); - return RT_ERROR; + return -RT_ERROR; } data_segment_config.auto_calc = TRUE; data_segment_config.baudrate = cfg->baud_rate_fd; @@ -107,7 +113,7 @@ static rt_err_t _can_config(struct rt_can_device *can, struct can_configure *cfg if (status != RT_EOK) { LOG_D("CAN%d set data segment baudrate failed.", drv_can->can_handle.config.instance_id); - return RT_ERROR; + return -RT_ERROR; } #else arb_segment_config.auto_calc = TRUE; @@ -117,7 +123,7 @@ static rt_err_t _can_config(struct rt_can_device *can, struct can_configure *cfg if (status != FT_SUCCESS) { LOG_D("CAN%d set arb segment baudrate failed.", drv_can->can_handle.config.instance_id); - return RT_ERROR; + return -RT_ERROR; } data_segment_config.auto_calc = TRUE; data_segment_config.baudrate = cfg->baud_rate; @@ -126,7 +132,7 @@ static rt_err_t _can_config(struct rt_can_device *can, struct can_configure *cfg if (status != FT_SUCCESS) { LOG_D("CAN%d set data segment baudrate failed.", drv_can->can_handle.config.instance_id); - return RT_ERROR; + return -RT_ERROR; } #endif @@ -141,7 +147,7 @@ static rt_err_t _can_config(struct rt_can_device *can, struct can_configure *cfg if (status != FT_SUCCESS) { LOG_E("CAN%d set mask filter failed.", drv_can->can_handle.config.instance_id); - return RT_ERROR; + return -RT_ERROR; } /* Identifier mask enable */ FCanIdMaskFilterEnable(&(drv_can->can_handle)); @@ -187,7 +193,7 @@ static rt_err_t _can_control(struct rt_can_device *can, int cmd, void *arg) { intr_event.type = FCAN_INTR_EVENT_SEND; intr_event.handler = CanTxIrqCallback; - intr_event.param = (void *)(&(drv_can->can_handle)); + intr_event.param = (void *)(drv_can); FCanRegisterInterruptHandler(&(drv_can->can_handle), &intr_event); FCanInterruptEnable(&(drv_can->can_handle), intr_event.type); } @@ -195,7 +201,7 @@ static rt_err_t _can_control(struct rt_can_device *can, int cmd, void *arg) { intr_event.type = FCAN_INTR_EVENT_RECV; intr_event.handler = CanRxIrqCallback; - intr_event.param = (void *)(&(drv_can->can_handle)); + intr_event.param = (void *)(drv_can); FCanRegisterInterruptHandler(&(drv_can->can_handle), &intr_event); FCanInterruptEnable(&(drv_can->can_handle), intr_event.type); } @@ -232,7 +238,7 @@ static rt_err_t _can_control(struct rt_can_device *can, int cmd, void *arg) argval != CAN20kBaud && argval != CAN10kBaud) { - return RT_ERROR; + return -RT_ERROR; } if (argval != drv_can->device.config.baud_rate) { @@ -249,7 +255,7 @@ static rt_err_t _can_control(struct rt_can_device *can, int cmd, void *arg) if (status != FT_SUCCESS) { LOG_D("CAN%d set arb segment baudrate failed.", drv_can->can_handle.config.instance_id); - return RT_ERROR; + return -RT_ERROR; } data_segment_config.auto_calc = TRUE; data_segment_config.baudrate = drv_can->device.config.baud_rate; @@ -258,7 +264,7 @@ static rt_err_t _can_control(struct rt_can_device *can, int cmd, void *arg) if (status != FT_SUCCESS) { LOG_D("CAN%d set data segment baudrate failed.", drv_can->can_handle.config.instance_id); - return RT_ERROR; + return -RT_ERROR; } FCanEnable(&(drv_can->can_handle), RT_TRUE); } @@ -282,7 +288,7 @@ static rt_err_t _can_control(struct rt_can_device *can, int cmd, void *arg) if (status != FT_SUCCESS) { LOG_D("CAN%d set arb segment baudrate failed.", drv_can->can_handle.config.instance_id); - return RT_ERROR; + return -RT_ERROR; } data_segment_config.auto_calc = TRUE; data_segment_config.baudrate = drv_can->device.config.baud_rate_fd; @@ -291,7 +297,7 @@ static rt_err_t _can_control(struct rt_can_device *can, int cmd, void *arg) if (status != FT_SUCCESS) { LOG_D("CAN%d set data segment baudrate failed.", drv_can->can_handle.config.instance_id); - return RT_ERROR; + return -RT_ERROR; } FCanEnable(&(drv_can->can_handle), RT_TRUE); } @@ -312,7 +318,7 @@ static rt_err_t _can_control(struct rt_can_device *can, int cmd, void *arg) if (status != FT_SUCCESS) { LOG_E("CAN%d set mask filter failed.", drv_can->can_handle.config.instance_id); - return RT_ERROR; + return -RT_ERROR; } } FCanEnable(&(drv_can->can_handle), RT_TRUE); @@ -375,7 +381,7 @@ static int _can_recvmsg(struct rt_can_device *can, void *buf, rt_uint32_t fifo) if (status != FT_SUCCESS) { LOG_D("CAN%d recv data failed.", drv_can->can_handle.config.instance_id); - return RT_ERROR; + return -RT_ERROR; } if (CAN_EFF_FLAG & recv_frame.canid) { @@ -418,25 +424,27 @@ static const struct rt_can_ops _can_ops = _can_recvmsg, }; -static int can_init(u32 can_id) +static int can_init(struct phytium_can *drv_can) { rt_err_t ret = RT_EOK; - drv_can[can_id].device.config.ticks = 20000; - drv_can[can_id].device.config.baud_rate = 800000; + drv_can->device.config.ticks = 20000; + /*can default baud_rate*/ + drv_can->device.config.baud_rate = CAN800kBaud; #ifdef RT_CAN_USING_CANFD - drv_can[can_id].device.config.baud_rate_fd = 800000; + /*canfd default baud_rate 1M+800K*/ + drv_can->device.config.baud_rate_fd = CAN800kBaud; #endif - drv_can[can_id].device.config.mode = RT_CAN_MODE_NORMAL; - drv_can[can_id].device.config.sndboxnumber = 1; - drv_can[can_id].device.config.msgboxsz = 1; + drv_can->device.config.mode = RT_CAN_MODE_NORMAL; + drv_can->device.config.sndboxnumber = 1; + drv_can->device.config.msgboxsz = 1; #ifdef RT_CAN_USING_HDR - drv_can[can_id].device.config.maxhdr = 1; + drv_can->device.config.maxhdr = 1; #endif - ret = rt_hw_can_register(&drv_can[can_id].device, - drv_can[can_id].name, + ret = rt_hw_can_register(&drv_can->device, + drv_can->name, &_can_ops, - &drv_can[can_id]); + drv_can); RT_ASSERT(ret == RT_EOK); return ret; @@ -444,138 +452,17 @@ static int can_init(u32 can_id) int rt_hw_can_init(void) { - #if defined(RT_USING_CAN0) - can_init(FCAN0_ID); + drv_can0.name = "CAN0"; + drv_can0.can_handle.config.instance_id = FCAN0_ID; + can_init(&drv_can0); #endif #if defined(RT_USING_CAN1) - can_init(FCAN1_ID); -#endif -#if defined(RT_USING_CAN2) - can_init(FCAN2_ID); + drv_can1.name = "CAN1"; + drv_can1.can_handle.config.instance_id = FCAN1_ID; + can_init(&drv_can1); #endif return 0; } -INIT_BOARD_EXPORT(rt_hw_can_init); - -/*can test example*/ -static rt_device_t can_dev; /* CAN device handle */ -static struct rt_semaphore rx_sem; -static rt_err_t can_rx_call(rt_device_t dev, rt_size_t size) -{ - /* The CAN generates an interrupt after receiving data, calls this callback function, and then sends the received semaphore */ - rt_sem_release(&rx_sem); - return RT_EOK; -} -static void can_rx_thread(void *parameter) -{ - int i; - rt_err_t res = RT_EOK; - struct rt_can_msg rxmsg = {0}; - rt_device_set_rx_indicate(can_dev, can_rx_call); - while (1) - { - /* The hdr value is - 1, which means reading data directly from the uselist */ - rxmsg.hdr_index = -1; - /* Blocking waiting to receive semaphore */ - res = rt_sem_take(&rx_sem, RT_WAITING_FOREVER); - RT_ASSERT(res == RT_EOK); - /* Read a frame of data from CAN */ - rt_device_read(can_dev, 0, &rxmsg, sizeof(rxmsg)); - /* Print data ID and conten */ - rt_kprintf("ID:%x\n", rxmsg.id); - rt_kprintf("DATA: "); - for (i = 0; i < 8; i++) - { - rt_kprintf("%2x ", rxmsg.data[i]); - } - - rt_kprintf("\n"); - } -} - -int can_sample(int argc, char *argv[]) -{ - struct rt_can_msg msg = {0}; - rt_err_t res = RT_EOK;; - rt_thread_t thread; - char can_name[RT_NAME_MAX]; - - if (argc == 2) - { - rt_strncpy(can_name, argv[1], RT_NAME_MAX); - } - else - { - rt_strncpy(can_name, "CAN0", RT_NAME_MAX); - } - /* Find CAN device */ - can_dev = rt_device_find(can_name); - if (!can_dev) - { - rt_kprintf("Find %s failed.\n", can_name); - return RT_ERROR; - } - - /* Initialize CAN receive signal quantity */ - res = rt_sem_init(&rx_sem, "rx_sem", 0, RT_IPC_FLAG_FIFO); - RT_ASSERT(res == RT_EOK); - - /* Open the CAN device in the way of interrupt reception and transmission */ - res = rt_device_open(can_dev, RT_DEVICE_FLAG_INT_TX | RT_DEVICE_FLAG_INT_RX); - rt_device_control(can_dev, RT_CAN_CMD_SET_BAUD, CAN1MBaud); - RT_ASSERT(res == RT_EOK); - -#ifdef RT_CAN_USING_HDR - struct rt_can_filter_item items[4] = - { - RT_CAN_FILTER_ITEM_INIT(0x3, 0, 0, 0, 0, RT_NULL, RT_NULL), - RT_CAN_FILTER_ITEM_INIT(0x3, 0, 0, 0, 0, RT_NULL, RT_NULL), - RT_CAN_FILTER_ITEM_INIT(0x3, 0, 0, 0, 0, RT_NULL, RT_NULL), - RT_CAN_FILTER_ITEM_INIT(0x3, 0, 0, 0, 0, RT_NULL, RT_NULL) - - }; - struct rt_can_filter_config cfg = {4, 1, items}; /* There are 4 filter tables in total */ - - /* Set the hardware filter table. After setting, only frames with id=0x03 can be received*/ - res = rt_device_control(can_dev, RT_CAN_CMD_SET_FILTER, &cfg); - RT_ASSERT(res == RT_EOK); -#endif - - /* Create data receiving thread */ - thread = rt_thread_create("can_rx", can_rx_thread, RT_NULL, 4096, 25, 10); - if (thread != RT_NULL) - { - res = rt_thread_startup(thread); - RT_ASSERT(res == RT_EOK); - } - else - { - rt_kprintf("Create can_rx thread failed.\n"); - } - - msg.id = 0x78; /* ID = 0x78 */ - msg.ide = RT_CAN_STDID; /* Standard format */ - msg.rtr = RT_CAN_DTR; /* Data frame */ - msg.len = 8; /* Data length is 8 */ - /* Send CAN data */ - for (int i = 0; i < 1; i++) - { - /* 8-byte data to be sent */ - msg.data[0] = 0x00 + i; - msg.data[1] = 0x11 + i; - msg.data[2] = 0x22 + i; - msg.data[3] = 0x33 + i; - msg.data[4] = 0x44 + i; - msg.data[5] = 0x55 + i; - msg.data[6] = 0x66 + i; - msg.data[7] = 0x77 + i; - rt_device_write(can_dev, 0, &msg, sizeof(msg)); - } - - return res; -} -/* Enter can_sample command for testing */ -MSH_CMD_EXPORT(can_sample, can device sample); -#endif \ No newline at end of file +INIT_BOARD_EXPORT(rt_hw_can_init); \ No newline at end of file diff --git a/bsp/phytium/libraries/drivers/drv_can.h b/bsp/phytium/libraries/drivers/drv_can.h index 93376e3649..b91e0ce84f 100644 --- a/bsp/phytium/libraries/drivers/drv_can.h +++ b/bsp/phytium/libraries/drivers/drv_can.h @@ -15,9 +15,6 @@ #define __DRV_CAN_H__ #include - -#ifdef BSP_USING_CAN - #ifdef __cplusplus extern "C" { @@ -27,7 +24,5 @@ int rt_hw_can_init(void); #ifdef __cplusplus } -#endif - #endif #endif /* __DRV_CAN_H__ */ diff --git a/bsp/phytium/libraries/drivers/drv_gpio.c b/bsp/phytium/libraries/drivers/drv_gpio.c index b547085a2f..97271b8e63 100644 --- a/bsp/phytium/libraries/drivers/drv_gpio.c +++ b/bsp/phytium/libraries/drivers/drv_gpio.c @@ -12,8 +12,6 @@ */ #include "rtconfig.h" -#ifdef BSP_USING_PIN - #include #include #include "interrupt.h" @@ -31,6 +29,7 @@ #include "fkernel.h" #include "fcpu_info.h" #include "ftypes.h" +#include "fio_mux.h" #include "board.h" #include "fiopad.h" @@ -200,7 +199,7 @@ rt_int8_t drv_pin_read(struct rt_device *device, rt_base_t pin) ctrl_id, port_id == 0 ? 'a' : 'b', pin_id); - return RT_ERROR; + return -RT_ERROR; } return FGpioGetInputValue(pin_instance) == FGPIO_PIN_HIGH ? PIN_HIGH : PIN_LOW; } @@ -224,7 +223,7 @@ rt_err_t drv_pin_attach_irq(struct rt_device *device, rt_base_t pin, if (pin_instance == RT_NULL) { LOG_E("GPIO%d-%c-%d not init yet.\n", ctrl_id, port_id == 0 ? 'a' : 'b', pin_id); - return RT_ERROR; + return -RT_ERROR; } if (pin_config->en_irq) @@ -290,7 +289,7 @@ rt_err_t drv_pin_detach_irq(struct rt_device *device, rt_base_t pin) ctrl_id, port_id == 0 ? 'a' : 'b', pin_id); - return RT_ERROR; + return -RT_ERROR; } level = rt_hw_interrupt_disable(); @@ -314,7 +313,7 @@ rt_err_t drv_pin_irq_enable(struct rt_device *device, rt_base_t pin, rt_uint8_t ctrl_id, port_id == 0 ? 'a' : 'b', pin_id); - return RT_ERROR; + return -RT_ERROR; } FGpioSetInterruptMask(pin_instance, enabled); @@ -341,5 +340,4 @@ int ft_pin_init(void) rt_kprintf("Register pin with return: %d\n", ret); return ret; } -INIT_DEVICE_EXPORT(ft_pin_init); -#endif \ No newline at end of file +INIT_DEVICE_EXPORT(ft_pin_init); \ No newline at end of file diff --git a/bsp/phytium/libraries/drivers/drv_i2c.c b/bsp/phytium/libraries/drivers/drv_i2c.c index 42913c27fa..e7ef3cb01f 100644 --- a/bsp/phytium/libraries/drivers/drv_i2c.c +++ b/bsp/phytium/libraries/drivers/drv_i2c.c @@ -11,8 +11,7 @@ * */ #include "rtconfig.h" -#if defined BSP_USING_I2C - +#include #define LOG_TAG "i2c_drv" #include "drv_log.h" #include "drv_i2c.h" @@ -41,114 +40,6 @@ struct phytium_i2c_bus const char *name; }; -#if defined(I2C_USE_CONTROLLER) -static struct phytium_i2c_bus i2c_bus[FI2C_NUM] = -{ - { - .name = "I2C0", - .i2c_handle.config.instance_id = 0, - }, - { - .name = "I2C1", - .i2c_handle.config.instance_id = 1, - }, - { - .name = "I2C2", - .i2c_handle.config.instance_id = 2, - }, -}; -#endif - -#if defined(I2C_USE_MIO) -static struct phytium_i2c_bus i2c_mio_bus[FMIO_NUM] = -{ -#if defined(TARGET_E2000D) ||defined(TARGET_E2000Q) - { - .name = "MIO0", - .i2c_handle.config.instance_id = 0, - }, - { - .name = "MIO1", - .i2c_handle.config.instance_id = 1, - }, - { - .name = "MIO2", - .i2c_handle.config.instance_id = 2, - }, - { - .name = "MIO3", - .i2c_handle.config.instance_id = 3, - }, - { - .name = "MIO4", - .i2c_handle.config.instance_id = 4, - }, - { - .name = "MIO5", - .i2c_handle.config.instance_id = 5, - }, - { - .name = "MIO6", - .i2c_handle.config.instance_id = 6, - }, - { - .name = "MIO7", - .i2c_handle.config.instance_id = 7, - }, - { - .name = "MIO8", - .i2c_handle.config.instance_id = 8, - }, - { - .name = "MIO9", - .i2c_handle.config.instance_id = 9, - }, - { - .name = "MIO10", - .i2c_handle.config.instance_id = 10, - }, - { - .name = "MIO11", - .i2c_handle.config.instance_id = 11, - }, - { - .name = "MIO12", - .i2c_handle.config.instance_id = 12, - }, - { - .name = "MIO13", - .i2c_handle.config.instance_id = 13, - }, - { - .name = "MIO14", - .i2c_handle.config.instance_id = 14, - }, - { - .name = "MIO15", - .i2c_handle.config.instance_id = 15, - }, -#elif defined(TARGET_PHYTIUMPI) - { - .name = "MIO0", - .i2c_handle.config.instance_id = 0, - }, - { - .name = "MIO1", - .i2c_handle.config.instance_id = 1, - }, - { - .name = "MIO2", - .i2c_handle.config.instance_id = 2, - }, - { - .name = "MIO10", - .i2c_handle.config.instance_id = 10, - }, -#endif -}; - -#endif - #if defined(I2C_USE_CONTROLLER) static rt_err_t i2c_config(struct phytium_i2c_bus *i2c_bus) { @@ -173,7 +64,7 @@ static rt_err_t i2c_config(struct phytium_i2c_bus *i2c_bus) { LOG_E("Init master I2c failed, ret: 0x%x", ret); - return RT_ERROR; + return -RT_ERROR; } return RT_EOK; @@ -198,7 +89,7 @@ static rt_err_t i2c_mio_config(struct phytium_i2c_bus *i2c_bus) if (ret != FT_SUCCESS) { LOG_E("MIO initialize error."); - return RT_ERROR; + return -RT_ERROR; } FIOPadSetMioMux(instance_p->config.instance_id); @@ -207,7 +98,7 @@ static rt_err_t i2c_mio_config(struct phytium_i2c_bus *i2c_bus) if (NULL == config_p) { LOG_E("Config of mio instance %d non found.", instance_p->config.instance_id); - return RT_ERROR; + return -RT_ERROR; } input_cfg = *config_p; @@ -220,8 +111,10 @@ static rt_err_t i2c_mio_config(struct phytium_i2c_bus *i2c_bus) if (FI2C_SUCCESS != ret) { LOG_E("Init mio master failed, ret: 0x%x", ret); - return RT_ERROR; + return -RT_ERROR; } + mio_handle.is_ready = 0; + memset(&mio_handle, 0, sizeof(mio_handle)); return RT_EOK; } @@ -237,7 +130,7 @@ static rt_err_t phytium_i2c_set_speed(struct phytium_i2c_bus *i2c_bus, rt_uint32 if (ret != FI2C_SUCCESS) { LOG_E("Set i2c speed failed!\n"); - return RT_ERROR; + return -RT_ERROR; } return RT_EOK; @@ -248,6 +141,7 @@ static rt_err_t i2c_bus_control(struct rt_i2c_bus_device *device, int cmd, void RT_ASSERT(device); struct phytium_i2c_bus *i2c_bus; i2c_bus = (struct phytium_i2c_bus *)(device); + FI2cConfig *config_p; switch (cmd) { @@ -255,7 +149,7 @@ static rt_err_t i2c_bus_control(struct rt_i2c_bus_device *device, int cmd, void phytium_i2c_set_speed(i2c_bus, *(rt_uint32_t *)args); break; case RT_I2C_DEV_CTRL_10BIT: - FI2cConfig *config_p = &i2c_bus->i2c_handle.config; + config_p = &i2c_bus->i2c_handle.config; config_p->use_7bit_addr = FALSE; FI2cCfgInitialize(&i2c_bus->i2c_handle, config_p); break; @@ -285,7 +179,7 @@ static rt_ssize_t i2c_master_xfer(struct rt_i2c_bus_device *device, struct rt_i2 if (ret != FI2C_SUCCESS) { LOG_E("I2C master read failed!\n"); - return RT_ERROR; + return -RT_ERROR; } } else @@ -294,7 +188,7 @@ static rt_ssize_t i2c_master_xfer(struct rt_i2c_bus_device *device, struct rt_i2 if (ret != FI2C_SUCCESS) { LOG_E("I2C master write failed!\n"); - return RT_ERROR; + return -RT_ERROR; } } } @@ -310,161 +204,203 @@ static const struct rt_i2c_bus_device_ops _i2c_ops = }; #if defined(I2C_USE_CONTROLLER) -static int i2c_controller_init(u32 i2c_id) +static int i2c_controller_init(struct phytium_i2c_bus *i2c_controller_bus) { - u32 ret = RT_EOK; - ret = i2c_config(&i2c_bus[i2c_id]); - if (ret != FI2C_SUCCESS) + rt_err_t ret = RT_EOK; + ret = i2c_config(i2c_controller_bus); + if (ret != RT_EOK) { LOG_E("I2C config failed.\n"); - return RT_ERROR; + return -RT_ERROR; } - i2c_bus[i2c_id].device.ops = &_i2c_ops; - ret = rt_i2c_bus_device_register(&i2c_bus[i2c_id].device, i2c_bus[i2c_id].name); - LOG_D("I2C bus reg success.\n"); + i2c_controller_bus->device.ops = &_i2c_ops; + ret = rt_i2c_bus_device_register(&i2c_controller_bus->device, i2c_controller_bus->name); RT_ASSERT(RT_EOK == ret); + LOG_D("I2C bus reg success.\n"); return ret; } #endif #if defined(I2C_USE_MIO) -static int i2c_mio_init(u32 i2c_mio_id) +static int i2c_mio_init(struct phytium_i2c_bus *i2c_mio_bus) { - u32 ret = RT_EOK; - ret = i2c_mio_config(&i2c_mio_bus[i2c_mio_id]); - if (ret != FI2C_SUCCESS) + rt_err_t ret = RT_EOK; + ret = i2c_mio_config(i2c_mio_bus); + if (ret != RT_EOK) { LOG_E("I2C mio config failed.\n"); - return RT_ERROR; + return -RT_ERROR; } - i2c_mio_bus[i2c_mio_id].device.ops = &_i2c_ops; - ret = rt_i2c_bus_device_register(&i2c_mio_bus[i2c_mio_id].device, i2c_mio_bus[i2c_mio_id].name); - LOG_D("I2C mio bus reg success.\n"); + i2c_mio_bus->device.ops = &_i2c_ops; + ret = rt_i2c_bus_device_register(&i2c_mio_bus->device, i2c_mio_bus->name); RT_ASSERT(RT_EOK == ret); + LOG_D("I2C mio bus reg success.\n"); return ret; } #endif +#if defined(RT_USING_I2C0) +static struct phytium_i2c_bus i2c_controller0_bus; +#endif +#if defined(RT_USING_I2C1) +static struct phytium_i2c_bus i2c_controller1_bus; +#endif +#if defined(RT_USING_I2C2) +static struct phytium_i2c_bus i2c_controller2_bus; +#endif + +#if defined(RT_USING_MIO0) +static struct phytium_i2c_bus i2c_mio0_bus; +#endif +#if defined(RT_USING_MIO1) +static struct phytium_i2c_bus i2c_mio1_bus; +#endif +#if defined(RT_USING_MIO2) +static struct phytium_i2c_bus i2c_mio2_bus; +#endif +#if defined(RT_USING_MIO3) +static struct phytium_i2c_bus i2c_mio3_bus; +#endif +#if defined(RT_USING_MIO4) +static struct phytium_i2c_bus i2c_mio4_bus; +#endif +#if defined(RT_USING_MIO5) +static struct phytium_i2c_bus i2c_mio5_bus; +#endif +#if defined(RT_USING_MIO6) +static struct phytium_i2c_bus i2c_mio6_bus; +#endif +#if defined(RT_USING_MIO7) +static struct phytium_i2c_bus i2c_mio7_bus; +#endif +#if defined(RT_USING_MIO8) +static struct phytium_i2c_bus i2c_mio8_bus; +#endif +#if defined(RT_USING_MIO9) +static struct phytium_i2c_bus i2c_mio9_bus; +#endif +#if defined(RT_USING_MIO10) +static struct phytium_i2c_bus i2c_mio10_bus; +#endif +#if defined(RT_USING_MIO11) +static struct phytium_i2c_bus i2c_mio11_bus; +#endif +#if defined(RT_USING_MIO12) +static struct phytium_i2c_bus i2c_mio12_bus; +#endif +#if defined(RT_USING_MIO13) +static struct phytium_i2c_bus i2c_mio13_bus; +#endif +#if defined(RT_USING_MIO14) +static struct phytium_i2c_bus i2c_mio14_bus; +#endif +#if defined(RT_USING_MIO15) +static struct phytium_i2c_bus i2c_mio15_bus; +#endif + int rt_hw_i2c_init(void) { - rt_err_t ret = RT_EOK; -#if defined(I2C_USE_CONTROLLER) - #if defined(RT_USING_I2C0) - i2c_controller_init(FI2C0_ID); + i2c_controller0_bus.name = "I2C0"; + i2c_controller0_bus.i2c_handle.config.instance_id = FI2C0_ID; + i2c_controller_init(&i2c_controller0_bus); #endif #if defined(RT_USING_I2C1) - i2c_controller_init(FI2C1_ID); + i2c_controller1_bus.name = "I2C1"; + i2c_controller1_bus.i2c_handle.config.instance_id = FI2C1_ID; + i2c_controller_init(&i2c_controller1_bus); #endif #if defined(RT_USING_I2C2) - i2c_controller_init(FI2C2_ID); + i2c_controller2_bus.name = "I2C2"; + i2c_controller2_bus.i2c_handle.config.instance_id = FI2C2_ID; + i2c_controller_init(&i2c_controller2_bus); #endif -#endif - -#if defined(I2C_USE_MIO) - #if defined(RT_USING_MIO0) - i2c_mio_init(FMIO0_ID); + i2c_mio0_bus.name = "MIO0"; + i2c_mio0_bus.i2c_handle.config.instance_id = FMIO0_ID; + i2c_mio_init(&i2c_mio0_bus); #endif #if defined(RT_USING_MIO1) - i2c_mio_init(FMIO1_ID); + i2c_mio1_bus.name = "MIO1"; + i2c_mio1_bus.i2c_handle.config.instance_id = FMIO1_ID; + i2c_mio_init(&i2c_mio1_bus); #endif #if defined(RT_USING_MIO2) - i2c_mio_init(FMIO2_ID); + i2c_mio2_bus.name = "MIO2"; + i2c_mio2_bus.i2c_handle.config.instance_id = FMIO2_ID; + i2c_mio_init(&i2c_mio2_bus); #endif #if defined(RT_USING_MIO3) - i2c_mio_init(FMIO3_ID); + i2c_mio3_bus.name = "MIO3"; + i2c_mio3_bus.i2c_handle.config.instance_id = FMIO3_ID; + i2c_mio_init(&i2c_mio3_bus); #endif #if defined(RT_USING_MIO4) - i2c_mio_init(FMIO4_ID); + i2c_mio4_bus.name = "MIO4"; + i2c_mio4_bus.i2c_handle.config.instance_id = FMIO4_ID; + i2c_mio_init(&i2c_mio4_bus); #endif #if defined(RT_USING_MIO5) - i2c_mio_init(FMIO5_ID); + i2c_mio5_bus.name = "MIO5"; + i2c_mio5_bus.i2c_handle.config.instance_id = FMIO5_ID; + i2c_mio_init(&i2c_mio5_bus); #endif #if defined(RT_USING_MIO6) - i2c_mio_init(FMIO6_ID); + i2c_mio6_bus.name = "MIO6"; + i2c_mio6_bus.i2c_handle.config.instance_id = FMIO6_ID; + i2c_mio_init(&i2c_mio6_bus); #endif #if defined(RT_USING_MIO7) - i2c_mio_init(FMIO7_ID); + i2c_mio7_bus.name = "MIO2"; + i2c_mio7_bus.i2c_handle.config.instance_id = FMIO7_ID; + i2c_mio_init(&i2c_mio7_bus); #endif #if defined(RT_USING_MIO8) - i2c_mio_init(FMIO8_ID); + i2c_mio8_bus.name = "MIO8"; + i2c_mio8_bus.i2c_handle.config.instance_id = FMIO8_ID; + i2c_mio_init(&i2c_mio8_bus); #endif #if defined(RT_USING_MIO9) - i2c_mio_init(FMIO9_ID); + i2c_mio9_bus.name = "MIO9"; + i2c_mio9_bus.i2c_handle.config.instance_id = FMIO9_ID; + i2c_mio_init(&i2c_mio9_bus); #endif #if defined(RT_USING_MIO10) - i2c_mio_init(FMIO10_ID); + i2c_mio10_bus.name = "MIO10"; + i2c_mio10_bus.i2c_handle.config.instance_id = FMIO10_ID; + i2c_mio_init(&i2c_mio10_bus); #endif #if defined(RT_USING_MIO11) - i2c_mio_init(FMIO11_ID); + i2c_mio11_bus.name = "MIO11"; + i2c_mio11_bus.i2c_handle.config.instance_id = FMIO11_ID; + i2c_mio_init(&i2c_mio11_bus); #endif #if defined(RT_USING_MIO12) - i2c_mio_init(FMIO12_ID); + i2c_mio12_bus.name = "MIO12"; + i2c_mio12_bus.i2c_handle.config.instance_id = FMIO12_ID; + i2c_mio_init(&i2c_mio12_bus); #endif #if defined(RT_USING_MIO13) - i2c_mio_init(FMIO13_ID); + i2c_mio13_bus.name = "MIO13"; + i2c_mio13_bus.i2c_handle.config.instance_id = FMIO13_ID; + i2c_mio_init(&i2c_mio13_bus); #endif #if defined(RT_USING_MIO14) - i2c_mio_init(FMIO14_ID); + i2c_mio14_bus.name = "MIO14"; + i2c_mio14_bus.i2c_handle.config.instance_id = FMIO14_ID; + i2c_mio_init(&i2c_mio14_bus); #endif #if defined(RT_USING_MIO15) - i2c_mio_init(FMIO15_ID); -#endif - + i2c_mio15_bus.name = "MIO15"; + i2c_mio15_bus.i2c_handle.config.instance_id = FMIO15_ID; + i2c_mio_init(&i2c_mio15_bus); #endif return 0; } -INIT_DEVICE_EXPORT(rt_hw_i2c_init); - - - -static struct rt_i2c_bus_device *i2c_test_bus = RT_NULL; /* I2C总线设备句柄 */ - -int i2c_sample(int argc, char *argv[]) -{ - char name[RT_NAME_MAX]; - rt_strncpy(name, "MIO15", RT_NAME_MAX); - i2c_test_bus = (struct rt_i2c_bus_device *)rt_device_find(name); - - rt_uint8_t read_buf[2] = {0x02, 0x0}; - rt_uint8_t write_buf[2] = {0x02, 0x01}; - if (i2c_test_bus == RT_NULL) - { - rt_kprintf("can't find %s device!\n", name); - } - else - { - rt_kprintf("find %s device!!!!\n", name); - } - - struct rt_i2c_msg read_msgs; - read_msgs.addr = 0x6B; - read_msgs.flags = RT_I2C_RD; - read_msgs.buf = read_buf; - read_msgs.len = 1; - rt_i2c_transfer(i2c_test_bus, &read_msgs, 1); - rt_kprintf("read_buf = %x\n", *read_msgs.buf); - - struct rt_i2c_msg write_msgs; - write_msgs.addr = 0x6B; - write_msgs.flags = RT_I2C_WR; - write_msgs.buf = write_buf; - write_msgs.len = 1; - rt_i2c_transfer(i2c_test_bus, &write_msgs, 1); - read_buf[0] = 0x02; - rt_i2c_transfer(i2c_test_bus, &read_msgs, 1); - rt_kprintf("read_buf = %x\n", *read_msgs.buf); - - return RT_EOK; -} - -MSH_CMD_EXPORT(i2c_sample, i2c device sample); - -#endif \ No newline at end of file +INIT_DEVICE_EXPORT(rt_hw_i2c_init); \ No newline at end of file diff --git a/bsp/phytium/libraries/drivers/drv_i2c.h b/bsp/phytium/libraries/drivers/drv_i2c.h index 965f2b2648..d84f20f380 100644 --- a/bsp/phytium/libraries/drivers/drv_i2c.h +++ b/bsp/phytium/libraries/drivers/drv_i2c.h @@ -15,17 +15,15 @@ #include -#ifdef BSP_USING_I2C - #ifdef __cplusplus extern "C" { #endif +int rt_hw_i2c_init(void); #ifdef __cplusplus } #endif -#endif #endif /* __DRV_CAN_H__ */ diff --git a/bsp/phytium/libraries/drivers/drv_pwm.c b/bsp/phytium/libraries/drivers/drv_pwm.c index c031352a9e..af83c0209f 100644 --- a/bsp/phytium/libraries/drivers/drv_pwm.c +++ b/bsp/phytium/libraries/drivers/drv_pwm.c @@ -11,7 +11,7 @@ * */ #include "rtconfig.h" -#ifdef BSP_USING_PWM +#include #define LOG_TAG "pwm_drv" #include "drv_log.h" #include "drv_pwm.h" @@ -27,68 +27,26 @@ struct phytium_pwm struct rt_device_pwm device; /* inherit from can device */ }; -static struct phytium_pwm pwm_dev[FPWM_NUM] = -{ -#if defined(TARGET_E2000) - { - .name = "PWM0", - .pwm_handle.config.instance_id = 0, - }, - { - .name = "PWM1", - .pwm_handle.config.instance_id = 1, - }, - { - .name = "PWM2", - .pwm_handle.config.instance_id = 2, - }, - { - .name = "PWM3", - .pwm_handle.config.instance_id = 3, - }, - { - .name = "PWM4", - .pwm_handle.config.instance_id = 4, - }, - { - .name = "PWM5", - .pwm_handle.config.instance_id = 5, - }, - { - .name = "PWM6", - .pwm_handle.config.instance_id = 6, - }, - { - .name = "PWM7", - .pwm_handle.config.instance_id = 7, - }, -#elif defined(TARGET_PHYTIUMPI) - { - .name = "PWM2", - .pwm_handle.config.instance_id = 2, - }, -#endif -}; - static rt_err_t drv_pwm_config(struct phytium_pwm *pwm_dev) { RT_ASSERT(pwm_dev); u32 ret; - FPwmConfig *config = NULL; + FPwmConfig config; FPwmCtrl *pwm_handle = &pwm_dev->pwm_handle; FIOPadSetPwmMux(pwm_handle->config.instance_id, 0); FIOPadSetPwmMux(pwm_handle->config.instance_id, 1); - config = FPwmLookupConfig(pwm_handle->config.instance_id); + config = *FPwmLookupConfig(pwm_handle->config.instance_id); #ifdef RT_USING_SMART - config->pwm_base_addr = (uintptr)rt_ioremap((void *)config->pwm_base_addr, 0x1000); - config->db_base_addr = (uintptr)rt_ioremap((void *)config->db_base_addr, 0x100); + config.lsd_config_addr = (uintptr)rt_ioremap((void *)config.lsd_config_addr, 0x100); + config.pwm_base_addr = (uintptr)rt_ioremap((void *)config.pwm_base_addr, 0x1000); + config.db_base_addr = (uintptr)rt_ioremap((void *)config.db_base_addr, 0x100); #endif - ret = FPwmCfgInitialize(pwm_handle, config); + ret = FPwmCfgInitialize(pwm_handle, &config); if (ret != FPWM_SUCCESS) { LOG_E("Pwm config init failed.\n"); - return RT_ERROR; + return -RT_ERROR; } return RT_EOK; @@ -149,7 +107,7 @@ static rt_err_t drv_pwm_set(struct phytium_pwm *pwm_dev, int cmd, struct rt_pwm_ { LOG_E("Pwm variable set failed.\n"); - return RT_ERROR; + return -RT_ERROR; } FPwmEnable(&pwm_dev->pwm_handle, channel); @@ -171,7 +129,7 @@ static rt_err_t drv_pwm_get(struct phytium_pwm *pwm_dev, struct rt_pwm_configura { LOG_E("Pwm variable get failed.\n"); - return RT_ERROR; + return -RT_ERROR; } configuration->period = pwm_cfg.pwm_period * 1000; @@ -203,7 +161,7 @@ static rt_err_t drv_pwm_set_dead_time(struct phytium_pwm *pwm_dev, struct rt_pwm { LOG_E("FPwmDbVariableSet failed."); - return RT_ERROR; + return -RT_ERROR; } FPwmEnable(&pwm_dev->pwm_handle, channel); @@ -242,62 +200,93 @@ static const struct rt_pwm_ops _pwm_ops = _pwm_control, }; -static rt_err_t pwm_controller_init(u32 pwm_id) +static rt_err_t pwm_controller_init(struct phytium_pwm *pwm_dev) { u32 ret = RT_EOK; - ret = drv_pwm_config(&pwm_dev[pwm_id]); + ret = drv_pwm_config(pwm_dev); if (ret != FPWM_SUCCESS) { LOG_E("Pwm config failed.\n"); - return RT_ERROR; + return -RT_ERROR; } - ret = rt_device_pwm_register(&pwm_dev[pwm_id].device, - pwm_dev[pwm_id].name, + ret = rt_device_pwm_register(&pwm_dev->device, + pwm_dev->name, &_pwm_ops, - &pwm_dev[pwm_id]); + pwm_dev); RT_ASSERT(ret == RT_EOK); return ret; } -int rt_hw_pwm_init(void) -{ -#if defined(TARGET_E2000) - #if defined(RT_USING_PWM0) - pwm_controller_init(FPWM0_ID); +static struct phytium_pwm pwm0_dev; #endif #if defined(RT_USING_PWM1) - pwm_controller_init(FPWM1_ID); +static struct phytium_pwm pwm1_dev; #endif #if defined(RT_USING_PWM2) - pwm_controller_init(FPWM2_ID); +static struct phytium_pwm pwm2_dev; #endif #if defined(RT_USING_PWM3) - pwm_controller_init(FPWM3_ID); +static struct phytium_pwm pwm3_dev; #endif #if defined(RT_USING_PWM4) - pwm_controller_init(FPWM4_ID); +static struct phytium_pwm pwm4_dev; #endif #if defined(RT_USING_PWM5) - pwm_controller_init(FPWM5_ID); +static struct phytium_pwm pwm5_dev; #endif #if defined(RT_USING_PWM6) - pwm_controller_init(FPWM6_ID); +static struct phytium_pwm pwm6_dev; #endif #if defined(RT_USING_PWM7) - pwm_controller_init(FPWM7_ID); +static struct phytium_pwm pwm7_dev; #endif -#elif defined(TARGET_PHYTIUMPI) - +int rt_hw_pwm_init(void) +{ +#if defined(RT_USING_PWM0) + pwm0_dev.name = "PWM0"; + pwm0_dev.pwm_handle.config.instance_id = FPWM0_ID; + pwm_controller_init(&pwm0_dev); +#endif +#if defined(RT_USING_PWM1) + pwm1_dev.name = "PWM1"; + pwm1_dev.pwm_handle.config.instance_id = FPWM1_ID; + pwm_controller_init(&pwm1_dev); +#endif #if defined(RT_USING_PWM2) - pwm_controller_init(FPWM2_ID); + pwm2_dev.name = "PWM2"; + pwm2_dev.pwm_handle.config.instance_id = FPWM2_ID; + pwm_controller_init(&pwm2_dev); +#endif +#if defined(RT_USING_PWM3) + pwm3_dev.name = "PWM3"; + pwm3_dev.pwm_handle.config.instance_id = FPWM3_ID; + pwm_controller_init(&pwm3_dev); +#endif +#if defined(RT_USING_PWM4) + pwm4_dev.name = "PWM4"; + pwm4_dev.pwm_handle.config.instance_id = FPWM4_ID; + pwm_controller_init(&pwm4_dev); +#endif +#if defined(RT_USING_PWM5) + pwm5_dev.name = "PWM5"; + pwm5_dev.pwm_handle.config.instance_id = FPWM5_ID; + pwm_controller_init(&pwm5_dev); +#endif +#if defined(RT_USING_PWM6) + pwm6_dev.name = "PWM6"; + pwm6_dev.pwm_handle.config.instance_id = FPWM6_ID; + pwm_controller_init(&pwm6_dev); +#endif +#if defined(RT_USING_PWM7) + pwm7_dev.name = "PWM7"; + pwm7_dev.pwm_handle.config.instance_id = FPWM7_ID; + pwm_controller_init(&pwm7_dev); #endif -#endif return 0; } -INIT_DEVICE_EXPORT(rt_hw_pwm_init); -#endif \ No newline at end of file +INIT_DEVICE_EXPORT(rt_hw_pwm_init); \ No newline at end of file diff --git a/bsp/phytium/libraries/drivers/drv_pwm.h b/bsp/phytium/libraries/drivers/drv_pwm.h index a6ba65eb76..6e44d04b09 100644 --- a/bsp/phytium/libraries/drivers/drv_pwm.h +++ b/bsp/phytium/libraries/drivers/drv_pwm.h @@ -15,16 +15,15 @@ #include -#ifdef BSP_USING_PWM - #ifdef __cplusplus extern "C" { #endif +int rt_hw_pwm_init(void); + #ifdef __cplusplus } #endif -#endif #endif /* __DRV_CAN_H__ */ diff --git a/bsp/phytium/libraries/drivers/drv_qspi.c b/bsp/phytium/libraries/drivers/drv_qspi.c index 5451fc2868..134a19658f 100644 --- a/bsp/phytium/libraries/drivers/drv_qspi.c +++ b/bsp/phytium/libraries/drivers/drv_qspi.c @@ -11,19 +11,18 @@ * */ #include "rtconfig.h" - -#ifdef BSP_USING_QSPI +#include "rtdevice.h" +#define LOG_TAG "qspi_drv" +#include "drv_log.h" #include #ifdef RT_USING_SMART #include #endif -#include "rtdevice.h" #include "drv_qspi.h" #include "fqspi_flash.h" -#define LOG_TAG "qspi_drv" -#include "drv_log.h" #include "fiopad.h" #include "fqspi_hw.h" +#include "fio_mux.h" #define DAT_LENGTH 128 @@ -31,15 +30,14 @@ static rt_uint8_t rd_buf[DAT_LENGTH]; static rt_uint8_t wr_buf[DAT_LENGTH]; -static phytium_qspi_bus phytium_qspi = +typedef struct { - .fqspi_id = FQSPI0_ID, -}; - -static struct rt_qspi_device *qspi_device; /* phytium device bus handle */ -static char qspi_bus_name[RT_NAME_MAX] = "QSPIBUS"; -static char qspi_dev_name[RT_NAME_MAX] = "QSPIDEV"; -extern FIOPadCtrl iopad_ctrl; + rt_uint32_t fqspi_id; + const char *name; + rt_uint32_t init; /* 0 is init already */ + FQspiCtrl fqspi; + struct rt_spi_bus qspi_bus; +} phytium_qspi_bus; rt_err_t FQspiInit(phytium_qspi_bus *phytium_qspi_bus) { @@ -62,7 +60,7 @@ rt_err_t FQspiInit(phytium_qspi_bus *phytium_qspi_bus) if (FT_SUCCESS != ret) { LOG_E("Qspi init failed.\n"); - return RT_ERROR; + return -RT_ERROR; } else { @@ -74,7 +72,7 @@ rt_err_t FQspiInit(phytium_qspi_bus *phytium_qspi_bus) if (FT_SUCCESS != ret) { LOG_E("Qspi flash detect failed.\n"); - return RT_ERROR; + return -RT_ERROR; } else { @@ -127,7 +125,7 @@ static rt_err_t phytium_qspi_configure(struct rt_spi_device *device, struct rt_s { qspi_bus->init = RT_FALSE; rt_kprintf("Qspi init failed!!!\n"); - return RT_ERROR; + return -RT_ERROR; } qspi_bus->init = RT_EOK; @@ -354,7 +352,7 @@ static rt_ssize_t phytium_qspi_xfer(struct rt_spi_device *device, struct rt_spi_ if (FT_SUCCESS != ret) { LOG_E("Failed to erase mem, test result 0x%x.\r\n", ret); - return RT_ERROR; + return -RT_ERROR; } /* write norflash data */ ret = QspiFlashWriteData(&(qspi_bus->fqspi), cmd, addr, (u8 *)&wr_buf, len); @@ -362,7 +360,7 @@ static rt_ssize_t phytium_qspi_xfer(struct rt_spi_device *device, struct rt_spi_ if (FT_SUCCESS != ret) { LOG_E("Failed to write mem, test result 0x%x.\r\n", ret); - return RT_ERROR; + return -RT_ERROR; } else { @@ -380,7 +378,7 @@ static rt_ssize_t phytium_qspi_xfer(struct rt_spi_device *device, struct rt_spi_ if (FT_SUCCESS != ret) { rt_kprintf("Failed to config read, test result 0x%x.\r\n", ret); - return RT_ERROR; + return -RT_ERROR; } /* read norflash data */ size_t read_len = QspiFlashReadData(&(qspi_bus->fqspi), addr, (u8 *)&rd_buf, DAT_LENGTH); @@ -388,7 +386,7 @@ static rt_ssize_t phytium_qspi_xfer(struct rt_spi_device *device, struct rt_spi_ if (read_len != DAT_LENGTH) { rt_kprintf("Failed to read mem, read len = %d.\r\n", read_len); - return RT_ERROR; + return -RT_ERROR; } else { @@ -409,7 +407,7 @@ static rt_ssize_t phytium_qspi_xfer(struct rt_spi_device *device, struct rt_spi_ if (FT_SUCCESS != ret) { LOG_E("Failed to read flash information.\n"); - return RT_ERROR; + return -RT_ERROR; } } @@ -422,14 +420,14 @@ static rt_ssize_t phytium_qspi_xfer(struct rt_spi_device *device, struct rt_spi_ if (FT_SUCCESS != ret) { LOG_E("Failed to enable flash reg write.\n"); - return RT_ERROR; + return -RT_ERROR; } ret |= FQspiFlashWriteReg(&(qspi_bus->fqspi), cmd, (u8 *)sndb, 1); if (FT_SUCCESS != ret) { LOG_E("Failed to write flash reg.\n"); - return RT_ERROR; + return -RT_ERROR; } return RT_EOK; @@ -452,6 +450,7 @@ rt_err_t phytium_qspi_bus_attach_device(const char *bus_name, const char *device RT_ASSERT(device_name != RT_NULL); qspi_device = (struct rt_qspi_device *)rt_malloc(sizeof(struct rt_qspi_device)); + rt_kprintf("qspi_device addr == %p\n", qspi_device); if (qspi_device == RT_NULL) { LOG_E("Qspi bus attach device failed."); @@ -471,13 +470,13 @@ __exit: return result; } -int rt_hw_qspi_init(void) +static int rt_qspi_init(phytium_qspi_bus *phytium_qspi) { int result = RT_EOK; - phytium_qspi.qspi_bus.parent.user_data = &phytium_qspi; + phytium_qspi->qspi_bus.parent.user_data = phytium_qspi; - if (rt_qspi_bus_register(&phytium_qspi.qspi_bus, qspi_bus_name, &phytium_qspi_ops) == RT_EOK) + if (rt_qspi_bus_register(&phytium_qspi->qspi_bus, phytium_qspi->name, &phytium_qspi_ops) == RT_EOK) { rt_kprintf("Qspi bus register successfully!!!\n"); } @@ -489,81 +488,18 @@ int rt_hw_qspi_init(void) return result; } -INIT_BOARD_EXPORT(rt_hw_qspi_init); -/*example*/ -struct rt_spi_message write_message; -struct rt_spi_message read_message; - -rt_err_t qspi_init() -{ - rt_err_t res = RT_EOK; - res = phytium_qspi_bus_attach_device(qspi_bus_name, qspi_dev_name); - RT_ASSERT(res == RT_EOK); - qspi_device = (struct rt_qspi_device *)rt_device_find(qspi_dev_name); - - return res; -} - -/*read cmd example message improvement*/ -void ReadCmd(struct rt_spi_message *spi_message) -{ - struct rt_qspi_message *message = (struct rt_qspi_message *) spi_message; - message->address.content = 0x360000 ;/*Flash address*/ - message->instruction.content = 0x03 ;/*read cmd*/ - - rt_qspi_transfer_message(qspi_device, message); -} - -/*write cmd example message improvement*/ -void WriteCmd(struct rt_spi_message *spi_message) -{ - struct rt_qspi_message *message = (struct rt_qspi_message *) spi_message; - message->address.content = 0x360000 ;/*Flash address*/ - message->instruction.content = 0x02 ;/*write cmd*/ - rt_qspi_transfer_message(qspi_device, message); -} - -/*write cmd example message improvement*/ -void qspi_thread(void *parameter) -{ - rt_err_t res; - - qspi_init(); - /*Read and write flash chip fixed area repeatedly*/ - write_message.send_buf = "phytium"; - write_message.length = strlen((char *)write_message.send_buf) + 1; - WriteCmd(&write_message); - ReadCmd(&read_message); - - write_message.send_buf = "phytium hello world!"; - write_message.length = strlen((char *)write_message.send_buf) + 1; - WriteCmd(&write_message); - ReadCmd(&read_message); - - write_message.send_buf = "Welcome to phytium chip"; - write_message.length = strlen((char *)write_message.send_buf) + 1; - WriteCmd(&write_message); - ReadCmd(&read_message); - - rt_uint8_t recv; - rt_uint8_t cmd = 0x9F;/*read the flash status reg2*/ - res = rt_qspi_send_then_recv(qspi_device, &cmd, sizeof(cmd), &recv, sizeof(recv)); - RT_ASSERT(res != RT_EOK); - - rt_kprintf("The status reg = %x \n", recv); -} - -rt_err_t qspi_sample(int argc, char *argv[]) -{ - rt_thread_t thread; - rt_err_t res; - thread = rt_thread_create("qspi_thread", qspi_thread, RT_NULL, 4096, 25, 10); - res = rt_thread_startup(thread); - RT_ASSERT(res == RT_EOK); - - return res; -} -/* Enter qspi_sample command for testing */ -MSH_CMD_EXPORT(qspi_sample, qspi sample); +#if defined(RT_USING_QSPI0) +static phytium_qspi_bus phytium_qspi0_bus; #endif + +int rt_hw_qspi_init(void) +{ +#if defined(RT_USING_QSPI0) + phytium_qspi0_bus.name = "QSPI0"; + phytium_qspi0_bus.fqspi_id = FQSPI0_ID; + rt_qspi_init(&phytium_qspi0_bus); +#endif + return 0; +} +INIT_BOARD_EXPORT(rt_hw_qspi_init); \ No newline at end of file diff --git a/bsp/phytium/libraries/drivers/drv_qspi.h b/bsp/phytium/libraries/drivers/drv_qspi.h index 50170063fd..c234bbe1c5 100644 --- a/bsp/phytium/libraries/drivers/drv_qspi.h +++ b/bsp/phytium/libraries/drivers/drv_qspi.h @@ -14,32 +14,18 @@ #ifndef __DRV_QSPI_H__ #define __DRV_QSPI_H__ -#include "rtconfig.h" - -#ifdef BSP_USING_QSPI -#include -#include "rtdevice.h" -#include "fqspi_flash.h" -#define PHYTIUM_QSPI_NAME "qspi" - +#include "rtdef.h" #ifdef __cplusplus extern "C" { #endif -typedef struct -{ - rt_uint32_t fqspi_id; - rt_uint32_t init; /* 0 is init already */ - FQspiCtrl fqspi; - struct rt_spi_bus qspi_bus; -} phytium_qspi_bus; - rt_err_t phytium_qspi_bus_attach_device(const char *bus_name, const char *device_name); +int rt_hw_qspi_init(void); + #ifdef __cplusplus } #endif -#endif #endif // !DRT_QSPI_H diff --git a/bsp/phytium/libraries/drivers/drv_sdif.c b/bsp/phytium/libraries/drivers/drv_sdif.c index 463b934ce4..864969f7f7 100644 --- a/bsp/phytium/libraries/drivers/drv_sdif.c +++ b/bsp/phytium/libraries/drivers/drv_sdif.c @@ -165,14 +165,14 @@ static rt_err_t fsdif_ctrl_init(struct rt_mmcsd_host *host) if (!mmcsd_instance) { LOG_E("Malloc mmcsd_instance failed"); - return RT_ERROR; + return -RT_ERROR; } rw_desc = rt_malloc_align(SDIF_MAX_BLK_TRANS * sizeof(FSdifIDmaDesc), SDIF_MALLOC_CAP_DESC); if (!rw_desc) { LOG_E("Malloc rw_desc failed"); - return RT_ERROR; + return -RT_ERROR; } rt_memset(mmcsd_instance, 0, sizeof(FSdif)); @@ -195,13 +195,13 @@ static rt_err_t fsdif_ctrl_init(struct rt_mmcsd_host *host) if (FSDIF_SUCCESS != FSdifCfgInitialize(mmcsd_instance, &mmcsd_config)) { LOG_E("SDIF controller init failed."); - return RT_ERROR; + return -RT_ERROR; } if (FSDIF_SUCCESS != FSdifSetIDMAList(mmcsd_instance, rw_desc, (uintptr)rw_desc + PV_OFFSET, SDIF_MAX_BLK_TRANS)) { LOG_E("SDIF controller setup DMA failed."); - return RT_ERROR; + return -RT_ERROR; } mmcsd_instance->desc_list.first_desc_dma = (uintptr)rw_desc + PV_OFFSET; diff --git a/bsp/phytium/libraries/drivers/drv_spi.c b/bsp/phytium/libraries/drivers/drv_spi.c index 4296957ab6..a13ec10839 100644 --- a/bsp/phytium/libraries/drivers/drv_spi.c +++ b/bsp/phytium/libraries/drivers/drv_spi.c @@ -12,49 +12,35 @@ * */ #include"rtconfig.h" -#ifdef BSP_USING_SPI - #include #include #include "interrupt.h" #define LOG_TAG "spi_drv" #include "drv_log.h" #include - -#if defined(TARGET_E2000) - #include "fparameters.h" -#endif - +#include "fparameters.h" #include "fcpu_info.h" #include "fkernel.h" #include "ftypes.h" - +#ifdef RT_USING_SMART + #include +#endif #include - #include "fspim.h" #include "fspim_hw.h" /* include low-level header file for internal probe */ #include "drv_spi.h" /************************** Constant Definitions *****************************/ /**************************** Type Definitions *******************************/ /************************** Variable Definitions *****************************/ -#ifdef RT_USING_SPIM0 - static struct drv_spi _RTSpim0; -#endif -#ifdef RT_USING_SPIM1 - static struct drv_spi _RTSpim1; -#endif +typedef struct +{ + struct rt_spi_bus spi_bus; + FSpim spim_instance; + const char *name; +} phytium_spi_bus; -#ifdef RT_USING_SPIM2 - static struct drv_spi _RTSpim2; -#endif - -#ifdef RT_USING_SPIM3 - static struct drv_spi _RTSpim3; -#endif - -static struct rt_spi_device *spi_device = RT_NULL; static struct rt_event rx_done_event; /***************** Macros (Inline Functions) Definitions *********************/ @@ -110,8 +96,8 @@ static rt_err_t spim_configure(struct rt_spi_device *device, FError ret = FSPIM_SUCCESS; RT_ASSERT(device != RT_NULL); RT_ASSERT(configuration != RT_NULL); - struct drv_spi *user_data_cfg = device->parent.user_data; - FSpimConfig input_cfg = *FSpimLookupConfig(user_data_cfg->spi_id); + phytium_spi_bus *user_data_cfg = device->parent.user_data; + FSpimConfig input_cfg = *FSpimLookupConfig(user_data_cfg->spim_instance.config.instance_id); #ifdef RT_USING_SMART input_cfg.base_addr = (uintptr)rt_ioremap((void *)input_cfg.base_addr, 0x1000); #endif @@ -148,14 +134,14 @@ static rt_err_t spim_configure(struct rt_spi_device *device, ret = FSpimCfgInitialize(&user_data_cfg->spim_instance, &input_cfg); if (FSPIM_SUCCESS != ret) { - return RT_ERROR; + return -RT_ERROR; } /* irq setting */ ret = FSpimSetupInterrupt(&user_data_cfg->spim_instance); if (FSPIM_SUCCESS != ret) { - return RT_ERROR; + return -RT_ERROR; } FSpimRegisterIntrruptHandler(&user_data_cfg->spim_instance, FSPIM_INTR_EVT_RX_DONE, rt_ft_send_event_done, NULL); @@ -172,7 +158,7 @@ static rt_uint32_t spim_xfer(struct rt_spi_device *device, struct rt_spi_message const rt_uint8_t *send_buf; /* recv spi_cfg from RT-Thread sys */ - struct drv_spi *user_data_xfer = device->parent.user_data; + phytium_spi_bus *user_data_xfer = device->parent.user_data; FSpim *xfer_spim_instance = &user_data_xfer->spim_instance; FError tx_rx_result = FSPIM_SUCCESS; @@ -226,117 +212,56 @@ static rt_uint32_t spim_xfer(struct rt_spi_device *device, struct rt_spi_message return message_length; } -int ft_spi_init(void) +static int spi_init(phytium_spi_bus *phytium_spi) { - rt_err_t result; - static struct rt_spi_bus spim_bus; + rt_spi_bus_register(&phytium_spi->spi_bus, phytium_spi->name, &spim_ops); + RT_ASSERT((struct rt_spi_device *)rt_device_find(phytium_spi->name)); + return 0; +} + +#ifdef RT_USING_SPIM0 + static phytium_spi_bus spi0_bus; +#endif +#ifdef RT_USING_SPIM1 + static phytium_spi_bus spi1_bus; +#endif +#ifdef RT_USING_SPIM2 + static phytium_spi_bus spi2_bus; +#endif +#ifdef RT_USING_SPIM3 + static phytium_spi_bus spi3_bus; +#endif + +int rt_hw_spi_init(void) +{ /* event creat */ if (RT_EOK != rt_event_init(&rx_done_event, "rx_done_event", RT_IPC_FLAG_FIFO)) { rt_kprintf("Create event failed.\n"); - return RT_ERROR; + return -RT_ERROR; } - - /* spi bus init */ - result = rt_spi_bus_register(&spim_bus, "spi0", &spim_ops); - RT_ASSERT((struct rt_spi_device *)rt_device_find("spi0")); - rt_kprintf("Spi bus spi0 init\n"); - - /* spi device init and attach to bus */ #ifdef RT_USING_SPIM0 - _RTSpim0.spi_id = FSPI0_ID; - result = rt_spi_bus_attach_device(&_RTSpim0.device, "spi00", "spi0", &_RTSpim0); - spi_device = (struct rt_spi_device *)rt_device_find("spi00"); - if (RT_NULL == spi_device) - { - rt_kprintf("Spi init failed -> can't find spi00 device!\n"); - return RT_ERROR; - } - rt_kprintf("Spi master device spi00 init.\n"); + spi0_bus.name = "SPI0"; + spi0_bus.spim_instance.config.instance_id = FSPI0_ID; + spi_init(&spi0_bus); #endif - #ifdef RT_USING_SPIM1 - _RTSpim1.spi_id = FSPI1_ID; - result = rt_spi_bus_attach_device(&_RTSpim1.device, "spi01", "spi0", &_RTSpim1); - spi_device = (struct rt_spi_device *)rt_device_find("spi01"); - if (RT_NULL == spi_device) - { - rt_kprintf("Spi init failed -> can't find spi01 device!\n"); - return RT_ERROR; - } - rt_kprintf("Spi master device spi01 init.\n"); + spi1_bus.name = "SPI1"; + spi1_bus.spim_instance.config.instance_id = FSPI1_ID; + spi_init(&spi1_bus); #endif - #ifdef RT_USING_SPIM2 - _RTSpim2.spi_id = FSPI2_ID; - result = rt_spi_bus_attach_device(&_RTSpim2.device, "spi02", "spi0", &_RTSpim2); - spi_device = (struct rt_spi_device *)rt_device_find("spi02"); - if (RT_NULL == spi_device) - { - rt_kprintf("Spi init failed -> can't find spi02 device!\n"); - return RT_ERROR; - } - rt_kprintf("Spi master device spi02 init.\n"); + spi2_bus.name = "SPI2"; + spi2_bus.spim_instance.config.instance_id = FSPI2_ID; + spi_init(&spi2_bus); #endif - #ifdef RT_USING_SPIM3 - _RTSpim3.spi_id = FSPI3_ID; - result = rt_spi_bus_attach_device(&_RTSpim3.device, "spi03", "spi0", &_RTSpim3); - spi_device = (struct rt_spi_device *)rt_device_find("spi03"); - if (RT_NULL == spi_device) - { - rt_kprintf("Spi init failed -> can't find spi03 device!\n"); - return RT_ERROR; - } - rt_kprintf("Spi master device spi03 init.\n"); + spi3_bus.name = "SPI3"; + spi3_bus.spim_instance.config.instance_id = FSPI3_ID; + spi_init(&spi3_bus); #endif - - return result; + return 0; } -INIT_DEVICE_EXPORT(ft_spi_init); - -/* spi test example */ -static void fspim_test_sample(int argc, char *argv[]) -{ - rt_uint8_t send_to_flash_id = 0x9f; /* Flash cmd */ - rt_uint8_t recv_from_falsh_id1[5] = {0}; - rt_uint8_t recv_from_falsh_id2[5] = {0}; - - /* find the spi device to get the device handle */ - spi_device = (struct rt_spi_device *)rt_device_find("spi02"); - if (!spi_device) - { - rt_kprintf("fspim_test_sample run failed! can't find spi02 device!\n"); - } - else - { - static struct rt_spi_message msg1, msg2; - - msg1.send_buf = &send_to_flash_id; - msg1.recv_buf = RT_NULL; - msg1.length = 1; - msg1.cs_take = 1; - msg1.cs_release = 0; - msg1.next = &msg2; - - msg2.send_buf = RT_NULL; - msg2.recv_buf = recv_from_falsh_id2; - msg2.length = 5; - msg2.cs_take = 0; - msg2.cs_release = 1; - msg2.next = RT_NULL; - - /* send the command to read the ID using rt_spi_send_then_recv() */ - rt_spi_send_then_recv(spi_device, &send_to_flash_id, 1, recv_from_falsh_id1, 5); - rt_kprintf("use rt_spi_send_then_recv() read flash ID is:0x%x 0x%x 0x%x 0x%x 0x%x\n", recv_from_falsh_id1[0], recv_from_falsh_id1[1], recv_from_falsh_id1[2], recv_from_falsh_id1[3], recv_from_falsh_id1[4]); - - /* send the command to read the ID using rt_spi_transfer_message() */ - rt_spi_transfer_message(spi_device, &msg1); - rt_kprintf("use rt_spi_transfer_message() read flash ID is:0x%x 0x%x 0x%x 0x%x 0x%x\n", recv_from_falsh_id2[0], recv_from_falsh_id2[1], recv_from_falsh_id2[2], recv_from_falsh_id2[3], recv_from_falsh_id2[4]); - } -} -MSH_CMD_EXPORT(fspim_test_sample, "fspim test sample"); - -#endif +INIT_DEVICE_EXPORT(rt_hw_spi_init); \ No newline at end of file diff --git a/bsp/phytium/libraries/drivers/drv_spi.h b/bsp/phytium/libraries/drivers/drv_spi.h index 155ad22b3d..b3c8535db8 100644 --- a/bsp/phytium/libraries/drivers/drv_spi.h +++ b/bsp/phytium/libraries/drivers/drv_spi.h @@ -14,15 +14,15 @@ #define __DRV_SPI_H__ #include -#ifdef BSP_USING_SPI - -struct drv_spi +#ifdef __cplusplus +extern "C" { - u32 spi_id; - FSpim spim_instance; - struct rt_spi_device device; -}; +#endif +int rt_hw_spi_init(void); + +#ifdef __cplusplus +} #endif #endif diff --git a/bsp/phytium/libraries/drivers/drv_usart.c b/bsp/phytium/libraries/drivers/drv_usart.c index d171dbdeb4..868eace5dc 100644 --- a/bsp/phytium/libraries/drivers/drv_usart.c +++ b/bsp/phytium/libraries/drivers/drv_usart.c @@ -12,7 +12,6 @@ */ #include "rtconfig.h" -#ifdef BSP_USING_UART #include "board.h" #include @@ -179,82 +178,60 @@ static const struct rt_uart_ops _uart_ops = NULL }; -#define RT_USING_UART0 -#define RT_USING_UART1 -#define RT_USING_UART2 +static int uart_init(struct drv_usart *uart_dev) +{ + struct serial_configure config = RT_SERIAL_CONFIG_DEFAULT; + config.bufsz = RT_SERIAL_RB_BUFSZ; + uart_dev->serial.ops = &_uart_ops; + uart_dev->serial.config = config; + + uart_dev->config.isr_priority = 0xd0; + uart_dev->config.isr_event_mask = (RTOS_UART_ISR_OEIM_MASK | RTOS_UART_ISR_BEIM_MASK | RTOS_UART_ISR_PEIM_MASK | RTOS_UART_ISR_FEIM_MASK | RTOS_UART_ISR_RTIM_MASK | RTOS_UART_ISR_RXIM_MASK); + uart_dev->config.uart_baudrate = 115200; + + rt_hw_serial_register(&uart_dev->serial, uart_dev->name , + RT_DEVICE_FLAG_RDWR | RT_DEVICE_FLAG_INT_RX, + uart_dev); + + return 0; +} #ifdef RT_USING_UART0 - static FPl011 Ft_Uart0; - static struct drv_usart _RtUart0; + static FPl011 Ft_Uart0; +static struct drv_usart drv_uart0; #endif - #ifdef RT_USING_UART1 - static FPl011 Ft_Uart1; - static struct drv_usart _RtUart1; + static FPl011 Ft_Uart1; +static struct drv_usart drv_uart1; #endif - #ifdef RT_USING_UART2 - static FPl011 Ft_Uart2; - static struct drv_usart _RtUart2; + static FPl011 Ft_Uart2; +static struct drv_usart drv_uart2; #endif int rt_hw_uart_init(void) { - struct serial_configure config = RT_SERIAL_CONFIG_DEFAULT; #ifdef RT_USING_UART0 - config.bufsz = RT_SERIAL_RB_BUFSZ; - _RtUart0.serial.ops = &_uart_ops; - _RtUart0.serial.config = config; - - _RtUart0.handle = &Ft_Uart0; - _RtUart0.config.uart_instance = FUART0_ID; - _RtUart0.config.isr_priority = 0xd0; - _RtUart0.config.isr_event_mask = (RTOS_UART_ISR_OEIM_MASK | RTOS_UART_ISR_BEIM_MASK | RTOS_UART_ISR_PEIM_MASK | RTOS_UART_ISR_FEIM_MASK | RTOS_UART_ISR_RTIM_MASK | RTOS_UART_ISR_RXIM_MASK); - _RtUart0.config.uart_baudrate = 115200; - - rt_hw_serial_register(&_RtUart0.serial, "uart0", - RT_DEVICE_FLAG_RDWR | RT_DEVICE_FLAG_INT_RX, - &_RtUart0); + drv_uart0.name = "uart0"; + drv_uart0.handle = &Ft_Uart0; + drv_uart0.config.uart_instance = FUART0_ID; + uart_init(&drv_uart0); #endif - #ifdef RT_USING_UART1 - config.bufsz = RT_SERIAL_RB_BUFSZ; - _RtUart1.serial.ops = &_uart_ops; - _RtUart1.serial.config = config; - _RtUart1.handle = &Ft_Uart1; - - _RtUart1.config.uart_instance = FUART1_ID; - _RtUart1.config.isr_priority = 0xd0; - _RtUart1.config.isr_event_mask = (RTOS_UART_ISR_OEIM_MASK | RTOS_UART_ISR_BEIM_MASK | RTOS_UART_ISR_PEIM_MASK | RTOS_UART_ISR_FEIM_MASK | RTOS_UART_ISR_RTIM_MASK | RTOS_UART_ISR_RXIM_MASK); - _RtUart1.config.uart_baudrate = 115200; - - rt_hw_serial_register(&_RtUart1.serial, "uart1", - RT_DEVICE_FLAG_RDWR | RT_DEVICE_FLAG_INT_RX, - &_RtUart1); + drv_uart1.name = "uart1"; + drv_uart1.handle = &Ft_Uart1; + drv_uart1.config.uart_instance = FUART1_ID; + uart_init(&drv_uart1); #endif - - #ifdef RT_USING_UART2 - config.bufsz = RT_SERIAL_RB_BUFSZ; - _RtUart2.serial.ops = &_uart_ops; - _RtUart2.serial.config = config; - _RtUart2.handle = &Ft_Uart2; - - _RtUart2.config.uart_instance = FUART2_ID; - _RtUart2.config.isr_priority = 0xd0; - _RtUart2.config.isr_event_mask = (RTOS_UART_ISR_OEIM_MASK | RTOS_UART_ISR_BEIM_MASK | RTOS_UART_ISR_PEIM_MASK | RTOS_UART_ISR_FEIM_MASK | RTOS_UART_ISR_RTIM_MASK | RTOS_UART_ISR_RXIM_MASK); - _RtUart2.config.uart_baudrate = 115200; - - rt_hw_serial_register(&_RtUart2.serial, "uart2", - RT_DEVICE_FLAG_RDWR | RT_DEVICE_FLAG_INT_RX, - &_RtUart2); + drv_uart2.name = "uart2"; + drv_uart2.handle = &Ft_Uart2; + drv_uart2.config.uart_instance = FUART2_ID; + uart_init(&drv_uart2); #endif - return 0; } -INIT_BOARD_EXPORT(rt_hw_uart_init); - -#endif +INIT_BOARD_EXPORT(rt_hw_uart_init); \ No newline at end of file diff --git a/bsp/phytium/libraries/drivers/drv_usart.h b/bsp/phytium/libraries/drivers/drv_usart.h index 6ca3433ff8..2e78be8232 100644 --- a/bsp/phytium/libraries/drivers/drv_usart.h +++ b/bsp/phytium/libraries/drivers/drv_usart.h @@ -16,7 +16,6 @@ #include #include "rtdevice.h" -#ifdef BSP_USING_UART #include "fpl011.h" #include "fpl011_hw.h" @@ -35,15 +34,14 @@ typedef struct u32 isr_priority; /* irq Priority */ u32 isr_event_mask; /* followed by RTOS_UART_ISR_XX */ u32 uart_baudrate; -} FtFreertosUartConfig; +} FtRtthreadUartConfig; struct drv_usart { + const char *name; FPl011 *handle; - FtFreertosUartConfig config; + FtRtthreadUartConfig config; struct rt_serial_device serial; }; -#endif // ! - -#endif +#endif // ! \ No newline at end of file diff --git a/bsp/phytium/libraries/drivers/drv_xmac.c b/bsp/phytium/libraries/drivers/drv_xmac.c index d8cf99f9fd..4a86b3c233 100644 --- a/bsp/phytium/libraries/drivers/drv_xmac.c +++ b/bsp/phytium/libraries/drivers/drv_xmac.c @@ -9,6 +9,7 @@ * Date Author Notes * 2022-07-07 liuzhihong first commit * 2023-07-14 liuzhihong support RT-Smart + * 2023-12-01 liuzhihong support initialisation of multiple mac */ #include"rtconfig.h" @@ -23,29 +24,41 @@ #include "ioremap.h" #endif -#ifdef __aarch64__ - #include "faarch64.h" -#else - #include "faarch32.h" -#endif +#include "eth_board.h" #include "drv_xmac.h" #define FXMAC_BD_TO_INDEX(ringptr, bdptr) \ (((uintptr)bdptr - (uintptr)(ringptr)->base_bd_addr) / (ringptr)->separation) -static char *os_drv_xmac0_name = "e0"; - static void FXmacInitOnError(FXmacOs *instance_p); static void FXmacSetupIsr(FXmacOs *instance_p); static FXmacOs fxmac_os_instace[FXMAC_NUM] = { - [FXMAC0_ID] = {.config = (0)}, - [FXMAC1_ID] = {.config = (0)}, - [FXMAC2_ID] = {.config = (0)}, - [FXMAC3_ID] = {.config = (0)}, + [FXMAC0_ID] = + { + .config = (0), + .hwaddr = {0x98, 0x0e, 0x24, 0x00, 0x11, 0x0}, + + }, + [FXMAC1_ID] = + { + .config = (0), + .hwaddr = {0x98, 0x0e, 0x24, 0x00, 0x11, 0x1}, + + }, + [FXMAC2_ID] = + { + .config = (0), + .hwaddr = {0x98, 0x0e, 0x24, 0x00, 0x11, 0x2}, + }, + [FXMAC3_ID] = + { + .config = (0), + .hwaddr = {0x98, 0x0e, 0x24, 0x00, 0x11, 0x3}, + }, }; int isr_calling_flg = 0; @@ -180,21 +193,6 @@ void FXmacProcessSentBds(FXmacOs *instance_p, FXmacBdRing *txring) return; } -void FXmacSendHandler(void *arg) -{ - FXmacOs *instance_p; - FXmacBdRing *txringptr; - u32 regval; - - instance_p = (FXmacOs *)arg; - txringptr = &(FXMAC_GET_TXRING(instance_p->instance)); - regval = FXMAC_READREG32(instance_p->instance.config.base_address, FXMAC_TXSR_OFFSET); - FXMAC_WRITEREG32(instance_p->instance.config.base_address, FXMAC_TXSR_OFFSET, regval); /* 清除中断状态位来停止中断 */ - - /* If Transmit done interrupt is asserted, process completed BD's */ - FXmacProcessSentBds(instance_p, txringptr); -} - FError FXmacSgsend(FXmacOs *instance_p, struct pbuf *p) { struct pbuf *q; @@ -239,7 +237,7 @@ FError FXmacSgsend(FXmacOs *instance_p, struct pbuf *p) /* Send the data from the pbuf to the interface, one pbuf at a time. The size of the data in each pbuf is kept in the ->len variable. */ - tx_payload = (uintptr)p->payload; + tx_payload = (uintptr)q->payload; #ifdef RT_USING_SMART tx_payload += PV_OFFSET; #endif @@ -319,11 +317,11 @@ void SetupRxBds(FXmacOs *instance_p, FXmacBdRing *rxring) if (instance_p->config & FXMAC_OS_CONFIG_JUMBO) { - p = pbuf_alloc(PBUF_RAW, FXMAC_MAX_FRAME_SIZE_JUMBO, PBUF_POOL); + p = pbuf_alloc(PBUF_RAW, FXMAC_MAX_FRAME_SIZE_JUMBO, PBUF_RAM); } else { - p = pbuf_alloc(PBUF_RAW, FXMAC_MAX_FRAME_SIZE, PBUF_POOL); + p = pbuf_alloc(PBUF_RAW, FXMAC_MAX_FRAME_SIZE, PBUF_RAM); } if (!p) @@ -579,11 +577,11 @@ FError FXmacInitDma(FXmacOs *instance_p) { if (instance_p->config & FXMAC_OS_CONFIG_JUMBO) { - p = pbuf_alloc(PBUF_RAW, FXMAC_MAX_FRAME_SIZE_JUMBO, PBUF_POOL); + p = pbuf_alloc(PBUF_RAW, FXMAC_MAX_FRAME_SIZE_JUMBO, PBUF_RAM); } else { - p = pbuf_alloc(PBUF_RAW, FXMAC_MAX_FRAME_SIZE, PBUF_POOL); + p = pbuf_alloc(PBUF_RAW, FXMAC_MAX_FRAME_SIZE, PBUF_RAM); } if (!p) @@ -1053,7 +1051,6 @@ static void FXmacSetupIsr(FXmacOs *instance_p) GetCpuId(&cpu_id); /* Setup callbacks */ - FXmacSetHandler(&instance_p->instance, FXMAC_HANDLER_DMASEND, FXmacSendHandler, instance_p); FXmacSetHandler(&instance_p->instance, FXMAC_HANDLER_DMARECV, FXmacRecvSemaphoreHandler, instance_p); FXmacSetHandler(&instance_p->instance, FXMAC_HANDLER_ERROR, FXmacErrorHandler, instance_p); FXmacSetHandler(&instance_p->instance, FXMAC_HANDLER_LINKCHANGE, FXmacLinkChange, instance_p); @@ -1270,10 +1267,11 @@ static FError FXmacOsOutput(FXmacOs *instance_p, struct pbuf *p) FError FXmacOsTx(FXmacOs *instance_p, void *tx_buf) { - u32 freecnt; FXmacBdRing *txring; FError ret; + u32 n_pbufs; struct pbuf *p; + struct pbuf *q; FASSERT(instance_p != NULL); if (tx_buf == NULL) { @@ -1282,13 +1280,16 @@ FError FXmacOsTx(FXmacOs *instance_p, void *tx_buf) } p = tx_buf; + txring = &(FXMAC_GET_TXRING(instance_p->instance)); + + for (q = p, n_pbufs = 0; q != NULL; q = q->next) + { + n_pbufs++; + } /* check if space is available to send */ - freecnt = IsTxSpaceAvailable(instance_p); - - if (freecnt <= 5) + if (txring->free_cnt < n_pbufs) { - txring = &(FXMAC_GET_TXRING(instance_p->instance)); FXmacProcessSentBds(instance_p, txring); } @@ -1329,6 +1330,7 @@ void FXmacOsStart(FXmacOs *instance_p) FASSERT(instance_p != NULL); /* start mac */ + instance_p->instance.mask &= (~FXMAC_IXR_TXCOMPL_MASK); FXmacStart(&instance_p->instance); } @@ -1453,7 +1455,7 @@ rt_err_t rt_xmac_tx(rt_device_t dev, struct pbuf *p) } - level = rt_hw_interrupt_disable(); + #if RT_LWIP_ETH_PAD_SIZE pbuf_header(p, -RT_LWIP_ETH_PAD_SIZE); /* reclaim the padding word */ #endif @@ -1461,7 +1463,7 @@ rt_err_t rt_xmac_tx(rt_device_t dev, struct pbuf *p) #if RT_LWIP_ETH_PAD_SIZE pbuf_header(p, ETH_PAD_SIZE); /* reclaim the padding word */ #endif - rt_hw_interrupt_enable(level); + if (ret != FT_SUCCESS) { @@ -1554,7 +1556,7 @@ static void ethernet_link_thread(void *Args) -static int rt_hw_xmac_init(FXmacOs *pOsMac, const char *name) +static int rt_hw_xmac_init(FXmacOs *pOsMac, const char *name, const char *link_thread_name) { rt_err_t state = RT_EOK; @@ -1569,25 +1571,20 @@ static int rt_hw_xmac_init(FXmacOs *pOsMac, const char *name) pOsMac->parent.eth_rx = rt_xmac_rx; pOsMac->parent.eth_tx = rt_xmac_tx; - pOsMac->hwaddr[0] = 0x98; - pOsMac->hwaddr[1] = 0x0e; - pOsMac->hwaddr[2] = 0x24; - pOsMac->hwaddr[3] = 0x00; - pOsMac->hwaddr[4] = 0x11; - pOsMac->hwaddr[5] = 0; - /* register eth device */ state = eth_device_init(&(pOsMac->parent), name); + if (RT_EOK != state) { LOG_E("xmac device init faild: %d", state); return -RT_ERROR; } - rt_kprintf("Xmac0 Initiailized!\n"); + rt_kprintf("Xmac %s Initiailized!\n", name); + state = rt_thread_init(&pOsMac->_link_thread, - "e0_link_detect", + link_thread_name, ethernet_link_thread, pOsMac, &pOsMac->_link_thread_stack[0], @@ -1613,10 +1610,10 @@ static int rt_hw_xmac_eth_init(void) FXmacOsControl os_config; FXmacOs *pOsMac; - +#if defined(MAC_NUM0) /* os_config initialize,need to be set manually here */ - os_config.instance_id = 0; - os_config.interface = FXMAC_OS_INTERFACE_SGMII; + os_config.instance_id = MAC_NUM0_CONTROLLER; + os_config.interface = MAC_NUM0_MII_INTERFACE; os_config.autonegotiation = 1; /* 1 is autonegotiation ,0 is manually set */ os_config.phy_speed = FXMAC_PHY_SPEED_1000M; /* FXMAC_PHY_SPEED_XXX */ os_config.phy_duplex = FXMAC_PHY_FULL_DUPLEX; /* FXMAC_PHY_XXX_DUPLEX */ @@ -1628,13 +1625,44 @@ static int rt_hw_xmac_eth_init(void) return -RT_ERROR; } - state = rt_hw_xmac_init(pOsMac, os_drv_xmac0_name); + const char *os_drv_xmac0_name = "e0"; + const char *e0_thread_name = "e0_link_detect"; + + state = rt_hw_xmac_init(pOsMac, os_drv_xmac0_name, e0_thread_name); + extern void set_if(const char *netif_name, const char *ip_addr, const char *gw_addr, const char *nm_addr); + + rt_kprintf("Set netif %s ip addr!\n", os_drv_xmac0_name); + set_if(os_drv_xmac0_name, "192.168.4.10", "192.168.4.1", "255.255.255.0"); if (RT_EOK != state) { goto __exit; } +#endif +#if defined(MAC_NUM1) + os_config.instance_id = MAC_NUM1_CONTROLLER; + os_config.interface = MAC_NUM1_MII_INTERFACE; + os_config.autonegotiation = 1; /* 1 is autonegotiation ,0 is manually set */ + os_config.phy_speed = FXMAC_PHY_SPEED_1000M; /* FXMAC_PHY_SPEED_XXX */ + os_config.phy_duplex = FXMAC_PHY_FULL_DUPLEX; /* FXMAC_PHY_XXX_DUPLEX */ + pOsMac = FXmacOsGetInstancePointer(&os_config); + if (pOsMac == NULL) + { + LOG_E("FXmacOsGetInstancePointer is error\r\n"); + return -RT_ERROR; + } + const char *os_drv_xmac1_name = "e1"; + const char *e1_thread_name = "e1_link_detect"; + + state = rt_hw_xmac_init(pOsMac, os_drv_xmac1_name, e1_thread_name); + rt_kprintf("Set Xmac %s ip addr!\n", os_drv_xmac1_name); + set_if(os_drv_xmac1_name, "192.168.4.11", "192.168.4.1", "255.255.255.0"); + if (RT_EOK != state) + { + goto __exit; + } +#endif __exit: return state; } diff --git a/bsp/phytium/libraries/port/fdriver_port/sdkconfig.h b/bsp/phytium/libraries/port/fdriver_port/sdkconfig.h new file mode 100644 index 0000000000..99d07ead10 --- /dev/null +++ b/bsp/phytium/libraries/port/fdriver_port/sdkconfig.h @@ -0,0 +1,5 @@ +#ifndef SDK_CONFIG_H__ +#define SDK_CONFIG_H__ + +/* CONFIG_FXMAC_PHY_YT is not set */ +#endif \ No newline at end of file diff --git a/bsp/phytium/libraries/port/lwip_port/lwip_port.h b/bsp/phytium/libraries/port/lwip_port/lwip_port.h new file mode 100644 index 0000000000..5300ff923c --- /dev/null +++ b/bsp/phytium/libraries/port/lwip_port/lwip_port.h @@ -0,0 +1,32 @@ +/* + * Copyright : (C) 2023 Phytium Information Technology, Inc. + * All Rights Reserved. + * + * This program is OPEN SOURCE software: you can redistribute it and/or modify it + * under the terms of the Phytium Public License as published by the Phytium Technology Co.,Ltd, + * either version 1.0 of the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful,but WITHOUT ANY WARRANTY; + * without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. + * See the Phytium Public License for more details. + * + * + * FilePath: lwip_port.h + * Created Date: 2023-11-28 17:22:15 + * Last Modified: 2023-12-07 11:18:28 + * Description: This file is for + * + * Modify History: + * Ver Who Date Changes + * ----- ---------- -------- --------------------------------- + * 1.0 liuzhihong 2023/11/28 first release + */ +#ifndef LWIP_PORT_H +#define LWIP_PORT_H + +#include "drv_xmac.h" + +#define LWIP_PORT_INTERFACE_SGMII FXMAC_OS_INTERFACE_SGMII +#define LWIP_PORT_INTERFACE_RGMII FXMAC_OS_INTERFACE_RGMII + +#endif \ No newline at end of file