diff --git a/Ubiquitous/RT_Thread/bsp/stm32f407-atk-coreboard/.config b/Ubiquitous/RT_Thread/bsp/stm32f407-atk-coreboard/.config index 596a9a612..a7d248c20 100644 --- a/Ubiquitous/RT_Thread/bsp/stm32f407-atk-coreboard/.config +++ b/Ubiquitous/RT_Thread/bsp/stm32f407-atk-coreboard/.config @@ -19,7 +19,7 @@ CONFIG_RT_ALIGN_SIZE=4 CONFIG_RT_THREAD_PRIORITY_32=y # CONFIG_RT_THREAD_PRIORITY_256 is not set CONFIG_RT_THREAD_PRIORITY_MAX=32 -CONFIG_RT_TICK_PER_SECOND=100 +CONFIG_RT_TICK_PER_SECOND=1000 CONFIG_RT_USING_OVERFLOW_CHECK=y CONFIG_RT_USING_HOOK=y CONFIG_RT_USING_IDLE_HOOK=y @@ -149,12 +149,12 @@ CONFIG_RT_DFS_ELM_LFN_UNICODE_0=y CONFIG_RT_DFS_ELM_LFN_UNICODE=0 CONFIG_RT_DFS_ELM_MAX_LFN=255 CONFIG_RT_DFS_ELM_DRIVES=2 -CONFIG_RT_DFS_ELM_MAX_SECTOR_SIZE=512 +CONFIG_RT_DFS_ELM_MAX_SECTOR_SIZE=4096 # CONFIG_RT_DFS_ELM_USE_ERASE is not set CONFIG_RT_DFS_ELM_REENTRANT=y CONFIG_RT_DFS_ELM_MUTEX_TIMEOUT=3000 CONFIG_RT_USING_DFS_DEVFS=y -# CONFIG_RT_USING_DFS_ROMFS is not set +CONFIG_RT_USING_DFS_ROMFS=y # CONFIG_RT_USING_DFS_RAMFS is not set # CONFIG_RT_USING_DFS_NFS is not set @@ -191,7 +191,12 @@ CONFIG_RT_USING_PIN=y CONFIG_RT_USING_SPI=y # CONFIG_RT_USING_QSPI is not set CONFIG_RT_USING_SPI_MSD=y -# CONFIG_RT_USING_SFUD is not set +CONFIG_RT_USING_SFUD=y +CONFIG_RT_SFUD_USING_SFDP=y +CONFIG_RT_SFUD_USING_FLASH_INFO_TABLE=y +# CONFIG_RT_SFUD_USING_QSPI is not set +CONFIG_RT_SFUD_SPI_MAX_HZ=50000000 +# CONFIG_RT_DEBUG_SFUD is not set # CONFIG_RT_USING_ENC28J60 is not set # CONFIG_RT_USING_SPI_WIFI is not set # CONFIG_RT_USING_WDT is not set @@ -379,7 +384,7 @@ CONFIG_BSP_USING_USB_TO_USART=y # CONFIG_BSP_USING_COM2 is not set # CONFIG_BSP_USING_COM3 is not set CONFIG_BSP_USING_SRAM=y -# CONFIG_BSP_USING_SPI_FLASH is not set +CONFIG_BSP_USING_SPI_FLASH=y # CONFIG_BSP_USING_EEPROM is not set CONFIG_BSP_USING_OV2640=y # CONFIG_BSP_USING_ETH is not set @@ -517,8 +522,7 @@ CONFIG_SENSOR_DEVICE_D124_DEV="/dev/uart2" # CONFIG_SUPPORT_CONNECTION_FRAMEWORK is not set CONFIG_SUPPORT_KNOWING_FRAMEWORK=y # CONFIG_USING_TENSORFLOWLITEMICRO is not set -CONFIG_USING_KPU_POSTPROCESSING=y -# CONFIG_USING_YOLOV2 is not set +# CONFIG_USING_KPU_POSTPROCESSING is not set # CONFIG_USING_KNOWING_FILTER is not set # CONFIG_USING_OTA_MODEL is not set # CONFIG_USING_IMAGE_PROCESSING is not set diff --git a/Ubiquitous/RT_Thread/bsp/stm32f407-atk-coreboard/board/Kconfig b/Ubiquitous/RT_Thread/bsp/stm32f407-atk-coreboard/board/Kconfig index ff4e97923..9977dcdc2 100644 --- a/Ubiquitous/RT_Thread/bsp/stm32f407-atk-coreboard/board/Kconfig +++ b/Ubiquitous/RT_Thread/bsp/stm32f407-atk-coreboard/board/Kconfig @@ -34,7 +34,7 @@ menu "Onboard Peripheral Drivers" default n config BSP_USING_SPI_FLASH - bool "Enable SPI FLASH (W25Q128 spi1)" + bool "Enable SPI FLASH (W25Q128 spi2)" select BSP_USING_SPI select BSP_USING_SPI1 select RT_USING_SFUD diff --git a/Ubiquitous/RT_Thread/bsp/stm32f407-atk-coreboard/board/SConscript b/Ubiquitous/RT_Thread/bsp/stm32f407-atk-coreboard/board/SConscript index 8b0f0392b..a34a90866 100644 --- a/Ubiquitous/RT_Thread/bsp/stm32f407-atk-coreboard/board/SConscript +++ b/Ubiquitous/RT_Thread/bsp/stm32f407-atk-coreboard/board/SConscript @@ -16,7 +16,7 @@ if GetDepend(['BSP_USING_ETH']): src += Glob('ports/phy_reset.c') if GetDepend(['BSP_USING_SPI_FLASH']): - src += Glob('ports/spi_flash_init.c') + src += Glob('ports/flash_port.c') if GetDepend(['BSP_USING_SDCARD']): src += Glob('ports/sdcard_port.c') @@ -28,6 +28,9 @@ if GetDepend(['BSP_USING_DCMI']): src += ['drv_dcmi.c'] src += ['../../../../rt-thread/bsp/stm32/libraries/STM32F4xx_HAL/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dcmi.c'] +if GetDepend(['RT_USING_DFS_ROMFS']): + src += ['ports/romfs.c'] + src += ['ports/mnt_romfs.c'] path = [cwd] path += [cwd + '/CubeMX_Config/Inc'] path += [cwd + '/ports'] diff --git a/Ubiquitous/RT_Thread/bsp/stm32f407-atk-coreboard/board/ports/flash_port.c b/Ubiquitous/RT_Thread/bsp/stm32f407-atk-coreboard/board/ports/flash_port.c new file mode 100644 index 000000000..d94955406 --- /dev/null +++ b/Ubiquitous/RT_Thread/bsp/stm32f407-atk-coreboard/board/ports/flash_port.c @@ -0,0 +1,42 @@ +#include +#if defined(BSP_USING_SPI_FLASH) +#include "spi_flash_sfud.h" +#include "spi_flash.h" +#include "drv_spi.h" +#include +#include +#include +#include +#include +#include +#include + +static int rt_hw_spi_flash_init(void) +{ + __HAL_RCC_GPIOB_CLK_ENABLE(); + rt_hw_spi_device_attach("spi2", "spi30", GPIOB, GPIO_PIN_14); + + if (RT_NULL == rt_sfud_flash_probe("W25Q128", "spi30")) + { + LOG_E("W25Q128 flash spi30 fail !!!"); + return -RT_ERROR; + }; + + #ifdef RT_USING_DFS_ROMFS + if (dfs_mount("W25Q128", "/FLASH", "elm", 0, 0) == RT_EOK) + #else + if (dfs_mount("W25Q128", "/", "elm", 0, 0) == RT_EOK) + #endif + { + LOG_I("Mount flash successfully"); + return RT_EOK; + } + else + { + LOG_E("Mount fail !!!"); + return -RT_ERROR; + } +} +INIT_APP_EXPORT(rt_hw_spi_flash_init); +#endif + diff --git a/Ubiquitous/RT_Thread/bsp/stm32f407-atk-coreboard/board/ports/sdcard_port.c b/Ubiquitous/RT_Thread/bsp/stm32f407-atk-coreboard/board/ports/sdcard_port.c index a406460f0..3d93ac91d 100644 --- a/Ubiquitous/RT_Thread/bsp/stm32f407-atk-coreboard/board/ports/sdcard_port.c +++ b/Ubiquitous/RT_Thread/bsp/stm32f407-atk-coreboard/board/ports/sdcard_port.c @@ -30,23 +30,27 @@ int sd_mount() cs_gpiox = (GPIO_TypeDef *)((rt_base_t)GPIOA + (rt_base_t)(SDCARD_SPI2_CS_PIN / 16) * 0x0400UL); cs_pin = (uint16_t)(1 << SDCARD_SPI2_CS_PIN % 16); rt_hw_spi_device_attach(SDCARD_SPI_BUS_NAME, "spi20", cs_gpiox, cs_pin); - ret = msd_init("sd0", "spi20"); + ret = msd_init("sd", "spi20"); if(RT_EOK == ret) { - if(dfs_mount("sd0", "/", "elm", 0, 0) == 0) + #ifdef RT_USING_DFS_ROMFS + if(dfs_mount("sd", "/SD", "elm", 0, 0) == 0) + #else + if(dfs_mount("sd", "/", "elm", 0, 0) == 0) + #endif { - LOG_I("Mount /sd0 successfully"); + LOG_I("Mount sd card successfully"); return RT_EOK; } else { - LOG_E("Mount fail !!1"); - return -1; + LOG_E("Mount fail !!!"); + return -RT_ERROR; } } LOG_E("msd_init fail !!!"); - return -2; + return -RT_ERROR; } -INIT_ENV_EXPORT(sd_mount); +INIT_APP_EXPORT(sd_mount); #endif /* BSP_USING_SDCARD */ diff --git a/Ubiquitous/RT_Thread/bsp/stm32f407-atk-coreboard/board/ports/spi_flash_init.c b/Ubiquitous/RT_Thread/bsp/stm32f407-atk-coreboard/board/ports/spi_flash_init.c deleted file mode 100644 index 4705cc011..000000000 --- a/Ubiquitous/RT_Thread/bsp/stm32f407-atk-coreboard/board/ports/spi_flash_init.c +++ /dev/null @@ -1,31 +0,0 @@ -/* - * Copyright (c) 2006-2018, RT-Thread Development Team - * - * SPDX-License-Identifier: Apache-2.0 - * - * Change Logs: - * Date Author Notes - * 2018-11-27 SummerGift add spi flash port file - */ - -#include -#include "spi_flash.h" -#include "spi_flash_sfud.h" -#include "drv_spi.h" - -#if defined(BSP_USING_SPI_FLASH) -static int rt_hw_spi_flash_init(void) -{ - __HAL_RCC_GPIOB_CLK_ENABLE(); - rt_hw_spi_device_attach("spi1", "spi10", GPIOB, GPIO_PIN_14); - - if (RT_NULL == rt_sfud_flash_probe("W25Q128", "spi10")) - { - return -RT_ERROR; - }; - - return RT_EOK; -} -INIT_COMPONENT_EXPORT(rt_hw_spi_flash_init); -#endif - diff --git a/Ubiquitous/RT_Thread/bsp/stm32f407-atk-coreboard/rtconfig.h b/Ubiquitous/RT_Thread/bsp/stm32f407-atk-coreboard/rtconfig.h index 3236e0f79..ed010e084 100644 --- a/Ubiquitous/RT_Thread/bsp/stm32f407-atk-coreboard/rtconfig.h +++ b/Ubiquitous/RT_Thread/bsp/stm32f407-atk-coreboard/rtconfig.h @@ -15,7 +15,7 @@ #define RT_ALIGN_SIZE 4 #define RT_THREAD_PRIORITY_32 #define RT_THREAD_PRIORITY_MAX 32 -#define RT_TICK_PER_SECOND 100 +#define RT_TICK_PER_SECOND 1000 #define RT_USING_OVERFLOW_CHECK #define RT_USING_HOOK #define RT_USING_IDLE_HOOK @@ -103,10 +103,11 @@ #define RT_DFS_ELM_LFN_UNICODE 0 #define RT_DFS_ELM_MAX_LFN 255 #define RT_DFS_ELM_DRIVES 2 -#define RT_DFS_ELM_MAX_SECTOR_SIZE 512 +#define RT_DFS_ELM_MAX_SECTOR_SIZE 4096 #define RT_DFS_ELM_REENTRANT #define RT_DFS_ELM_MUTEX_TIMEOUT 3000 #define RT_USING_DFS_DEVFS +#define RT_USING_DFS_ROMFS /* Device Drivers */ @@ -124,6 +125,10 @@ #define RT_USING_PIN #define RT_USING_SPI #define RT_USING_SPI_MSD +#define RT_USING_SFUD +#define RT_SFUD_USING_SFDP +#define RT_SFUD_USING_FLASH_INFO_TABLE +#define RT_SFUD_SPI_MAX_HZ 50000000 #define RT_USING_WIFI #define RT_WLAN_DEVICE_STA_NAME "wlan0" #define RT_WLAN_DEVICE_AP_NAME "wlan1" @@ -250,6 +255,7 @@ #define BSP_USING_USB_TO_USART #define BSP_USING_SRAM +#define BSP_USING_SPI_FLASH #define BSP_USING_OV2640 #define BSP_USING_SDCARD #define SDCARD_SPI2_CS_PIN 28 @@ -294,6 +300,9 @@ #define MAIN_KTASK_STACK_SIZE 1024 +/* ota app */ + + /* test app */ @@ -322,7 +331,6 @@ #define SENSOR_QUANTITY_D124_VOICE "voice_1" #define SENSOR_DEVICE_D124_DEV "/dev/uart2" #define SUPPORT_KNOWING_FRAMEWORK -#define USING_KPU_POSTPROCESSING /* Security */