diff options
| author | Bernard Xiong <[email protected]> | 2019-08-05 08:35:23 +0800 |
|---|---|---|
| committer | GitHub <[email protected]> | 2019-08-05 08:35:23 +0800 |
| commit | 87267b41bca07c9a0d6e87a33b604d23de3acc0d (patch) | |
| tree | 5dfaecf98b8243c1d4898dfb0bc75ec89f94ae5c | |
| parent | 45a317271999e239af29ffe8ef042dc4e341c2d6 (diff) | |
| parent | 08656c30343ba7d56e914ab8ee3db389a50aa244 (diff) | |
Merge pull request #2916 from enkiller/w60x
[bsp][w60x] 更新驱动,添加加解密及配网功能,增强稳定性。
35 files changed, 2596 insertions, 2422 deletions
diff --git a/bsp/w60x/.config b/bsp/w60x/.config index 7bb4607fa5..2f381acee7 100644 --- a/bsp/w60x/.config +++ b/bsp/w60x/.config @@ -131,47 +131,89 @@ CONFIG_RT_USING_SERIAL=y CONFIG_RT_SERIAL_USING_DMA=y CONFIG_RT_SERIAL_RB_BUFSZ=64 # CONFIG_RT_USING_CAN is not set -# CONFIG_RT_USING_HWTIMER is not set +CONFIG_RT_USING_HWTIMER=y # CONFIG_RT_USING_CPUTIME is not set -# CONFIG_RT_USING_I2C is not set +CONFIG_RT_USING_I2C=y +CONFIG_RT_USING_I2C_BITOPS=y CONFIG_RT_USING_PIN=y # CONFIG_RT_USING_ADC is not set -# 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_MTD is not set # CONFIG_RT_USING_PM is not set -# CONFIG_RT_USING_RTC is not set +CONFIG_RT_USING_RTC=y +# CONFIG_RT_USING_ALARM is not set +CONFIG_RT_USING_SOFT_RTC=y +CONFIG_RTC_SYNC_USING_NTP=y +CONFIG_RTC_NTP_FIRST_SYNC_DELAY=30 +CONFIG_RTC_NTP_SYNC_PERIOD=3600 # CONFIG_RT_USING_SDIO is not set -# CONFIG_RT_USING_SPI is not set -# CONFIG_RT_USING_WDT is not set +CONFIG_RT_USING_SPI=y +# CONFIG_RT_USING_QSPI is not set +# 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=y # CONFIG_RT_USING_AUDIO is not set # CONFIG_RT_USING_SENSOR is not set # CONFIG_RT_USING_TOUCH is not set - -# -# Using Hardware Crypto drivers -# -# CONFIG_RT_USING_HWCRYPTO is not set - -# -# Using WiFi -# +CONFIG_RT_USING_HWCRYPTO=y +CONFIG_RT_HWCRYPTO_DEFAULT_NAME="hwcryto" +CONFIG_RT_HWCRYPTO_IV_MAX_SIZE=16 +CONFIG_RT_HWCRYPTO_KEYBIT_MAX_SIZE=256 +# CONFIG_RT_HWCRYPTO_USING_GCM is not set +CONFIG_RT_HWCRYPTO_USING_AES=y +CONFIG_RT_HWCRYPTO_USING_AES_ECB=y +CONFIG_RT_HWCRYPTO_USING_AES_CBC=y +# CONFIG_RT_HWCRYPTO_USING_AES_CFB is not set +# CONFIG_RT_HWCRYPTO_USING_AES_CTR is not set +# CONFIG_RT_HWCRYPTO_USING_AES_OFB is not set +# CONFIG_RT_HWCRYPTO_USING_DES is not set +# CONFIG_RT_HWCRYPTO_USING_3DES is not set +# CONFIG_RT_HWCRYPTO_USING_RC4 is not set +CONFIG_RT_HWCRYPTO_USING_MD5=y +CONFIG_RT_HWCRYPTO_USING_SHA1=y +# CONFIG_RT_HWCRYPTO_USING_SHA2 is not set +CONFIG_RT_HWCRYPTO_USING_RNG=y +CONFIG_RT_HWCRYPTO_USING_CRC=y +CONFIG_RT_HWCRYPTO_USING_CRC_07=y +CONFIG_RT_HWCRYPTO_USING_CRC_8005=y +CONFIG_RT_HWCRYPTO_USING_CRC_1021=y +# CONFIG_RT_HWCRYPTO_USING_CRC_3D65 is not set +CONFIG_RT_HWCRYPTO_USING_CRC_04C11DB7=y +CONFIG_RT_HWCRYPTO_USING_BIGNUM=y +CONFIG_RT_HWCRYPTO_USING_BIGNUM_EXPTMOD=y +CONFIG_RT_HWCRYPTO_USING_BIGNUM_MULMOD=y +# CONFIG_RT_HWCRYPTO_USING_BIGNUM_MUL is not set +# CONFIG_RT_HWCRYPTO_USING_BIGNUM_ADD is not set +# CONFIG_RT_HWCRYPTO_USING_BIGNUM_SUB is not set CONFIG_RT_USING_WIFI=y CONFIG_RT_WLAN_DEVICE_STA_NAME="wlan0" CONFIG_RT_WLAN_DEVICE_AP_NAME="wlan1" -CONFIG_RT_WLAN_DEFAULT_PROT="lwip" -CONFIG_RT_WLAN_SCAN_WAIT_MS=10000 -CONFIG_RT_WLAN_CONNECT_WAIT_MS=10000 CONFIG_RT_WLAN_SSID_MAX_LENGTH=32 CONFIG_RT_WLAN_PASSWORD_MAX_LENGTH=32 +CONFIG_RT_WLAN_DEV_EVENT_NUM=2 +CONFIG_RT_WLAN_MANAGE_ENABLE=y +CONFIG_RT_WLAN_SCAN_WAIT_MS=10000 +CONFIG_RT_WLAN_CONNECT_WAIT_MS=10000 CONFIG_RT_WLAN_SCAN_SORT=y +CONFIG_RT_WLAN_MSH_CMD_ENABLE=y +CONFIG_RT_WLAN_AUTO_CONNECT_ENABLE=y +CONFIG_AUTO_CONNECTION_PERIOD_MS=2000 +CONFIG_RT_WLAN_CFG_ENABLE=y CONFIG_RT_WLAN_CFG_INFO_MAX=3 +CONFIG_RT_WLAN_PROT_ENABLE=y +CONFIG_RT_WLAN_PROT_NAME_LEN=8 +CONFIG_RT_WLAN_PROT_MAX=2 +CONFIG_RT_WLAN_DEFAULT_PROT="lwip" +CONFIG_RT_WLAN_PROT_LWIP_ENABLE=y +CONFIG_RT_WLAN_PROT_LWIP_NAME="lwip" +# CONFIG_RT_WLAN_PROT_LWIP_PBUF_FORCE is not set +CONFIG_RT_WLAN_WORK_THREAD_ENABLE=y CONFIG_RT_WLAN_WORKQUEUE_THREAD_NAME="wlan_job" CONFIG_RT_WLAN_WORKQUEUE_THREAD_SIZE=2048 CONFIG_RT_WLAN_WORKQUEUE_THREAD_PRIO=22 -CONFIG_RT_WLAN_DEV_EVENT_NUM=2 -# CONFIG_RT_WLAN_PROT_LWIP_PBUF_FORCE is not set # CONFIG_RT_WLAN_DEBUG is not set # @@ -276,11 +318,6 @@ CONFIG_RT_LWIP_USING_PING=y # CONFIG_RT_LWIP_DEBUG is not set # -# Modbus master and slave stack -# -# CONFIG_RT_USING_MODBUS is not set - -# # AT commands # # CONFIG_RT_USING_AT is not set @@ -340,6 +377,7 @@ CONFIG_ULOG_BACKEND_USING_CONSOLE=y # CONFIG_PKG_USING_CJSON is not set # CONFIG_PKG_USING_JSMN is not set # CONFIG_PKG_USING_LIBMODBUS is not set +# CONFIG_PKG_USING_FREEMODBUS is not set # CONFIG_PKG_USING_LJSON is not set # CONFIG_PKG_USING_EZXML is not set # CONFIG_PKG_USING_NANOPB is not set @@ -360,7 +398,22 @@ CONFIG_ULOG_BACKEND_USING_CONSOLE=y # CONFIG_PKG_USING_RW007 is not set # CONFIG_PKG_USING_COAP is not set # CONFIG_PKG_USING_NOPOLL is not set -# CONFIG_PKG_USING_NETUTILS is not set +CONFIG_PKG_USING_NETUTILS=y +CONFIG_PKG_NETUTILS_PATH="/packages/iot/netutils" +# CONFIG_PKG_NETUTILS_TFTP is not set +# CONFIG_PKG_NETUTILS_IPERF is not set +# CONFIG_PKG_NETUTILS_NETIO is not set +CONFIG_PKG_NETUTILS_NTP=y +CONFIG_NETUTILS_NTP_TIMEZONE=8 +CONFIG_NETUTILS_NTP_HOSTNAME="cn.ntp.org.cn" +CONFIG_NETUTILS_NTP_HOSTNAME2="ntp.rt-thread.org" +CONFIG_NETUTILS_NTP_HOSTNAME3="edu.ntp.org.cn" +# CONFIG_PKG_NETUTILS_TELNET is not set +# CONFIG_PKG_NETUTILS_TCPDUMP is not set +CONFIG_PKG_USING_NETUTILS_V110=y +# CONFIG_PKG_USING_NETUTILS_V100 is not set +# CONFIG_PKG_USING_NETUTILS_LATEST_VERSION is not set +CONFIG_PKG_NETUTILS_VER="v1.1.0" # CONFIG_PKG_USING_AT_DEVICE is not set # CONFIG_PKG_USING_ATSRV_SOCKET is not set # CONFIG_PKG_USING_WIZNET is not set @@ -379,6 +432,9 @@ CONFIG_ULOG_BACKEND_USING_CONSOLE=y # CONFIG_PKG_USING_LSSDP is not set # CONFIG_PKG_USING_AIRKISS_OPEN is not set # CONFIG_PKG_USING_LIBRWS is not set +# CONFIG_PKG_USING_TCPSERVER is not set +# CONFIG_PKG_USING_PROTOBUF_C is not set +# CONFIG_PKG_USING_ONNX_PARSER is not set # # security packages @@ -400,6 +456,7 @@ CONFIG_ULOG_BACKEND_USING_CONSOLE=y # CONFIG_PKG_USING_OPENMV is not set # CONFIG_PKG_USING_MUPDF is not set # CONFIG_PKG_USING_STEMWIN is not set +# CONFIG_PKG_USING_WAVPLAYER is not set # # tools packages @@ -429,6 +486,7 @@ CONFIG_ULOG_BACKEND_USING_CONSOLE=y # CONFIG_PKG_USING_DFS_YAFFS is not set # CONFIG_PKG_USING_LITTLEFS is not set # CONFIG_PKG_USING_THREAD_POOL is not set +# CONFIG_PKG_USING_ROBOTS is not set # # peripheral libraries and drivers @@ -459,6 +517,7 @@ CONFIG_PKG_WM_LIBRARIES_VER="latest" # CONFIG_PKG_USING_I2C_TOOLS is not set # CONFIG_PKG_USING_NRF24L01 is not set # CONFIG_PKG_USING_TOUCH_DRIVERS is not set +# CONFIG_PKG_USING_LCD_DRIVERS is not set # # miscellaneous packages @@ -486,6 +545,7 @@ CONFIG_PKG_WM_LIBRARIES_VER="latest" # CONFIG_PKG_USING_HELLO is not set # CONFIG_PKG_USING_VI is not set # CONFIG_PKG_USING_NNOM is not set +# CONFIG_PKG_USING_LIBANN is not set # # Env config @@ -500,10 +560,8 @@ CONFIG_BSP_USING_WM_LIBRARIES=y # CONFIG_SOC_W600_A8xx=y # CONFIG_SOC_W601_A8xx is not set - -# -# Hardware Drivers Config -# +CONFIG_W600_EV_BOARD=y +# CONFIG_W60X_CUSTOM_BOARD is not set # # On-chip Peripheral Drivers @@ -511,18 +569,20 @@ CONFIG_SOC_W600_A8xx=y CONFIG_BSP_USING_UART=y CONFIG_BSP_USING_UART0=y # CONFIG_BSP_USING_UART1 is not set -# CONFIG_BSP_USING_UART2 is not set CONFIG_BSP_USING_PIN=y CONFIG_BSP_USING_WIFI=y # CONFIG_BSP_USING_HWTIMER is not set # CONFIG_BSP_USING_PWM is not set # CONFIG_BSP_USING_I2C is not set +# CONFIG_BSP_USING_SOFT_I2C is not set # CONFIG_BSP_USING_SPI is not set # CONFIG_BSP_USING_WDT is not set # CONFIG_BSP_USING_RTC is not set +# CONFIG_BSP_USING_CRYPTO is not set # CONFIG_BSP_USING_STANDBY is not set # -# Offboard Peripheral Drivers +# External Libraries # -# CONFIG_BSP_USING_FLASH is not set +CONFIG_WM_USING_ONESHOT=y +# CONFIG_WM_USING_ONESHOT_DEMO is not set diff --git a/bsp/w60x/README.md b/bsp/w60x/README.md index acbf20cac1..2589a54244 100644 --- a/bsp/w60x/README.md +++ b/bsp/w60x/README.md @@ -13,15 +13,15 @@ W60X 芯片是[联盛德微电子](http://www.winnermicro.com)推出的一款嵌 | UART | 支持 | UART0/UART1/UART2 | | GPIO | 支持 | 自动根据芯片型号选择引脚布局 | | SPI | 支持 | 低速 SPI,支持 SPI BUS,8/32bit 主机模式 | -| SPI Flash | 支持 | 支持 W25QXX、SFUD | | WDT | 支持 | 支持 | -| I2C | 支持 | 硬件 I2C | +| I2C | 支持 | 硬件 I2C 和 软件 I2C | | RTC | 支持 | 支持 ntp 同步、支持 Alarm | | ADC | 支持 | 8 channel ADC 采集 CPU 温度采集(W601 支持) | | PWM | 支持 | 5 channel PWM 输出 | | Timer | 支持 | 5个Timers 独立工作 | -| WiFi | 支持 | 支持 IEEE802.11b/g/n,支持 sta、ap、ap+sta 模式 | -| 低功耗 | 支持 | 支持 WiFi 协议节电,支持 standby 深度节电 | +| Crypto | 支持 | 支持硬件 AES/DES/3DES/RC/SHA1/MD3/CRC 加解密算法| +| WiFi | 支持 | 支持 IEEE802.11b/g/n,支持 sta、ap、ap+sta 模式 | +| 低功耗 | 支持 | 支持 WiFi 协议节电,支持 standby 深度节电 | ## 使用说明 diff --git a/bsp/w60x/drivers/Kconfig b/bsp/w60x/drivers/Kconfig index 047ce06cbf..e38a312b65 100644 --- a/bsp/w60x/drivers/Kconfig +++ b/bsp/w60x/drivers/Kconfig @@ -4,30 +4,43 @@ config BSP_USING_WM_LIBRARIES select PKG_USING_WM_LIBRARIES default y - menu "W60x Device config" choice - prompt "Device type" - default SOC_W600-A8xx + prompt "SOC type" + default SOC_W600_A8xx config SOC_W600_A8xx bool "W600-A8xx" config SOC_W601_A8xx bool "W601-A8xx" endchoice + + choice + prompt "Board type" + if SOC_W600_A8xx + config W600_EV_BOARD + bool "W600_EV BOARD" + endif + if SOC_W601_A8xx + config W601_IOT_BOARD + bool "W601 IoT Board" + endif + config W60X_CUSTOM_BOARD + bool "Custom Board" + endchoice endmenu -menu "Hardware Drivers Config" - menu "On-chip Peripheral Drivers" - menuconfig BSP_USING_UART - bool "Using UART" - select RT_USING_SERIAL - default y +menu "On-chip Peripheral Drivers" + menuconfig BSP_USING_UART + bool "Using UART" + select RT_USING_SERIAL + default y - if BSP_USING_UART - config BSP_USING_UART0 - bool "Enabel UART 0" - default y + if BSP_USING_UART + config BSP_USING_UART0 + bool "Enabel UART 0" + default y + if W600_EV_BOARD || W60X_CUSTOM_BOARD config BSP_USING_UART1 bool "Enabel UART 1" default n @@ -36,14 +49,10 @@ menu "Hardware Drivers Config" config WM_UART1_BAUDRATE int "UART1 baudrate" default 115200 - config WM_UART1_RX_PIN - int "UART1 RX pin number" - default 31 - config WM_UART1_TX_PIN - int "UART1 TX pin number" - default 32 endif + endif + if W601_IOT_BOARD || W60X_CUSTOM_BOARD config BSP_USING_UART2 bool "Enabel UART 2" default n @@ -52,192 +61,208 @@ menu "Hardware Drivers Config" config WM_UART2_BAUDRATE int "UART2 baudrate" default 115200 - config WM_UART2_RX_PIN - int "UART2 RX pin number" - default 13 - config WM_UART2_TX_PIN - int "UART2 TX pin number" - default 14 endif endif - - config BSP_USING_PIN - bool "Using PIN" - select RT_USING_PIN - default y - - config BSP_USING_WIFI - bool "Using WIFI" - select RT_USING_WIFI - select RT_USING_LWIP - default y - - if SOC_W601_A8xx - menuconfig BSP_USING_ADC - bool "Enable ADC" - select RT_USING_ADC - default n - - if BSP_USING_ADC - config USING_CPU_TEMP - bool "Enable CPU Temperature" - config USING_ADC_CH1 - bool "Enable ADC Channel 1" - config USING_ADC_CH2 - bool "Enable ADC Channel 2" - config USING_ADC_CH3 - bool "Enable ADC Channel 3" - config USING_ADC_CH4 - bool "Enable ADC Channel 4" - config USING_ADC_CH5 - bool "Enable ADC Channel 5" - config USING_ADC_CH6 - bool "Enable ADC Channel 6" - config USING_ADC_CH7 - bool "Enable ADC Channel 7" - config USING_ADC_CH8 - bool "Enable ADC Channel 8" - endif endif - menuconfig BSP_USING_HWTIMER - bool "Enable HWTIMER" - select RT_USING_HWTIMER - default n + config BSP_USING_PIN + bool "Using PIN" + select RT_USING_PIN + default y - if BSP_USING_HWTIMER - config USING_HW_TIMER1 - bool "Enable hw timer1" - config USING_HW_TIMER2 - bool "Enable hw timer2" - config USING_HW_TIMER3 - bool "Enable hw timer3" - config USING_HW_TIMER4 - bool "Enable hw timer4" - config USING_HW_TIMER5 - bool "Enable hw timer5" - endif + config BSP_USING_WIFI + bool "Using WIFI" + select RT_USING_WIFI + select RT_USING_LWIP + select PKG_USING_NETUTILS + select PKG_NETUTILS_NTP + select RT_USING_RTC + select RT_USING_SOFT_RTC if !BSP_USING_RTC + default y - menuconfig BSP_USING_PWM - bool "Enable PWM" - select RT_USING_PWM + if SOC_W601_A8xx + menuconfig BSP_USING_ADC + bool "Enable ADC" + select RT_USING_ADC default n - if BSP_USING_PWM - config USING_PWM_CH1 - bool "Enable pwm channel 1" - default n - if USING_PWM_CH1 - config WM_PWM_CH1_PIN - int "wm pwm channel 1 pin number" - default 23 - endif - config USING_PWM_CH2 - bool "Enable pwm channel 2" - default n - if USING_PWM_CH2 - config WM_PWM_CH2_PIN - int "wm pwm channel 2 pin number" - default 22 - endif - config USING_PWM_CH3 - bool "Enable pwm channel 3" - default n - if USING_PWM_CH3 - config WM_PWM_CH3_PIN - int "wm pwm channel 3 pin number" - default 21 - endif - config USING_PWM_CH4 - bool "Enable pwm channel 4" - default n - if USING_PWM_CH4 - config WM_PWM_CH4_PIN - int "wm pwm channel 4 pin number" - default 20 - endif - config USING_PWM_CH5 - bool "Enable pwm channel 5" - default n - if USING_PWM_CH5 - config WM_PWM_CH5_PIN - int "wm pwm channel 5 pin number" - default 19 - endif + if BSP_USING_ADC + config USING_CPU_TEMP + bool "Enable CPU Temperature" + config USING_ADC_CH1 + bool "Enable ADC Channel 1" + config USING_ADC_CH2 + bool "Enable ADC Channel 2" + config USING_ADC_CH3 + bool "Enable ADC Channel 3" + config USING_ADC_CH4 + bool "Enable ADC Channel 4" + config USING_ADC_CH5 + bool "Enable ADC Channel 5" + config USING_ADC_CH6 + bool "Enable ADC Channel 6" + config USING_ADC_CH7 + bool "Enable ADC Channel 7" + config USING_ADC_CH8 + bool "Enable ADC Channel 8" endif + endif - menuconfig BSP_USING_I2C - bool "Enable I2C" - select RT_USING_I2C - default n + menuconfig BSP_USING_HWTIMER + bool "Enable HWTIMER" + select RT_USING_HWTIMER + default n - if BSP_USING_I2C - config WM_HW_I2C_FREQ - int "wm hardware I2C frequency(HZ)" - default 200000 - config WM_I2C_DAT_PIN - int "wm I2C DAT pin number" - default 19 - config WM_I2C_SCL_PIN - int "wm I2C SCL pin number" - default 18 - endif + if BSP_USING_HWTIMER + config USING_HW_TIMER1 + bool "Enable hw timer1" + config USING_HW_TIMER2 + bool "Enable hw timer2" + config USING_HW_TIMER3 + bool "Enable hw timer3" + config USING_HW_TIMER4 + bool "Enable hw timer4" + config USING_HW_TIMER5 + bool "Enable hw timer5" + endif - menuconfig BSP_USING_SPI - bool "Enable SPI" - select RT_USING_SPI + menuconfig BSP_USING_PWM + bool "Enable PWM" + select RT_USING_PWM + default n + + if BSP_USING_PWM + config USING_PWM_CH1 + bool "Enable pwm channel 1" default n - - if BSP_USING_SPI - config WM_SPI_CK_PIN - int "wm SPI CK pin number" - default 21 - config WM_SPI_DO_PIN - int "wm SPI DO pin number" + if USING_PWM_CH1 + config WM_PWM_CH1_PIN + int "wm pwm channel 1 pin number" default 23 - config WM_SPI_DI_PIN - int "wm SPI DI pin number" + endif + config USING_PWM_CH2 + bool "Enable pwm channel 2" + default n + if USING_PWM_CH2 + config WM_PWM_CH2_PIN + int "wm pwm channel 2 pin number" default 22 - endif - - config BSP_USING_WDT - bool "Enable WDT" - select RT_USING_WDT + endif + config USING_PWM_CH3 + bool "Enable pwm channel 3" default n - - menuconfig BSP_USING_RTC - bool "Enable RTC" - select RT_USING_RTC + if USING_PWM_CH3 + config WM_PWM_CH3_PIN + int "wm pwm channel 3 pin number" + default 21 + endif + config USING_PWM_CH4 + bool "Enable pwm channel 4" default n + if USING_PWM_CH4 + config WM_PWM_CH4_PIN + int "wm pwm channel 4 pin number" + default 37 + endif + config USING_PWM_CH5 + bool "Enable pwm channel 5" + default n + if USING_PWM_CH5 + config WM_PWM_CH5_PIN + int "wm pwm channel 5 pin number" + default 19 + endif + endif + + config BSP_USING_I2C + bool "Enable I2C" + select RT_USING_I2C + default n + + if BSP_USING_I2C + config WM_HW_I2C_FREQ + int "wm hardware I2C frequency(HZ)" + default 200000 + endif - if BSP_USING_RTC - config BSP_USING_ALARM - bool "Enable Alarm" - select RT_USING_ALARM + menuconfig BSP_USING_SOFT_I2C + bool "Enable SOFT I2C" + select RT_USING_I2C + select RT_USING_I2C_BITOPS + default n + + if BSP_USING_SOFT_I2C + config BSP_USING_SOFT_I2C1 + bool "Enabel SOFT I2C1" default n + endif + + if BSP_USING_SOFT_I2C + config BSP_USING_SOFT_I2C2 + bool "Enabel SOFT I2C2" + default n endif - config BSP_USING_STANDBY - bool "Enable standby" - default n + menuconfig BSP_USING_SPI + bool "Enable SPI" + select RT_USING_SPI + default n - endmenu + if BSP_USING_SPI + config WM_SPI_BUS_NAME + string "Set SPI BUS name" + default "spi0" + endif - menu "Offboard Peripheral Drivers" - menuconfig BSP_USING_FLASH - bool "Enable Flash" - select RT_USING_SFUD - select BSP_USING_SPI + config BSP_USING_WDT + bool "Enable WDT" + select RT_USING_WDT + default n + + menuconfig BSP_USING_RTC + bool "Enable RTC" + select RT_USING_RTC + default n + + if BSP_USING_RTC + config BSP_USING_ALARM + bool "Enable Alarm" + select RT_USING_ALARM default n + endif - if BSP_USING_FLASH - config SPI_Flash_BUS_NAME - string "SPI BUS Name" - default "spi0" + config BSP_USING_CRYPTO + bool "Enable Hardware Crypto" + select RT_USING_HWCRYPTO + select RT_HWCRYPTO_USING_AES + select RT_HWCRYPTO_USING_AES_ECB + select RT_HWCRYPTO_USING_AES_CBC + select RT_HWCRYPTO_USING_MD5 + select RT_HWCRYPTO_USING_SHA1 + select RT_HWCRYPTO_USING_RNG + select RT_HWCRYPTO_USING_CRC + select RT_HWCRYPTO_USING_CRC_07 + select RT_HWCRYPTO_USING_CRC_8005 + select RT_HWCRYPTO_USING_CRC_1021 + select RT_HWCRYPTO_USING_CRC_04C11DB7 + select RT_HWCRYPTO_USING_BIGNUM + select RT_HWCRYPTO_USING_BIGNUM_EXPTMOD + default n - config SPI_Flash_CS_PIN - int "SPI Flash CS pin number" - default 20 - endif - endmenu + config BSP_USING_STANDBY + bool "Enable standby" + default n +endmenu + +menu "External Libraries" + config WM_USING_ONESHOT + bool "Using winner micro Oneshot" + select RT_USING_WIFI + default y + + if WM_USING_ONESHOT + config WM_USING_ONESHOT_DEMO + bool "Using Oneshot Demo" + default y + endif endmenu diff --git a/bsp/w60x/drivers/SConscript b/bsp/w60x/drivers/SConscript index 133f94d561..ef076132c3 100644 --- a/bsp/w60x/drivers/SConscript +++ b/bsp/w60x/drivers/SConscript @@ -7,6 +7,7 @@ objs = [] src = Split(''' board.c drv_uart.c + drv_flash.c pin_map.c ''') @@ -19,17 +20,11 @@ if GetDepend(['BSP_USING_WIFI']): if GetDepend('BSP_USING_PIN'): src += ['drv_pin.c'] -if GetDepend('BSP_USING_SDIO'): - src += ['drv_sdio.c'] - -if GetDepend('BSP_USING_CAN'): - src += ['drv_can.c'] - if GetDepend('BSP_USING_HWTIMER'): src += ['drv_hw_timer.c'] -if GetDepend('BSP_USING_CPUTIME'): - src += ['drv_cputime.c'] +if GetDepend('BSP_USING_SOFT_I2C'): + src += ['drv_soft_i2c.c'] if GetDepend('BSP_USING_I2C'): src += ['drv_i2c.c'] @@ -37,12 +32,6 @@ if GetDepend('BSP_USING_I2C'): if GetDepend('BSP_USING_SPI'): src += ['drv_spi.c'] -if GetDepend(['BSP_USING_FLASH']): - src += ['drv_spiflash.c'] - -if GetDepend('BSP_USING_LCD'): - src += ['drv_lcd.c'] - if GetDepend('BSP_USING_PWM'): src += ['drv_pwm.c'] @@ -55,6 +44,9 @@ if GetDepend('BSP_USING_WDT'): if GetDepend('BSP_USING_STANDBY'): src += ['drv_standby.c'] +if GetDepend('BSP_USING_CRYPTO'): + src += ['drv_crypto.c'] + CPPPATH = [cwd] group = DefineGroup('Drivers', src, depend = [''], CPPPATH = CPPPATH) diff --git a/bsp/w60x/drivers/board.c b/bsp/w60x/drivers/board.c index eedf113fa2..c104733d5b 100644 --- a/bsp/w60x/drivers/board.c +++ b/bsp/w60x/drivers/board.c @@ -133,6 +133,21 @@ static void _idle_hook_callback(void) #endif } +static void _thread_inited_hook(rt_thread_t thread) +{ + rt_uint32_t stack_size, stk_start; + + stack_size = (rt_uint32_t)thread->stack_size; + stk_start = (rt_uint32_t)thread->stack_addr; + + if ((stk_start + stack_size) >= TASK_STACK_USING_MEM_UPPER_RANGE) + { + rt_kprintf("thread[%s] stack only between 0x%08x and 0x%08x, please use rt_create_thread()!!\n", + thread->name, TASK_STACK_USING_MEM_LOWER_RANGE, TASK_STACK_USING_MEM_UPPER_RANGE); + } + RT_ASSERT((stk_start + stack_size) < TASK_STACK_USING_MEM_UPPER_RANGE); +} + void wm_sys_clk_config(void) { tls_sys_clk sysclk; @@ -188,6 +203,14 @@ void rt_hw_board_init(void) NVIC_SystemLPConfig(NVIC_LP_SLEEPDEEP, ENABLE); rt_thread_idle_sethook(_idle_hook_callback); + rt_thread_inited_sethook(_thread_inited_hook); +} + +#include <wm_watchdog.h> +void rt_hw_cpu_reset(void) +{ + extern void tls_sys_reset(void); + tls_sys_reset(); } #ifdef RT_USING_FINSH diff --git a/bsp/w60x/drivers/board.h b/bsp/w60x/drivers/board.h index 65442c0a3b..d35391ebf8 100644 --- a/bsp/w60x/drivers/board.h +++ b/bsp/w60x/drivers/board.h @@ -22,7 +22,10 @@ extern int __bss_end__; #define HEAP_BEGIN (&__bss_end__) #endif -#define HEAP_END (0x20038000UL) +#define HEAP_END (0x20028000UL) + +#define HARDWARE_VERSION 0x0003U +#include "pin_config.h" void rt_hw_board_init(void); diff --git a/bsp/w60x/drivers/drv_crypto.c b/bsp/w60x/drivers/drv_crypto.c new file mode 100644 index 0000000000..4335e42b50 --- /dev/null +++ b/bsp/w60x/drivers/drv_crypto.c @@ -0,0 +1,738 @@ +/* + * Copyright (c) 2019 Winner Microelectronics Co., Ltd. + * + * SPDX-License-Identifier: Apache-2.0 + * + * Change Logs: + * Date Author Notes + * 2019-05-17 tyx 1st version + */ + +#include <rtthread.h> +#include <rtdevice.h> +#include <stdlib.h> +#include <string.h> +#include "drv_crypto.h" +#include "wm_crypto_hard.h" + +// #define WM_HWCRYPTO_NOT_LOCK +// #define WM_HWCRYPTO_NOT_ALIGN_CHECK + +extern u32 tls_crypto_crc_update_adv(u32 crc_val, CRYPTO_CRC_TYPE type, u8 mode, const unsigned char *in, u32 len); +extern int tls_crypto_des_encrypt_decrypt_adv(unsigned char *key, unsigned char *IV, const unsigned char *in, unsigned char *out, u32 len, CRYPTO_MODE cbc, CRYPTO_WAY dec); +extern int tls_crypto_3des_encrypt_decrypt_adv(unsigned char *key, unsigned char *IV, const unsigned char *in, unsigned char *out, u32 len, CRYPTO_MODE cbc, CRYPTO_WAY dec); +extern int tls_crypto_aes_encrypt_decrypt_adv(unsigned char *key, unsigned char *IV, const unsigned char *in, unsigned char *out, u32 len, CRYPTO_MODE cbc, CRYPTO_WAY dec); +extern int tls_crypto_rc4_adv(unsigned char *key, u32 keylen, const unsigned char *in, unsigned char *out, u32 len); + +struct wm_hwcrypto_device +{ + struct rt_hwcrypto_device dev; + struct rt_mutex mutex; +}; + +struct hash_ctx_des +{ + psDigestContext_t contex; +}; + +static rt_uint32_t _rng_rand(struct hwcrypto_rng *ctx) +{ + rt_uint32_t rand_num; + struct wm_hwcrypto_device *_hwcrypto = (struct wm_hwcrypto_device *)ctx->parent.device; + +#if !defined(WM_HWCRYPTO_NOT_LOCK) + rt_mutex_take(&_hwcrypto->mutex, RT_WAITING_FOREVER); +#endif + tls_crypto_random_init((u32)rt_tick_get(), CRYPTO_RNG_SWITCH_32); + tls_crypto_random_bytes((unsigned char *)&rand_num, sizeof(rand_num)); + tls_crypto_random_stop(); +#if !defined(WM_HWCRYPTO_NOT_LOCK) + rt_mutex_release(&_hwcrypto->mutex); +#endif + + return rand_num; +} + +static rt_uint32_t _crc_update(struct hwcrypto_crc *ctx, const rt_uint8_t *in, rt_size_t length) +{ + rt_uint32_t crc_result; + CRYPTO_CRC_TYPE type; + u8 mode = 0; + struct wm_hwcrypto_device *_hwcrypto = (struct wm_hwcrypto_device *)ctx->parent.device; + unsigned char align_flag = 0; + +#if !defined(WM_HWCRYPTO_NOT_ALIGN_CHECK) + if (((rt_uint32_t)in % 4) != 0) + { + void *temp; + temp = rt_malloc(length); + if (temp) + { + memcpy(temp, in, length); + in = temp; + align_flag = 1; + } + else + { + return 0; + } + } +#endif + + switch (ctx->crc_cfg.poly) + { + case 0x04C11DB7: + type = CRYPTO_CRC_TYPE_32; + break; + case 0x00001021: + type = CRYPTO_CRC_TYPE_16_CCITT; + break; + case 0x00008005: + type = CRYPTO_CRC_TYPE_16_MODBUS; + break; + case 0x00000007: + case 0x00000207: + type = CRYPTO_CRC_TYPE_8; + break; + default: + return 0; + } + + mode |= ctx->crc_cfg.flags & CRC_FLAG_REFOUT ? OUTPUT_REFLECT : 0; + mode |= ctx->crc_cfg.flags & CRC_FLAG_REFIN ? INPUT_REFLECT : 0; + +#if !defined(WM_HWCRYPTO_NOT_LOCK) + rt_mutex_take(&_hwcrypto->mutex, RT_WAITING_FOREVER); +#endif + crc_result = tls_crypto_crc_update_adv(ctx->crc_cfg.last_val, type, mode, in, length); +#if !defined(WM_HWCRYPTO_NOT_LOCK) + rt_mutex_release(&_hwcrypto->mutex); +#endif + +#if !defined(WM_HWCRYPTO_NOT_ALIGN_CHECK) + if (align_flag) + { + rt_free((rt_uint8_t *)in); + } +#endif + + ctx->crc_cfg.last_val = crc_result; + return crc_result ^ 0x00 ^ ctx->crc_cfg.xorout; +} + +static rt_err_t _hash_update(struct hwcrypto_hash *ctx, const rt_uint8_t *in, rt_size_t length) +{ + rt_err_t err = RT_EOK; + struct wm_hwcrypto_device *_hwcrypto = (struct wm_hwcrypto_device *)ctx->parent.device; + unsigned char align_flag = 0; + +#if !defined(WM_HWCRYPTO_NOT_ALIGN_CHECK) + if (((rt_uint32_t)in % 4) != 0) + { + void *temp; + temp = rt_malloc(length); + if (temp) + { + memcpy(temp, in, length); + in = temp; + align_flag = 1; + } + else + { + return -RT_ENOMEM; + } + } +#endif + +#if !defined(WM_HWCRYPTO_NOT_LOCK) + rt_mutex_take(&_hwcrypto->mutex, RT_WAITING_FOREVER); +#endif + switch (ctx->parent.type & HWCRYPTO_MAIN_TYPE_MASK) + { + case HWCRYPTO_TYPE_MD5: + tls_crypto_md5_update(&((struct hash_ctx_des *)(ctx->parent.contex))->contex, in, length); + break; + case HWCRYPTO_TYPE_SHA1: + tls_crypto_sha1_update(&((struct hash_ctx_des *)(ctx->parent.contex))->contex, in, length); + break; + default: + err = -RT_ERROR; + break; + } +#if !defined(WM_HWCRYPTO_NOT_LOCK) + rt_mutex_release(&_hwcrypto->mutex); +#endif + +#if !defined(WM_HWCRYPTO_NOT_ALIGN_CHECK) + if (align_flag) + { + rt_free((rt_uint8_t *)in); + } +#endif + + return err; +} + +static rt_err_t _hash_finish(struct hwcrypto_hash *ctx, rt_uint8_t *out, rt_size_t length) +{ + rt_err_t err = RT_EOK; + struct wm_hwcrypto_device *_hwcrypto = (struct wm_hwcrypto_device *)ctx->parent.device; + +#if !defined(WM_HWCRYPTO_NOT_LOCK) + rt_mutex_take(&_hwcrypto->mutex, RT_WAITING_FOREVER); +#endif + switch (ctx->parent.type & HWCRYPTO_MAIN_TYPE_MASK) + { + case HWCRYPTO_TYPE_MD5: + tls_crypto_md5_final(&((struct hash_ctx_des *)(ctx->parent.contex))->contex, out); + break; + case HWCRYPTO_TYPE_SHA1: + tls_crypto_sha1_final(&((struct hash_ctx_des *)(ctx->parent.contex))->contex, out); + break; + default: + err = -RT_ERROR; + break; + } +#if !defined(WM_HWCRYPTO_NOT_LOCK) + rt_mutex_release(&_hwcrypto->mutex); +#endif + + return err; +} + +static rt_err_t _des_crypt(struct hwcrypto_symmetric *symmetric_ctx, struct hwcrypto_symmetric_info *symmetric_info) +{ + CRYPTO_WAY mode; + CRYPTO_MODE cbc; + struct wm_hwcrypto_device *_hwcrypto = (struct wm_hwcrypto_device *)symmetric_ctx->parent.device; + unsigned char *in, *out, align_flag = 0; + + if ((symmetric_ctx->key_bitlen >> 3) != 8 + || (symmetric_info->length % 8) != 0) + { + return -RT_EINVAL; + } + + in = (unsigned char *)symmetric_info->in; + out = (unsigned char *)symmetric_info->out; + +#if !defined(WM_HWCRYPTO_NOT_ALIGN_CHECK) + if (((rt_uint32_t)in % 4) != 0 || ((rt_uint32_t)out % 4) != 0) + { + in = rt_malloc(symmetric_info->length); + if (in) + { + memcpy(in, symmetric_info->in, symmetric_info->length); + out = in; + align_flag = 1; + } + else + { + return -RT_ENOMEM; + } + } +#endif + + mode = symmetric_info->mode == HWCRYPTO_MODE_ENCRYPT ? CRYPTO_WAY_ENCRYPT : CRYPTO_WAY_DECRYPT; + + switch (symmetric_ctx->parent.type & (HWCRYPTO_MAIN_TYPE_MASK | HWCRYPTO_SUB_TYPE_MASK)) + { + case HWCRYPTO_TYPE_DES_ECB: + cbc = CRYPTO_MODE_ECB; + break; + case HWCRYPTO_TYPE_DES_CBC: + cbc = CRYPTO_MODE_CBC; + break; + default : + return -RT_ERROR; + } + +#if !defined(WM_HWCRYPTO_NOT_LOCK) + rt_mutex_take(&_hwcrypto->mutex, RT_WAITING_FOREVER); +#endif + tls_crypto_des_encrypt_decrypt_adv(symmetric_ctx->key, symmetric_ctx->iv, + symmetric_info->in, symmetric_info->out, + symmetric_info->length, cbc, mode); +#if !defined(WM_HWCRYPTO_NOT_LOCK) + rt_mutex_release(&_hwcrypto->mutex); +#endif + +#if !defined(WM_HWCRYPTO_NOT_ALIGN_CHECK) + if (align_flag) + { + memcpy(symmetric_info->out, out, symmetric_info->length); + rt_free(in); + } +#endif + + return RT_EOK; +} + +static rt_err_t _des3_crypt(struct hwcrypto_symmetric *symmetric_ctx, struct hwcrypto_symmetric_info *symmetric_info) +{ + CRYPTO_WAY mode; + CRYPTO_MODE cbc; + struct wm_hwcrypto_device *_hwcrypto = (struct wm_hwcrypto_device *)symmetric_ctx->parent.device; + unsigned char *in, *out, align_flag = 0; + + if ((symmetric_ctx->key_bitlen >> 3) != 24 + || (symmetric_info->length % 8) != 0) + { + return -RT_EINVAL; + } + + in = (unsigned char *)symmetric_info->in; + out = (unsigned char *)symmetric_info->out; + +#if !defined(WM_HWCRYPTO_NOT_ALIGN_CHECK) + if (((rt_uint32_t)in % 4) != 0 || ((rt_uint32_t)out % 4) != 0) + { + in = rt_malloc(symmetric_info->length); + if (in) + { + memcpy(in, symmetric_info->in, symmetric_info->length); + out = in; + align_flag = 1; + } + else + { + return -RT_ENOMEM; + } + } +#endif + + mode = symmetric_info->mode == HWCRYPTO_MODE_ENCRYPT ? CRYPTO_WAY_ENCRYPT : CRYPTO_WAY_DECRYPT; + + switch (symmetric_ctx->parent.type & (HWCRYPTO_MAIN_TYPE_MASK | HWCRYPTO_SUB_TYPE_MASK)) + { + case HWCRYPTO_TYPE_3DES_ECB: + cbc = CRYPTO_MODE_ECB; + break; + case HWCRYPTO_TYPE_3DES_CBC: + cbc = CRYPTO_MODE_CBC; + break; + default : + return -RT_ERROR; + } + +#if !defined(WM_HWCRYPTO_NOT_LOCK) + rt_mutex_take(&_hwcrypto->mutex, RT_WAITING_FOREVER); +#endif + tls_crypto_3des_encrypt_decrypt_adv(symmetric_ctx->key, symmetric_ctx->iv, + symmetric_info->in, symmetric_info->out, + symmetric_info->length, cbc, mode); +#if !defined(WM_HWCRYPTO_NOT_LOCK) + rt_mutex_release(&_hwcrypto->mutex); +#endif + +#if !defined(WM_HWCRYPTO_NOT_ALIGN_CHECK) + if (align_flag) + { + memcpy(symmetric_info->out, out, symmetric_info->length); + rt_free(in); + } +#endif + + return RT_EOK; +} + +static rt_err_t _rc4_crypt(struct hwcrypto_symmetric *symmetric_ctx, struct hwcrypto_symmetric_info *symmetric_info) +{ + struct wm_hwcrypto_device *_hwcrypto = (struct wm_hwcrypto_device *)symmetric_ctx->parent.device; + unsigned char *in, *out, align_flag = 0; + + if ((symmetric_ctx->key_bitlen >> 3) != 16) + { + return -RT_EINVAL; + } + + in = (unsigned char *)symmetric_info->in; + out = (unsigned char *)symmetric_info->out; + +#if !defined(WM_HWCRYPTO_NOT_ALIGN_CHECK) + if (((rt_uint32_t)in % 4) != 0 || ((rt_uint32_t)out % 4) != 0) + { + in = rt_malloc(symmetric_info->length); + if (in) + { + memcpy(in, symmetric_info->in, symmetric_info->length); + out = in; + align_flag = 1; + } + else + { + return -RT_ENOMEM; + } + } +#endif + +#if !defined(WM_HWCRYPTO_NOT_LOCK) + rt_mutex_take(&_hwcrypto->mutex, RT_WAITING_FOREVER); +#endif + tls_crypto_rc4_adv(symmetric_ctx->key, symmetric_ctx->key_bitlen >> 3, + (unsigned char *)symmetric_info->in, + symmetric_info->out, + symmetric_info->length); +#if !defined(WM_HWCRYPTO_NOT_LOCK) + rt_mutex_release(&_hwcrypto->mutex); +#endif + +#if !defined(WM_HWCRYPTO_NOT_ALIGN_CHECK) + if (align_flag) + { + memcpy(symmetric_info->out, out, symmetric_info->length); + rt_free(in); + } +#endif + + return RT_EOK; +} + +static rt_err_t _aes_crypt(struct hwcrypto_symmetric *symmetric_ctx, struct hwcrypto_symmetric_info *symmetric_info) +{ + CRYPTO_WAY mode; + CRYPTO_MODE cbc; + struct wm_hwcrypto_device *_hwcrypto = (struct wm_hwcrypto_device *)symmetric_ctx->parent.device; + unsigned char *in, *out, align_flag = 0; + + if ((symmetric_ctx->key_bitlen >> 3) != 16 + || (symmetric_info->length % 16) != 0) + { + return -RT_EINVAL; + } + + in = (unsigned char *)symmetric_info->in; + out = (unsigned char *)symmetric_info->out; + +#if !defined(WM_HWCRYPTO_NOT_ALIGN_CHECK) + if (((rt_uint32_t)in % 4) != 0 || ((rt_uint32_t)out % 4) != 0) + { + in = rt_malloc(symmetric_info->length); + if (in) + { + memcpy(in, symmetric_info->in, symmetric_info->length); + out = in; + align_flag = 1; + } + else + { + return -RT_ENOMEM; + } + } +#endif + + mode = symmetric_info->mode == HWCRYPTO_MODE_ENCRYPT ? CRYPTO_WAY_ENCRYPT : CRYPTO_WAY_DECRYPT; + + switch (symmetric_ctx->parent.type & (HWCRYPTO_MAIN_TYPE_MASK | HWCRYPTO_SUB_TYPE_MASK)) + { + case HWCRYPTO_TYPE_AES_ECB: + cbc = CRYPTO_MODE_ECB; + break; + case HWCRYPTO_TYPE_AES_CBC: + cbc = CRYPTO_MODE_CBC; + break; + case HWCRYPTO_TYPE_AES_CTR: + cbc = CRYPTO_MODE_CTR; + break; + default : + return -RT_ERROR; + } + +#if !defined(WM_HWCRYPTO_NOT_LOCK) + rt_mutex_take(&_hwcrypto->mutex, RT_WAITING_FOREVER); +#endif + tls_crypto_aes_encrypt_decrypt_adv(symmetric_ctx->key, symmetric_ctx->iv, + in, out, symmetric_info->length, cbc, mode); +#if !defined(WM_HWCRYPTO_NOT_LOCK) + rt_mutex_release(&_hwcrypto->mutex); +#endif + +#if !defined(WM_HWCRYPTO_NOT_ALIGN_CHECK) + if (align_flag) + { + memcpy(symmetric_info->out, out, symmetric_info->length); + rt_free(in); + } +#endif + + return RT_EOK; +} + +/**< a = b ^ c (mod d) */ +static rt_err_t _bignum_exptmod(struct hwcrypto_bignum *bignum_ctx, + struct hw_bignum_mpi *x, + const struct hw_bignum_mpi *a, + const struct hw_bignum_mpi *b, + const struct hw_bignum_mpi *c) +{ + pstm_int pa, pb, pm, pres; + u32 * buff_a = NULL; + u32 * buff_b = NULL; + u32 * buff_m = NULL; + int err = -1; + void *buff; + int buff_len; + + pstm_init(NULL, &pres); + + buff_a = tls_mem_alloc(a->total); + if(buff_a == NULL) + goto out; + buff_b = tls_mem_alloc(b->total); + if(buff_b == NULL) + goto out; + buff_m = tls_mem_alloc(c->total); + if(buff_m == NULL) + goto out; + + memset(buff_a, 0, a->total); + memset(buff_b, 0, b->total); + memset(buff_m, 0, c->total); + + memcpy(buff_a, a->p, a->total); + memcpy(buff_b, b->p, b->total); + memcpy(buff_m, c->p, c->total); + + pstm_reverse((unsigned char *)buff_a, a->total); + pstm_reverse((unsigned char *)buff_b, b->total); + pstm_reverse((unsigned char *)buff_m, c->total); + +// *((volatile unsigned int *)0x40000710) = *((volatile unsigned int *)0x40000710) | (0x1 << 28); + + if ((err = pstm_init_for_read_unsigned_bin(NULL, &pa, a->total)) != PS_SUCCESS){ + goto out; + } + if ((err = pstm_read_unsigned_bin(&pa, (unsigned char *)buff_a, a->total)) != PS_SUCCESS) { + goto out; + } + if ((err = pstm_init_for_read_unsigned_bin(NULL, &pb, b->total)) != PS_SUCCESS){ + goto out; + } + if ((err = pstm_read_unsigned_bin(&pb, (unsigned char *)buff_b, b->total)) != PS_SUCCESS) { + goto out; + } + if ((err = pstm_init_for_read_unsigned_bin(NULL, &pm, c->total)) != PS_SUCCESS){ + goto out; + } + if ((err = pstm_read_unsigned_bin(&pm, (unsigned char *)buff_m, c->total)) != PS_SUCCESS) { + goto out; + } + + tls_crypto_exptmod(&pa, &pb, &pm, &pres); + buff_len = pstm_unsigned_bin_size(&pres); + buff = rt_malloc(buff_len); + pstm_to_unsigned_bin_nr(NULL, &pres, buff); + x->sign = pres.sign; + x->p = buff; + x->total = buff_len; + +out: + if(buff_a) + tls_mem_free(buff_a); + if(buff_b) + tls_mem_free(buff_b); + if(buff_m) + tls_mem_free(buff_m); + + pstm_clear(&pa); + pstm_clear(&pb); + pstm_clear(&pm); + pstm_clear(&pres); + + if (a->sign < 0) + { + rt_kprintf("a->sign < 0\n"); + } + + return err == PS_SUCCESS ? RT_EOK : -RT_ERROR; +} + +static const struct hwcrypto_symmetric_ops aes_ops = +{ + .crypt = _aes_crypt, +}; + +static const struct hwcrypto_symmetric_ops rc4_ops = +{ + .crypt = _rc4_crypt, +}; + +static const struct hwcrypto_symmetric_ops des_ops = +{ + .crypt = _des_crypt, +}; + +static const struct hwcrypto_symmetric_ops des3_ops = +{ + .crypt = _des3_crypt, +}; + +static const struct hwcrypto_hash_ops hash_ops = +{ + .update = _hash_update, + .finish = _hash_finish, +}; + +static const struct hwcrypto_rng_ops rng_ops = +{ + .update = _rng_rand, +}; + +static const struct hwcrypto_crc_ops crc_ops = +{ + .update = _crc_update, +}; + +static const struct hwcrypto_bignum_ops bignum_ops = +{ + .add = RT_NULL, + .sub = RT_NULL, + .mul = RT_NULL, + .mulmod = RT_NULL, + .exptmod = _bignum_exptmod, +}; + +static rt_err_t _crypto_create(struct rt_hwcrypto_ctx *ctx) +{ + rt_err_t res = RT_EOK; + void *contex; + + switch (ctx->type & HWCRYPTO_MAIN_TYPE_MASK) + { + case HWCRYPTO_TYPE_AES : + ctx->contex = RT_NULL; + ((struct hwcrypto_symmetric *)ctx)->ops = &aes_ops; + break; + case HWCRYPTO_TYPE_RC4 : + ctx->contex = RT_NULL; + ((struct hwcrypto_symmetric *)ctx)->ops = &rc4_ops; + break; + case HWCRYPTO_TYPE_MD5: + case HWCRYPTO_TYPE_SHA1: + contex = rt_malloc(sizeof(struct hash_ctx_des)); + if (contex == RT_NULL) + { + return -RT_ENOMEM; + } + memset(contex, 0, sizeof(struct hash_ctx_des)); + ctx->contex = contex; + ((struct hwcrypto_hash *)ctx)->ops = &hash_ops; + if ((ctx->type & HWCRYPTO_MAIN_TYPE_MASK) == HWCRYPTO_TYPE_MD5) + { + tls_crypto_md5_init(&((struct hash_ctx_des *)contex)->contex); + } + else + { + tls_crypto_sha1_init(&((struct hash_ctx_des *)contex)->contex); + } + break; + case HWCRYPTO_TYPE_DES: + ctx->contex = RT_NULL; + ((struct hwcrypto_symmetric *)ctx)->ops = &des_ops; + break; + case HWCRYPTO_TYPE_3DES: + ctx->contex = RT_NULL; + ((struct hwcrypto_symmetric *)ctx)->ops = &des3_ops; + break; + case HWCRYPTO_TYPE_RNG: + ctx->contex = RT_NULL; + ((struct hwcrypto_rng *)ctx)->ops = &rng_ops; + ctx->contex = RT_NULL; + break; + case HWCRYPTO_TYPE_CRC: + ctx->contex = RT_NULL; + ((struct hwcrypto_crc *)ctx)->ops = &crc_ops; + break; + case HWCRYPTO_TYPE_BIGNUM: + ((struct hwcrypto_bignum *)ctx)->ops = &bignum_ops; + break; + default: + res = -RT_ERROR; + break; + } + + return res; +} + +static void _crypto_destroy(struct rt_hwcrypto_ctx *ctx) +{ + rt_free(ctx->contex); +} + +static rt_err_t _crypto_clone(struct rt_hwcrypto_ctx *des, const struct rt_hwcrypto_ctx *src) +{ + rt_err_t res = RT_EOK; + + switch (src->type & HWCRYPTO_MAIN_TYPE_MASK) + { + case HWCRYPTO_TYPE_AES: + case HWCRYPTO_TYPE_RC4: + case HWCRYPTO_TYPE_RNG: + case HWCRYPTO_TYPE_CRC: + case HWCRYPTO_TYPE_BIGNUM: + break; + case HWCRYPTO_TYPE_MD5: + case HWCRYPTO_TYPE_SHA1: + if (des->contex && src->contex) + { + rt_memcpy(des->contex, src->contex, sizeof(struct hash_ctx_des)); + } + break; + default: + res = -RT_ERROR; + break; + } + + return res; +} + +static void _crypto_reset(struct rt_hwcrypto_ctx *ctx) +{ + switch (ctx->type & HWCRYPTO_MAIN_TYPE_MASK) + { + case HWCRYPTO_TYPE_AES: + case HWCRYPTO_TYPE_RC4: + case HWCRYPTO_TYPE_RNG: + case HWCRYPTO_TYPE_CRC: + break; + case HWCRYPTO_TYPE_MD5: + tls_crypto_md5_init(&((struct hash_ctx_des *)(ctx->contex))->contex); + break; + case HWCRYPTO_TYPE_SHA1: + tls_crypto_sha1_init(&((struct hash_ctx_des *)(ctx->contex))->contex); + break; + default: + break; + } +} + +static const struct rt_hwcrypto_ops _ops = +{ + .create = _crypto_create, + .destroy = _crypto_destroy, + .copy = _crypto_clone, + .reset = _crypto_reset, +}; + +extern u8 *wpa_supplicant_get_mac(void); + +int wm_hw_crypto_device_init(void) +{ + static struct wm_hwcrypto_device _crypto_dev; + + _crypto_dev.dev.ops = &_ops; + _crypto_dev.dev.id = 0; + rt_memcpy(&_crypto_dev.dev.id, wpa_supplicant_get_mac(), + sizeof(_crypto_dev.dev.id) > 6 ? + 6 : sizeof(_crypto_dev.dev.id)); + _crypto_dev.dev.user_data = &_crypto_dev; + + if (rt_hwcrypto_register(&_crypto_dev.dev, + RT_HWCRYPTO_DEFAULT_NAME) != RT_EOK) + { + return -1; + } + rt_mutex_init(&_crypto_dev.mutex, RT_HWCRYPTO_DEFAULT_NAME, RT_IPC_FLAG_FIFO); + return 0; +} +INIT_DEVICE_EXPORT(wm_hw_crypto_device_init); diff --git a/bsp/w60x/drivers/drv_spiflash.h b/bsp/w60x/drivers/drv_crypto.h index 602635fa96..1fc5331284 100644 --- a/bsp/w60x/drivers/drv_spiflash.h +++ b/bsp/w60x/drivers/drv_crypto.h @@ -5,12 +5,12 @@ * * Change Logs: * Date Author Notes - * 2018-11-12 fanwenl 1st version + * 2019-05-17 tyx 1st version */ -#ifndef __DRV_SPI_FLASH_H_ -#define __DRV_SPI_FLASH_H_ +#ifndef __DRV_CRYPTO_H__ +#define __DRV_CRYPTO_H__ -int wm_nor_flash_init(void); +int wm_hw_crypto_device_init(void); -#endif /* __DRV_SPI_FLASH_H_ */
\ No newline at end of file +#endif /* __DRV_CRYPTO_H__ */ diff --git a/bsp/w60x/drivers/drv_flash.c b/bsp/w60x/drivers/drv_flash.c new file mode 100644 index 0000000000..9ed0cba027 --- /dev/null +++ b/bsp/w60x/drivers/drv_flash.c @@ -0,0 +1,158 @@ +/* + * Copyright (c) 2019 Winner Microelectronics Co., Ltd. + * + * SPDX-License-Identifier: Apache-2.0 + * + * Change Logs: + * Date Author Notes + * 2019-04-04 tyx 1st version + */ +#include <rtthread.h> +#include <rtdevice.h> +#include "wm_flash_map.h" +#include "wm_internal_flash.h" +#include "drv_flash.h" + +#define FLASH_SECTOR (4096) + +#ifdef RT_USING_SPI +static void *_spi0; +#endif + +extern unsigned int flashtotalsize; + +rt_uint32_t wm_flash_total(void) +{ + rt_uint32_t total = 0x100000; + + if (flashtotalsize == 0x200000) + { + total = 0x200000; + } + + return total; +} + +rt_uint32_t wm_flash_addr(void) +{ + return FLASH_BASE_ADDR; +} + +rt_uint32_t wm_flash_blksize(void) +{ + return FLASH_SECTOR; +} + +int wm_flash_read(long offset, void *data, int size) +{ + offset += FLASH_BASE_ADDR; +#ifdef RT_USING_SPI + if (_spi0) + { + rt_spi_take_bus(_spi0); + } +#endif + if (tls_fls_read(offset, data, size) != TLS_FLS_STATUS_OK) + { + size = -1; + } +#ifdef RT_USING_SPI + if (_spi0) + { + rt_spi_release_bus(_spi0); + } +#endif + + return size; +} + +int wm_flash_write(long offset, void *data, int size) +{ + offset += FLASH_BASE_ADDR; +#ifdef RT_USING_SPI + if (_spi0) + { + rt_spi_take_bus(_spi0); + } +#endif + if (tls_fls_write(offset, data, size) != TLS_FLS_STATUS_OK) + { + size = -1; + } +#ifdef RT_USING_SPI + if (_spi0) + { + rt_spi_release_bus(_spi0); + } +#endif + + return size; +} + +int wm_flash_erase(long offset, int size) +{ + int count, sector; + + offset += FLASH_BASE_ADDR; + count = size / FLASH_SECTOR; + sector = offset / FLASH_SECTOR; +#ifdef RT_USING_SPI + if (_spi0) + { + rt_spi_take_bus(_spi0); + } +#endif + while (count) + { + if (tls_fls_erase(sector) != TLS_FLS_STATUS_OK) + { + size = -1; + break; + } + count--; + sector++; + } +#ifdef RT_USING_SPI + if (_spi0) + { + rt_spi_release_bus(_spi0); + } +#endif + + return size; +} + +int wm_flash_init(void) +{ +#ifdef RT_USING_SPI + rt_err_t ret; + + if (_spi0 != RT_NULL) + { + return 0; + } + + _spi0 = (struct rt_spi_device *)rt_malloc(sizeof(struct rt_spi_device)); + RT_ASSERT(_spi0 != RT_NULL); + +#ifdef WM_SPI_BUS_NAME + ret = rt_spi_bus_attach_device(_spi0, "flash", WM_SPI_BUS_NAME, RT_NULL); +#else + ret = rt_spi_bus_attach_device(_spi0, "flash", "spi0", RT_NULL); +#endif + if (ret != RT_EOK) + { + rt_free(_spi0); + _spi0 = RT_NULL; + } + + if (_spi0) + { + ((struct rt_spi_device *)_spi0)->config.mode = RT_SPI_MODE_0; + ((struct rt_spi_device *)_spi0)->config.data_width = 8; + ((struct rt_spi_device *)_spi0)->config.max_hz = 20 * 1000 * 1000; + } +#endif + + return 0; +} diff --git a/bsp/w60x/drivers/drv_flash.h b/bsp/w60x/drivers/drv_flash.h new file mode 100644 index 0000000000..94ee26f53b --- /dev/null +++ b/bsp/w60x/drivers/drv_flash.h @@ -0,0 +1,24 @@ +/* + * Copyright (c) 2019 Winner Microelectronics Co., Ltd. + * + * SPDX-License-Identifier: Apache-2.0 + * + * Change Logs: + * Date Author Notes + * 2019-04-04 tyx 1st version + */ + +#ifndef __DRV_FLASH_H__ +#define __DRV_FLASH_H__ + +#include <rtthread.h> + +int wm_flash_read(long offset, void *data, int size); +int wm_flash_write(long offset, void *data, int size); +int wm_flash_erase(long offset, int size); +int wm_flash_init(void); +rt_uint32_t wm_flash_total(void); +rt_uint32_t wm_flash_addr(void); +rt_uint32_t wm_flash_blksize(void); + +#endif diff --git a/bsp/w60x/drivers/drv_hw_timer.c b/bsp/w60x/drivers/drv_hw_timer.c index 30ed4c04c4..d52c9c09a6 100644 --- a/bsp/w60x/drivers/drv_hw_timer.c +++ b/bsp/w60x/drivers/drv_hw_timer.c @@ -63,6 +63,11 @@ static void wm_timer_stop(rt_hwtimer_t *timer) tls_timer_stop(wm_timer->id); } +static rt_uint32_t wm_timer_get(rt_hwtimer_t *timer) +{ + return 0; +} + static rt_err_t wm_timer_ctrl(rt_hwtimer_t *timer, rt_uint32_t cmd, void *arg) { /* The frequency value is an immutable value. */ @@ -93,7 +98,7 @@ static const struct rt_hwtimer_ops _ops = wm_timer_init, wm_timer_start, wm_timer_stop, - RT_NULL, + wm_timer_get, wm_timer_ctrl, }; diff --git a/bsp/w60x/drivers/drv_i2c.c b/bsp/w60x/drivers/drv_i2c.c index 688f23394d..29632bc815 100644 --- a/bsp/w60x/drivers/drv_i2c.c +++ b/bsp/w60x/drivers/drv_i2c.c @@ -10,6 +10,7 @@ #include <rtdevice.h> #include <rtthread.h> +#include "board.h" #include "wm_i2c.h" #include "wm_io.h" #include "wm_gpio_afsel.h" @@ -167,7 +168,11 @@ int wm_hw_i2c_init(void) tls_i2c_init(WM_HW_I2C_FREQ); wm_i2c.parent.ops = &wm_i2c_ops; +#ifdef WM_I2C_BUS_NAME + rt_i2c_bus_device_register(&wm_i2c.parent, WM_I2C_BUS_NAME); +#else rt_i2c_bus_device_register(&wm_i2c.parent, "i2c"); +#endif return 0; } diff --git a/bsp/w60x/drivers/drv_rtc.c b/bsp/w60x/drivers/drv_rtc.c index 7affae875c..fbf6060691 100644 --- a/bsp/w60x/drivers/drv_rtc.c +++ b/bsp/w60x/drivers/drv_rtc.c @@ -20,6 +20,10 @@ #ifdef BSP_USING_RTC +#if defined(RT_USING_SOFT_RTC) +#error "Please CANCEL the RT_USING_SOFT_RTC option. Make sure there is only one RTC device on the system." +#endif + static struct rt_rtc_device rtc_device; static time_t wm_get_timestamp(void) diff --git a/bsp/w60x/drivers/drv_soft_i2c.c b/bsp/w60x/drivers/drv_soft_i2c.c new file mode 100644 index 0000000000..a9365eaf07 --- /dev/null +++ b/bsp/w60x/drivers/drv_soft_i2c.c @@ -0,0 +1,243 @@ +/* + * Copyright (c) 2006-2019, RT-Thread Development Team + * + * SPDX-License-Identifier: Apache-2.0 + * + * Change Logs: + * Date Author Notes + * 2019-03-22 balanceTWK first version + */ + +#include <board.h> +#include "drv_soft_i2c.h" + +#include "wm_regs.h" +#include "wm_gpio.h" +#include "pin_map.h" + +#define DBG_SECTION_NAME "soft_i2c" +#define DBG_COLOR +#define DBG_LEVEL DBG_LOG +#include <rtdbg.h> + +#ifdef BSP_USING_SOFT_I2C + +#if !defined(BSP_USING_SOFT_I2C1) && !defined(BSP_USING_SOFT_I2C2) && !defined(BSP_USING_SOFT_I2C3) +#error "Please define at least one BSP_USING_SOFT_I2Cx" +#endif + +static const struct w60x_soft_i2c_config soft_i2c_config[] = +{ +#ifdef BSP_USING_SOFT_I2C1 + I2C1_BUS_CONFIG, +#endif +#ifdef BSP_USING_SOFT_I2C2 + I2C2_BUS_CONFIG, +#endif +#ifdef BSP_USING_SOFT_I2C3 + I2C3_BUS_CONFIG, +#endif +}; + +static struct w60x_i2c i2c_obj[sizeof(soft_i2c_config) / sizeof(soft_i2c_config[0])]; + +/** + * This function initializes the i2c pin. + * + * @param w60x i2c dirver class. + */ +static void w60x_i2c_gpio_init(struct w60x_i2c *i2c) +{ + struct w60x_soft_i2c_config* cfg = (struct w60x_soft_i2c_config*)i2c->ops.data; + rt_int16_t scl,sda; + + scl = wm_get_pin(cfg->scl); + sda = wm_get_pin(cfg->sda); + + tls_gpio_cfg((enum tls_io_name)scl, WM_GPIO_DIR_OUTPUT, WM_GPIO_ATTR_PULLHIGH); + tls_gpio_cfg((enum tls_io_name)sda, WM_GPIO_DIR_OUTPUT, WM_GPIO_ATTR_PULLHIGH); + + tls_gpio_write((enum tls_io_name)scl, 1); + tls_gpio_write((enum tls_io_name)sda, 1); +} + +/** + * This function sets the sda pin. + * + * @param w60x config class. + * @param The sda pin state. + */ +static void w60x_set_sda(void *data, rt_int32_t state) +{ + struct w60x_soft_i2c_config* cfg = (struct w60x_soft_i2c_config*)data; + rt_int16_t sda; + + sda = wm_get_pin(cfg->sda); + + if (state) + { + tls_gpio_cfg((enum tls_io_name)sda, WM_GPIO_DIR_INPUT, WM_GPIO_ATTR_PULLHIGH); + } + else + { + tls_gpio_cfg((enum tls_io_name)sda, WM_GPIO_DIR_OUTPUT, WM_GPIO_ATTR_FLOATING); + tls_gpio_write((enum tls_io_name)sda, 0); + } +} + +/** + * This function sets the scl pin. + * + * @param w60x config class. + * @param The scl pin state. + */ +static void w60x_set_scl(void *data, rt_int32_t state) +{ + struct w60x_soft_i2c_config* cfg = (struct w60x_soft_i2c_config*)data; + rt_int16_t scl; + + scl = wm_get_pin(cfg->scl); + + if (state) + { + tls_gpio_cfg((enum tls_io_name)scl, WM_GPIO_DIR_INPUT, WM_GPIO_ATTR_PULLHIGH); + } + else + { + tls_gpio_cfg((enum tls_io_name)scl, WM_GPIO_DIR_OUTPUT, WM_GPIO_ATTR_FLOATING); + tls_gpio_write((enum tls_io_name)scl, 0); + } +} + +/** + * This function gets the sda pin state. + * + * @param The sda pin state. + */ +static rt_int32_t w60x_get_sda(void *data) +{ + struct w60x_soft_i2c_config* cfg = (struct w60x_soft_i2c_config*)data; + rt_int16_t sda; + + sda = wm_get_pin(cfg->sda); + + return tls_gpio_read((enum tls_io_name)sda); +} + +/** + * This function gets the scl pin state. + * + * @param The scl pin state. + */ +static rt_int32_t w60x_get_scl(void *data) +{ + struct w60x_soft_i2c_config* cfg = (struct w60x_soft_i2c_config*)data; + rt_int16_t scl; + + scl = wm_get_pin(cfg->scl); + + return tls_gpio_read((enum tls_io_name)scl); +} +/** + * The time delay function. + * + * @param microseconds. + */ +static void w60x_udelay(rt_uint32_t us) +{ + rt_uint32_t ticks; + rt_uint32_t told, tnow, tcnt = 0; + rt_uint32_t reload = SysTick->LOAD; + + ticks = us * reload / (1000000 / RT_TICK_PER_SECOND); + told = SysTick->VAL; + while (1) + { + tnow = SysTick->VAL; + if (tnow != told) + { + if (tnow < told) + { + tcnt += told - tnow; + } + else + { + tcnt += reload - tnow + told; + } + told = tnow; + if (tcnt >= ticks) + { + break; + } + } + } +} + +static const struct rt_i2c_bit_ops w60x_bit_ops_default = +{ + .data = RT_NULL, + .set_sda = w60x_set_sda, + .set_scl = w60x_set_scl, + .get_sda = w60x_get_sda, + .get_scl = w60x_get_scl, + .udelay = w60x_udelay, + .delay_us = 1, + .timeout = 100 +}; + +/** + * if i2c is locked, this function will unlock it + * + * @param w60x config class + * + * @return RT_EOK indicates successful unlock. + */ +static rt_err_t w60x_i2c_bus_unlock(const struct w60x_soft_i2c_config *cfg) +{ + rt_int32_t i = 0; + + if (PIN_LOW == rt_pin_read(cfg->sda)) + { + while (i++ < 9) + { + rt_pin_write(cfg->scl, PIN_HIGH); + w60x_udelay(100); + rt_pin_write(cfg->scl, PIN_LOW); + w60x_udelay(100); + } + } + if (PIN_LOW == rt_pin_read(cfg->sda)) + { + return -RT_ERROR; + } + + return RT_EOK; +} + +/* I2C initialization function */ +int rt_soft_i2c_init(void) +{ + rt_size_t obj_num = sizeof(i2c_obj) / sizeof(struct w60x_i2c); + rt_err_t result; + + for (int i = 0; i < obj_num; i++) + { + i2c_obj[i].ops = w60x_bit_ops_default; + i2c_obj[i].ops.data = (void*)&soft_i2c_config[i]; + i2c_obj[i].i2c2_bus.priv = &i2c_obj[i].ops; + w60x_i2c_gpio_init(&i2c_obj[i]); + result = rt_i2c_bit_add_bus(&i2c_obj[i].i2c2_bus, soft_i2c_config[i].bus_name); + RT_ASSERT(result == RT_EOK); + w60x_i2c_bus_unlock(&soft_i2c_config[i]); + + LOG_D("software simulation %s init done, pin scl: %d, pin sda %d", + soft_i2c_config[i].bus_name, + soft_i2c_config[i].scl, + soft_i2c_config[i].sda); + } + + return RT_EOK; +} +INIT_DEVICE_EXPORT(rt_soft_i2c_init); + +#endif /* BSP_USING_SOFT_I2C */ diff --git a/bsp/w60x/drivers/drv_soft_i2c.h b/bsp/w60x/drivers/drv_soft_i2c.h new file mode 100644 index 0000000000..ee50abea71 --- /dev/null +++ b/bsp/w60x/drivers/drv_soft_i2c.h @@ -0,0 +1,61 @@ +/* + * Copyright (c) 2006-2019, RT-Thread Development Team + * + * SPDX-License-Identifier: Apache-2.0 + * + * Change Logs: + * Date Author Notes + * 2019-03-22 balanceTWK first version + */ + +#ifndef __DRV_SOFT_I2C__ +#define __DRV_SOFT_I2C__ + +#include <rtthread.h> +#include <rthw.h> +#include <rtdevice.h> + +/* w60x config class */ +struct w60x_soft_i2c_config +{ + rt_uint8_t scl; + rt_uint8_t sda; + const char *bus_name; +}; +/* w60x i2c dirver class */ +struct w60x_i2c +{ + struct rt_i2c_bit_ops ops; + struct rt_i2c_bus_device i2c2_bus; +}; + +#ifdef BSP_USING_SOFT_I2C1 +#define I2C1_BUS_CONFIG \ + { \ + .scl = SOFT_I2C1_SCL_PIN, \ + .sda = SOFT_I2C1_SDA_PIN, \ + .bus_name = "i2c1soft", \ + } +#endif + +#ifdef BSP_USING_SOFT_I2C2 +#define I2C2_BUS_CONFIG \ + { \ + .scl = SOFT_I2C2_SCL_PIN, \ + .sda = SOFT_I2C2_SDA_PIN, \ + .bus_name = "i2c2soft", \ + } +#endif + +#ifdef BSP_USING_SOFT_I2C3 +#define I2C3_BUS_CONFIG \ + { \ + .scl = SOFT_I2C3_SCL_PIN, \ + .sda = SOFT_I2C3_SDA_PIN, \ + .bus_name = "i2c3soft", \ + } +#endif + +int rt_hw_i2c_init(void); + +#endif diff --git a/bsp/w60x/drivers/drv_spi.c b/bsp/w60x/drivers/drv_spi.c index 88eef8b15a..ecec749278 100644 --- a/bsp/w60x/drivers/drv_spi.c +++ b/bsp/w60x/drivers/drv_spi.c @@ -10,6 +10,7 @@ #include <rtthread.h> #include <rtdevice.h> +#include "board.h" #include "wm_hostspi.h" #include "wm_spi_hal.h" #include "wm_io.h" @@ -92,10 +93,13 @@ static rt_uint32_t spixfer(struct rt_spi_device *device, struct rt_spi_message * rt_int32_t length = 0; rt_int32_t remain_length = message->length; + rt_int32_t int_status; + + tls_irq_disable(SPI0_INT); length = spi_fill_txfifo(&tls_transfer, remain_length); spi_set_sclk_length(length * 8, 0); - if (message->cs_take) + if (message->cs_take && cs) { tls_gpio_write((enum tls_io_name)cs->pin, 0); } @@ -112,7 +116,7 @@ static rt_uint32_t spixfer(struct rt_spi_device *device, struct rt_spi_message * { while (spi_i2s_get_busy_status() == 1) ; - if (message->cs_release) + if (message->cs_release && cs) { tls_gpio_write((enum tls_io_name)cs->pin, 1); } @@ -129,10 +133,15 @@ static rt_uint32_t spixfer(struct rt_spi_device *device, struct rt_spi_message * while (spi_i2s_get_busy_status() == 1) ; - if (message->cs_release) + if (message->cs_release && cs) { tls_gpio_write((enum tls_io_name)cs->pin, 1); } + + int_status = spi_get_int_status(); + spi_clear_int_status(int_status); + tls_irq_enable(SPI0_INT); + return message->length - remain_length; } @@ -193,7 +202,11 @@ int wm_hw_spi_bus_init(void) } wm_spi_bus.parent.user_data = &spi; +#ifdef WM_SPI_BUS_NAME + rt_spi_bus_register(&wm_spi_bus, WM_SPI_BUS_NAME, &wm_spi_ops); +#else rt_spi_bus_register(&wm_spi_bus, "spi0", &wm_spi_ops); +#endif return RT_EOK; } diff --git a/bsp/w60x/drivers/drv_spiflash.c b/bsp/w60x/drivers/drv_spiflash.c deleted file mode 100644 index 51203ee894..0000000000 --- a/bsp/w60x/drivers/drv_spiflash.c +++ /dev/null @@ -1,33 +0,0 @@ -/* - * Copyright (c) 2019 Winner Microelectronics Co., Ltd. - * - * SPDX-License-Identifier: Apache-2.0 - * - * Change Logs: - * Date Author Notes - * 2018-11-12 fanwenl 1st version - */ - -#include <rtthread.h> -#include <rtdevice.h> - -#ifdef BSP_USING_FLASH -#include "drv_spi.h" -#include "string.h" -#include "spi_flash.h" -#include "spi_flash_sfud.h" - -int wm_nor_flash_init(void) -{ - rt_spi_flash_device_t spi_device; - - wm_spi_bus_attach_device(SPI_Flash_BUS_NAME, "norspi", SPI_Flash_CS_PIN); - spi_device = rt_sfud_flash_probe("flash0", "norspi"); - if (spi_device == RT_NULL) - { - return -RT_ERROR; - } - return 0; -} -INIT_DEVICE_EXPORT(wm_nor_flash_init); -#endif diff --git a/bsp/w60x/drivers/drv_uart.c b/bsp/w60x/drivers/drv_uart.c index 9cf9472447..6a3c4c40fc 100644 --- a/bsp/w60x/drivers/drv_uart.c +++ b/bsp/w60x/drivers/drv_uart.c @@ -10,6 +10,7 @@ #include <rtthread.h> #include <rtdevice.h> +#include "board.h" #include "wm_io.h" #include "wm_uart.h" #include "wm_gpio_afsel.h" diff --git a/bsp/w60x/drivers/drv_wifi.c b/bsp/w60x/drivers/drv_wifi.c index 2ae441b420..b7bc9eb459 100644 --- a/bsp/w60x/drivers/drv_wifi.c +++ b/bsp/w60x/drivers/drv_wifi.c @@ -14,8 +14,10 @@ #include "wm_wifi.h" #include "drv_wifi.h" -#define DBG_TAG "WIFI" -#define DBG_LVL DBG_INFO +#define DBG_ENABLE +#define DBG_LEVEL DBG_INFO +#define DBG_SECTION_NAME "WIFI" +#define DBG_COLOR #include <rtdbg.h> #include "wm_ram_config.h" diff --git a/bsp/w60x/drivers/linker_scripts/link.icf b/bsp/w60x/drivers/linker_scripts/link.icf index e3c1f23abb..a3e861ed85 100644 --- a/bsp/w60x/drivers/linker_scripts/link.icf +++ b/bsp/w60x/drivers/linker_scripts/link.icf @@ -7,9 +7,9 @@ define symbol __ICFEDIT_intvec_start__ = 0x08010100; /* rom 959K */ define symbol __ICFEDIT_region_ROM_start__ = 0x08010100; define symbol __ICFEDIT_region_ROM_end__ = 0x080FFFFF; -/* ram 224k */ +/* ram 160k */ define symbol __ICFEDIT_region_RAM_start__ = 0x20000000; -define symbol __ICFEDIT_region_RAM_end__ = 0x2003C000; +define symbol __ICFEDIT_region_RAM_end__ = 0x20028000; /*-Sizes-*/ define symbol __ICFEDIT_size_cstack__ = 0xc00; define symbol __ICFEDIT_size_heap__ = 0x1A000; diff --git a/bsp/w60x/drivers/linker_scripts/link.lds b/bsp/w60x/drivers/linker_scripts/link.lds index 33e9132506..483ead847b 100644 --- a/bsp/w60x/drivers/linker_scripts/link.lds +++ b/bsp/w60x/drivers/linker_scripts/link.lds @@ -8,8 +8,8 @@ MEMORY { - FLASH (rx) : ORIGIN = 0x8010100, LENGTH = 959K /* 960K-256B */ - RAM (rwx) : ORIGIN = 0x20000000, LENGTH = 0x3C000 /* 240K */ + FLASH (rx) : ORIGIN = 0x8010100, LENGTH = 959K /* 960K-256B */ + RAM (rw) : ORIGIN = 0x20000000, LENGTH = 0x28000 /* 160K */ } /* Linker script to place sections and symbol values. Should be used together @@ -79,6 +79,12 @@ SECTIONS __rt_init_end = .; . = ALIGN(4); + __rtatcmdtab_start = .; + KEEP(*(RtAtCmdTab)) + __rtatcmdtab_end = .; + . = ALIGN(4); + + . = ALIGN(4); KEEP(*(.init)) KEEP(*(.fini)) diff --git a/bsp/w60x/drivers/linker_scripts/link.sct b/bsp/w60x/drivers/linker_scripts/link.sct index 20191e6190..76ca106e6b 100644 --- a/bsp/w60x/drivers/linker_scripts/link.sct +++ b/bsp/w60x/drivers/linker_scripts/link.sct @@ -3,12 +3,13 @@ ; ************************************************************* LR_IROM1 0x08010100 0x000EFEFF { ; load region size_region - ER_IROM1 0x08010100 0x000EFEFF { ; load address = execution address + ER_IROM1 0x08010100 0x000EFEFF { ; load address = execution address *.o (RESET, +First) *(InRoot$$Sections) .ANY (+RO) + .ANY (+XO) } - RW_IRAM1 0x20000000 0x0003C000 { ; RW data + RW_IRAM1 0x20000000 0x00028000 { ; RW data .ANY (+RW +ZI) } } diff --git a/bsp/w60x/drivers/pin_config.h b/bsp/w60x/drivers/pin_config.h new file mode 100644 index 0000000000..cf1eb774c3 --- /dev/null +++ b/bsp/w60x/drivers/pin_config.h @@ -0,0 +1,36 @@ +/* + * Copyright (c) 2006-2019, RT-Thread Development Team + * + * SPDX-License-Identifier: Apache-2.0 + * + * Change Logs: + * Date Author Notes + * 2019-06-01 Ernest the first version + */ +#ifndef __PIN_CONFIG_H__ +#define __PIN_CONFIG_H__ + +// UART +#define WM_UART2_RX_PIN 1 // PB19 : UART2_RX (W601) +#define WM_UART2_TX_PIN 2 // PB20 : UART2_TX (W601) + +#define WM_UART1_RX_PIN 31 // PB11 : UART1_RX (W600) +#define WM_UART1_TX_PIN 32 // PB12 : UART1_TX (W600) + +// spi +#define WM_SPI_CK_PIN 53 // PB27 : SPI_SCK +#define WM_SPI_DI_PIN 55 // PB1 : SPI_MISO +#define WM_SPI_DO_PIN 56 // PB2 : SPI_MOSI + +// i2c +#define WM_I2C_SCL_PIN 18 +#define WM_I2C_DAT_PIN 19 + +// soft i2c +#define SOFT_I2C1_SCL_PIN 23 // PA0 : I2C1_SCL +#define SOFT_I2C1_SDA_PIN 24 // PA1 : I2C1_SDA +#define SOFT_I2C2_SCL_PIN 25 // PA2 : I2C2_SCL +#define SOFT_I2C2_SDA_PIN 24 // PA1 : I2C2_SDA + +#endif /* __PIN_CONFIG_H__ */ + diff --git a/bsp/w60x/oneshot/SConscript b/bsp/w60x/oneshot/SConscript new file mode 100644 index 0000000000..ff64d897f8 --- /dev/null +++ b/bsp/w60x/oneshot/SConscript @@ -0,0 +1,15 @@ +Import('rtconfig') +from building import * + +cwd = GetCurrentDir() +src = [] +path = [cwd] + +src += ['oneshot.c'] + +if GetDepend(['WM_USING_ONESHOT_DEMO']): + src += ['oneshot_demo.c'] + +group = DefineGroup('oneshot', src, depend = ['WM_USING_ONESHOT'], CPPPATH = path) + +Return('group') diff --git a/bsp/w60x/oneshot/oneshot.c b/bsp/w60x/oneshot/oneshot.c new file mode 100644 index 0000000000..ee60a0b907 --- /dev/null +++ b/bsp/w60x/oneshot/oneshot.c @@ -0,0 +1,52 @@ +/* + * Copyright (c) 2006-2018, RT-Thread Development Team + * + * SPDX-License-Identifier: Apache-2.0 + * + * Change Logs: + * Date Author Notes + * 2019-01-25 winner micro + */ + +#include <rtthread.h> +#include "oneshot.h" +#include "wm_wifi_oneshot.h" +#include "wm_wifi.h" + +/* start oneshot */ +int wm_oneshot_start(WM_ONESHOT_MODE mode, wm_oneshot_callback callback) +{ + tls_wifi_oneshot_callback_register(callback); + if(mode == WM_UDP) + { + tls_wifi_set_oneshot_config_mode(0); + } + else if (mode == WM_APSOCKET) + { + tls_wifi_set_oneshot_config_mode(1); + } + else if(mode == WM_APWEB) + { + tls_wifi_set_oneshot_config_mode(2); + } + else + { + return -1; + } + tls_wifi_set_oneshot_flag(1); + return 0; +} + +/* stop oneshot */ +int wm_oneshot_stop(void) +{ + tls_wifi_oneshot_callback_delete(); + tls_wifi_set_oneshot_flag(0); + return 0; +} + +/* get status */ +int wm_oneshot_get(void) +{ + return tls_wifi_get_oneshot_flag(); +} diff --git a/bsp/w60x/oneshot/oneshot.h b/bsp/w60x/oneshot/oneshot.h new file mode 100644 index 0000000000..f9bd638c1a --- /dev/null +++ b/bsp/w60x/oneshot/oneshot.h @@ -0,0 +1,27 @@ +/* + * Copyright (c) 2006-2018, RT-Thread Development Team + * + * SPDX-License-Identifier: Apache-2.0 + * + * Change Logs: + * Date Author Notes + * 2019-01-25 winner micro + */ + +#ifndef DRV_ONESHOT_H__ +#define DRV_ONESHOT_H__ + +typedef enum{ + WM_UDP, + WM_APSOCKET, + WM_APWEB +}WM_ONESHOT_MODE; + + +typedef void (*wm_oneshot_callback)(int state, unsigned char *ssid, unsigned char *key); + +extern int wm_oneshot_start(WM_ONESHOT_MODE mode, wm_oneshot_callback callback); +extern int wm_oneshot_stop(void); +extern int wm_oneshot_get(void); + +#endif diff --git a/bsp/w60x/oneshot/oneshot_demo.c b/bsp/w60x/oneshot/oneshot_demo.c new file mode 100644 index 0000000000..7012b5af5b --- /dev/null +++ b/bsp/w60x/oneshot/oneshot_demo.c @@ -0,0 +1,149 @@ +/* + * Copyright (c) 2006-2018, RT-Thread Development Team + * + * SPDX-License-Identifier: Apache-2.0 + * + * Change Logs: + * Date Author Notes + * 2019-01-25 tyx add w600 + */ + +#include <rtthread.h> +#include <rtdevice.h> +#include "oneshot.h" + +#define NET_READY_TIME_OUT (rt_tick_from_millisecond(30 * 1000)) + +struct join_info +{ + char ssid[64]; + char passwd[64]; +}; + +static int rt_wlan_device_connetct(char *ssid, char *passwd) +{ + int result = RT_EOK; + rt_uint8_t time_cnt = 0; + + result = rt_wlan_connect(ssid, passwd); + if (result != RT_EOK) + { + rt_kprintf("\nconnect ssid %s error:%d!\n", ssid, result); + return result; + }; + + do + { + rt_thread_mdelay(1000); + time_cnt ++; + if (rt_wlan_is_ready()) + { + break; + } + } + while (time_cnt <= (NET_READY_TIME_OUT / 1000)); + + if (time_cnt <= (NET_READY_TIME_OUT / 1000)) + { + rt_kprintf("networking ready!\n"); + } + else + { + rt_kprintf("wait ip got timeout!\n"); + result = -RT_ETIMEOUT; + } + + return result; +} + +static void join_wifi_thread(void *param) +{ + struct join_info *info = param; + + rt_kprintf("connect wifi:%s\n", info->ssid); + if (rt_strlen(info->passwd) > 0) + { + rt_wlan_device_connetct(info->ssid, info->passwd); + } + else + { + rt_wlan_device_connetct(info->ssid, RT_NULL); + } + rt_free(info); +} + +static void wm_oneshot_result_cb(int state, unsigned char *ssid, unsigned char *passwd) +{ + rt_thread_t tid; + struct join_info *info; + + if (state != 0) + { + rt_kprintf("Receive wifi info timeout(%d). exit!\n", state); + return; + } + if (ssid == RT_NULL) + { + rt_kprintf("SSID is NULL. exit!\n"); + return; + } + rt_kprintf("Receive ssid:%s passwd:%s\n", ssid == RT_NULL ? "" : ssid, passwd == RT_NULL ? "" : passwd); + info = rt_malloc(sizeof(struct join_info)); + if (info == RT_NULL) + { + return; + } + rt_memset(info, 0, sizeof(struct join_info)); + rt_strncpy(info->ssid, ssid, sizeof(info->ssid)); + if (passwd) + { + rt_strncpy(info->passwd, passwd, sizeof(info->passwd)); + } + tid = rt_thread_create("join", join_wifi_thread, info, 2048, 22, 20); + if (tid == RT_NULL) + { + rt_free(info); + return; + } + rt_thread_startup(tid); +} + +void oneshot_demo(int argc, char *argv[]) +{ + WM_ONESHOT_MODE mode = WM_UDP; + + if (argc > 2) + { + rt_kprintf("use: %s [web]", __FUNCTION__); + return; + } + if (argc == 2) + { + if (rt_strcmp("web", argv[1]) == 0) + { + mode = WM_APWEB; + } + else if(rt_strcmp("udp", argv[1]) == 0) + { + mode = WM_UDP; + } + else + { + rt_kprintf("use: %s [web]", __FUNCTION__); + return; + } + } + if (wm_oneshot_start(mode, wm_oneshot_result_cb) == 0) + { + rt_kprintf("oneshot start...\n"); + } + else + { + rt_kprintf("oneshot start failed\n"); + } +} + +#ifdef RT_USING_FINSH +#include "finsh.h" +MSH_CMD_EXPORT(oneshot_demo, oneshot demo); +#endif diff --git a/bsp/w60x/project.ewp b/bsp/w60x/project.ewp index afd407652e..a0f2f1b48d 100644 --- a/bsp/w60x/project.ewp +++ b/bsp/w60x/project.ewp @@ -221,7 +221,6 @@ <state>__inline__=inline</state>
<state>RT_USING_DLIBC</state>
<state>_DLIB_FILE_DESCRIPTOR</state>
- <state>_DLIB_THREAD_SUPPORT</state>
</option>
<option>
<name>CCPreprocFile</name>
@@ -350,6 +349,7 @@ <state>$PROJ_DIR$\..\..\components\net\sal_socket\include\socket</state>
<state>$PROJ_DIR$\..\..\components\net\lwip-2.0.2\src\include\ipv4</state>
<state>$PROJ_DIR$\packages\wm_libraries-latest\Platform\Boot\gcc</state>
+ <state>$PROJ_DIR$\oneshot</state>
<state>$PROJ_DIR$\..\..\components\net\sal_socket\include</state>
<state>$PROJ_DIR$\..\..\include</state>
<state>$PROJ_DIR$\..\..\components\net\lwip-2.0.2\src\include\netif</state>
@@ -368,9 +368,11 @@ <state>$PROJ_DIR$\.</state>
<state>$PROJ_DIR$\packages\wm_libraries-latest\Include\OS</state>
<state>$PROJ_DIR$\..\..\components\utilities\ulog</state>
- <state>$PROJ_DIR$\..\..\components\dfs\include</state>
- <state>$PROJ_DIR$\packages\wm_libraries-latest\Include\Platform</state>
<state>$PROJ_DIR$\..\..\libcpu\arm\cortex-m3</state>
+ <state>$PROJ_DIR$\packages\netutils-v1.1.0\ntp</state>
+ <state>$PROJ_DIR$\packages\wm_libraries-latest\Include\Platform</state>
+ <state>$PROJ_DIR$\..\..\components\drivers\hwcrypto</state>
+ <state>$PROJ_DIR$\..\..\components\dfs\include</state>
<state>$PROJ_DIR$\packages\wm_libraries-latest\Platform\Inc</state>
<state>$PROJ_DIR$\..\..\components\net\sal_socket\include\socket\sys_socket</state>
<state>$PROJ_DIR$\..\..\components\net\lwip-2.0.2\src\include</state>
@@ -379,6 +381,7 @@ <state>$PROJ_DIR$\packages\wm_libraries-latest\Include\WiFi</state>
<state>$PROJ_DIR$\packages\wm_libraries-latest\Platform\Common\crypto</state>
<state>$PROJ_DIR$\packages\wm_libraries-latest\Platform\Drivers\spi</state>
+ <state>$PROJ_DIR$\..\..\components\drivers\spi</state>
<state>$PROJ_DIR$\packages\wm_libraries-latest\Platform\Common\crypto\math</state>
<state>$PROJ_DIR$\applications</state>
<state>$PROJ_DIR$\..\..\components\net\netdev\include</state>
@@ -774,7 +777,7 @@ </option>
<option>
<name>IlinkMapFile</name>
- <state>0</state>
+ <state>1</state>
</option>
<option>
<name>IlinkLogFile</name>
@@ -1149,7 +1152,7 @@ </option>
<option>
<name>GEndianModeBE</name>
- <state>0</state>
+ <state>1</state>
</option>
<option>
<name>OGBufferedTerminalOutput</name>
@@ -1180,7 +1183,7 @@ <option>
<name>GBECoreSlave</name>
<version>26</version>
- <state>1</state>
+ <state>38</state>
</option>
<option>
<name>OGUseCmsis</name>
@@ -1197,7 +1200,7 @@ <option>
<name>CoreVariant</name>
<version>26</version>
- <state>0</state>
+ <state>38</state>
</option>
<option>
<name>GFPUDeviceSlave</name>
@@ -1220,7 +1223,7 @@ <option>
<name>GFPUCoreSlave2</name>
<version>26</version>
- <state>0</state>
+ <state>38</state>
</option>
<option>
<name>OGCMSISPackSelectDevice</name>
@@ -1285,7 +1288,6 @@ <state>__inline__=inline</state>
<state>RT_USING_DLIBC</state>
<state>_DLIB_FILE_DESCRIPTOR</state>
- <state>_DLIB_THREAD_SUPPORT</state>
</option>
<option>
<name>CCPreprocFile</name>
@@ -1374,7 +1376,7 @@ </option>
<option>
<name>CCSignedPlainChar</name>
- <state>1</state>
+ <state>0</state>
</option>
<option>
<name>CCRequirePrototypes</name>
@@ -1414,6 +1416,7 @@ <state>$PROJ_DIR$\..\..\components\net\sal_socket\include\socket</state>
<state>$PROJ_DIR$\..\..\components\net\lwip-2.0.2\src\include\ipv4</state>
<state>$PROJ_DIR$\packages\wm_libraries-latest\Platform\Boot\gcc</state>
+ <state>$PROJ_DIR$\oneshot</state>
<state>$PROJ_DIR$\..\..\components\net\sal_socket\include</state>
<state>$PROJ_DIR$\..\..\include</state>
<state>$PROJ_DIR$\..\..\components\net\lwip-2.0.2\src\include\netif</state>
@@ -1432,9 +1435,11 @@ <state>$PROJ_DIR$\.</state>
<state>$PROJ_DIR$\packages\wm_libraries-latest\Include\OS</state>
<state>$PROJ_DIR$\..\..\components\utilities\ulog</state>
- <state>$PROJ_DIR$\..\..\components\dfs\include</state>
- <state>$PROJ_DIR$\packages\wm_libraries-latest\Include\Platform</state>
<state>$PROJ_DIR$\..\..\libcpu\arm\cortex-m3</state>
+ <state>$PROJ_DIR$\packages\netutils-v1.1.0\ntp</state>
+ <state>$PROJ_DIR$\packages\wm_libraries-latest\Include\Platform</state>
+ <state>$PROJ_DIR$\..\..\components\drivers\hwcrypto</state>
+ <state>$PROJ_DIR$\..\..\components\dfs\include</state>
<state>$PROJ_DIR$\packages\wm_libraries-latest\Platform\Inc</state>
<state>$PROJ_DIR$\..\..\components\net\sal_socket\include\socket\sys_socket</state>
<state>$PROJ_DIR$\..\..\components\net\lwip-2.0.2\src\include</state>
@@ -1443,6 +1448,7 @@ <state>$PROJ_DIR$\packages\wm_libraries-latest\Include\WiFi</state>
<state>$PROJ_DIR$\packages\wm_libraries-latest\Platform\Common\crypto</state>
<state>$PROJ_DIR$\packages\wm_libraries-latest\Platform\Drivers\spi</state>
+ <state>$PROJ_DIR$\..\..\components\drivers\spi</state>
<state>$PROJ_DIR$\packages\wm_libraries-latest\Platform\Common\crypto\math</state>
<state>$PROJ_DIR$\applications</state>
<state>$PROJ_DIR$\..\..\components\net\netdev\include</state>
@@ -1476,7 +1482,7 @@ </option>
<option>
<name>CCOptLevelSlave</name>
- <state>1</state>
+ <state>3</state>
</option>
<option>
<name>CompilerMisraRules98</name>
@@ -1739,15 +1745,15 @@ <option>
<name>OOCOutputFormat</name>
<version>3</version>
- <state>0</state>
+ <state>3</state>
</option>
<option>
<name>OCOutputOverride</name>
- <state>0</state>
+ <state>1</state>
</option>
<option>
<name>OOCOutputFile</name>
- <state />
+ <state>../../rtthread.bin</state>
</option>
<option>
<name>OOCCommandLineProducer</name>
@@ -1755,7 +1761,7 @@ </option>
<option>
<name>OOCObjCopyEnable</name>
- <state>0</state>
+ <state>1</state>
</option>
</data>
</settings>
@@ -1778,7 +1784,7 @@ <archiveVersion>1</archiveVersion>
<data>
<prebuild />
- <postbuild />
+ <postbuild>cmd /c "$PROJ_DIR$\makeimg.bat"</postbuild>
</data>
</settings>
<settings>
@@ -1838,7 +1844,7 @@ </option>
<option>
<name>IlinkMapFile</name>
- <state>0</state>
+ <state>1</state>
</option>
<option>
<name>IlinkLogFile</name>
@@ -1862,11 +1868,11 @@ </option>
<option>
<name>IlinkIcfOverride</name>
- <state>0</state>
+ <state>1</state>
</option>
<option>
<name>IlinkIcfFile</name>
- <state>lnk0t.icf</state>
+ <state>$PROJ_DIR$\.\drivers\linker_scripts\link.icf</state>
</option>
<option>
<name>IlinkIcfFileSlave</name>
@@ -2191,6 +2197,9 @@ <name>$PROJ_DIR$\drivers\drv_uart.c</name>
</file>
<file>
+ <name>$PROJ_DIR$\drivers\drv_flash.c</name>
+ </file>
+ <file>
<name>$PROJ_DIR$\drivers\pin_map.c</name>
</file>
<file>
@@ -2201,6 +2210,18 @@ </file>
</group>
<group>
+ <name>oneshot</name>
+ <file>
+ <name>$PROJ_DIR$\oneshot\oneshot.c</name>
+ </file>
+ </group>
+ <group>
+ <name>NetUtils</name>
+ <file>
+ <name>$PROJ_DIR$\packages\netutils-v1.1.0\ntp\ntp.c</name>
+ </file>
+ </group>
+ <group>
<name>Libraries</name>
<file>
<name>$PROJ_DIR$\packages\wm_libraries-latest\Platform\Drivers\cpu\wm_cpu.c</name>
@@ -2266,13 +2287,13 @@ <name>$PROJ_DIR$\packages\wm_libraries-latest\Platform\Common\crypto\wm_crypto_hard.c</name>
</file>
<file>
- <name>$PROJ_DIR$\packages\wm_libraries-latest\Platform\Common\crypto\digest\hmac.c</name>
+ <name>$PROJ_DIR$\packages\wm_libraries-latest\Platform\Common\crypto\digest\wm_crypto_hmac.c</name>
</file>
<file>
- <name>$PROJ_DIR$\packages\wm_libraries-latest\Platform\Common\crypto\digest\md2.c</name>
+ <name>$PROJ_DIR$\packages\wm_libraries-latest\Platform\Common\crypto\digest\wm_crypto_md2.c</name>
</file>
<file>
- <name>$PROJ_DIR$\packages\wm_libraries-latest\Platform\Common\crypto\digest\md4.c</name>
+ <name>$PROJ_DIR$\packages\wm_libraries-latest\Platform\Common\crypto\digest\wm_crypto_md4.c</name>
</file>
<file>
<name>$PROJ_DIR$\packages\wm_libraries-latest\Platform\Common\crypto\digest\sha224.c</name>
@@ -2281,16 +2302,16 @@ <name>$PROJ_DIR$\packages\wm_libraries-latest\Platform\Common\crypto\digest\sha384.c</name>
</file>
<file>
- <name>$PROJ_DIR$\packages\wm_libraries-latest\Platform\Common\crypto\digest\sha512.c</name>
+ <name>$PROJ_DIR$\packages\wm_libraries-latest\Platform\Common\crypto\digest\wm_crypto_sha512.c</name>
</file>
<file>
<name>$PROJ_DIR$\packages\wm_libraries-latest\Platform\Common\crypto\keyformat\asn1.c</name>
</file>
<file>
- <name>$PROJ_DIR$\packages\wm_libraries-latest\Platform\Common\crypto\keyformat\base64.c</name>
+ <name>$PROJ_DIR$\packages\wm_libraries-latest\Platform\Common\crypto\keyformat\wm_crypto_base64.c</name>
</file>
<file>
- <name>$PROJ_DIR$\packages\wm_libraries-latest\Platform\Common\crypto\keyformat\x509.c</name>
+ <name>$PROJ_DIR$\packages\wm_libraries-latest\Platform\Common\crypto\keyformat\wm_crypto_x509.c</name>
</file>
<file>
<name>$PROJ_DIR$\packages\wm_libraries-latest\Platform\Common\crypto\math\pstm_mul_comba.c</name>
@@ -2314,7 +2335,7 @@ <name>$PROJ_DIR$\packages\wm_libraries-latest\Platform\Common\crypto\pubkey\pubkey.c</name>
</file>
<file>
- <name>$PROJ_DIR$\packages\wm_libraries-latest\Platform\Common\crypto\pubkey\rsa.c</name>
+ <name>$PROJ_DIR$\packages\wm_libraries-latest\Platform\Common\crypto\pubkey\wm_crypto_rsa.c</name>
</file>
<file>
<name>$PROJ_DIR$\packages\wm_libraries-latest\Platform\Common\crypto\symmetric\aesGCM.c</name>
@@ -2389,12 +2410,57 @@ <group>
<name>DeviceDrivers</name>
<file>
+ <name>$PROJ_DIR$\..\..\components\drivers\hwcrypto\hwcrypto.c</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$\..\..\components\drivers\hwcrypto\hw_symmetric.c</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$\..\..\components\drivers\hwcrypto\hw_hash.c</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$\..\..\components\drivers\hwcrypto\hw_rng.c</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$\..\..\components\drivers\hwcrypto\hw_crc.c</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$\..\..\components\drivers\hwcrypto\hw_bignum.c</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$\..\..\components\drivers\hwtimer\hwtimer.c</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$\..\..\components\drivers\i2c\i2c_core.c</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$\..\..\components\drivers\i2c\i2c_dev.c</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$\..\..\components\drivers\i2c\i2c-bit-ops.c</name>
+ </file>
+ <file>
<name>$PROJ_DIR$\..\..\components\drivers\misc\pin.c</name>
</file>
<file>
+ <name>$PROJ_DIR$\..\..\components\drivers\misc\rt_drv_pwm.c</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$\..\..\components\drivers\rtc\rtc.c</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$\..\..\components\drivers\rtc\soft_rtc.c</name>
+ </file>
+ <file>
<name>$PROJ_DIR$\..\..\components\drivers\serial\serial.c</name>
</file>
<file>
+ <name>$PROJ_DIR$\..\..\components\drivers\spi\spi_core.c</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$\..\..\components\drivers\spi\spi_dev.c</name>
+ </file>
+ <file>
<name>$PROJ_DIR$\..\..\components\drivers\src\completion.c</name>
</file>
<file>
@@ -2416,24 +2482,27 @@ <name>$PROJ_DIR$\..\..\components\drivers\src\workqueue.c</name>
</file>
<file>
- <name>$PROJ_DIR$\..\..\components\drivers\wlan\wlan_cfg.c</name>
- </file>
- <file>
- <name>$PROJ_DIR$\..\..\components\drivers\wlan\wlan_cmd.c</name>
+ <name>$PROJ_DIR$\..\..\components\drivers\watchdog\watchdog.c</name>
</file>
<file>
<name>$PROJ_DIR$\..\..\components\drivers\wlan\wlan_dev.c</name>
</file>
<file>
- <name>$PROJ_DIR$\..\..\components\drivers\wlan\wlan_lwip.c</name>
+ <name>$PROJ_DIR$\..\..\components\drivers\wlan\wlan_mgnt.c</name>
</file>
<file>
- <name>$PROJ_DIR$\..\..\components\drivers\wlan\wlan_mgnt.c</name>
+ <name>$PROJ_DIR$\..\..\components\drivers\wlan\wlan_cmd.c</name>
</file>
<file>
<name>$PROJ_DIR$\..\..\components\drivers\wlan\wlan_prot.c</name>
</file>
<file>
+ <name>$PROJ_DIR$\..\..\components\drivers\wlan\wlan_lwip.c</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$\..\..\components\drivers\wlan\wlan_cfg.c</name>
+ </file>
+ <file>
<name>$PROJ_DIR$\..\..\components\drivers\wlan\wlan_workqueue.c</name>
</file>
</group>
diff --git a/bsp/w60x/project.uvoptx b/bsp/w60x/project.uvoptx index 1c8df52d9b..e940709006 100644 --- a/bsp/w60x/project.uvoptx +++ b/bsp/w60x/project.uvoptx @@ -120,7 +120,7 @@ <SetRegEntry> <Number>0</Number> <Key>JL2CM3</Key> - <Name>-U20090928 -O78 -S8 -ZTIFSpeedSel50000 -A0 -C0 -JU1 -JI127.0.0.1 -JP0 -RST0 -N00("ARM CoreSight SW-DP") -D00(2BA01477) -L00(0) -TO18 -TC10000000 -TP21 -TDS8007 -TDT0 -TDC1F -TIEFFFFFFFF -TIP8 -TB1 -TFE0 -FO15 -FD20000000 -FC2000 -FN1 -FF0W600_QFlash -FS08000000 -FL0100000</Name> + <Name>-U20090928 -O78 -S8 -ZTIFSpeedSel50000 -A0 -C0 -JU1 -JI127.0.0.1 -JP0 -RST0 -N00("ARM CoreSight SW-DP") -D00(2BA01477) -L00(0) -TO18 -TC10000000 -TP21 -TDS8007 -TDT0 -TDC1F -TIEFFFFFFFF -TIP8 -TB1 -TFE0 -FO15 -FD20000000 -FC2000 -FN1 -FF0W60X_QFlash -FS08000000 -FL0100000</Name> </SetRegEntry> <SetRegEntry> <Number>0</Number> @@ -174,1992 +174,4 @@ </TargetOption> </Target> - <Group> - <GroupName>Kernel</GroupName> - <tvExp>0</tvExp> - <tvExpOptDlg>0</tvExpOptDlg> - <cbSel>0</cbSel> - <RteFlg>0</RteFlg> - <File> - <GroupNumber>1</GroupNumber> - <FileNumber>1</FileNumber> - <FileType>1</FileType> - <tvExp>0</tvExp> - <tvExpOptDlg>0</tvExpOptDlg> - <bDave2>0</bDave2> - <PathWithFileName>..\..\src\clock.c</PathWithFileName> - <FilenameWithoutPath>clock.c</FilenameWithoutPath> - <RteFlg>0</RteFlg> - <bShared>0</bShared> - </File> - <File> - <GroupNumber>1</GroupNumber> - <FileNumber>2</FileNumber> - <FileType>1</FileType> - <tvExp>0</tvExp> - <tvExpOptDlg>0</tvExpOptDlg> - <bDave2>0</bDave2> - <PathWithFileName>..\..\src\components.c</PathWithFileName> - <FilenameWithoutPath>components.c</FilenameWithoutPath> - <RteFlg>0</RteFlg> - <bShared>0</bShared> - </File> - <File> - <GroupNumber>1</GroupNumber> - <FileNumber>3</FileNumber> - <FileType>1</FileType> - <tvExp>0</tvExp> - <tvExpOptDlg>0</tvExpOptDlg> - <bDave2>0</bDave2> - <PathWithFileName>..\..\src\cpu.c</PathWithFileName> - <FilenameWithoutPath>cpu.c</FilenameWithoutPath> - <RteFlg>0</RteFlg> - <bShared>0</bShared> - </File> - <File> - <GroupNumber>1</GroupNumber> - <FileNumber>4</FileNumber> - <FileType>1</FileType> - <tvExp>0</tvExp> - <tvExpOptDlg>0</tvExpOptDlg> - <bDave2>0</bDave2> - <PathWithFileName>..\..\src\device.c</PathWithFileName> - <FilenameWithoutPath>device.c</FilenameWithoutPath> - <RteFlg>0</RteFlg> - <bShared>0</bShared> - </File> - <File> - <GroupNumber>1</GroupNumber> - <FileNumber>5</FileNumber> - <FileType>1</FileType> - <tvExp>0</tvExp> - <tvExpOptDlg>0</tvExpOptDlg> - <bDave2>0</bDave2> - <PathWithFileName>..\..\src\idle.c</PathWithFileName> - <FilenameWithoutPath>idle.c</FilenameWithoutPath> - <RteFlg>0</RteFlg> - <bShared>0</bShared> - </File> - <File> - <GroupNumber>1</GroupNumber> - <FileNumber>6</FileNumber> - <FileType>1</FileType> - <tvExp>0</tvExp> - <tvExpOptDlg>0</tvExpOptDlg> - <bDave2>0</bDave2> - <PathWithFileName>..\..\src\ipc.c</PathWithFileName> - <FilenameWithoutPath>ipc.c</FilenameWithoutPath> - <RteFlg>0</RteFlg> - <bShared>0</bShared> - </File> - <File> - <GroupNumber>1</GroupNumber> - <FileNumber>7</FileNumber> - <FileType>1</FileType> - <tvExp>0</tvExp> - <tvExpOptDlg>0</tvExpOptDlg> - <bDave2>0</bDave2> - <PathWithFileName>..\..\src\irq.c</PathWithFileName> - <FilenameWithoutPath>irq.c</FilenameWithoutPath> - <RteFlg>0</RteFlg> - <bShared>0</bShared> - </File> - <File> - <GroupNumber>1</GroupNumber> - <FileNumber>8</FileNumber> - <FileType>1</FileType> - <tvExp>0</tvExp> - <tvExpOptDlg>0</tvExpOptDlg> - <bDave2>0</bDave2> - <PathWithFileName>..\..\src\kservice.c</PathWithFileName> - <FilenameWithoutPath>kservice.c</FilenameWithoutPath> - <RteFlg>0</RteFlg> - <bShared>0</bShared> - </File> - <File> - <GroupNumber>1</GroupNumber> - <FileNumber>9</FileNumber> - <FileType>1</FileType> - <tvExp>0</tvExp> - <tvExpOptDlg>0</tvExpOptDlg> - <bDave2>0</bDave2> - <PathWithFileName>..\..\src\mem.c</PathWithFileName> - <FilenameWithoutPath>mem.c</FilenameWithoutPath> - <RteFlg>0</RteFlg> - <bShared>0</bShared> - </File> - <File> - <GroupNumber>1</GroupNumber> - <FileNumber>10</FileNumber> - <FileType>1</FileType> - <tvExp>0</tvExp> - <tvExpOptDlg>0</tvExpOptDlg> - <bDave2>0</bDave2> - <PathWithFileName>..\..\src\mempool.c</PathWithFileName> - <FilenameWithoutPath>mempool.c</FilenameWithoutPath> - <RteFlg>0</RteFlg> - <bShared>0</bShared> - </File> - <File> - <GroupNumber>1</GroupNumber> - <FileNumber>11</FileNumber> - <FileType>1</FileType> - <tvExp>0</tvExp> - <tvExpOptDlg>0</tvExpOptDlg> - <bDave2>0</bDave2> - <PathWithFileName>..\..\src\object.c</PathWithFileName> - <FilenameWithoutPath>object.c</FilenameWithoutPath> - <RteFlg>0</RteFlg> - <bShared>0</bShared> - </File> - <File> - <GroupNumber>1</GroupNumber> - <FileNumber>12</FileNumber> - <FileType>1</FileType> - <tvExp>0</tvExp> - <tvExpOptDlg>0</tvExpOptDlg> - <bDave2>0</bDave2> - <PathWithFileName>..\..\src\scheduler.c</PathWithFileName> - <FilenameWithoutPath>scheduler.c</FilenameWithoutPath> - <RteFlg>0</RteFlg> - <bShared>0</bShared> - </File> - <File> - <GroupNumber>1</GroupNumber> - <FileNumber>13</FileNumber> - <FileType>1</FileType> - <tvExp>0</tvExp> - <tvExpOptDlg>0</tvExpOptDlg> - <bDave2>0</bDave2> - <PathWithFileName>..\..\src\signal.c</PathWithFileName> - <FilenameWithoutPath>signal.c</FilenameWithoutPath> - <RteFlg>0</RteFlg> - <bShared>0</bShared> - </File> - <File> - <GroupNumber>1</GroupNumber> - <FileNumber>14</FileNumber> - <FileType>1</FileType> - <tvExp>0</tvExp> - <tvExpOptDlg>0</tvExpOptDlg> - <bDave2>0</bDave2> - <PathWithFileName>..\..\src\thread.c</PathWithFileName> - <FilenameWithoutPath>thread.c</FilenameWithoutPath> - <RteFlg>0</RteFlg> - <bShared>0</bShared> - </File> - <File> - <GroupNumber>1</GroupNumber> - <FileNumber>15</FileNumber> - <FileType>1</FileType> - <tvExp>0</tvExp> - <tvExpOptDlg>0</tvExpOptDlg> - <bDave2>0</bDave2> - <PathWithFileName>..\..\src\timer.c</PathWithFileName> - <FilenameWithoutPath>timer.c</FilenameWithoutPath> - <RteFlg>0</RteFlg> - <bShared>0</bShared> - </File> - </Group> - - <Group> - <GroupName>Applications</GroupName> - <tvExp>0</tvExp> - <tvExpOptDlg>0</tvExpOptDlg> - <cbSel>0</cbSel> - <RteFlg>0</RteFlg> - <File> - <GroupNumber>2</GroupNumber> - <FileNumber>16</FileNumber> - <FileType>1</FileType> - <tvExp>0</tvExp> - <tvExpOptDlg>0</tvExpOptDlg> - <bDave2>0</bDave2> - <PathWithFileName>applications\main.c</PathWithFileName> - <FilenameWithoutPath>main.c</FilenameWithoutPath> - <RteFlg>0</RteFlg> - <bShared>0</bShared> - </File> - </Group> - - <Group> - <GroupName>Drivers</GroupName> - <tvExp>0</tvExp> - <tvExpOptDlg>0</tvExpOptDlg> - <cbSel>0</cbSel> - <RteFlg>0</RteFlg> - <File> - <GroupNumber>3</GroupNumber> - <FileNumber>17</FileNumber> - <FileType>1</FileType> - <tvExp>0</tvExp> - <tvExpOptDlg>0</tvExpOptDlg> - <bDave2>0</bDave2> - <PathWithFileName>drivers\board.c</PathWithFileName> - <FilenameWithoutPath>board.c</FilenameWithoutPath> - <RteFlg>0</RteFlg> - <bShared>0</bShared> - </File> - <File> - <GroupNumber>3</GroupNumber> - <FileNumber>18</FileNumber> - <FileType>1</FileType> - <tvExp>0</tvExp> - <tvExpOptDlg>0</tvExpOptDlg> - <bDave2>0</bDave2> - <PathWithFileName>drivers\drv_uart.c</PathWithFileName> - <FilenameWithoutPath>drv_uart.c</FilenameWithoutPath> - <RteFlg>0</RteFlg> - <bShared>0</bShared> - </File> - <File> - <GroupNumber>3</GroupNumber> - <FileNumber>19</FileNumber> - <FileType>1</FileType> - <tvExp>0</tvExp> - <tvExpOptDlg>0</tvExpOptDlg> - <bDave2>0</bDave2> - <PathWithFileName>drivers\pin_map.c</PathWithFileName> - <FilenameWithoutPath>pin_map.c</FilenameWithoutPath> - <RteFlg>0</RteFlg> - <bShared>0</bShared> - </File> - <File> - <GroupNumber>3</GroupNumber> - <FileNumber>20</FileNumber> - <FileType>1</FileType> - <tvExp>0</tvExp> - <tvExpOptDlg>0</tvExpOptDlg> - <bDave2>0</bDave2> - <PathWithFileName>drivers\drv_wifi.c</PathWithFileName> - <FilenameWithoutPath>drv_wifi.c</FilenameWithoutPath> - <RteFlg>0</RteFlg> - <bShared>0</bShared> - </File> - <File> - <GroupNumber>3</GroupNumber> - <FileNumber>21</FileNumber> - <FileType>1</FileType> - <tvExp>0</tvExp> - <tvExpOptDlg>0</tvExpOptDlg> - <bDave2>0</bDave2> - <PathWithFileName>drivers\drv_pin.c</PathWithFileName> - <FilenameWithoutPath>drv_pin.c</FilenameWithoutPath> - <RteFlg>0</RteFlg> - <bShared>0</bShared> - </File> - </Group> - - <Group> - <GroupName>Libraries</GroupName> - <tvExp>0</tvExp> - <tvExpOptDlg>0</tvExpOptDlg> - <cbSel>0</cbSel> - <RteFlg>0</RteFlg> - <File> - <GroupNumber>4</GroupNumber> - <FileNumber>22</FileNumber> - <FileType>1</FileType> - <tvExp>0</tvExp> - <tvExpOptDlg>0</tvExpOptDlg> - <bDave2>0</bDave2> - <PathWithFileName>packages\wm_libraries-latest\Platform\Drivers\cpu\wm_cpu.c</PathWithFileName> - <FilenameWithoutPath>wm_cpu.c</FilenameWithoutPath> - <RteFlg>0</RteFlg> - <bShared>0</bShared> - </File> - <File> - <GroupNumber>4</GroupNumber> - <FileNumber>23</FileNumber> - <FileType>1</FileType> - <tvExp>0</tvExp> - <tvExpOptDlg>0</tvExpOptDlg> - <bDave2>0</bDave2> - <PathWithFileName>packages\wm_libraries-latest\Platform\Drivers\gpio\wm_gpio.c</PathWithFileName> - <FilenameWithoutPath>wm_gpio.c</FilenameWithoutPath> - <RteFlg>0</RteFlg> - <bShared>0</bShared> - </File> - <File> - <GroupNumber>4</GroupNumber> - <FileNumber>24</FileNumber> - <FileType>1</FileType> - <tvExp>0</tvExp> - <tvExpOptDlg>0</tvExpOptDlg> - <bDave2>0</bDave2> - <PathWithFileName>packages\wm_libraries-latest\Platform\Drivers\io\wm_io.c</PathWithFileName> - <FilenameWithoutPath>wm_io.c</FilenameWithoutPath> - <RteFlg>0</RteFlg> - <bShared>0</bShared> - </File> - <File> - <GroupNumber>4</GroupNumber> - <FileNumber>25</FileNumber> - <FileType>1</FileType> - <tvExp>0</tvExp> - <tvExpOptDlg>0</tvExpOptDlg> - <bDave2>0</bDave2> - <PathWithFileName>packages\wm_libraries-latest\Platform\Drivers\gpio\wm_gpio_afsel.c</PathWithFileName> - <FilenameWithoutPath>wm_gpio_afsel.c</FilenameWithoutPath> - <RteFlg>0</RteFlg> - <bShared>0</bShared> - </File> - <File> - <GroupNumber>4</GroupNumber> - <FileNumber>26</FileNumber> - <FileType>1</FileType> - <tvExp>0</tvExp> - <tvExpOptDlg>0</tvExpOptDlg> - <bDave2>0</bDave2> - <PathWithFileName>packages\wm_libraries-latest\Platform\Drivers\irq\wm_irq.c</PathWithFileName> - <FilenameWithoutPath>wm_irq.c</FilenameWithoutPath> - <RteFlg>0</RteFlg> - <bShared>0</bShared> - </File> - <File> - <GroupNumber>4</GroupNumber> - <FileNumber>27</FileNumber> - <FileType>1</FileType> - <tvExp>0</tvExp> - <tvExpOptDlg>0</tvExpOptDlg> - <bDave2>0</bDave2> - <PathWithFileName>packages\wm_libraries-latest\Platform\Drivers\efuse\wm_efuse.c</PathWithFileName> - <FilenameWithoutPath>wm_efuse.c</FilenameWithoutPath> - <RteFlg>0</RteFlg> - <bShared>0</bShared> - </File> - <File> - <GroupNumber>4</GroupNumber> - <FileNumber>28</FileNumber> - <FileType>1</FileType> - <tvExp>0</tvExp> - <tvExpOptDlg>0</tvExpOptDlg> - <bDave2>0</bDave2> - <PathWithFileName>packages\wm_libraries-latest\Platform\Drivers\internalflash\wm_internal_fls.c</PathWithFileName> - <FilenameWithoutPath>wm_internal_fls.c</FilenameWithoutPath> - <RteFlg>0</RteFlg> - <bShared>0</bShared> - </File> - <File> - <GroupNumber>4</GroupNumber> - <FileNumber>29</FileNumber> - <FileType>1</FileType> - <tvExp>0</tvExp> - <tvExpOptDlg>0</tvExpOptDlg> - <bDave2>0</bDave2> - <PathWithFileName>packages\wm_libraries-latest\Platform\Drivers\spi\wm_hostspi.c</PathWithFileName> - <FilenameWithoutPath>wm_hostspi.c</FilenameWithoutPath> - <RteFlg>0</RteFlg> - <bShared>0</bShared> - </File> - <File> - <GroupNumber>4</GroupNumber> - <FileNumber>30</FileNumber> - <FileType>1</FileType> - <tvExp>0</tvExp> - <tvExpOptDlg>0</tvExpOptDlg> - <bDave2>0</bDave2> - <PathWithFileName>packages\wm_libraries-latest\Platform\Drivers\flash\wm_fls.c</PathWithFileName> - <FilenameWithoutPath>wm_fls.c</FilenameWithoutPath> - <RteFlg>0</RteFlg> - <bShared>0</bShared> - </File> - <File> - <GroupNumber>4</GroupNumber> - <FileNumber>31</FileNumber> - <FileType>1</FileType> - <tvExp>0</tvExp> - <tvExpOptDlg>0</tvExpOptDlg> - <bDave2>0</bDave2> - <PathWithFileName>packages\wm_libraries-latest\Platform\Drivers\flash\wm_fls_gd25qxx.c</PathWithFileName> - <FilenameWithoutPath>wm_fls_gd25qxx.c</FilenameWithoutPath> - <RteFlg>0</RteFlg> - <bShared>0</bShared> - </File> - <File> - <GroupNumber>4</GroupNumber> - <FileNumber>32</FileNumber> - <FileType>1</FileType> - <tvExp>0</tvExp> - <tvExpOptDlg>0</tvExpOptDlg> - <bDave2>0</bDave2> - <PathWithFileName>packages\wm_libraries-latest\Platform\Drivers\dma\wm_dma.c</PathWithFileName> - <FilenameWithoutPath>wm_dma.c</FilenameWithoutPath> - <RteFlg>0</RteFlg> - <bShared>0</bShared> - </File> - <File> - <GroupNumber>4</GroupNumber> - <FileNumber>33</FileNumber> - <FileType>1</FileType> - <tvExp>0</tvExp> - <tvExpOptDlg>0</tvExpOptDlg> - <bDave2>0</bDave2> - <PathWithFileName>packages\wm_libraries-latest\Platform\Drivers\timer\wm_timer.c</PathWithFileName> - <FilenameWithoutPath>wm_timer.c</FilenameWithoutPath> - <RteFlg>0</RteFlg> - <bShared>0</bShared> - </File> - <File> - <GroupNumber>4</GroupNumber> - <FileNumber>34</FileNumber> - <FileType>1</FileType> - <tvExp>0</tvExp> - <tvExpOptDlg>0</tvExpOptDlg> - <bDave2>0</bDave2> - <PathWithFileName>packages\wm_libraries-latest\Platform\Drivers\watchdog\wm_watchdog.c</PathWithFileName> - <FilenameWithoutPath>wm_watchdog.c</FilenameWithoutPath> - <RteFlg>0</RteFlg> - <bShared>0</bShared> - </File> - <File> - <GroupNumber>4</GroupNumber> - <FileNumber>35</FileNumber> - <FileType>1</FileType> - <tvExp>0</tvExp> - <tvExpOptDlg>0</tvExpOptDlg> - <bDave2>0</bDave2> - <PathWithFileName>packages\wm_libraries-latest\Platform\Drivers\i2c\wm_i2c.c</PathWithFileName> - <FilenameWithoutPath>wm_i2c.c</FilenameWithoutPath> - <RteFlg>0</RteFlg> - <bShared>0</bShared> - </File> - <File> - <GroupNumber>4</GroupNumber> - <FileNumber>36</FileNumber> - <FileType>1</FileType> - <tvExp>0</tvExp> - <tvExpOptDlg>0</tvExpOptDlg> - <bDave2>0</bDave2> - <PathWithFileName>packages\wm_libraries-latest\Platform\Drivers\pwm\wm_pwm.c</PathWithFileName> - <FilenameWithoutPath>wm_pwm.c</FilenameWithoutPath> - <RteFlg>0</RteFlg> - <bShared>0</bShared> - </File> - <File> - <GroupNumber>4</GroupNumber> - <FileNumber>37</FileNumber> - <FileType>1</FileType> - <tvExp>0</tvExp> - <tvExpOptDlg>0</tvExpOptDlg> - <bDave2>0</bDave2> - <PathWithFileName>packages\wm_libraries-latest\Platform\Drivers\adc\wm_adc.c</PathWithFileName> - <FilenameWithoutPath>wm_adc.c</FilenameWithoutPath> - <RteFlg>0</RteFlg> - <bShared>0</bShared> - </File> - <File> - <GroupNumber>4</GroupNumber> - <FileNumber>38</FileNumber> - <FileType>1</FileType> - <tvExp>0</tvExp> - <tvExpOptDlg>0</tvExpOptDlg> - <bDave2>0</bDave2> - <PathWithFileName>packages\wm_libraries-latest\Platform\Drivers\pmu\wm_pmu.c</PathWithFileName> - <FilenameWithoutPath>wm_pmu.c</FilenameWithoutPath> - <RteFlg>0</RteFlg> - <bShared>0</bShared> - </File> - <File> - <GroupNumber>4</GroupNumber> - <FileNumber>39</FileNumber> - <FileType>1</FileType> - <tvExp>0</tvExp> - <tvExpOptDlg>0</tvExpOptDlg> - <bDave2>0</bDave2> - <PathWithFileName>packages\wm_libraries-latest\Platform\Drivers\rtc\wm_rtc.c</PathWithFileName> - <FilenameWithoutPath>wm_rtc.c</FilenameWithoutPath> - <RteFlg>0</RteFlg> - <bShared>0</bShared> - </File> - <File> - <GroupNumber>4</GroupNumber> - <FileNumber>40</FileNumber> - <FileType>1</FileType> - <tvExp>0</tvExp> - <tvExpOptDlg>0</tvExpOptDlg> - <bDave2>0</bDave2> - <PathWithFileName>packages\wm_libraries-latest\Platform\Common\Params\wm_param.c</PathWithFileName> - <FilenameWithoutPath>wm_param.c</FilenameWithoutPath> - <RteFlg>0</RteFlg> - <bShared>0</bShared> - </File> - <File> - <GroupNumber>4</GroupNumber> - <FileNumber>41</FileNumber> - <FileType>1</FileType> - <tvExp>0</tvExp> - <tvExpOptDlg>0</tvExpOptDlg> - <bDave2>0</bDave2> - <PathWithFileName>packages\wm_libraries-latest\Platform\Common\fwup\wm_fwup.c</PathWithFileName> - <FilenameWithoutPath>wm_fwup.c</FilenameWithoutPath> - <RteFlg>0</RteFlg> - <bShared>0</bShared> - </File> - <File> - <GroupNumber>4</GroupNumber> - <FileNumber>42</FileNumber> - <FileType>1</FileType> - <tvExp>0</tvExp> - <tvExpOptDlg>0</tvExpOptDlg> - <bDave2>0</bDave2> - <PathWithFileName>packages\wm_libraries-latest\Platform\Common\crypto\wm_crypto_hard.c</PathWithFileName> - <FilenameWithoutPath>wm_crypto_hard.c</FilenameWithoutPath> - <RteFlg>0</RteFlg> - <bShared>0</bShared> - </File> - <File> - <GroupNumber>4</GroupNumber> - <FileNumber>43</FileNumber> - <FileType>1</FileType> - <tvExp>0</tvExp> - <tvExpOptDlg>0</tvExpOptDlg> - <bDave2>0</bDave2> - <PathWithFileName>packages\wm_libraries-latest\Platform\Common\crypto\digest\hmac.c</PathWithFileName> - <FilenameWithoutPath>hmac.c</FilenameWithoutPath> - <RteFlg>0</RteFlg> - <bShared>0</bShared> - </File> - <File> - <GroupNumber>4</GroupNumber> - <FileNumber>44</FileNumber> - <FileType>1</FileType> - <tvExp>0</tvExp> - <tvExpOptDlg>0</tvExpOptDlg> - <bDave2>0</bDave2> - <PathWithFileName>packages\wm_libraries-latest\Platform\Common\crypto\digest\md2.c</PathWithFileName> - <FilenameWithoutPath>md2.c</FilenameWithoutPath> - <RteFlg>0</RteFlg> - <bShared>0</bShared> - </File> - <File> - <GroupNumber>4</GroupNumber> - <FileNumber>45</FileNumber> - <FileType>1</FileType> - <tvExp>0</tvExp> - <tvExpOptDlg>0</tvExpOptDlg> - <bDave2>0</bDave2> - <PathWithFileName>packages\wm_libraries-latest\Platform\Common\crypto\digest\md4.c</PathWithFileName> - <FilenameWithoutPath>md4.c</FilenameWithoutPath> - <RteFlg>0</RteFlg> - <bShared>0</bShared> - </File> - <File> - <GroupNumber>4</GroupNumber> - <FileNumber>46</FileNumber> - <FileType>1</FileType> - <tvExp>0</tvExp> - <tvExpOptDlg>0</tvExpOptDlg> - <bDave2>0</bDave2> - <PathWithFileName>packages\wm_libraries-latest\Platform\Common\crypto\digest\sha224.c</PathWithFileName> - <FilenameWithoutPath>sha224.c</FilenameWithoutPath> - <RteFlg>0</RteFlg> - <bShared>0</bShared> - </File> - <File> - <GroupNumber>4</GroupNumber> - <FileNumber>47</FileNumber> - <FileType>1</FileType> - <tvExp>0</tvExp> - <tvExpOptDlg>0</tvExpOptDlg> - <bDave2>0</bDave2> - <PathWithFileName>packages\wm_libraries-latest\Platform\Common\crypto\digest\sha384.c</PathWithFileName> - <FilenameWithoutPath>sha384.c</FilenameWithoutPath> - <RteFlg>0</RteFlg> - <bShared>0</bShared> - </File> - <File> - <GroupNumber>4</GroupNumber> - <FileNumber>48</FileNumber> - <FileType>1</FileType> - <tvExp>0</tvExp> - <tvExpOptDlg>0</tvExpOptDlg> - <bDave2>0</bDave2> - <PathWithFileName>packages\wm_libraries-latest\Platform\Common\crypto\digest\sha512.c</PathWithFileName> - <FilenameWithoutPath>sha512.c</FilenameWithoutPath> - <RteFlg>0</RteFlg> - <bShared>0</bShared> - </File> - <File> - <GroupNumber>4</GroupNumber> - <FileNumber>49</FileNumber> - <FileType>1</FileType> - <tvExp>0</tvExp> - <tvExpOptDlg>0</tvExpOptDlg> - <bDave2>0</bDave2> - <PathWithFileName>packages\wm_libraries-latest\Platform\Common\crypto\keyformat\asn1.c</PathWithFileName> - <FilenameWithoutPath>asn1.c</FilenameWithoutPath> - <RteFlg>0</RteFlg> - <bShared>0</bShared> - </File> - <File> - <GroupNumber>4</GroupNumber> - <FileNumber>50</FileNumber> - <FileType>1</FileType> - <tvExp>0</tvExp> - <tvExpOptDlg>0</tvExpOptDlg> - <bDave2>0</bDave2> - <PathWithFileName>packages\wm_libraries-latest\Platform\Common\crypto\keyformat\base64.c</PathWithFileName> - <FilenameWithoutPath>base64.c</FilenameWithoutPath> - <RteFlg>0</RteFlg> - <bShared>0</bShared> - </File> - <File> - <GroupNumber>4</GroupNumber> - <FileNumber>51</FileNumber> - <FileType>1</FileType> - <tvExp>0</tvExp> - <tvExpOptDlg>0</tvExpOptDlg> - <bDave2>0</bDave2> - <PathWithFileName>packages\wm_libraries-latest\Platform\Common\crypto\keyformat\x509.c</PathWithFileName> - <FilenameWithoutPath>x509.c</FilenameWithoutPath> - <RteFlg>0</RteFlg> - <bShared>0</bShared> - </File> - <File> - <GroupNumber>4</GroupNumber> - <FileNumber>52</FileNumber> - <FileType>1</FileType> - <tvExp>0</tvExp> - <tvExpOptDlg>0</tvExpOptDlg> - <bDave2>0</bDave2> - <PathWithFileName>packages\wm_libraries-latest\Platform\Common\crypto\math\pstm_mul_comba.c</PathWithFileName> - <FilenameWithoutPath>pstm_mul_comba.c</FilenameWithoutPath> - <RteFlg>0</RteFlg> - <bShared>0</bShared> - </File> - <File> - <GroupNumber>4</GroupNumber> - <FileNumber>53</FileNumber> - <FileType>1</FileType> - <tvExp>0</tvExp> - <tvExpOptDlg>0</tvExpOptDlg> - <bDave2>0</bDave2> - <PathWithFileName>packages\wm_libraries-latest\Platform\Common\crypto\prng\prng.c</PathWithFileName> - <FilenameWithoutPath>prng.c</FilenameWithoutPath> - <RteFlg>0</RteFlg> - <bShared>0</bShared> - </File> - <File> - <GroupNumber>4</GroupNumber> - <FileNumber>54</FileNumber> - <FileType>1</FileType> - <tvExp>0</tvExp> - <tvExpOptDlg>0</tvExpOptDlg> - <bDave2>0</bDave2> - <PathWithFileName>packages\wm_libraries-latest\Platform\Common\crypto\prng\yarrow.c</PathWithFileName> - <FilenameWithoutPath>yarrow.c</FilenameWithoutPath> - <RteFlg>0</RteFlg> - <bShared>0</bShared> - </File> - <File> - <GroupNumber>4</GroupNumber> - <FileNumber>55</FileNumber> - <FileType>1</FileType> - <tvExp>0</tvExp> - <tvExpOptDlg>0</tvExpOptDlg> - <bDave2>0</bDave2> - <PathWithFileName>packages\wm_libraries-latest\Platform\Common\crypto\pubkey\dh.c</PathWithFileName> - <FilenameWithoutPath>dh.c</FilenameWithoutPath> - <RteFlg>0</RteFlg> - <bShared>0</bShared> - </File> - <File> - <GroupNumber>4</GroupNumber> - <FileNumber>56</FileNumber> - <FileType>1</FileType> - <tvExp>0</tvExp> - <tvExpOptDlg>0</tvExpOptDlg> - <bDave2>0</bDave2> - <PathWithFileName>packages\wm_libraries-latest\Platform\Common\crypto\pubkey\ecc.c</PathWithFileName> - <FilenameWithoutPath>ecc.c</FilenameWithoutPath> - <RteFlg>0</RteFlg> - <bShared>0</bShared> - </File> - <File> - <GroupNumber>4</GroupNumber> - <FileNumber>57</FileNumber> - <FileType>1</FileType> - <tvExp>0</tvExp> - <tvExpOptDlg>0</tvExpOptDlg> - <bDave2>0</bDave2> - <PathWithFileName>packages\wm_libraries-latest\Platform\Common\crypto\pubkey\pkcs.c</PathWithFileName> - <FilenameWithoutPath>pkcs.c</FilenameWithoutPath> - <RteFlg>0</RteFlg> - <bShared>0</bShared> - </File> - <File> - <GroupNumber>4</GroupNumber> - <FileNumber>58</FileNumber> - <FileType>1</FileType> - <tvExp>0</tvExp> - <tvExpOptDlg>0</tvExpOptDlg> - <bDave2>0</bDave2> - <PathWithFileName>packages\wm_libraries-latest\Platform\Common\crypto\pubkey\pubkey.c</PathWithFileName> - <FilenameWithoutPath>pubkey.c</FilenameWithoutPath> - <RteFlg>0</RteFlg> - <bShared>0</bShared> - </File> - <File> - <GroupNumber>4</GroupNumber> - <FileNumber>59</FileNumber> - <FileType>1</FileType> - <tvExp>0</tvExp> - <tvExpOptDlg>0</tvExpOptDlg> - <bDave2>0</bDave2> - <PathWithFileName>packages\wm_libraries-latest\Platform\Common\crypto\pubkey\rsa.c</PathWithFileName> - <FilenameWithoutPath>rsa.c</FilenameWithoutPath> - <RteFlg>0</RteFlg> - <bShared>0</bShared> - </File> - <File> - <GroupNumber>4</GroupNumber> - <FileNumber>60</FileNumber> - <FileType>1</FileType> - <tvExp>0</tvExp> - <tvExpOptDlg>0</tvExpOptDlg> - <bDave2>0</bDave2> - <PathWithFileName>packages\wm_libraries-latest\Platform\Common\crypto\symmetric\aesGCM.c</PathWithFileName> - <FilenameWithoutPath>aesGCM.c</FilenameWithoutPath> - <RteFlg>0</RteFlg> - <bShared>0</bShared> - </File> - <File> - <GroupNumber>4</GroupNumber> - <FileNumber>61</FileNumber> - <FileType>1</FileType> - <tvExp>0</tvExp> - <tvExpOptDlg>0</tvExpOptDlg> - <bDave2>0</bDave2> - <PathWithFileName>packages\wm_libraries-latest\Platform\Common\crypto\symmetric\des3.c</PathWithFileName> - <FilenameWithoutPath>des3.c</FilenameWithoutPath> - <RteFlg>0</RteFlg> - <bShared>0</bShared> - </File> - <File> - <GroupNumber>4</GroupNumber> - <FileNumber>62</FileNumber> - <FileType>1</FileType> - <tvExp>0</tvExp> - <tvExpOptDlg>0</tvExpOptDlg> - <bDave2>0</bDave2> - <PathWithFileName>packages\wm_libraries-latest\Platform\Common\crypto\symmetric\idea.c</PathWithFileName> - <FilenameWithoutPath>idea.c</FilenameWithoutPath> - <RteFlg>0</RteFlg> - <bShared>0</bShared> - </File> - <File> - <GroupNumber>4</GroupNumber> - <FileNumber>63</FileNumber> - <FileType>1</FileType> - <tvExp>0</tvExp> - <tvExpOptDlg>0</tvExpOptDlg> - <bDave2>0</bDave2> - <PathWithFileName>packages\wm_libraries-latest\Platform\Common\crypto\symmetric\rc2.c</PathWithFileName> - <FilenameWithoutPath>rc2.c</FilenameWithoutPath> - <RteFlg>0</RteFlg> - <bShared>0</bShared> - </File> - <File> - <GroupNumber>4</GroupNumber> - <FileNumber>64</FileNumber> - <FileType>1</FileType> - <tvExp>0</tvExp> - <tvExpOptDlg>0</tvExpOptDlg> - <bDave2>0</bDave2> - <PathWithFileName>packages\wm_libraries-latest\Platform\Common\crypto\symmetric\seed.c</PathWithFileName> - <FilenameWithoutPath>seed.c</FilenameWithoutPath> - <RteFlg>0</RteFlg> - <bShared>0</bShared> - </File> - <File> - <GroupNumber>4</GroupNumber> - <FileNumber>65</FileNumber> - <FileType>1</FileType> - <tvExp>0</tvExp> - <tvExpOptDlg>0</tvExpOptDlg> - <bDave2>0</bDave2> - <PathWithFileName>packages\wm_libraries-latest\rtthread\rtthread_patch.c</PathWithFileName> - <FilenameWithoutPath>rtthread_patch.c</FilenameWithoutPath> - <RteFlg>0</RteFlg> - <bShared>0</bShared> - </File> - <File> - <GroupNumber>4</GroupNumber> - <FileNumber>66</FileNumber> - <FileType>1</FileType> - <tvExp>0</tvExp> - <tvExpOptDlg>0</tvExpOptDlg> - <bDave2>0</bDave2> - <PathWithFileName>packages\wm_libraries-latest\rtthread\utils\utils.c</PathWithFileName> - <FilenameWithoutPath>utils.c</FilenameWithoutPath> - <RteFlg>0</RteFlg> - <bShared>0</bShared> - </File> - <File> - <GroupNumber>4</GroupNumber> - <FileNumber>67</FileNumber> - <FileType>2</FileType> - <tvExp>0</tvExp> - <tvExpOptDlg>0</tvExpOptDlg> - <bDave2>0</bDave2> - <PathWithFileName>packages\wm_libraries-latest\rtthread\startup\armcc\startup_venus.S</PathWithFileName> - <FilenameWithoutPath>startup_venus.S</FilenameWithoutPath> - <RteFlg>0</RteFlg> - <bShared>0</bShared> - </File> - <File> - <GroupNumber>4</GroupNumber> - <FileNumber>68</FileNumber> - <FileType>1</FileType> - <tvExp>0</tvExp> - <tvExpOptDlg>0</tvExpOptDlg> - <bDave2>0</bDave2> - <PathWithFileName>packages\wm_libraries-latest\Platform\Boot\armcc\misc.c</PathWithFileName> - <FilenameWithoutPath>misc.c</FilenameWithoutPath> - <RteFlg>0</RteFlg> - <bShared>0</bShared> - </File> - <File> - <GroupNumber>4</GroupNumber> - <FileNumber>69</FileNumber> - <FileType>4</FileType> - <tvExp>0</tvExp> - <tvExpOptDlg>0</tvExpOptDlg> - <bDave2>0</bDave2> - <PathWithFileName>packages\wm_libraries-latest\Lib\Wlan\libwlan_mdk.lib</PathWithFileName> - <FilenameWithoutPath>libwlan_mdk.lib</FilenameWithoutPath> - <RteFlg>0</RteFlg> - <bShared>0</bShared> - </File> - <File> - <GroupNumber>4</GroupNumber> - <FileNumber>70</FileNumber> - <FileType>4</FileType> - <tvExp>0</tvExp> - <tvExpOptDlg>0</tvExpOptDlg> - <bDave2>0</bDave2> - <PathWithFileName>packages\wm_libraries-latest\Lib\oneshot\libwmoneshot_mdk.lib</PathWithFileName> - <FilenameWithoutPath>libwmoneshot_mdk.lib</FilenameWithoutPath> - <RteFlg>0</RteFlg> - <bShared>0</bShared> - </File> - </Group> - - <Group> - <GroupName>cpu</GroupName> - <tvExp>0</tvExp> - <tvExpOptDlg>0</tvExpOptDlg> - <cbSel>0</cbSel> - <RteFlg>0</RteFlg> - <File> - <GroupNumber>5</GroupNumber> - <FileNumber>71</FileNumber> - <FileType>1</FileType> - <tvExp>0</tvExp> - <tvExpOptDlg>0</tvExpOptDlg> - <bDave2>0</bDave2> - <PathWithFileName>..\..\libcpu\arm\common\backtrace.c</PathWithFileName> - <FilenameWithoutPath>backtrace.c</FilenameWithoutPath> - <RteFlg>0</RteFlg> - <bShared>0</bShared> - </File> - <File> - <GroupNumber>5</GroupNumber> - <FileNumber>72</FileNumber> - <FileType>1</FileType> - <tvExp>0</tvExp> - <tvExpOptDlg>0</tvExpOptDlg> - <bDave2>0</bDave2> - <PathWithFileName>..\..\libcpu\arm\common\div0.c</PathWithFileName> - <FilenameWithoutPath>div0.c</FilenameWithoutPath> - <RteFlg>0</RteFlg> - <bShared>0</bShared> - </File> - <File> - <GroupNumber>5</GroupNumber> - <FileNumber>73</FileNumber> - <FileType>1</FileType> - <tvExp>0</tvExp> - <tvExpOptDlg>0</tvExpOptDlg> - <bDave2>0</bDave2> - <PathWithFileName>..\..\libcpu\arm\common\showmem.c</PathWithFileName> - <FilenameWithoutPath>showmem.c</FilenameWithoutPath> - <RteFlg>0</RteFlg> - <bShared>0</bShared> - </File> - <File> - <GroupNumber>5</GroupNumber> - <FileNumber>74</FileNumber> - <FileType>1</FileType> - <tvExp>0</tvExp> - <tvExpOptDlg>0</tvExpOptDlg> - <bDave2>0</bDave2> - <PathWithFileName>..\..\libcpu\arm\cortex-m3\cpuport.c</PathWithFileName> - <FilenameWithoutPath>cpuport.c</FilenameWithoutPath> - <RteFlg>0</RteFlg> - <bShared>0</bShared> - </File> - <File> - <GroupNumber>5</GroupNumber> - <FileNumber>75</FileNumber> - <FileType>2</FileType> - <tvExp>0</tvExp> - <tvExpOptDlg>0</tvExpOptDlg> - <bDave2>0</bDave2> - <PathWithFileName>..\..\libcpu\arm\cortex-m3\context_rvds.S</PathWithFileName> - <FilenameWithoutPath>context_rvds.S</FilenameWithoutPath> - <RteFlg>0</RteFlg> - <bShared>0</bShared> - </File> - </Group> - - <Group> - <GroupName>Filesystem</GroupName> - <tvExp>0</tvExp> - <tvExpOptDlg>0</tvExpOptDlg> - <cbSel>0</cbSel> - <RteFlg>0</RteFlg> - <File> - <GroupNumber>6</GroupNumber> - <FileNumber>76</FileNumber> - <FileType>1</FileType> - <tvExp>0</tvExp> - <tvExpOptDlg>0</tvExpOptDlg> - <bDave2>0</bDave2> - <PathWithFileName>..\..\components\dfs\src\dfs.c</PathWithFileName> - <FilenameWithoutPath>dfs.c</FilenameWithoutPath> - <RteFlg>0</RteFlg> - <bShared>0</bShared> - </File> - <File> - <GroupNumber>6</GroupNumber> - <FileNumber>77</FileNumber> - <FileType>1</FileType> - <tvExp>0</tvExp> - <tvExpOptDlg>0</tvExpOptDlg> - <bDave2>0</bDave2> - <PathWithFileName>..\..\components\dfs\src\dfs_file.c</PathWithFileName> - <FilenameWithoutPath>dfs_file.c</FilenameWithoutPath> - <RteFlg>0</RteFlg> - <bShared>0</bShared> - </File> - <File> - <GroupNumber>6</GroupNumber> - <FileNumber>78</FileNumber> - <FileType>1</FileType> - <tvExp>0</tvExp> - <tvExpOptDlg>0</tvExpOptDlg> - <bDave2>0</bDave2> - <PathWithFileName>..\..\components\dfs\src\dfs_fs.c</PathWithFileName> - <FilenameWithoutPath>dfs_fs.c</FilenameWithoutPath> - <RteFlg>0</RteFlg> - <bShared>0</bShared> - </File> - <File> - <GroupNumber>6</GroupNumber> - <FileNumber>79</FileNumber> - <FileType>1</FileType> - <tvExp>0</tvExp> - <tvExpOptDlg>0</tvExpOptDlg> - <bDave2>0</bDave2> - <PathWithFileName>..\..\components\dfs\src\dfs_posix.c</PathWithFileName> - <FilenameWithoutPath>dfs_posix.c</FilenameWithoutPath> - <RteFlg>0</RteFlg> - <bShared>0</bShared> - </File> - <File> - <GroupNumber>6</GroupNumber> - <FileNumber>80</FileNumber> - <FileType>1</FileType> - <tvExp>0</tvExp> - <tvExpOptDlg>0</tvExpOptDlg> - <bDave2>0</bDave2> - <PathWithFileName>..\..\components\dfs\src\poll.c</PathWithFileName> - <FilenameWithoutPath>poll.c</FilenameWithoutPath> - <RteFlg>0</RteFlg> - <bShared>0</bShared> - </File> - <File> - <GroupNumber>6</GroupNumber> - <FileNumber>81</FileNumber> - <FileType>1</FileType> - <tvExp>0</tvExp> - <tvExpOptDlg>0</tvExpOptDlg> - <bDave2>0</bDave2> - <PathWithFileName>..\..\components\dfs\src\select.c</PathWithFileName> - <FilenameWithoutPath>select.c</FilenameWithoutPath> - <RteFlg>0</RteFlg> - <bShared>0</bShared> - </File> - <File> - <GroupNumber>6</GroupNumber> - <FileNumber>82</FileNumber> - <FileType>1</FileType> - <tvExp>0</tvExp> - <tvExpOptDlg>0</tvExpOptDlg> - <bDave2>0</bDave2> - <PathWithFileName>..\..\components\dfs\filesystems\devfs\devfs.c</PathWithFileName> - <FilenameWithoutPath>devfs.c</FilenameWithoutPath> - <RteFlg>0</RteFlg> - <bShared>0</bShared> - </File> - </Group> - - <Group> - <GroupName>DeviceDrivers</GroupName> - <tvExp>0</tvExp> - <tvExpOptDlg>0</tvExpOptDlg> - <cbSel>0</cbSel> - <RteFlg>0</RteFlg> - <File> - <GroupNumber>7</GroupNumber> - <FileNumber>83</FileNumber> - <FileType>1</FileType> - <tvExp>0</tvExp> - <tvExpOptDlg>0</tvExpOptDlg> - <bDave2>0</bDave2> - <PathWithFileName>..\..\components\drivers\misc\pin.c</PathWithFileName> - <FilenameWithoutPath>pin.c</FilenameWithoutPath> - <RteFlg>0</RteFlg> - <bShared>0</bShared> - </File> - <File> - <GroupNumber>7</GroupNumber> - <FileNumber>84</FileNumber> - <FileType>1</FileType> - <tvExp>0</tvExp> - <tvExpOptDlg>0</tvExpOptDlg> - <bDave2>0</bDave2> - <PathWithFileName>..\..\components\drivers\serial\serial.c</PathWithFileName> - <FilenameWithoutPath>serial.c</FilenameWithoutPath> - <RteFlg>0</RteFlg> - <bShared>0</bShared> - </File> - <File> - <GroupNumber>7</GroupNumber> - <FileNumber>85</FileNumber> - <FileType>1</FileType> - <tvExp>0</tvExp> - <tvExpOptDlg>0</tvExpOptDlg> - <bDave2>0</bDave2> - <PathWithFileName>..\..\components\drivers\src\completion.c</PathWithFileName> - <FilenameWithoutPath>completion.c</FilenameWithoutPath> - <RteFlg>0</RteFlg> - <bShared>0</bShared> - </File> - <File> - <GroupNumber>7</GroupNumber> - <FileNumber>86</FileNumber> - <FileType>1</FileType> - <tvExp>0</tvExp> - <tvExpOptDlg>0</tvExpOptDlg> - <bDave2>0</bDave2> - <PathWithFileName>..\..\components\drivers\src\dataqueue.c</PathWithFileName> - <FilenameWithoutPath>dataqueue.c</FilenameWithoutPath> - <RteFlg>0</RteFlg> - <bShared>0</bShared> - </File> - <File> - <GroupNumber>7</GroupNumber> - <FileNumber>87</FileNumber> - <FileType>1</FileType> - <tvExp>0</tvExp> - <tvExpOptDlg>0</tvExpOptDlg> - <bDave2>0</bDave2> - <PathWithFileName>..\..\components\drivers\src\pipe.c</PathWithFileName> - <FilenameWithoutPath>pipe.c</FilenameWithoutPath> - <RteFlg>0</RteFlg> - <bShared>0</bShared> - </File> - <File> - <GroupNumber>7</GroupNumber> - <FileNumber>88</FileNumber> - <FileType>1</FileType> - <tvExp>0</tvExp> - <tvExpOptDlg>0</tvExpOptDlg> - <bDave2>0</bDave2> - <PathWithFileName>..\..\components\drivers\src\ringblk_buf.c</PathWithFileName> - <FilenameWithoutPath>ringblk_buf.c</FilenameWithoutPath> - <RteFlg>0</RteFlg> - <bShared>0</bShared> - </File> - <File> - <GroupNumber>7</GroupNumber> - <FileNumber>89</FileNumber> - <FileType>1</FileType> - <tvExp>0</tvExp> - <tvExpOptDlg>0</tvExpOptDlg> - <bDave2>0</bDave2> - <PathWithFileName>..\..\components\drivers\src\ringbuffer.c</PathWithFileName> - <FilenameWithoutPath>ringbuffer.c</FilenameWithoutPath> - <RteFlg>0</RteFlg> - <bShared>0</bShared> - </File> - <File> - <GroupNumber>7</GroupNumber> - <FileNumber>90</FileNumber> - <FileType>1</FileType> - <tvExp>0</tvExp> - <tvExpOptDlg>0</tvExpOptDlg> - <bDave2>0</bDave2> - <PathWithFileName>..\..\components\drivers\src\waitqueue.c</PathWithFileName> - <FilenameWithoutPath>waitqueue.c</FilenameWithoutPath> - <RteFlg>0</RteFlg> - <bShared>0</bShared> - </File> - <File> - <GroupNumber>7</GroupNumber> - <FileNumber>91</FileNumber> - <FileType>1</FileType> - <tvExp>0</tvExp> - <tvExpOptDlg>0</tvExpOptDlg> - <bDave2>0</bDave2> - <PathWithFileName>..\..\components\drivers\src\workqueue.c</PathWithFileName> - <FilenameWithoutPath>workqueue.c</FilenameWithoutPath> - <RteFlg>0</RteFlg> - <bShared>0</bShared> - </File> - <File> - <GroupNumber>7</GroupNumber> - <FileNumber>92</FileNumber> - <FileType>1</FileType> - <tvExp>0</tvExp> - <tvExpOptDlg>0</tvExpOptDlg> - <bDave2>0</bDave2> - <PathWithFileName>..\..\components\drivers\wlan\wlan_cfg.c</PathWithFileName> - <FilenameWithoutPath>wlan_cfg.c</FilenameWithoutPath> - <RteFlg>0</RteFlg> - <bShared>0</bShared> - </File> - <File> - <GroupNumber>7</GroupNumber> - <FileNumber>93</FileNumber> - <FileType>1</FileType> - <tvExp>0</tvExp> - <tvExpOptDlg>0</tvExpOptDlg> - <bDave2>0</bDave2> - <PathWithFileName>..\..\components\drivers\wlan\wlan_cmd.c</PathWithFileName> - <FilenameWithoutPath>wlan_cmd.c</FilenameWithoutPath> - <RteFlg>0</RteFlg> - <bShared>0</bShared> - </File> - <File> - <GroupNumber>7</GroupNumber> - <FileNumber>94</FileNumber> - <FileType>1</FileType> - <tvExp>0</tvExp> - <tvExpOptDlg>0</tvExpOptDlg> - <bDave2>0</bDave2> - <PathWithFileName>..\..\components\drivers\wlan\wlan_dev.c</PathWithFileName> - <FilenameWithoutPath>wlan_dev.c</FilenameWithoutPath> - <RteFlg>0</RteFlg> - <bShared>0</bShared> - </File> - <File> - <GroupNumber>7</GroupNumber> - <FileNumber>95</FileNumber> - <FileType>1</FileType> - <tvExp>0</tvExp> - <tvExpOptDlg>0</tvExpOptDlg> - <bDave2>0</bDave2> - <PathWithFileName>..\..\components\drivers\wlan\wlan_lwip.c</PathWithFileName> - <FilenameWithoutPath>wlan_lwip.c</FilenameWithoutPath> - <RteFlg>0</RteFlg> - <bShared>0</bShared> - </File> - <File> - <GroupNumber>7</GroupNumber> - <FileNumber>96</FileNumber> - <FileType>1</FileType> - <tvExp>0</tvExp> - <tvExpOptDlg>0</tvExpOptDlg> - <bDave2>0</bDave2> - <PathWithFileName>..\..\components\drivers\wlan\wlan_mgnt.c</PathWithFileName> - <FilenameWithoutPath>wlan_mgnt.c</FilenameWithoutPath> - <RteFlg>0</RteFlg> - <bShared>0</bShared> - </File> - <File> - <GroupNumber>7</GroupNumber> - <FileNumber>97</FileNumber> - <FileType>1</FileType> - <tvExp>0</tvExp> - <tvExpOptDlg>0</tvExpOptDlg> - <bDave2>0</bDave2> - <PathWithFileName>..\..\components\drivers\wlan\wlan_prot.c</PathWithFileName> - <FilenameWithoutPath>wlan_prot.c</FilenameWithoutPath> - <RteFlg>0</RteFlg> - <bShared>0</bShared> - </File> - <File> - <GroupNumber>7</GroupNumber> - <FileNumber>98</FileNumber> - <FileType>1</FileType> - <tvExp>0</tvExp> - <tvExpOptDlg>0</tvExpOptDlg> - <bDave2>0</bDave2> - <PathWithFileName>..\..\components\drivers\wlan\wlan_workqueue.c</PathWithFileName> - <FilenameWithoutPath>wlan_workqueue.c</FilenameWithoutPath> - <RteFlg>0</RteFlg> - <bShared>0</bShared> - </File> - </Group> - - <Group> - <GroupName>finsh</GroupName> - <tvExp>0</tvExp> - <tvExpOptDlg>0</tvExpOptDlg> - <cbSel>0</cbSel> - <RteFlg>0</RteFlg> - <File> - <GroupNumber>8</GroupNumber> - <FileNumber>99</FileNumber> - <FileType>1</FileType> - <tvExp>0</tvExp> - <tvExpOptDlg>0</tvExpOptDlg> - <bDave2>0</bDave2> - <PathWithFileName>..\..\components\finsh\shell.c</PathWithFileName> - <FilenameWithoutPath>shell.c</FilenameWithoutPath> - <RteFlg>0</RteFlg> - <bShared>0</bShared> - </File> - <File> - <GroupNumber>8</GroupNumber> - <FileNumber>100</FileNumber> - <FileType>1</FileType> - <tvExp>0</tvExp> - <tvExpOptDlg>0</tvExpOptDlg> - <bDave2>0</bDave2> - <PathWithFileName>..\..\components\finsh\symbol.c</PathWithFileName> - <FilenameWithoutPath>symbol.c</FilenameWithoutPath> - <RteFlg>0</RteFlg> - <bShared>0</bShared> - </File> - <File> - <GroupNumber>8</GroupNumber> - <FileNumber>101</FileNumber> - <FileType>1</FileType> - <tvExp>0</tvExp> - <tvExpOptDlg>0</tvExpOptDlg> - <bDave2>0</bDave2> - <PathWithFileName>..\..\components\finsh\cmd.c</PathWithFileName> - <FilenameWithoutPath>cmd.c</FilenameWithoutPath> - <RteFlg>0</RteFlg> - <bShared>0</bShared> - </File> - <File> - <GroupNumber>8</GroupNumber> - <FileNumber>102</FileNumber> - <FileType>1</FileType> - <tvExp>0</tvExp> - <tvExpOptDlg>0</tvExpOptDlg> - <bDave2>0</bDave2> - <PathWithFileName>..\..\components\finsh\msh.c</PathWithFileName> - <FilenameWithoutPath>msh.c</FilenameWithoutPath> - <RteFlg>0</RteFlg> - <bShared>0</bShared> - </File> - <File> - <GroupNumber>8</GroupNumber> - <FileNumber>103</FileNumber> - <FileType>1</FileType> - <tvExp>0</tvExp> - <tvExpOptDlg>0</tvExpOptDlg> - <bDave2>0</bDave2> - <PathWithFileName>..\..\components\finsh\msh_cmd.c</PathWithFileName> - <FilenameWithoutPath>msh_cmd.c</FilenameWithoutPath> - <RteFlg>0</RteFlg> - <bShared>0</bShared> - </File> - <File> - <GroupNumber>8</GroupNumber> - <FileNumber>104</FileNumber> - <FileType>1</FileType> - <tvExp>0</tvExp> - <tvExpOptDlg>0</tvExpOptDlg> - <bDave2>0</bDave2> - <PathWithFileName>..\..\components\finsh\msh_file.c</PathWithFileName> - <FilenameWithoutPath>msh_file.c</FilenameWithoutPath> - <RteFlg>0</RteFlg> - <bShared>0</bShared> - </File> - </Group> - - <Group> - <GroupName>libc</GroupName> - <tvExp>0</tvExp> - <tvExpOptDlg>0</tvExpOptDlg> - <cbSel>0</cbSel> - <RteFlg>0</RteFlg> - <File> - <GroupNumber>9</GroupNumber> - <FileNumber>105</FileNumber> - <FileType>1</FileType> - <tvExp>0</tvExp> - <tvExpOptDlg>0</tvExpOptDlg> - <bDave2>0</bDave2> - <PathWithFileName>..\..\components\libc\compilers\armlibc\libc.c</PathWithFileName> - <FilenameWithoutPath>libc.c</FilenameWithoutPath> - <RteFlg>0</RteFlg> - <bShared>0</bShared> - </File> - <File> - <GroupNumber>9</GroupNumber> - <FileNumber>106</FileNumber> - <FileType>1</FileType> - <tvExp>0</tvExp> - <tvExpOptDlg>0</tvExpOptDlg> - <bDave2>0</bDave2> - <PathWithFileName>..\..\components\libc\compilers\armlibc\mem_std.c</PathWithFileName> - <FilenameWithoutPath>mem_std.c</FilenameWithoutPath> - <RteFlg>0</RteFlg> - <bShared>0</bShared> - </File> - <File> - <GroupNumber>9</GroupNumber> - <FileNumber>107</FileNumber> - <FileType>1</FileType> - <tvExp>0</tvExp> - <tvExpOptDlg>0</tvExpOptDlg> - <bDave2>0</bDave2> - <PathWithFileName>..\..\components\libc\compilers\armlibc\stdio.c</PathWithFileName> - <FilenameWithoutPath>stdio.c</FilenameWithoutPath> - <RteFlg>0</RteFlg> - <bShared>0</bShared> - </File> - <File> - <GroupNumber>9</GroupNumber> - <FileNumber>108</FileNumber> - <FileType>1</FileType> - <tvExp>0</tvExp> - <tvExpOptDlg>0</tvExpOptDlg> - <bDave2>0</bDave2> - <PathWithFileName>..\..\components\libc\compilers\armlibc\stubs.c</PathWithFileName> - <FilenameWithoutPath>stubs.c</FilenameWithoutPath> - <RteFlg>0</RteFlg> - <bShared>0</bShared> - </File> - <File> - <GroupNumber>9</GroupNumber> - <FileNumber>109</FileNumber> - <FileType>1</FileType> - <tvExp>0</tvExp> - <tvExpOptDlg>0</tvExpOptDlg> - <bDave2>0</bDave2> - <PathWithFileName>..\..\components\libc\compilers\armlibc\time.c</PathWithFileName> - <FilenameWithoutPath>time.c</FilenameWithoutPath> - <RteFlg>0</RteFlg> - <bShared>0</bShared> - </File> - <File> - <GroupNumber>9</GroupNumber> - <FileNumber>110</FileNumber> - <FileType>1</FileType> - <tvExp>0</tvExp> - <tvExpOptDlg>0</tvExpOptDlg> - <bDave2>0</bDave2> - <PathWithFileName>..\..\components\libc\compilers\common\gmtime_r.c</PathWithFileName> - <FilenameWithoutPath>gmtime_r.c</FilenameWithoutPath> - <RteFlg>0</RteFlg> - <bShared>0</bShared> - </File> - </Group> - - <Group> - <GroupName>lwIP</GroupName> - <tvExp>0</tvExp> - <tvExpOptDlg>0</tvExpOptDlg> - <cbSel>0</cbSel> - <RteFlg>0</RteFlg> - <File> - <GroupNumber>10</GroupNumber> - <FileNumber>111</FileNumber> - <FileType>1</FileType> - <tvExp>0</tvExp> - <tvExpOptDlg>0</tvExpOptDlg> - <bDave2>0</bDave2> - <PathWithFileName>..\..\components\net\lwip-2.0.2\src\arch\sys_arch.c</PathWithFileName> - <FilenameWithoutPath>sys_arch.c</FilenameWithoutPath> - <RteFlg>0</RteFlg> - <bShared>0</bShared> - </File> - <File> - <GroupNumber>10</GroupNumber> - <FileNumber>112</FileNumber> - <FileType>1</FileType> - <tvExp>0</tvExp> - <tvExpOptDlg>0</tvExpOptDlg> - <bDave2>0</bDave2> - <PathWithFileName>..\..\components\net\lwip-2.0.2\src\api\api_lib.c</PathWithFileName> - <FilenameWithoutPath>api_lib.c</FilenameWithoutPath> - <RteFlg>0</RteFlg> - <bShared>0</bShared> - </File> - <File> - <GroupNumber>10</GroupNumber> - <FileNumber>113</FileNumber> - <FileType>1</FileType> - <tvExp>0</tvExp> - <tvExpOptDlg>0</tvExpOptDlg> - <bDave2>0</bDave2> - <PathWithFileName>..\..\components\net\lwip-2.0.2\src\api\api_msg.c</PathWithFileName> - <FilenameWithoutPath>api_msg.c</FilenameWithoutPath> - <RteFlg>0</RteFlg> - <bShared>0</bShared> - </File> - <File> - <GroupNumber>10</GroupNumber> - <FileNumber>114</FileNumber> - <FileType>1</FileType> - <tvExp>0</tvExp> - <tvExpOptDlg>0</tvExpOptDlg> - <bDave2>0</bDave2> - <PathWithFileName>..\..\components\net\lwip-2.0.2\src\api\err.c</PathWithFileName> - <FilenameWithoutPath>err.c</FilenameWithoutPath> - <RteFlg>0</RteFlg> - <bShared>0</bShared> - </File> - <File> - <GroupNumber>10</GroupNumber> - <FileNumber>115</FileNumber> - <FileType>1</FileType> - <tvExp>0</tvExp> - <tvExpOptDlg>0</tvExpOptDlg> - <bDave2>0</bDave2> - <PathWithFileName>..\..\components\net\lwip-2.0.2\src\api\netbuf.c</PathWithFileName> - <FilenameWithoutPath>netbuf.c</FilenameWithoutPath> - <RteFlg>0</RteFlg> - <bShared>0</bShared> - </File> - <File> - <GroupNumber>10</GroupNumber> - <FileNumber>116</FileNumber> - <FileType>1</FileType> - <tvExp>0</tvExp> - <tvExpOptDlg>0</tvExpOptDlg> - <bDave2>0</bDave2> - <PathWithFileName>..\..\components\net\lwip-2.0.2\src\api\netdb.c</PathWithFileName> - <FilenameWithoutPath>netdb.c</FilenameWithoutPath> - <RteFlg>0</RteFlg> - <bShared>0</bShared> - </File> - <File> - <GroupNumber>10</GroupNumber> - <FileNumber>117</FileNumber> - <FileType>1</FileType> - <tvExp>0</tvExp> - <tvExpOptDlg>0</tvExpOptDlg> - <bDave2>0</bDave2> - <PathWithFileName>..\..\components\net\lwip-2.0.2\src\api\netifapi.c</PathWithFileName> - <FilenameWithoutPath>netifapi.c</FilenameWithoutPath> - <RteFlg>0</RteFlg> - <bShared>0</bShared> - </File> - <File> - <GroupNumber>10</GroupNumber> - <FileNumber>118</FileNumber> - <FileType>1</FileType> - <tvExp>0</tvExp> - <tvExpOptDlg>0</tvExpOptDlg> - <bDave2>0</bDave2> - <PathWithFileName>..\..\components\net\lwip-2.0.2\src\api\sockets.c</PathWithFileName> - <FilenameWithoutPath>sockets.c</FilenameWithoutPath> - <RteFlg>0</RteFlg> - <bShared>0</bShared> - </File> - <File> - <GroupNumber>10</GroupNumber> - <FileNumber>119</FileNumber> - <FileType>1</FileType> - <tvExp>0</tvExp> - <tvExpOptDlg>0</tvExpOptDlg> - <bDave2>0</bDave2> - <PathWithFileName>..\..\components\net\lwip-2.0.2\src\api\tcpip.c</PathWithFileName> - <FilenameWithoutPath>tcpip.c</FilenameWithoutPath> - <RteFlg>0</RteFlg> - <bShared>0</bShared> - </File> - <File> - <GroupNumber>10</GroupNumber> - <FileNumber>120</FileNumber> - <FileType>1</FileType> - <tvExp>0</tvExp> - <tvExpOptDlg>0</tvExpOptDlg> - <bDave2>0</bDave2> - <PathWithFileName>..\..\components\net\lwip-2.0.2\src\core\def.c</PathWithFileName> - <FilenameWithoutPath>def.c</FilenameWithoutPath> - <RteFlg>0</RteFlg> - <bShared>0</bShared> - </File> - <File> - <GroupNumber>10</GroupNumber> - <FileNumber>121</FileNumber> - <FileType>1</FileType> - <tvExp>0</tvExp> - <tvExpOptDlg>0</tvExpOptDlg> - <bDave2>0</bDave2> - <PathWithFileName>..\..\components\net\lwip-2.0.2\src\core\dns.c</PathWithFileName> - <FilenameWithoutPath>dns.c</FilenameWithoutPath> - <RteFlg>0</RteFlg> - <bShared>0</bShared> - </File> - <File> - <GroupNumber>10</GroupNumber> - <FileNumber>122</FileNumber> - <FileType>1</FileType> - <tvExp>0</tvExp> - <tvExpOptDlg>0</tvExpOptDlg> - <bDave2>0</bDave2> - <PathWithFileName>..\..\components\net\lwip-2.0.2\src\core\inet_chksum.c</PathWithFileName> - <FilenameWithoutPath>inet_chksum.c</FilenameWithoutPath> - <RteFlg>0</RteFlg> - <bShared>0</bShared> - </File> - <File> - <GroupNumber>10</GroupNumber> - <FileNumber>123</FileNumber> - <FileType>1</FileType> - <tvExp>0</tvExp> - <tvExpOptDlg>0</tvExpOptDlg> - <bDave2>0</bDave2> - <PathWithFileName>..\..\components\net\lwip-2.0.2\src\core\init.c</PathWithFileName> - <FilenameWithoutPath>init.c</FilenameWithoutPath> - <RteFlg>0</RteFlg> - <bShared>0</bShared> - </File> - <File> - <GroupNumber>10</GroupNumber> - <FileNumber>124</FileNumber> - <FileType>1</FileType> - <tvExp>0</tvExp> - <tvExpOptDlg>0</tvExpOptDlg> - <bDave2>0</bDave2> - <PathWithFileName>..\..\components\net\lwip-2.0.2\src\core\ip.c</PathWithFileName> - <FilenameWithoutPath>ip.c</FilenameWithoutPath> - <RteFlg>0</RteFlg> - <bShared>0</bShared> - </File> - <File> - <GroupNumber>10</GroupNumber> - <FileNumber>125</FileNumber> - <FileType>1</FileType> - <tvExp>0</tvExp> - <tvExpOptDlg>0</tvExpOptDlg> - <bDave2>0</bDave2> - <PathWithFileName>..\..\components\net\lwip-2.0.2\src\core\memp.c</PathWithFileName> - <FilenameWithoutPath>memp.c</FilenameWithoutPath> - <RteFlg>0</RteFlg> - <bShared>0</bShared> - </File> - <File> - <GroupNumber>10</GroupNumber> - <FileNumber>126</FileNumber> - <FileType>1</FileType> - <tvExp>0</tvExp> - <tvExpOptDlg>0</tvExpOptDlg> - <bDave2>0</bDave2> - <PathWithFileName>..\..\components\net\lwip-2.0.2\src\core\netif.c</PathWithFileName> - <FilenameWithoutPath>netif.c</FilenameWithoutPath> - <RteFlg>0</RteFlg> - <bShared>0</bShared> - </File> - <File> - <GroupNumber>10</GroupNumber> - <FileNumber>127</FileNumber> - <FileType>1</FileType> - <tvExp>0</tvExp> - <tvExpOptDlg>0</tvExpOptDlg> - <bDave2>0</bDave2> - <PathWithFileName>..\..\components\net\lwip-2.0.2\src\core\pbuf.c</PathWithFileName> - <FilenameWithoutPath>pbuf.c</FilenameWithoutPath> - <RteFlg>0</RteFlg> - <bShared>0</bShared> - </File> - <File> - <GroupNumber>10</GroupNumber> - <FileNumber>128</FileNumber> - <FileType>1</FileType> - <tvExp>0</tvExp> - <tvExpOptDlg>0</tvExpOptDlg> - <bDave2>0</bDave2> - <PathWithFileName>..\..\components\net\lwip-2.0.2\src\core\raw.c</PathWithFileName> - <FilenameWithoutPath>raw.c</FilenameWithoutPath> - <RteFlg>0</RteFlg> - <bShared>0</bShared> - </File> - <File> - <GroupNumber>10</GroupNumber> - <FileNumber>129</FileNumber> - <FileType>1</FileType> - <tvExp>0</tvExp> - <tvExpOptDlg>0</tvExpOptDlg> - <bDave2>0</bDave2> - <PathWithFileName>..\..\components\net\lwip-2.0.2\src\core\stats.c</PathWithFileName> - <FilenameWithoutPath>stats.c</FilenameWithoutPath> - <RteFlg>0</RteFlg> - <bShared>0</bShared> - </File> - <File> - <GroupNumber>10</GroupNumber> - <FileNumber>130</FileNumber> - <FileType>1</FileType> - <tvExp>0</tvExp> - <tvExpOptDlg>0</tvExpOptDlg> - <bDave2>0</bDave2> - <PathWithFileName>..\..\components\net\lwip-2.0.2\src\core\sys.c</PathWithFileName> - <FilenameWithoutPath>sys.c</FilenameWithoutPath> - <RteFlg>0</RteFlg> - <bShared>0</bShared> - </File> - <File> - <GroupNumber>10</GroupNumber> - <FileNumber>131</FileNumber> - <FileType>1</FileType> - <tvExp>0</tvExp> - <tvExpOptDlg>0</tvExpOptDlg> - <bDave2>0</bDave2> - <PathWithFileName>..\..\components\net\lwip-2.0.2\src\core\tcp.c</PathWithFileName> - <FilenameWithoutPath>tcp.c</FilenameWithoutPath> - <RteFlg>0</RteFlg> - <bShared>0</bShared> - </File> - <File> - <GroupNumber>10</GroupNumber> - <FileNumber>132</FileNumber> - <FileType>1</FileType> - <tvExp>0</tvExp> - <tvExpOptDlg>0</tvExpOptDlg> - <bDave2>0</bDave2> - <PathWithFileName>..\..\components\net\lwip-2.0.2\src\core\tcp_in.c</PathWithFileName> - <FilenameWithoutPath>tcp_in.c</FilenameWithoutPath> - <RteFlg>0</RteFlg> - <bShared>0</bShared> - </File> - <File> - <GroupNumber>10</GroupNumber> - <FileNumber>133</FileNumber> - <FileType>1</FileType> - <tvExp>0</tvExp> - <tvExpOptDlg>0</tvExpOptDlg> - <bDave2>0</bDave2> - <PathWithFileName>..\..\components\net\lwip-2.0.2\src\core\tcp_out.c</PathWithFileName> - <FilenameWithoutPath>tcp_out.c</FilenameWithoutPath> - <RteFlg>0</RteFlg> - <bShared>0</bShared> - </File> - <File> - <GroupNumber>10</GroupNumber> - <FileNumber>134</FileNumber> - <FileType>1</FileType> - <tvExp>0</tvExp> - <tvExpOptDlg>0</tvExpOptDlg> - <bDave2>0</bDave2> - <PathWithFileName>..\..\components\net\lwip-2.0.2\src\core\timeouts.c</PathWithFileName> - <FilenameWithoutPath>timeouts.c</FilenameWithoutPath> - <RteFlg>0</RteFlg> - <bShared>0</bShared> - </File> - <File> - <GroupNumber>10</GroupNumber> - <FileNumber>135</FileNumber> - <FileType>1</FileType> - <tvExp>0</tvExp> - <tvExpOptDlg>0</tvExpOptDlg> - <bDave2>0</bDave2> - <PathWithFileName>..\..\components\net\lwip-2.0.2\src\core\udp.c</PathWithFileName> - <FilenameWithoutPath>udp.c</FilenameWithoutPath> - <RteFlg>0</RteFlg> - <bShared>0</bShared> - </File> - <File> - <GroupNumber>10</GroupNumber> - <FileNumber>136</FileNumber> - <FileType>1</FileType> - <tvExp>0</tvExp> - <tvExpOptDlg>0</tvExpOptDlg> - <bDave2>0</bDave2> - <PathWithFileName>..\..\components\net\lwip-2.0.2\src\netif\ethernet.c</PathWithFileName> - <FilenameWithoutPath>ethernet.c</FilenameWithoutPath> - <RteFlg>0</RteFlg> - <bShared>0</bShared> - </File> - <File> - <GroupNumber>10</GroupNumber> - <FileNumber>137</FileNumber> - <FileType>1</FileType> - <tvExp>0</tvExp> - <tvExpOptDlg>0</tvExpOptDlg> - <bDave2>0</bDave2> - <PathWithFileName>..\..\components\net\lwip-2.0.2\src\netif\ethernetif.c</PathWithFileName> - <FilenameWithoutPath>ethernetif.c</FilenameWithoutPath> - <RteFlg>0</RteFlg> - <bShared>0</bShared> - </File> - <File> - <GroupNumber>10</GroupNumber> - <FileNumber>138</FileNumber> - <FileType>1</FileType> - <tvExp>0</tvExp> - <tvExpOptDlg>0</tvExpOptDlg> - <bDave2>0</bDave2> - <PathWithFileName>..\..\components\net\lwip-2.0.2\src\netif\lowpan6.c</PathWithFileName> - <FilenameWithoutPath>lowpan6.c</FilenameWithoutPath> - <RteFlg>0</RteFlg> - <bShared>0</bShared> - </File> - <File> - <GroupNumber>10</GroupNumber> - <FileNumber>139</FileNumber> - <FileType>1</FileType> - <tvExp>0</tvExp> - <tvExpOptDlg>0</tvExpOptDlg> - <bDave2>0</bDave2> - <PathWithFileName>..\..\components\net\lwip-2.0.2\src\core\ipv4\autoip.c</PathWithFileName> - <FilenameWithoutPath>autoip.c</FilenameWithoutPath> - <RteFlg>0</RteFlg> - <bShared>0</bShared> - </File> - <File> - <GroupNumber>10</GroupNumber> - <FileNumber>140</FileNumber> - <FileType>1</FileType> - <tvExp>0</tvExp> - <tvExpOptDlg>0</tvExpOptDlg> - <bDave2>0</bDave2> - <PathWithFileName>..\..\components\net\lwip-2.0.2\src\core\ipv4\dhcp.c</PathWithFileName> - <FilenameWithoutPath>dhcp.c</FilenameWithoutPath> - <RteFlg>0</RteFlg> - <bShared>0</bShared> - </File> - <File> - <GroupNumber>10</GroupNumber> - <FileNumber>141</FileNumber> - <FileType>1</FileType> - <tvExp>0</tvExp> - <tvExpOptDlg>0</tvExpOptDlg> - <bDave2>0</bDave2> - <PathWithFileName>..\..\components\net\lwip-2.0.2\src\core\ipv4\etharp.c</PathWithFileName> - <FilenameWithoutPath>etharp.c</FilenameWithoutPath> - <RteFlg>0</RteFlg> - <bShared>0</bShared> - </File> - <File> - <GroupNumber>10</GroupNumber> - <FileNumber>142</FileNumber> - <FileType>1</FileType> - <tvExp>0</tvExp> - <tvExpOptDlg>0</tvExpOptDlg> - <bDave2>0</bDave2> - <PathWithFileName>..\..\components\net\lwip-2.0.2\src\core\ipv4\icmp.c</PathWithFileName> - <FilenameWithoutPath>icmp.c</FilenameWithoutPath> - <RteFlg>0</RteFlg> - <bShared>0</bShared> - </File> - <File> - <GroupNumber>10</GroupNumber> - <FileNumber>143</FileNumber> - <FileType>1</FileType> - <tvExp>0</tvExp> - <tvExpOptDlg>0</tvExpOptDlg> - <bDave2>0</bDave2> - <PathWithFileName>..\..\components\net\lwip-2.0.2\src\core\ipv4\igmp.c</PathWithFileName> - <FilenameWithoutPath>igmp.c</FilenameWithoutPath> - <RteFlg>0</RteFlg> - <bShared>0</bShared> - </File> - <File> - <GroupNumber>10</GroupNumber> - <FileNumber>144</FileNumber> - <FileType>1</FileType> - <tvExp>0</tvExp> - <tvExpOptDlg>0</tvExpOptDlg> - <bDave2>0</bDave2> - <PathWithFileName>..\..\components\net\lwip-2.0.2\src\core\ipv4\ip4.c</PathWithFileName> - <FilenameWithoutPath>ip4.c</FilenameWithoutPath> - <RteFlg>0</RteFlg> - <bShared>0</bShared> - </File> - <File> - <GroupNumber>10</GroupNumber> - <FileNumber>145</FileNumber> - <FileType>1</FileType> - <tvExp>0</tvExp> - <tvExpOptDlg>0</tvExpOptDlg> - <bDave2>0</bDave2> - <PathWithFileName>..\..\components\net\lwip-2.0.2\src\core\ipv4\ip4_addr.c</PathWithFileName> - <FilenameWithoutPath>ip4_addr.c</FilenameWithoutPath> - <RteFlg>0</RteFlg> - <bShared>0</bShared> - </File> - <File> - <GroupNumber>10</GroupNumber> - <FileNumber>146</FileNumber> - <FileType>1</FileType> - <tvExp>0</tvExp> - <tvExpOptDlg>0</tvExpOptDlg> - <bDave2>0</bDave2> - <PathWithFileName>..\..\components\net\lwip-2.0.2\src\core\ipv4\ip4_frag.c</PathWithFileName> - <FilenameWithoutPath>ip4_frag.c</FilenameWithoutPath> - <RteFlg>0</RteFlg> - <bShared>0</bShared> - </File> - <File> - <GroupNumber>10</GroupNumber> - <FileNumber>147</FileNumber> - <FileType>1</FileType> - <tvExp>0</tvExp> - <tvExpOptDlg>0</tvExpOptDlg> - <bDave2>0</bDave2> - <PathWithFileName>..\..\components\net\lwip-2.0.2\src\apps\ping\ping.c</PathWithFileName> - <FilenameWithoutPath>ping.c</FilenameWithoutPath> - <RteFlg>0</RteFlg> - <bShared>0</bShared> - </File> - <File> - <GroupNumber>10</GroupNumber> - <FileNumber>148</FileNumber> - <FileType>1</FileType> - <tvExp>0</tvExp> - <tvExpOptDlg>0</tvExpOptDlg> - <bDave2>0</bDave2> - <PathWithFileName>..\..\components\net\lwip_dhcpd\dhcp_server_raw.c</PathWithFileName> - <FilenameWithoutPath>dhcp_server_raw.c</FilenameWithoutPath> - <RteFlg>0</RteFlg> - <bShared>0</bShared> - </File> - </Group> - - <Group> - <GroupName>netdev</GroupName> - <tvExp>0</tvExp> - <tvExpOptDlg>0</tvExpOptDlg> - <cbSel>0</cbSel> - <RteFlg>0</RteFlg> - <File> - <GroupNumber>11</GroupNumber> - <FileNumber>149</FileNumber> - <FileType>1</FileType> - <tvExp>0</tvExp> - <tvExpOptDlg>0</tvExpOptDlg> - <bDave2>0</bDave2> - <PathWithFileName>..\..\components\net\netdev\src\netdev.c</PathWithFileName> - <FilenameWithoutPath>netdev.c</FilenameWithoutPath> - <RteFlg>0</RteFlg> - <bShared>0</bShared> - </File> - <File> - <GroupNumber>11</GroupNumber> - <FileNumber>150</FileNumber> - <FileType>1</FileType> - <tvExp>0</tvExp> - <tvExpOptDlg>0</tvExpOptDlg> - <bDave2>0</bDave2> - <PathWithFileName>..\..\components\net\netdev\src\netdev_ipaddr.c</PathWithFileName> - <FilenameWithoutPath>netdev_ipaddr.c</FilenameWithoutPath> - <RteFlg>0</RteFlg> - <bShared>0</bShared> - </File> - </Group> - - <Group> - <GroupName>SAL</GroupName> - <tvExp>0</tvExp> - <tvExpOptDlg>0</tvExpOptDlg> - <cbSel>0</cbSel> - <RteFlg>0</RteFlg> - <File> - <GroupNumber>12</GroupNumber> - <FileNumber>151</FileNumber> - <FileType>1</FileType> - <tvExp>0</tvExp> - <tvExpOptDlg>0</tvExpOptDlg> - <bDave2>0</bDave2> - <PathWithFileName>..\..\components\net\sal_socket\src\sal_socket.c</PathWithFileName> - <FilenameWithoutPath>sal_socket.c</FilenameWithoutPath> - <RteFlg>0</RteFlg> - <bShared>0</bShared> - </File> - <File> - <GroupNumber>12</GroupNumber> - <FileNumber>152</FileNumber> - <FileType>1</FileType> - <tvExp>0</tvExp> - <tvExpOptDlg>0</tvExpOptDlg> - <bDave2>0</bDave2> - <PathWithFileName>..\..\components\net\sal_socket\socket\net_netdb.c</PathWithFileName> - <FilenameWithoutPath>net_netdb.c</FilenameWithoutPath> - <RteFlg>0</RteFlg> - <bShared>0</bShared> - </File> - <File> - <GroupNumber>12</GroupNumber> - <FileNumber>153</FileNumber> - <FileType>1</FileType> - <tvExp>0</tvExp> - <tvExpOptDlg>0</tvExpOptDlg> - <bDave2>0</bDave2> - <PathWithFileName>..\..\components\net\sal_socket\impl\af_inet_lwip.c</PathWithFileName> - <FilenameWithoutPath>af_inet_lwip.c</FilenameWithoutPath> - <RteFlg>0</RteFlg> - <bShared>0</bShared> - </File> - <File> - <GroupNumber>12</GroupNumber> - <FileNumber>154</FileNumber> - <FileType>1</FileType> - <tvExp>0</tvExp> - <tvExpOptDlg>0</tvExpOptDlg> - <bDave2>0</bDave2> - <PathWithFileName>..\..\components\net\sal_socket\socket\net_sockets.c</PathWithFileName> - <FilenameWithoutPath>net_sockets.c</FilenameWithoutPath> - <RteFlg>0</RteFlg> - <bShared>0</bShared> - </File> - <File> - <GroupNumber>12</GroupNumber> - <FileNumber>155</FileNumber> - <FileType>1</FileType> - <tvExp>0</tvExp> - <tvExpOptDlg>0</tvExpOptDlg> - <bDave2>0</bDave2> - <PathWithFileName>..\..\components\net\sal_socket\dfs_net\dfs_net.c</PathWithFileName> - <FilenameWithoutPath>dfs_net.c</FilenameWithoutPath> - <RteFlg>0</RteFlg> - <bShared>0</bShared> - </File> - </Group> - - <Group> - <GroupName>Utilities</GroupName> - <tvExp>0</tvExp> - <tvExpOptDlg>0</tvExpOptDlg> - <cbSel>0</cbSel> - <RteFlg>0</RteFlg> - <File> - <GroupNumber>13</GroupNumber> - <FileNumber>156</FileNumber> - <FileType>1</FileType> - <tvExp>0</tvExp> - <tvExpOptDlg>0</tvExpOptDlg> - <bDave2>0</bDave2> - <PathWithFileName>..\..\components\utilities\ulog\ulog.c</PathWithFileName> - <FilenameWithoutPath>ulog.c</FilenameWithoutPath> - <RteFlg>0</RteFlg> - <bShared>0</bShared> - </File> - <File> - <GroupNumber>13</GroupNumber> - <FileNumber>157</FileNumber> - <FileType>1</FileType> - <tvExp>0</tvExp> - <tvExpOptDlg>0</tvExpOptDlg> - <bDave2>0</bDave2> - <PathWithFileName>..\..\components\utilities\ulog\backend\console_be.c</PathWithFileName> - <FilenameWithoutPath>console_be.c</FilenameWithoutPath> - <RteFlg>0</RteFlg> - <bShared>0</bShared> - </File> - </Group> - </ProjectOpt> diff --git a/bsp/w60x/project.uvprojx b/bsp/w60x/project.uvprojx index e37532fc91..bc5b966ace 100644 --- a/bsp/w60x/project.uvprojx +++ b/bsp/w60x/project.uvprojx @@ -1,10 +1,7 @@ <?xml version="1.0" encoding="UTF-8" standalone="no" ?> <Project xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="project_projx.xsd"> - <SchemaVersion>2.1</SchemaVersion> - <Header>### uVision Project, (C) Keil Software</Header> - <Targets> <Target> <TargetName>rt-thread</TargetName> @@ -16,31 +13,31 @@ <TargetCommonOption> <Device>ARMCM3</Device> <Vendor>ARM</Vendor> - <PackID>ARM.CMSIS.5.3.0</PackID> + <PackID>ARM.CMSIS.5.4.0</PackID> <PackURL>http://www.keil.com/pack/</PackURL> <Cpu>IRAM(0x20000000,0x00020000) IROM(0x00000000,0x00040000) CPUTYPE("Cortex-M3") CLOCK(12000000) ESEL ELITTLE</Cpu> - <FlashUtilSpec></FlashUtilSpec> - <StartupFile></StartupFile> + <FlashUtilSpec /> + <StartupFile /> <FlashDriverDll>UL2CM3(-S0 -C0 -P0 -FD20000000 -FC1000)</FlashDriverDll> <DeviceId>0</DeviceId> <RegisterFile>$$Device:ARMCM3$Device\ARM\ARMCM3\Include\ARMCM3.h</RegisterFile> - <MemoryEnv></MemoryEnv> - <Cmp></Cmp> - <Asm></Asm> - <Linker></Linker> - <OHString></OHString> - <InfinionOptionDll></InfinionOptionDll> - <SLE66CMisc></SLE66CMisc> - <SLE66AMisc></SLE66AMisc> - <SLE66LinkerMisc></SLE66LinkerMisc> + <MemoryEnv /> + <Cmp /> + <Asm /> + <Linker /> + <OHString /> + <InfinionOptionDll /> + <SLE66CMisc /> + <SLE66AMisc /> + <SLE66LinkerMisc /> <SFDFile>$$Device:ARMCM3$Device\ARM\SVD\ARMCM3.svd</SFDFile> <bCustSvd>0</bCustSvd> <UseEnv>0</UseEnv> - <BinPath></BinPath> - <IncludePath></IncludePath> - <LibPath></LibPath> - <RegisterFilePath></RegisterFilePath> - <DBRegisterFilePath></DBRegisterFilePath> + <BinPath /> + <IncludePath /> + <LibPath /> + <RegisterFilePath /> + <DBRegisterFilePath /> <TargetStatus> <Error>0</Error> <ExitCodeStop>0</ExitCodeStop> @@ -62,8 +59,8 @@ <BeforeCompile> <RunUserProg1>0</RunUserProg1> <RunUserProg2>0</RunUserProg2> - <UserProg1Name></UserProg1Name> - <UserProg2Name></UserProg2Name> + <UserProg1Name /> + <UserProg2Name /> <UserProg1Dos16Mode>0</UserProg1Dos16Mode> <UserProg2Dos16Mode>0</UserProg2Dos16Mode> <nStopU1X>0</nStopU1X> @@ -72,8 +69,8 @@ <BeforeMake> <RunUserProg1>0</RunUserProg1> <RunUserProg2>0</RunUserProg2> - <UserProg1Name></UserProg1Name> - <UserProg2Name></UserProg2Name> + <UserProg1Name /> + <UserProg2Name /> <UserProg1Dos16Mode>0</UserProg1Dos16Mode> <UserProg2Dos16Mode>0</UserProg2Dos16Mode> <nStopB1X>0</nStopB1X> @@ -90,7 +87,7 @@ <nStopA2X>0</nStopA2X> </AfterMake> <SelectedForBatchBuild>0</SelectedForBatchBuild> - <SVCSIdString></SVCSIdString> + <SVCSIdString /> </TargetCommonOption> <CommonProperty> <UseCPPCompiler>0</UseCPPCompiler> @@ -104,8 +101,8 @@ <AssembleAssemblyFile>0</AssembleAssemblyFile> <PublicsOnly>0</PublicsOnly> <StopOnExitCode>3</StopOnExitCode> - <CustomArgument></CustomArgument> - <IncludeLibraryModules></IncludeLibraryModules> + <CustomArgument /> + <IncludeLibraryModules /> <ComprImg>1</ComprImg> </CommonProperty> <DllOption> @@ -139,10 +136,10 @@ <bUseTDR>0</bUseTDR> <Flash2>Segger\JL2CM3.dll</Flash2> <Flash3>"" ()</Flash3> - <Flash4></Flash4> - <pFcarmOut></pFcarmOut> - <pFcarmGrp></pFcarmGrp> - <pFcArmRoot></pFcArmRoot> + <Flash4 /> + <pFcarmOut /> + <pFcarmGrp /> + <pFcArmRoot /> <FcArmLst>0</FcArmLst> </Utilities> <TargetArmAds> @@ -175,7 +172,7 @@ <RvctClst>0</RvctClst> <GenPPlst>0</GenPPlst> <AdsCpuType>"Cortex-M3"</AdsCpuType> - <RvctDeviceName></RvctDeviceName> + <RvctDeviceName /> <mOS>0</mOS> <uocRom>0</uocRom> <uocRam>0</uocRam> @@ -184,6 +181,7 @@ <hadXRAM>0</hadXRAM> <uocXRam>0</uocXRam> <RvdsVP>0</RvdsVP> + <RvdsMve>0</RvdsMve> <hadIRAM2>0</hadIRAM2> <hadIROM2>0</hadIROM2> <StupSel>8</StupSel> @@ -299,7 +297,7 @@ <OCR_RVCT9> <Type>0</Type> <StartAddress>0x20000000</StartAddress> - <Size>0x3c000</Size> + <Size>0x28000</Size> </OCR_RVCT9> <OCR_RVCT10> <Type>0</Type> @@ -307,14 +305,14 @@ <Size>0x0</Size> </OCR_RVCT10> </OnChipMemories> - <RvctStartVector></RvctStartVector> + <RvctStartVector /> </ArmAdsMisc> <Cads> <interw>1</interw> <Optim>1</Optim> <oTime>0</oTime> <SplitLS>0</SplitLS> - <OneElfS>0</OneElfS> + <OneElfS>1</OneElfS> <Strict>0</Strict> <EnumInt>0</EnumInt> <PlainCh>0</PlainCh> @@ -336,8 +334,8 @@ <VariousControls> <MiscControls>--c99 --gnu</MiscControls> <Define>RT_USING_ARM_LIBC, WM_W600</Define> - <Undefine></Undefine> - <IncludePath>.;..\..\include;applications;drivers;packages\wm_libraries-latest;packages\wm_libraries-latest\Include;packages\wm_libraries-latest\Include\Driver;packages\wm_libraries-latest\Platform\Drivers\spi;packages\wm_libraries-latest\Include\OS;packages\wm_libraries-latest\Include\Platform;packages\wm_libraries-latest\Include\OS;packages\wm_libraries-latest\Include\WiFi;packages\wm_libraries-latest\Platform\Inc;packages\wm_libraries-latest\Platform\Common\Params;packages\wm_libraries-latest\Platform\Common\crypto;packages\wm_libraries-latest\Platform\Common\crypto\digest;packages\wm_libraries-latest\Platform\Common\crypto\math;packages\wm_libraries-latest\Platform\Common\crypto\symmetric;packages\wm_libraries-latest\Platform\Boot\gcc;..\..\libcpu\arm\common;..\..\libcpu\arm\cortex-m3;..\..\components\dfs\include;..\..\components\dfs\filesystems\devfs;..\..\components\drivers\include;..\..\components\drivers\include;..\..\components\drivers\include;..\..\components\drivers\wlan;..\..\components\finsh;..\..\components\libc\compilers\armlibc;..\..\components\libc\compilers\common;..\..\components\net\lwip-2.0.2\src;..\..\components\net\lwip-2.0.2\src\include;..\..\components\net\lwip-2.0.2\src\include\ipv4;..\..\components\net\lwip-2.0.2\src\arch\include;..\..\components\net\lwip-2.0.2\src\include\netif;..\..\components\net\lwip_dhcpd;..\..\components\net\netdev\include;..\..\components\net\sal_socket\include;..\..\components\net\sal_socket\include\socket;..\..\components\net\sal_socket\impl;..\..\components\net\sal_socket\include\dfs_net;..\..\components\net\sal_socket\include\dfs_net\sys_select;..\..\components\net\sal_socket\include\socket\sys_socket;..\..\components\utilities\ulog</IncludePath> + <Undefine /> + <IncludePath>.;..\..\include;applications;drivers;oneshot;packages\netutils-v1.1.0\ntp;packages\wm_libraries-latest;packages\wm_libraries-latest\Include;packages\wm_libraries-latest\Include\Driver;packages\wm_libraries-latest\Platform\Drivers\spi;packages\wm_libraries-latest\Include\OS;packages\wm_libraries-latest\Include\Platform;packages\wm_libraries-latest\Include\OS;packages\wm_libraries-latest\Include\WiFi;packages\wm_libraries-latest\Platform\Inc;packages\wm_libraries-latest\Platform\Common\Params;packages\wm_libraries-latest\Platform\Common\crypto;packages\wm_libraries-latest\Platform\Common\crypto\digest;packages\wm_libraries-latest\Platform\Common\crypto\math;packages\wm_libraries-latest\Platform\Common\crypto\symmetric;packages\wm_libraries-latest\Platform\Boot\gcc;..\..\libcpu\arm\common;..\..\libcpu\arm\cortex-m3;..\..\components\dfs\include;..\..\components\dfs\filesystems\devfs;..\..\components\drivers\hwcrypto;.;..\..\components\drivers\include;..\..\components\drivers\include;..\..\components\drivers\include;..\..\components\drivers\include;..\..\components\drivers\include;..\..\components\drivers\spi;..\..\components\drivers\include;..\..\components\drivers\include;..\..\components\drivers\include;..\..\components\drivers\wlan;..\..\components\finsh;..\..\components\libc\compilers\armlibc;..\..\components\libc\compilers\common;..\..\components\net\lwip-2.0.2\src;..\..\components\net\lwip-2.0.2\src\include;..\..\components\net\lwip-2.0.2\src\include\ipv4;..\..\components\net\lwip-2.0.2\src\arch\include;..\..\components\net\lwip-2.0.2\src\include\netif;..\..\components\net\lwip_dhcpd;..\..\components\net\netdev\include;..\..\components\net\sal_socket\include;..\..\components\net\sal_socket\include\socket;..\..\components\net\sal_socket\impl;..\..\components\net\sal_socket\include\dfs_net;..\..\components\net\sal_socket\include\dfs_net\sys_select;..\..\components\net\sal_socket\include\socket\sys_socket;..\..\components\utilities\ulog</IncludePath> </VariousControls> </Cads> <Aads> @@ -352,10 +350,10 @@ <useXO>0</useXO> <uClangAs>0</uClangAs> <VariousControls> - <MiscControls></MiscControls> - <Define></Define> - <Undefine></Undefine> - <IncludePath></IncludePath> + <MiscControls /> + <Define /> + <Undefine /> + <IncludePath /> </VariousControls> </Aads> <LDads> @@ -367,13 +365,13 @@ <useFile>0</useFile> <TextAddressRange>0x08000000</TextAddressRange> <DataAddressRange>0x20000000</DataAddressRange> - <pXoBase></pXoBase> - <ScatterFile></ScatterFile> - <IncludeLibs></IncludeLibs> - <IncludeLibsPath></IncludeLibsPath> - <Misc></Misc> - <LinkerInputFile></LinkerInputFile> - <DisabledWarnings></DisabledWarnings> + <pXoBase /> + <ScatterFile /> + <IncludeLibs /> + <IncludeLibsPath /> + <Misc /> + <LinkerInputFile /> + <DisabledWarnings /> </LDads> </TargetArmAds> </TargetOption> @@ -386,71 +384,99 @@ <FileType>1</FileType> <FilePath>..\..\src\clock.c</FilePath> </File> + </Files> + <Files> <File> <FileName>components.c</FileName> <FileType>1</FileType> <FilePath>..\..\src\components.c</FilePath> </File> + </Files> + <Files> <File> <FileName>cpu.c</FileName> <FileType>1</FileType> <FilePath>..\..\src\cpu.c</FilePath> </File> + </Files> + <Files> <File> <FileName>device.c</FileName> <FileType>1</FileType> <FilePath>..\..\src\device.c</FilePath> </File> + </Files> + <Files> <File> <FileName>idle.c</FileName> <FileType>1</FileType> <FilePath>..\..\src\idle.c</FilePath> </File> + </Files> + <Files> <File> <FileName>ipc.c</FileName> <FileType>1</FileType> <FilePath>..\..\src\ipc.c</FilePath> </File> + </Files> + <Files> <File> <FileName>irq.c</FileName> <FileType>1</FileType> <FilePath>..\..\src\irq.c</FilePath> </File> + </Files> + <Files> <File> <FileName>kservice.c</FileName> <FileType>1</FileType> <FilePath>..\..\src\kservice.c</FilePath> </File> + </Files> + <Files> <File> <FileName>mem.c</FileName> <FileType>1</FileType> <FilePath>..\..\src\mem.c</FilePath> </File> + </Files> + <Files> <File> <FileName>mempool.c</FileName> <FileType>1</FileType> <FilePath>..\..\src\mempool.c</FilePath> </File> + </Files> + <Files> <File> <FileName>object.c</FileName> <FileType>1</FileType> <FilePath>..\..\src\object.c</FilePath> </File> + </Files> + <Files> <File> <FileName>scheduler.c</FileName> <FileType>1</FileType> <FilePath>..\..\src\scheduler.c</FilePath> </File> + </Files> + <Files> <File> <FileName>signal.c</FileName> <FileType>1</FileType> <FilePath>..\..\src\signal.c</FilePath> </File> + </Files> + <Files> <File> <FileName>thread.c</FileName> <FileType>1</FileType> <FilePath>..\..\src\thread.c</FilePath> </File> + </Files> + <Files> <File> <FileName>timer.c</FileName> <FileType>1</FileType> @@ -476,21 +502,36 @@ <FileType>1</FileType> <FilePath>drivers\board.c</FilePath> </File> + </Files> + <Files> <File> <FileName>drv_uart.c</FileName> <FileType>1</FileType> <FilePath>drivers\drv_uart.c</FilePath> </File> + </Files> + <Files> + <File> + <FileName>drv_flash.c</FileName> + <FileType>1</FileType> + <FilePath>drivers\drv_flash.c</FilePath> + </File> + </Files> + <Files> <File> <FileName>pin_map.c</FileName> <FileType>1</FileType> <FilePath>drivers\pin_map.c</FilePath> </File> + </Files> + <Files> <File> <FileName>drv_wifi.c</FileName> <FileType>1</FileType> <FilePath>drivers\drv_wifi.c</FilePath> </File> + </Files> + <Files> <File> <FileName>drv_pin.c</FileName> <FileType>1</FileType> @@ -499,6 +540,26 @@ </Files> </Group> <Group> + <GroupName>oneshot</GroupName> + <Files> + <File> + <FileName>oneshot.c</FileName> + <FileType>1</FileType> + <FilePath>oneshot\oneshot.c</FilePath> + </File> + </Files> + </Group> + <Group> + <GroupName>NetUtils</GroupName> + <Files> + <File> + <FileName>ntp.c</FileName> + <FileType>1</FileType> + <FilePath>packages\netutils-v1.1.0\ntp\ntp.c</FilePath> + </File> + </Files> + </Group> + <Group> <GroupName>Libraries</GroupName> <Files> <File> @@ -506,241 +567,337 @@ <FileType>1</FileType> <FilePath>packages\wm_libraries-latest\Platform\Drivers\cpu\wm_cpu.c</FilePath> </File> + </Files> + <Files> <File> <FileName>wm_gpio.c</FileName> <FileType>1</FileType> <FilePath>packages\wm_libraries-latest\Platform\Drivers\gpio\wm_gpio.c</FilePath> </File> + </Files> + <Files> <File> <FileName>wm_io.c</FileName> <FileType>1</FileType> <FilePath>packages\wm_libraries-latest\Platform\Drivers\io\wm_io.c</FilePath> </File> + </Files> + <Files> <File> <FileName>wm_gpio_afsel.c</FileName> <FileType>1</FileType> <FilePath>packages\wm_libraries-latest\Platform\Drivers\gpio\wm_gpio_afsel.c</FilePath> </File> + </Files> + <Files> <File> <FileName>wm_irq.c</FileName> <FileType>1</FileType> <FilePath>packages\wm_libraries-latest\Platform\Drivers\irq\wm_irq.c</FilePath> </File> + </Files> + <Files> <File> <FileName>wm_efuse.c</FileName> <FileType>1</FileType> <FilePath>packages\wm_libraries-latest\Platform\Drivers\efuse\wm_efuse.c</FilePath> </File> + </Files> + <Files> <File> <FileName>wm_internal_fls.c</FileName> <FileType>1</FileType> <FilePath>packages\wm_libraries-latest\Platform\Drivers\internalflash\wm_internal_fls.c</FilePath> </File> + </Files> + <Files> <File> <FileName>wm_hostspi.c</FileName> <FileType>1</FileType> <FilePath>packages\wm_libraries-latest\Platform\Drivers\spi\wm_hostspi.c</FilePath> </File> + </Files> + <Files> <File> <FileName>wm_fls.c</FileName> <FileType>1</FileType> <FilePath>packages\wm_libraries-latest\Platform\Drivers\flash\wm_fls.c</FilePath> </File> + </Files> + <Files> <File> <FileName>wm_fls_gd25qxx.c</FileName> <FileType>1</FileType> <FilePath>packages\wm_libraries-latest\Platform\Drivers\flash\wm_fls_gd25qxx.c</FilePath> </File> + </Files> + <Files> <File> <FileName>wm_dma.c</FileName> <FileType>1</FileType> <FilePath>packages\wm_libraries-latest\Platform\Drivers\dma\wm_dma.c</FilePath> </File> + </Files> + <Files> <File> <FileName>wm_timer.c</FileName> <FileType>1</FileType> <FilePath>packages\wm_libraries-latest\Platform\Drivers\timer\wm_timer.c</FilePath> </File> + </Files> + <Files> <File> <FileName>wm_watchdog.c</FileName> <FileType>1</FileType> <FilePath>packages\wm_libraries-latest\Platform\Drivers\watchdog\wm_watchdog.c</FilePath> </File> + </Files> + <Files> <File> <FileName>wm_i2c.c</FileName> <FileType>1</FileType> <FilePath>packages\wm_libraries-latest\Platform\Drivers\i2c\wm_i2c.c</FilePath> </File> + </Files> + <Files> <File> <FileName>wm_pwm.c</FileName> <FileType>1</FileType> <FilePath>packages\wm_libraries-latest\Platform\Drivers\pwm\wm_pwm.c</FilePath> </File> + </Files> + <Files> <File> <FileName>wm_adc.c</FileName> <FileType>1</FileType> <FilePath>packages\wm_libraries-latest\Platform\Drivers\adc\wm_adc.c</FilePath> </File> + </Files> + <Files> <File> <FileName>wm_pmu.c</FileName> <FileType>1</FileType> <FilePath>packages\wm_libraries-latest\Platform\Drivers\pmu\wm_pmu.c</FilePath> </File> + </Files> + <Files> <File> <FileName>wm_rtc.c</FileName> <FileType>1</FileType> <FilePath>packages\wm_libraries-latest\Platform\Drivers\rtc\wm_rtc.c</FilePath> </File> + </Files> + <Files> <File> <FileName>wm_param.c</FileName> <FileType>1</FileType> <FilePath>packages\wm_libraries-latest\Platform\Common\Params\wm_param.c</FilePath> </File> + </Files> + <Files> <File> <FileName>wm_fwup.c</FileName> <FileType>1</FileType> <FilePath>packages\wm_libraries-latest\Platform\Common\fwup\wm_fwup.c</FilePath> </File> + </Files> + <Files> <File> <FileName>wm_crypto_hard.c</FileName> <FileType>1</FileType> <FilePath>packages\wm_libraries-latest\Platform\Common\crypto\wm_crypto_hard.c</FilePath> </File> + </Files> + <Files> <File> - <FileName>hmac.c</FileName> + <FileName>wm_crypto_hmac.c</FileName> <FileType>1</FileType> - <FilePath>packages\wm_libraries-latest\Platform\Common\crypto\digest\hmac.c</FilePath> + <FilePath>packages\wm_libraries-latest\Platform\Common\crypto\digest\wm_crypto_hmac.c</FilePath> </File> + </Files> + <Files> <File> - <FileName>md2.c</FileName> + <FileName>wm_crypto_md2.c</FileName> <FileType>1</FileType> - <FilePath>packages\wm_libraries-latest\Platform\Common\crypto\digest\md2.c</FilePath> + <FilePath>packages\wm_libraries-latest\Platform\Common\crypto\digest\wm_crypto_md2.c</FilePath> </File> + </Files> + <Files> <File> - <FileName>md4.c</FileName> + <FileName>wm_crypto_md4.c</FileName> <FileType>1</FileType> - <FilePath>packages\wm_libraries-latest\Platform\Common\crypto\digest\md4.c</FilePath> + <FilePath>packages\wm_libraries-latest\Platform\Common\crypto\digest\wm_crypto_md4.c</FilePath> </File> + </Files> + <Files> <File> <FileName>sha224.c</FileName> <FileType>1</FileType> <FilePath>packages\wm_libraries-latest\Platform\Common\crypto\digest\sha224.c</FilePath> </File> + </Files> + <Files> <File> <FileName>sha384.c</FileName> <FileType>1</FileType> <FilePath>packages\wm_libraries-latest\Platform\Common\crypto\digest\sha384.c</FilePath> </File> + </Files> + <Files> <File> - <FileName>sha512.c</FileName> + <FileName>wm_crypto_sha512.c</FileName> <FileType>1</FileType> - <FilePath>packages\wm_libraries-latest\Platform\Common\crypto\digest\sha512.c</FilePath> + <FilePath>packages\wm_libraries-latest\Platform\Common\crypto\digest\wm_crypto_sha512.c</FilePath> </File> + </Files> + <Files> <File> <FileName>asn1.c</FileName> <FileType>1</FileType> <FilePath>packages\wm_libraries-latest\Platform\Common\crypto\keyformat\asn1.c</FilePath> </File> + </Files> + <Files> <File> - <FileName>base64.c</FileName> + <FileName>wm_crypto_base64.c</FileName> <FileType>1</FileType> - <FilePath>packages\wm_libraries-latest\Platform\Common\crypto\keyformat\base64.c</FilePath> + <FilePath>packages\wm_libraries-latest\Platform\Common\crypto\keyformat\wm_crypto_base64.c</FilePath> </File> + </Files> + <Files> <File> - <FileName>x509.c</FileName> + <FileName>wm_crypto_x509.c</FileName> <FileType>1</FileType> - <FilePath>packages\wm_libraries-latest\Platform\Common\crypto\keyformat\x509.c</FilePath> + <FilePath>packages\wm_libraries-latest\Platform\Common\crypto\keyformat\wm_crypto_x509.c</FilePath> </File> + </Files> + <Files> <File> <FileName>pstm_mul_comba.c</FileName> <FileType>1</FileType> <FilePath>packages\wm_libraries-latest\Platform\Common\crypto\math\pstm_mul_comba.c</FilePath> </File> + </Files> + <Files> <File> <FileName>prng.c</FileName> <FileType>1</FileType> <FilePath>packages\wm_libraries-latest\Platform\Common\crypto\prng\prng.c</FilePath> </File> + </Files> + <Files> <File> <FileName>yarrow.c</FileName> <FileType>1</FileType> <FilePath>packages\wm_libraries-latest\Platform\Common\crypto\prng\yarrow.c</FilePath> </File> + </Files> + <Files> <File> <FileName>dh.c</FileName> <FileType>1</FileType> <FilePath>packages\wm_libraries-latest\Platform\Common\crypto\pubkey\dh.c</FilePath> </File> + </Files> + <Files> <File> <FileName>ecc.c</FileName> <FileType>1</FileType> <FilePath>packages\wm_libraries-latest\Platform\Common\crypto\pubkey\ecc.c</FilePath> </File> + </Files> + <Files> <File> <FileName>pkcs.c</FileName> <FileType>1</FileType> <FilePath>packages\wm_libraries-latest\Platform\Common\crypto\pubkey\pkcs.c</FilePath> </File> + </Files> + <Files> <File> <FileName>pubkey.c</FileName> <FileType>1</FileType> <FilePath>packages\wm_libraries-latest\Platform\Common\crypto\pubkey\pubkey.c</FilePath> </File> + </Files> + <Files> <File> - <FileName>rsa.c</FileName> + <FileName>wm_crypto_rsa.c</FileName> <FileType>1</FileType> - <FilePath>packages\wm_libraries-latest\Platform\Common\crypto\pubkey\rsa.c</FilePath> + <FilePath>packages\wm_libraries-latest\Platform\Common\crypto\pubkey\wm_crypto_rsa.c</FilePath> </File> + </Files> + <Files> <File> <FileName>aesGCM.c</FileName> <FileType>1</FileType> <FilePath>packages\wm_libraries-latest\Platform\Common\crypto\symmetric\aesGCM.c</FilePath> </File> + </Files> + <Files> <File> <FileName>des3.c</FileName> <FileType>1</FileType> <FilePath>packages\wm_libraries-latest\Platform\Common\crypto\symmetric\des3.c</FilePath> </File> + </Files> + <Files> <File> <FileName>idea.c</FileName> <FileType>1</FileType> <FilePath>packages\wm_libraries-latest\Platform\Common\crypto\symmetric\idea.c</FilePath> </File> + </Files> + <Files> <File> <FileName>rc2.c</FileName> <FileType>1</FileType> <FilePath>packages\wm_libraries-latest\Platform\Common\crypto\symmetric\rc2.c</FilePath> </File> + </Files> + <Files> <File> <FileName>seed.c</FileName> <FileType>1</FileType> <FilePath>packages\wm_libraries-latest\Platform\Common\crypto\symmetric\seed.c</FilePath> </File> + </Files> + <Files> <File> <FileName>rtthread_patch.c</FileName> <FileType>1</FileType> <FilePath>packages\wm_libraries-latest\rtthread\rtthread_patch.c</FilePath> </File> + </Files> + <Files> <File> <FileName>utils.c</FileName> <FileType>1</FileType> <FilePath>packages\wm_libraries-latest\rtthread\utils\utils.c</FilePath> </File> + </Files> + <Files> <File> <FileName>startup_venus.S</FileName> <FileType>2</FileType> <FilePath>packages\wm_libraries-latest\rtthread\startup\armcc\startup_venus.S</FilePath> </File> + </Files> + <Files> <File> <FileName>misc.c</FileName> <FileType>1</FileType> <FilePath>packages\wm_libraries-latest\Platform\Boot\armcc\misc.c</FilePath> </File> + </Files> + <Files> <File> <FileName>libwlan_mdk.lib</FileName> <FileType>4</FileType> <FilePath>packages\wm_libraries-latest\Lib\Wlan\libwlan_mdk.lib</FilePath> </File> + </Files> + <Files> <File> <FileName>libwmoneshot_mdk.lib</FileName> <FileType>4</FileType> @@ -756,21 +913,29 @@ <FileType>1</FileType> <FilePath>..\..\libcpu\arm\common\backtrace.c</FilePath> </File> + </Files> + <Files> <File> <FileName>div0.c</FileName> <FileType>1</FileType> <FilePath>..\..\libcpu\arm\common\div0.c</FilePath> </File> + </Files> + <Files> <File> <FileName>showmem.c</FileName> <FileType>1</FileType> <FilePath>..\..\libcpu\arm\common\showmem.c</FilePath> </File> + </Files> + <Files> <File> <FileName>cpuport.c</FileName> <FileType>1</FileType> <FilePath>..\..\libcpu\arm\cortex-m3\cpuport.c</FilePath> </File> + </Files> + <Files> <File> <FileName>context_rvds.S</FileName> <FileType>2</FileType> @@ -786,31 +951,43 @@ <FileType>1</FileType> <FilePath>..\..\components\dfs\src\dfs.c</FilePath> </File> + </Files> + <Files> <File> <FileName>dfs_file.c</FileName> <FileType>1</FileType> <FilePath>..\..\components\dfs\src\dfs_file.c</FilePath> </File> + </Files> + <Files> <File> <FileName>dfs_fs.c</FileName> <FileType>1</FileType> <FilePath>..\..\components\dfs\src\dfs_fs.c</FilePath> </File> + </Files> + <Files> <File> <FileName>dfs_posix.c</FileName> <FileType>1</FileType> <FilePath>..\..\components\dfs\src\dfs_posix.c</FilePath> </File> + </Files> + <Files> <File> <FileName>poll.c</FileName> <FileType>1</FileType> <FilePath>..\..\components\dfs\src\poll.c</FilePath> </File> + </Files> + <Files> <File> <FileName>select.c</FileName> <FileType>1</FileType> <FilePath>..\..\components\dfs\src\select.c</FilePath> </File> + </Files> + <Files> <File> <FileName>devfs.c</FileName> <FileType>1</FileType> @@ -822,86 +999,240 @@ <GroupName>DeviceDrivers</GroupName> <Files> <File> + <FileName>hwcrypto.c</FileName> + <FileType>1</FileType> + <FilePath>..\..\components\drivers\hwcrypto\hwcrypto.c</FilePath> + </File> + </Files> + <Files> + <File> + <FileName>hw_symmetric.c</FileName> + <FileType>1</FileType> + <FilePath>..\..\components\drivers\hwcrypto\hw_symmetric.c</FilePath> + </File> + </Files> + <Files> + <File> + <FileName>hw_hash.c</FileName> + <FileType>1</FileType> + <FilePath>..\..\components\drivers\hwcrypto\hw_hash.c</FilePath> + </File> + </Files> + <Files> + <File> + <FileName>hw_rng.c</FileName> + <FileType>1</FileType> + <FilePath>..\..\components\drivers\hwcrypto\hw_rng.c</FilePath> + </File> + </Files> + <Files> + <File> + <FileName>hw_crc.c</FileName> + <FileType>1</FileType> + <FilePath>..\..\components\drivers\hwcrypto\hw_crc.c</FilePath> + </File> + </Files> + <Files> + <File> + <FileName>hw_bignum.c</FileName> + <FileType>1</FileType> + <FilePath>..\..\components\drivers\hwcrypto\hw_bignum.c</FilePath> + </File> + </Files> + <Files> + <File> + <FileName>hwtimer.c</FileName> + <FileType>1</FileType> + <FilePath>..\..\components\drivers\hwtimer\hwtimer.c</FilePath> + </File> + </Files> + <Files> + <File> + <FileName>i2c_core.c</FileName> + <FileType>1</FileType> + <FilePath>..\..\components\drivers\i2c\i2c_core.c</FilePath> + </File> + </Files> + <Files> + <File> + <FileName>i2c_dev.c</FileName> + <FileType>1</FileType> + <FilePath>..\..\components\drivers\i2c\i2c_dev.c</FilePath> + </File> + </Files> + <Files> + <File> + <FileName>i2c-bit-ops.c</FileName> + <FileType>1</FileType> + <FilePath>..\..\components\drivers\i2c\i2c-bit-ops.c</FilePath> + </File> + </Files> + <Files> + <File> <FileName>pin.c</FileName> <FileType>1</FileType> <FilePath>..\..\components\drivers\misc\pin.c</FilePath> </File> + </Files> + <Files> + <File> + <FileName>rt_drv_pwm.c</FileName> + <FileType>1</FileType> + <FilePath>..\..\components\drivers\misc\rt_drv_pwm.c</FilePath> + </File> + </Files> + <Files> + <File> + <FileName>rtc.c</FileName> + <FileType>1</FileType> + <FilePath>..\..\components\drivers\rtc\rtc.c</FilePath> + </File> + </Files> + <Files> + <File> + <FileName>soft_rtc.c</FileName> + <FileType>1</FileType> + <FilePath>..\..\components\drivers\rtc\soft_rtc.c</FilePath> + </File> + </Files> + <Files> <File> <FileName>serial.c</FileName> <FileType>1</FileType> <FilePath>..\..\components\drivers\serial\serial.c</FilePath> </File> + </Files> + <Files> + <File> + <FileName>spi_core.c</FileName> + <FileType>1</FileType> + <FilePath>..\..\components\drivers\spi\spi_core.c</FilePath> + </File> + </Files> + <Files> + <File> + <FileName>spi_dev.c</FileName> + <FileType>1</FileType> + <FilePath>..\..\components\drivers\spi\spi_dev.c</FilePath> + </File> + </Files> + <Files> <File> <FileName>completion.c</FileName> <FileType>1</FileType> <FilePath>..\..\components\drivers\src\completion.c</FilePath> </File> + </Files> + <Files> <File> <FileName>dataqueue.c</FileName> <FileType>1</FileType> <FilePath>..\..\components\drivers\src\dataqueue.c</FilePath> </File> + </Files> + <Files> <File> <FileName>pipe.c</FileName> <FileType>1</FileType> <FilePath>..\..\components\drivers\src\pipe.c</FilePath> </File> + </Files> + <Files> <File> <FileName>ringblk_buf.c</FileName> <FileType>1</FileType> <FilePath>..\..\components\drivers\src\ringblk_buf.c</FilePath> </File> + </Files> + <Files> <File> <FileName>ringbuffer.c</FileName> <FileType>1</FileType> <FilePath>..\..\components\drivers\src\ringbuffer.c</FilePath> </File> + </Files> + <Files> <File> <FileName>waitqueue.c</FileName> <FileType>1</FileType> <FilePath>..\..\components\drivers\src\waitqueue.c</FilePath> </File> + </Files> + <Files> <File> <FileName>workqueue.c</FileName> <FileType>1</FileType> <FilePath>..\..\components\drivers\src\workqueue.c</FilePath> </File> + </Files> + <Files> <File> - <FileName>wlan_cfg.c</FileName> - <FileType>1</FileType> - <FilePath>..\..\components\drivers\wlan\wlan_cfg.c</FilePath> - </File> - <File> - <FileName>wlan_cmd.c</FileName> + <FileName>watchdog.c</FileName> <FileType>1</FileType> - <FilePath>..\..\components\drivers\wlan\wlan_cmd.c</FilePath> + <FilePath>..\..\components\drivers\watchdog\watchdog.c</FilePath> </File> + </Files> + <Files> <File> <FileName>wlan_dev.c</FileName> <FileType>1</FileType> <FilePath>..\..\components\drivers\wlan\wlan_dev.c</FilePath> </File> + </Files> + <Files> <File> - <FileName>wlan_lwip.c</FileName> + <FileName>wlan_mgnt.c</FileName> <FileType>1</FileType> - <FilePath>..\..\components\drivers\wlan\wlan_lwip.c</FilePath> + <FilePath>..\..\components\drivers\wlan\wlan_mgnt.c</FilePath> </File> + </Files> + <Files> <File> - <FileName>wlan_mgnt.c</FileName> + <FileName>wlan_cmd.c</FileName> <FileType>1</FileType> - <FilePath>..\..\components\drivers\wlan\wlan_mgnt.c</FilePath> + <FilePath>..\..\components\drivers\wlan\wlan_cmd.c</FilePath> </File> + </Files> + <Files> <File> <FileName>wlan_prot.c</FileName> <FileType>1</FileType> <FilePath>..\..\components\drivers\wlan\wlan_prot.c</FilePath> </File> + </Files> + <Files> + <File> + <FileName>wlan_lwip.c</FileName> + <FileType>1</FileType> + <FilePath>..\..\components\drivers\wlan\wlan_lwip.c</FilePath> + </File> + </Files> + <Files> + <File> + <FileName>wlan_cfg.c</FileName> + <FileType>1</FileType> + <FilePath>..\..\components\drivers\wlan\wlan_cfg.c</FilePath> + </File> + </Files> + <Files> <File> <FileName>wlan_workqueue.c</FileName> <FileType>1</FileType> <FilePath>..\..\components\drivers\wlan\wlan_workqueue.c</FilePath> </File> </Files> + <GroupOption> + <GroupArmAds> + <Cads> + <VariousControls> + <MiscControls /> + <Define> </Define> + <Undefine> </Undefine> + <IncludePath> </IncludePath> + </VariousControls> + </Cads> + </GroupArmAds> + </GroupOption> </Group> <Group> <GroupName>finsh</GroupName> @@ -911,26 +1242,36 @@ <FileType>1</FileType> <FilePath>..\..\components\finsh\shell.c</FilePath> </File> + </Files> + <Files> <File> <FileName>symbol.c</FileName> <FileType>1</FileType> <FilePath>..\..\components\finsh\symbol.c</FilePath> </File> + </Files> + <Files> <File> <FileName>cmd.c</FileName> <FileType>1</FileType> <FilePath>..\..\components\finsh\cmd.c</FilePath> </File> + </Files> + <Files> <File> <FileName>msh.c</FileName> <FileType>1</FileType> <FilePath>..\..\components\finsh\msh.c</FilePath> </File> + </Files> + <Files> <File> <FileName>msh_cmd.c</FileName> <FileType>1</FileType> <FilePath>..\..\components\finsh\msh_cmd.c</FilePath> </File> + </Files> + <Files> <File> <FileName>msh_file.c</FileName> <FileType>1</FileType> @@ -946,26 +1287,36 @@ <FileType>1</FileType> <FilePath>..\..\components\libc\compilers\armlibc\libc.c</FilePath> </File> + </Files> + <Files> <File> <FileName>mem_std.c</FileName> <FileType>1</FileType> <FilePath>..\..\components\libc\compilers\armlibc\mem_std.c</FilePath> </File> + </Files> + <Files> <File> <FileName>stdio.c</FileName> <FileType>1</FileType> <FilePath>..\..\components\libc\compilers\armlibc\stdio.c</FilePath> </File> + </Files> + <Files> <File> <FileName>stubs.c</FileName> <FileType>1</FileType> <FilePath>..\..\components\libc\compilers\armlibc\stubs.c</FilePath> </File> + </Files> + <Files> <File> <FileName>time.c</FileName> <FileType>1</FileType> <FilePath>..\..\components\libc\compilers\armlibc\time.c</FilePath> </File> + </Files> + <Files> <File> <FileName>gmtime_r.c</FileName> <FileType>1</FileType> @@ -981,186 +1332,260 @@ <FileType>1</FileType> <FilePath>..\..\components\net\lwip-2.0.2\src\arch\sys_arch.c</FilePath> </File> + </Files> + <Files> <File> <FileName>api_lib.c</FileName> <FileType>1</FileType> <FilePath>..\..\components\net\lwip-2.0.2\src\api\api_lib.c</FilePath> </File> + </Files> + <Files> <File> <FileName>api_msg.c</FileName> <FileType>1</FileType> <FilePath>..\..\components\net\lwip-2.0.2\src\api\api_msg.c</FilePath> </File> + </Files> + <Files> <File> <FileName>err.c</FileName> <FileType>1</FileType> <FilePath>..\..\components\net\lwip-2.0.2\src\api\err.c</FilePath> </File> + </Files> + <Files> <File> <FileName>netbuf.c</FileName> <FileType>1</FileType> <FilePath>..\..\components\net\lwip-2.0.2\src\api\netbuf.c</FilePath> </File> + </Files> + <Files> <File> <FileName>netdb.c</FileName> <FileType>1</FileType> <FilePath>..\..\components\net\lwip-2.0.2\src\api\netdb.c</FilePath> </File> + </Files> + <Files> <File> <FileName>netifapi.c</FileName> <FileType>1</FileType> <FilePath>..\..\components\net\lwip-2.0.2\src\api\netifapi.c</FilePath> </File> + </Files> + <Files> <File> <FileName>sockets.c</FileName> <FileType>1</FileType> <FilePath>..\..\components\net\lwip-2.0.2\src\api\sockets.c</FilePath> </File> + </Files> + <Files> <File> <FileName>tcpip.c</FileName> <FileType>1</FileType> <FilePath>..\..\components\net\lwip-2.0.2\src\api\tcpip.c</FilePath> </File> + </Files> + <Files> <File> <FileName>def.c</FileName> <FileType>1</FileType> <FilePath>..\..\components\net\lwip-2.0.2\src\core\def.c</FilePath> </File> + </Files> + <Files> <File> <FileName>dns.c</FileName> <FileType>1</FileType> <FilePath>..\..\components\net\lwip-2.0.2\src\core\dns.c</FilePath> </File> + </Files> + <Files> <File> <FileName>inet_chksum.c</FileName> <FileType>1</FileType> <FilePath>..\..\components\net\lwip-2.0.2\src\core\inet_chksum.c</FilePath> </File> + </Files> + <Files> <File> <FileName>init.c</FileName> <FileType>1</FileType> <FilePath>..\..\components\net\lwip-2.0.2\src\core\init.c</FilePath> </File> + </Files> + <Files> <File> <FileName>ip.c</FileName> <FileType>1</FileType> <FilePath>..\..\components\net\lwip-2.0.2\src\core\ip.c</FilePath> </File> + </Files> + <Files> <File> <FileName>memp.c</FileName> <FileType>1</FileType> <FilePath>..\..\components\net\lwip-2.0.2\src\core\memp.c</FilePath> </File> + </Files> + <Files> <File> <FileName>netif.c</FileName> <FileType>1</FileType> <FilePath>..\..\components\net\lwip-2.0.2\src\core\netif.c</FilePath> </File> + </Files> + <Files> <File> <FileName>pbuf.c</FileName> <FileType>1</FileType> <FilePath>..\..\components\net\lwip-2.0.2\src\core\pbuf.c</FilePath> </File> + </Files> + <Files> <File> <FileName>raw.c</FileName> <FileType>1</FileType> <FilePath>..\..\components\net\lwip-2.0.2\src\core\raw.c</FilePath> </File> + </Files> + <Files> <File> <FileName>stats.c</FileName> <FileType>1</FileType> <FilePath>..\..\components\net\lwip-2.0.2\src\core\stats.c</FilePath> </File> + </Files> + <Files> <File> <FileName>sys.c</FileName> <FileType>1</FileType> <FilePath>..\..\components\net\lwip-2.0.2\src\core\sys.c</FilePath> </File> + </Files> + <Files> <File> <FileName>tcp.c</FileName> <FileType>1</FileType> <FilePath>..\..\components\net\lwip-2.0.2\src\core\tcp.c</FilePath> </File> + </Files> + <Files> <File> <FileName>tcp_in.c</FileName> <FileType>1</FileType> <FilePath>..\..\components\net\lwip-2.0.2\src\core\tcp_in.c</FilePath> </File> + </Files> + <Files> <File> <FileName>tcp_out.c</FileName> <FileType>1</FileType> <FilePath>..\..\components\net\lwip-2.0.2\src\core\tcp_out.c</FilePath> </File> + </Files> + <Files> <File> <FileName>timeouts.c</FileName> <FileType>1</FileType> <FilePath>..\..\components\net\lwip-2.0.2\src\core\timeouts.c</FilePath> </File> + </Files> + <Files> <File> <FileName>udp.c</FileName> <FileType>1</FileType> <FilePath>..\..\components\net\lwip-2.0.2\src\core\udp.c</FilePath> </File> + </Files> + <Files> <File> <FileName>ethernet.c</FileName> <FileType>1</FileType> <FilePath>..\..\components\net\lwip-2.0.2\src\netif\ethernet.c</FilePath> </File> + </Files> + <Files> <File> <FileName>ethernetif.c</FileName> <FileType>1</FileType> <FilePath>..\..\components\net\lwip-2.0.2\src\netif\ethernetif.c</FilePath> </File> + </Files> + <Files> <File> <FileName>lowpan6.c</FileName> <FileType>1</FileType> <FilePath>..\..\components\net\lwip-2.0.2\src\netif\lowpan6.c</FilePath> </File> + </Files> + <Files> <File> <FileName>autoip.c</FileName> <FileType>1</FileType> <FilePath>..\..\components\net\lwip-2.0.2\src\core\ipv4\autoip.c</FilePath> </File> + </Files> + <Files> <File> <FileName>dhcp.c</FileName> <FileType>1</FileType> <FilePath>..\..\components\net\lwip-2.0.2\src\core\ipv4\dhcp.c</FilePath> </File> + </Files> + <Files> <File> <FileName>etharp.c</FileName> <FileType>1</FileType> <FilePath>..\..\components\net\lwip-2.0.2\src\core\ipv4\etharp.c</FilePath> </File> + </Files> + <Files> <File> <FileName>icmp.c</FileName> <FileType>1</FileType> <FilePath>..\..\components\net\lwip-2.0.2\src\core\ipv4\icmp.c</FilePath> </File> + </Files> + <Files> <File> <FileName>igmp.c</FileName> <FileType>1</FileType> <FilePath>..\..\components\net\lwip-2.0.2\src\core\ipv4\igmp.c</FilePath> </File> + </Files> + <Files> <File> <FileName>ip4.c</FileName> <FileType>1</FileType> <FilePath>..\..\components\net\lwip-2.0.2\src\core\ipv4\ip4.c</FilePath> </File> + </Files> + <Files> <File> <FileName>ip4_addr.c</FileName> <FileType>1</FileType> <FilePath>..\..\components\net\lwip-2.0.2\src\core\ipv4\ip4_addr.c</FilePath> </File> + </Files> + <Files> <File> <FileName>ip4_frag.c</FileName> <FileType>1</FileType> <FilePath>..\..\components\net\lwip-2.0.2\src\core\ipv4\ip4_frag.c</FilePath> </File> + </Files> + <Files> <File> <FileName>ping.c</FileName> <FileType>1</FileType> <FilePath>..\..\components\net\lwip-2.0.2\src\apps\ping\ping.c</FilePath> </File> + </Files> + <Files> <File> <FileName>dhcp_server_raw.c</FileName> <FileType>1</FileType> @@ -1176,6 +1601,8 @@ <FileType>1</FileType> <FilePath>..\..\components\net\netdev\src\netdev.c</FilePath> </File> + </Files> + <Files> <File> <FileName>netdev_ipaddr.c</FileName> <FileType>1</FileType> @@ -1191,21 +1618,29 @@ <FileType>1</FileType> <FilePath>..\..\components\net\sal_socket\src\sal_socket.c</FilePath> </File> + </Files> + <Files> <File> <FileName>net_netdb.c</FileName> <FileType>1</FileType> <FilePath>..\..\components\net\sal_socket\socket\net_netdb.c</FilePath> </File> + </Files> + <Files> <File> <FileName>af_inet_lwip.c</FileName> <FileType>1</FileType> <FilePath>..\..\components\net\sal_socket\impl\af_inet_lwip.c</FilePath> </File> + </Files> + <Files> <File> <FileName>net_sockets.c</FileName> <FileType>1</FileType> <FilePath>..\..\components\net\sal_socket\socket\net_sockets.c</FilePath> </File> + </Files> + <Files> <File> <FileName>dfs_net.c</FileName> <FileType>1</FileType> @@ -1221,6 +1656,8 @@ <FileType>1</FileType> <FilePath>..\..\components\utilities\ulog\ulog.c</FilePath> </File> + </Files> + <Files> <File> <FileName>console_be.c</FileName> <FileType>1</FileType> @@ -1231,11 +1668,9 @@ </Groups> </Target> </Targets> - <RTE> - <apis/> - <components/> - <files/> + <apis /> + <components /> + <files /> </RTE> - </Project> diff --git a/bsp/w60x/rtconfig.h b/bsp/w60x/rtconfig.h index 8e69ca9f99..6fed72c00f 100644 --- a/bsp/w60x/rtconfig.h +++ b/bsp/w60x/rtconfig.h @@ -89,27 +89,61 @@ #define RT_USING_SERIAL #define RT_SERIAL_USING_DMA #define RT_SERIAL_RB_BUFSZ 64 +#define RT_USING_HWTIMER +#define RT_USING_I2C +#define RT_USING_I2C_BITOPS #define RT_USING_PIN - -/* Using Hardware Crypto drivers */ - - -/* Using WiFi */ - +#define RT_USING_PWM +#define RT_USING_RTC +#define RT_USING_SOFT_RTC +#define RTC_SYNC_USING_NTP +#define RTC_NTP_FIRST_SYNC_DELAY 30 +#define RTC_NTP_SYNC_PERIOD 3600 +#define RT_USING_SPI +#define RT_USING_WDT +#define RT_USING_HWCRYPTO +#define RT_HWCRYPTO_DEFAULT_NAME "hwcryto" +#define RT_HWCRYPTO_IV_MAX_SIZE 16 +#define RT_HWCRYPTO_KEYBIT_MAX_SIZE 256 +#define RT_HWCRYPTO_USING_AES +#define RT_HWCRYPTO_USING_AES_ECB +#define RT_HWCRYPTO_USING_AES_CBC +#define RT_HWCRYPTO_USING_MD5 +#define RT_HWCRYPTO_USING_SHA1 +#define RT_HWCRYPTO_USING_RNG +#define RT_HWCRYPTO_USING_CRC +#define RT_HWCRYPTO_USING_CRC_07 +#define RT_HWCRYPTO_USING_CRC_8005 +#define RT_HWCRYPTO_USING_CRC_1021 +#define RT_HWCRYPTO_USING_CRC_04C11DB7 +#define RT_HWCRYPTO_USING_BIGNUM +#define RT_HWCRYPTO_USING_BIGNUM_EXPTMOD +#define RT_HWCRYPTO_USING_BIGNUM_MULMOD #define RT_USING_WIFI #define RT_WLAN_DEVICE_STA_NAME "wlan0" #define RT_WLAN_DEVICE_AP_NAME "wlan1" -#define RT_WLAN_DEFAULT_PROT "lwip" -#define RT_WLAN_SCAN_WAIT_MS 10000 -#define RT_WLAN_CONNECT_WAIT_MS 10000 #define RT_WLAN_SSID_MAX_LENGTH 32 #define RT_WLAN_PASSWORD_MAX_LENGTH 32 +#define RT_WLAN_DEV_EVENT_NUM 2 +#define RT_WLAN_MANAGE_ENABLE +#define RT_WLAN_SCAN_WAIT_MS 10000 +#define RT_WLAN_CONNECT_WAIT_MS 10000 #define RT_WLAN_SCAN_SORT +#define RT_WLAN_MSH_CMD_ENABLE +#define RT_WLAN_AUTO_CONNECT_ENABLE +#define AUTO_CONNECTION_PERIOD_MS 2000 +#define RT_WLAN_CFG_ENABLE #define RT_WLAN_CFG_INFO_MAX 3 +#define RT_WLAN_PROT_ENABLE +#define RT_WLAN_PROT_NAME_LEN 8 +#define RT_WLAN_PROT_MAX 2 +#define RT_WLAN_DEFAULT_PROT "lwip" +#define RT_WLAN_PROT_LWIP_ENABLE +#define RT_WLAN_PROT_LWIP_NAME "lwip" +#define RT_WLAN_WORK_THREAD_ENABLE #define RT_WLAN_WORKQUEUE_THREAD_NAME "wlan_job" #define RT_WLAN_WORKQUEUE_THREAD_SIZE 2048 #define RT_WLAN_WORKQUEUE_THREAD_PRIO 22 -#define RT_WLAN_DEV_EVENT_NUM 2 /* Using USB */ @@ -184,9 +218,6 @@ #define LWIP_NETIF_LOOPBACK 0 #define RT_LWIP_USING_PING -/* Modbus master and slave stack */ - - /* AT commands */ #define LWIP_USING_DHCPD @@ -224,6 +255,13 @@ /* Wiced WiFi */ +#define PKG_USING_NETUTILS +#define PKG_NETUTILS_NTP +#define NETUTILS_NTP_TIMEZONE 8 +#define NETUTILS_NTP_HOSTNAME "cn.ntp.org.cn" +#define NETUTILS_NTP_HOSTNAME2 "ntp.rt-thread.org" +#define NETUTILS_NTP_HOSTNAME3 "edu.ntp.org.cn" +#define PKG_USING_NETUTILS_V110 /* IoT Cloud */ @@ -262,8 +300,7 @@ /* W60x Device config */ #define SOC_W600_A8xx - -/* Hardware Drivers Config */ +#define W600_EV_BOARD /* On-chip Peripheral Drivers */ @@ -272,7 +309,8 @@ #define BSP_USING_PIN #define BSP_USING_WIFI -/* Offboard Peripheral Drivers */ +/* External Libraries */ +#define WM_USING_ONESHOT #endif diff --git a/bsp/w60x/rtconfig.py b/bsp/w60x/rtconfig.py index 0c6d715a71..61fa068b7c 100644 --- a/bsp/w60x/rtconfig.py +++ b/bsp/w60x/rtconfig.py @@ -1,4 +1,5 @@ import os +import sys # toolchains options ARCH='arm' @@ -27,6 +28,15 @@ if os.getenv('RTT_EXEC_PATH'): BUILD = 'debug' +if os.path.exists(os.path.abspath('./') + '/drivers'): + gcc_linkscripts_path = 'drivers/linker_scripts/link.lds' + armcc_linkscripts_path = 'drivers/linker_scripts/link.sct' + iar_linkscripts_path = 'drivers/linker_scripts/link.icf' +else: + gcc_linkscripts_path = '../../drivers/linker_scripts/link.lds' + armcc_linkscripts_path = '../../drivers/linker_scripts/link.sct' + iar_linkscripts_path = '../../drivers/linker_scripts/link.icf' + if PLATFORM == 'gcc': # toolchains PREFIX = 'arm-none-eabi-' @@ -44,7 +54,7 @@ if PLATFORM == 'gcc': DEVICE = ' -mcpu=cortex-m3 -mthumb -ffunction-sections -fdata-sections' CFLAGS = DEVICE + ' -std=gnu99 -w -fno-common -fomit-frame-pointer -fno-short-enums -fsigned-char' AFLAGS = ' -c' + DEVICE + ' -x assembler-with-cpp -Wa,-mimplicit-it=thumb ' - LFLAGS = DEVICE + ' -lm -lgcc -lc' + ' -g --specs=nano.specs -nostartfiles -Wl,-Map=rtthread-w60x.map -Os -Wl,--gc-sections -Wl,--cref -Wl,--entry=Reset_Handler -Wl,--no-enum-size-warning -Wl,--no-wchar-size-warning -T ./drivers/linker_scripts/link.lds' + LFLAGS = DEVICE + ' -lm -lgcc -lc' + ' -g --specs=nano.specs -nostartfiles -Wl,-Map=rtthread-w60x.map -Os -Wl,--gc-sections -Wl,--cref -Wl,--entry=Reset_Handler -Wl,--no-enum-size-warning -Wl,--no-wchar-size-warning -T ' + gcc_linkscripts_path CPATH = '' LPATH = '' @@ -69,7 +79,7 @@ elif PLATFORM == 'armcc': DEVICE = ' --cpu=Cortex-M3' CFLAGS = DEVICE + ' --apcs=interwork --c99 --gnu' AFLAGS = DEVICE + ' --apcs=interwork ' - LFLAGS = DEVICE + ' --scatter "./drivers/linker_scripts/link.sct" --info sizes --info totals --info unused --info veneers --list rt-thread.map --strict' + LFLAGS = DEVICE + ' --scatter ' + armcc_linkscripts_path + ' --info sizes --info totals --info unused --info veneers --list rt-thread.map --strict' LFLAGS += ' --libpath=' + EXEC_PATH + '/ARM/ARMCC/lib' EXEC_PATH += '/ARM/ARMCC/bin/' @@ -123,7 +133,7 @@ elif PLATFORM == 'iar': else: CFLAGS += ' -Oh' - LFLAGS = ' --config ./drivers/linker_scripts/link.icf' + LFLAGS = ' --config ' + iar_linkscripts_path LFLAGS += ' --entry __iar_program_start' EXEC_PATH = EXEC_PATH + '/arm/bin/' diff --git a/bsp/w60x/template.ewp b/bsp/w60x/template.ewp index 8b78649435..4a3e358b64 100644 --- a/bsp/w60x/template.ewp +++ b/bsp/w60x/template.ewp @@ -728,7 +728,7 @@ </option> <option> <name>IlinkMapFile</name> - <state>0</state> + <state>1</state> </option> <option> <name>IlinkLogFile</name> @@ -1101,7 +1101,7 @@ </option> <option> <name>GEndianModeBE</name> - <state>0</state> + <state>1</state> </option> <option> <name>OGBufferedTerminalOutput</name> @@ -1132,7 +1132,7 @@ <option> <name>GBECoreSlave</name> <version>26</version> - <state>1</state> + <state>38</state> </option> <option> <name>OGUseCmsis</name> @@ -1149,7 +1149,7 @@ <option> <name>CoreVariant</name> <version>26</version> - <state>0</state> + <state>38</state> </option> <option> <name>GFPUDeviceSlave</name> @@ -1172,7 +1172,7 @@ <option> <name>GFPUCoreSlave2</name> <version>26</version> - <state>0</state> + <state>38</state> </option> <option> <name>OGCMSISPackSelectDevice</name> @@ -1320,7 +1320,7 @@ </option> <option> <name>CCSignedPlainChar</name> - <state>1</state> + <state>0</state> </option> <option> <name>CCRequirePrototypes</name> @@ -1381,7 +1381,7 @@ </option> <option> <name>CCOptLevelSlave</name> - <state>1</state> + <state>3</state> </option> <option> <name>CompilerMisraRules98</name> @@ -1644,15 +1644,15 @@ <option> <name>OOCOutputFormat</name> <version>3</version> - <state>0</state> + <state>3</state> </option> <option> <name>OCOutputOverride</name> - <state>0</state> + <state>1</state> </option> <option> <name>OOCOutputFile</name> - <state></state> + <state>../../rtthread.bin</state> </option> <option> <name>OOCCommandLineProducer</name> @@ -1660,7 +1660,7 @@ </option> <option> <name>OOCObjCopyEnable</name> - <state>0</state> + <state>1</state> </option> </data> </settings> @@ -1683,7 +1683,7 @@ <archiveVersion>1</archiveVersion> <data> <prebuild></prebuild> - <postbuild></postbuild> + <postbuild>cmd /c "$PROJ_DIR$\makeimg.bat"</postbuild> </data> </settings> <settings> @@ -1743,7 +1743,7 @@ </option> <option> <name>IlinkMapFile</name> - <state>0</state> + <state>1</state> </option> <option> <name>IlinkLogFile</name> @@ -1767,11 +1767,11 @@ </option> <option> <name>IlinkIcfOverride</name> - <state>0</state> + <state>1</state> </option> <option> <name>IlinkIcfFile</name> - <state>lnk0t.icf</state> + <state>$PROJ_DIR$\.\drivers\linker_scripts\link.icf</state> </option> <option> <name>IlinkIcfFileSlave</name> diff --git a/bsp/w60x/template.uvoptx b/bsp/w60x/template.uvoptx index 111f5da096..e940709006 100644 --- a/bsp/w60x/template.uvoptx +++ b/bsp/w60x/template.uvoptx @@ -120,7 +120,7 @@ <SetRegEntry> <Number>0</Number> <Key>JL2CM3</Key> - <Name>-U20090928 -O78 -S8 -ZTIFSpeedSel50000 -A0 -C0 -JU1 -JI127.0.0.1 -JP0 -RST0 -N00("ARM CoreSight SW-DP") -D00(2BA01477) -L00(0) -TO18 -TC10000000 -TP21 -TDS8007 -TDT0 -TDC1F -TIEFFFFFFFF -TIP8 -TB1 -TFE0 -FO15 -FD20000000 -FC2000 -FN1 -FF0W600_QFlash -FS08000000 -FL0100000</Name> + <Name>-U20090928 -O78 -S8 -ZTIFSpeedSel50000 -A0 -C0 -JU1 -JI127.0.0.1 -JP0 -RST0 -N00("ARM CoreSight SW-DP") -D00(2BA01477) -L00(0) -TO18 -TC10000000 -TP21 -TDS8007 -TDT0 -TDC1F -TIEFFFFFFFF -TIP8 -TB1 -TFE0 -FO15 -FD20000000 -FC2000 -FN1 -FF0W60X_QFlash -FS08000000 -FL0100000</Name> </SetRegEntry> <SetRegEntry> <Number>0</Number> diff --git a/bsp/w60x/template.uvprojx b/bsp/w60x/template.uvprojx index 133650ae90..c5b24f7d6c 100644 --- a/bsp/w60x/template.uvprojx +++ b/bsp/w60x/template.uvprojx @@ -300,7 +300,7 @@ <OCR_RVCT9> <Type>0</Type> <StartAddress>0x20000000</StartAddress> - <Size>0x3c000</Size> + <Size>0x28000</Size> </OCR_RVCT9> <OCR_RVCT10> <Type>0</Type> @@ -315,7 +315,7 @@ <Optim>1</Optim> <oTime>0</oTime> <SplitLS>0</SplitLS> - <OneElfS>0</OneElfS> + <OneElfS>1</OneElfS> <Strict>0</Strict> <EnumInt>0</EnumInt> <PlainCh>0</PlainCh> |
