Skip to content

Commit 0b6f774

Browse files
authored
[bsp/bouffalo_lab]update sdio host driver (#7642)
Co-authored-by: chenyisong <[email protected]>
1 parent 10551b5 commit 0b6f774

File tree

12 files changed

+367
-148
lines changed

12 files changed

+367
-148
lines changed

bsp/bouffalo_lab/bl61x/.config

Lines changed: 63 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -121,7 +121,43 @@ CONFIG_FINSH_ARG_MAX=10
121121
#
122122
# DFS: device virtual file system
123123
#
124-
# CONFIG_RT_USING_DFS is not set
124+
CONFIG_RT_USING_DFS=y
125+
CONFIG_DFS_USING_POSIX=y
126+
CONFIG_DFS_USING_WORKDIR=y
127+
# CONFIG_RT_USING_DFS_MNTTABLE is not set
128+
CONFIG_DFS_FD_MAX=16
129+
CONFIG_RT_USING_DFS_V1=y
130+
# CONFIG_RT_USING_DFS_V2 is not set
131+
CONFIG_DFS_FILESYSTEMS_MAX=4
132+
CONFIG_DFS_FILESYSTEM_TYPES_MAX=4
133+
CONFIG_RT_USING_DFS_ELMFAT=y
134+
135+
#
136+
# elm-chan's FatFs, Generic FAT Filesystem Module
137+
#
138+
CONFIG_RT_DFS_ELM_CODE_PAGE=437
139+
CONFIG_RT_DFS_ELM_WORD_ACCESS=y
140+
# CONFIG_RT_DFS_ELM_USE_LFN_0 is not set
141+
# CONFIG_RT_DFS_ELM_USE_LFN_1 is not set
142+
# CONFIG_RT_DFS_ELM_USE_LFN_2 is not set
143+
CONFIG_RT_DFS_ELM_USE_LFN_3=y
144+
CONFIG_RT_DFS_ELM_USE_LFN=3
145+
CONFIG_RT_DFS_ELM_LFN_UNICODE_0=y
146+
# CONFIG_RT_DFS_ELM_LFN_UNICODE_1 is not set
147+
# CONFIG_RT_DFS_ELM_LFN_UNICODE_2 is not set
148+
# CONFIG_RT_DFS_ELM_LFN_UNICODE_3 is not set
149+
CONFIG_RT_DFS_ELM_LFN_UNICODE=0
150+
CONFIG_RT_DFS_ELM_MAX_LFN=255
151+
CONFIG_RT_DFS_ELM_DRIVES=2
152+
CONFIG_RT_DFS_ELM_MAX_SECTOR_SIZE=512
153+
# CONFIG_RT_DFS_ELM_USE_ERASE is not set
154+
CONFIG_RT_DFS_ELM_REENTRANT=y
155+
CONFIG_RT_DFS_ELM_MUTEX_TIMEOUT=3000
156+
CONFIG_RT_USING_DFS_DEVFS=y
157+
CONFIG_RT_USING_DFS_ROMFS=y
158+
# CONFIG_RT_USING_DFS_CROMFS is not set
159+
# CONFIG_RT_USING_DFS_RAMFS is not set
160+
# CONFIG_RT_USING_DFS_TMPFS is not set
125161
# CONFIG_RT_USING_FAL is not set
126162

127163
#
@@ -152,7 +188,13 @@ CONFIG_RT_USING_PIN=y
152188
# CONFIG_RT_USING_PM is not set
153189
# CONFIG_RT_USING_FDT is not set
154190
# CONFIG_RT_USING_RTC is not set
155-
# CONFIG_RT_USING_SDIO is not set
191+
CONFIG_RT_USING_SDIO=y
192+
CONFIG_RT_SDIO_STACK_SIZE=512
193+
CONFIG_RT_SDIO_THREAD_PRIORITY=15
194+
CONFIG_RT_MMCSD_STACK_SIZE=2048
195+
CONFIG_RT_MMCSD_THREAD_PREORITY=22
196+
CONFIG_RT_MMCSD_MAX_PARTITION=16
197+
# CONFIG_RT_SDIO_DEBUG is not set
156198
# CONFIG_RT_USING_SPI is not set
157199
# CONFIG_RT_USING_WDT is not set
158200
# CONFIG_RT_USING_AUDIO is not set
@@ -513,6 +555,7 @@ CONFIG_RT_LIBC_DEFAULT_TIMEZONE=8
513555
# CONFIG_PKG_USING_QPC is not set
514556
# CONFIG_PKG_USING_AGILE_UPGRADE is not set
515557
# CONFIG_PKG_USING_FLASH_BLOB is not set
558+
# CONFIG_PKG_USING_MLIBC is not set
516559

517560
#
518561
# peripheral libraries and drivers
@@ -597,6 +640,7 @@ CONFIG_RT_LIBC_DEFAULT_TIMEZONE=8
597640
# CONFIG_PKG_USING_FT5426 is not set
598641
# CONFIG_PKG_USING_FT6236 is not set
599642
# CONFIG_PKG_USING_XPT2046_TOUCH is not set
643+
# CONFIG_PKG_USING_CST816X is not set
600644
# CONFIG_PKG_USING_REALTEK_AMEBA is not set
601645
# CONFIG_PKG_USING_STM32_SDIO is not set
602646
# CONFIG_PKG_USING_ESP_IDF is not set
@@ -673,7 +717,9 @@ CONFIG_RT_LIBC_DEFAULT_TIMEZONE=8
673717
# CONFIG_PKG_USING_IO_INPUT_FILTER is not set
674718
# CONFIG_PKG_USING_RASPBERRYPI_PICO_SDK is not set
675719
# CONFIG_PKG_USING_LRF_NV7LIDAR is not set
720+
# CONFIG_PKG_USING_AIP650 is not set
676721
# CONFIG_PKG_USING_FINGERPRINT is not set
722+
# CONFIG_PKG_USING_SPI_TOOLS is not set
677723

678724
#
679725
# AI packages
@@ -692,7 +738,10 @@ CONFIG_RT_LIBC_DEFAULT_TIMEZONE=8
692738
# Signal Processing and Control Algorithm Packages
693739
#
694740
# CONFIG_PKG_USING_FIRE_PID_CURVE is not set
741+
# CONFIG_PKG_USING_QPID is not set
695742
# CONFIG_PKG_USING_UKAL is not set
743+
# CONFIG_PKG_USING_DIGITALCTRL is not set
744+
# CONFIG_PKG_USING_KISSFFT is not set
696745

697746
#
698747
# miscellaneous packages
@@ -739,7 +788,6 @@ CONFIG_RT_LIBC_DEFAULT_TIMEZONE=8
739788
# CONFIG_PKG_USING_DSTR is not set
740789
# CONFIG_PKG_USING_TINYFRAME is not set
741790
# CONFIG_PKG_USING_KENDRYTE_DEMO is not set
742-
# CONFIG_PKG_USING_DIGITALCTRL is not set
743791
# CONFIG_PKG_USING_UPACKER is not set
744792
# CONFIG_PKG_USING_UPARAM is not set
745793
# CONFIG_PKG_USING_HELLO is not set
@@ -766,6 +814,7 @@ CONFIG_RT_LIBC_DEFAULT_TIMEZONE=8
766814
#
767815
# Projects
768816
#
817+
# CONFIG_PKG_USING_ARDUINO_MSGQ_C_CPP_DEMO is not set
769818
# CONFIG_PKG_USING_ARDUINO_ULTRASOUND_RADAR is not set
770819
# CONFIG_PKG_USING_ARDUINO_SENSOR_KIT is not set
771820
# CONFIG_PKG_USING_ARDUINO_MATLAB_SUPPORT is not set
@@ -912,14 +961,20 @@ CONFIG_RT_LIBC_DEFAULT_TIMEZONE=8
912961
#
913962
# Display
914963
#
964+
# CONFIG_PKG_USING_ARDUINO_TFT_ESPI is not set
965+
# CONFIG_PKG_USING_ARDUINO_ADAFRUIT_GFX_LIBRARY is not set
915966
# CONFIG_PKG_USING_ARDUINO_U8G2 is not set
916967
# CONFIG_PKG_USING_ARDUINO_U8GLIB_ARDUINO is not set
968+
# CONFIG_PKG_USING_ARDUINO_ADAFRUIT_ST7735 is not set
969+
# CONFIG_PKG_USING_ARDUINO_ADAFRUIT_SSD1306 is not set
917970
# CONFIG_PKG_USING_SEEED_TM1637 is not set
918971

919972
#
920973
# Timing
921974
#
922975
# CONFIG_PKG_USING_ARDUINO_MSTIMER2 is not set
976+
# CONFIG_PKG_USING_ARDUINO_TICKER is not set
977+
# CONFIG_PKG_USING_ARDUINO_TASKSCHEDULER is not set
923978

924979
#
925980
# Data Processing
@@ -973,10 +1028,13 @@ CONFIG_RT_LIBC_DEFAULT_TIMEZONE=8
9731028
CONFIG_BSP_USING_BL61X=y
9741029
CONFIG_BSP_USING_ROMAPI=y
9751030
# CONFIG_BSP_USING_PSRAM is not set
1031+
CONFIG_BSP_USING_BL61X_MODULE_DEFAULT=y
1032+
# CONFIG_BSP_USING_BL61X_MODULE_M0P is not set
9761033

9771034
#
9781035
# General Drivers Configuration
9791036
#
1037+
# CONFIG_BSP_DRIVER_DEBUG is not set
9801038

9811039
#
9821040
# General Purpose UARTs
@@ -1059,11 +1117,7 @@ CONFIG_UART0_RX_USING_GPIO22=y
10591117
# CONFIG_BSP_USING_WDT is not set
10601118
# CONFIG_BSP_USING_PWM is not set
10611119
# CONFIG_BSP_USING_HWTIMER is not set
1062-
1063-
#
1064-
# General Purpose I2C
1065-
#
1066-
# CONFIG_BSP_USING_I2C1 is not set
1120+
# CONFIG_BSP_USING_I2C is not set
10671121
# CONFIG_BSP_USING_SPI is not set
10681122
# CONFIG_BSP_USING_ON_CHIP_FLASH is not set
1069-
# CONFIG_BSP_USING_FS is not set
1123+
# CONFIG_BSP_USING_SDH is not set

bsp/bouffalo_lab/bl61x/board/board.c

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -56,10 +56,6 @@ static void peripheral_clock_init(void)
5656
GLB_Set_CAM_CLK(ENABLE, GLB_CAM_CLK_WIFIPLL_96M, 3);
5757

5858
GLB_Set_PKA_CLK_Sel(GLB_PKA_CLK_MCU_MUXPLL_160M);
59-
#ifdef CONFIG_BSP_SDH_SDCARD
60-
PERIPHERAL_CLOCK_SDH_ENABLE();
61-
GLB_AHB_MCU_Software_Reset(GLB_AHB_MCU_SW_EXT_SDH);
62-
#endif
6359

6460
GLB_Set_USB_CLK_From_WIFIPLL(1);
6561
GLB_Swap_MCU_SPI_0_MOSI_With_MISO(0);

bsp/bouffalo_lab/bl61x/rtconfig.h

Lines changed: 32 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -75,6 +75,30 @@
7575

7676
/* DFS: device virtual file system */
7777

78+
#define RT_USING_DFS
79+
#define DFS_USING_POSIX
80+
#define DFS_USING_WORKDIR
81+
#define DFS_FD_MAX 16
82+
#define RT_USING_DFS_V1
83+
#define DFS_FILESYSTEMS_MAX 4
84+
#define DFS_FILESYSTEM_TYPES_MAX 4
85+
#define RT_USING_DFS_ELMFAT
86+
87+
/* elm-chan's FatFs, Generic FAT Filesystem Module */
88+
89+
#define RT_DFS_ELM_CODE_PAGE 437
90+
#define RT_DFS_ELM_WORD_ACCESS
91+
#define RT_DFS_ELM_USE_LFN_3
92+
#define RT_DFS_ELM_USE_LFN 3
93+
#define RT_DFS_ELM_LFN_UNICODE_0
94+
#define RT_DFS_ELM_LFN_UNICODE 0
95+
#define RT_DFS_ELM_MAX_LFN 255
96+
#define RT_DFS_ELM_DRIVES 2
97+
#define RT_DFS_ELM_MAX_SECTOR_SIZE 512
98+
#define RT_DFS_ELM_REENTRANT
99+
#define RT_DFS_ELM_MUTEX_TIMEOUT 3000
100+
#define RT_USING_DFS_DEVFS
101+
#define RT_USING_DFS_ROMFS
78102

79103
/* Device Drivers */
80104

@@ -85,6 +109,12 @@
85109
#define RT_SERIAL_USING_DMA
86110
#define RT_SERIAL_RB_BUFSZ 64
87111
#define RT_USING_PIN
112+
#define RT_USING_SDIO
113+
#define RT_SDIO_STACK_SIZE 512
114+
#define RT_SDIO_THREAD_PRIORITY 15
115+
#define RT_MMCSD_STACK_SIZE 2048
116+
#define RT_MMCSD_THREAD_PREORITY 22
117+
#define RT_MMCSD_MAX_PARTITION 16
88118

89119
/* Using USB */
90120

@@ -226,16 +256,15 @@
226256

227257
#define BSP_USING_BL61X
228258
#define BSP_USING_ROMAPI
259+
#define BSP_USING_BL61X_MODULE_DEFAULT
229260

230261
/* General Drivers Configuration */
231262

263+
232264
/* General Purpose UARTs */
233265

234266
#define BSP_USING_UART0
235267
#define UART0_TX_USING_GPIO21
236268
#define UART0_RX_USING_GPIO22
237269

238-
/* General Purpose I2C */
239-
240-
241270
#endif
Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
[cfg]
2+
# 0: no erase, 1:programmed section erase, 2: chip erase
3+
erase = 1
4+
# skip mode set first para is skip addr, second para is skip len, multi-segment region with ; separated
5+
skip_mode = 0x0, 0x0
6+
# 0: not use isp mode, #1: isp mode
7+
boot2_isp_mode = 0
8+
9+
[FW]
10+
filedir = ./rtthread_lp.bin
11+
address = 0xC0000
12+

0 commit comments

Comments
 (0)