diff --git a/bsp/wch/arm/ch32f103c8-core/.config b/bsp/wch/arm/ch32f103c8-core/.config
index 327fe0db7c..8d19eb1108 100644
--- a/bsp/wch/arm/ch32f103c8-core/.config
+++ b/bsp/wch/arm/ch32f103c8-core/.config
@@ -673,18 +673,13 @@ CONFIG_SOC_CH32F103C8=y
# On-chip Peripheral Drivers
#
CONFIG_BSP_USING_UART=y
-CONFIG_BSP_USING_UART1=y
+# CONFIG_BSP_USING_UART1 is not set
CONFIG_BSP_USING_UART2=y
-CONFIG_BSP_USING_UART3=y
-CONFIG_BSP_USING_SPI=y
-CONFIG_BSP_USING_SPI1=y
-CONFIG_BSP_USING_SPI2=y
-CONFIG_BSP_USING_HWI2C=y
-CONFIG_BSP_USING_HWI2C1=y
-CONFIG_BSP_USING_HWI2C2=y
-CONFIG_BSP_USING_IWDT=y
-CONFIG_BSP_USING_RTC=y
-CONFIG_BSP_USING_RTC_LSI=y
+# CONFIG_BSP_USING_UART3 is not set
+# CONFIG_BSP_USING_SPI is not set
+# CONFIG_BSP_USING_HWI2C is not set
+# CONFIG_BSP_USING_IWDT is not set
+# CONFIG_BSP_USING_RTC is not set
CONFIG_LSI_VALUE=40000
# CONFIG_BSP_USING_TIM is not set
diff --git a/bsp/wch/arm/ch32f103c8-core/board/board.c b/bsp/wch/arm/ch32f103c8-core/board/board.c
index 10104959e5..f1d3773fa6 100644
--- a/bsp/wch/arm/ch32f103c8-core/board/board.c
+++ b/bsp/wch/arm/ch32f103c8-core/board/board.c
@@ -200,6 +200,7 @@ void ch32f1_i2c_config(I2C_TypeDef *i2cx)
}
}
+#ifdef BSP_USING_TIM
void ch32f1_tim_clock_init(TIM_TypeDef *timx)
{
if (timx == TIM1)
@@ -434,3 +435,4 @@ void ch32f1_pwm_io_init(TIM_TypeDef *timx, rt_uint8_t channel)
}
}
}
+#endif
diff --git a/bsp/wch/arm/ch32f103c8-core/project.uvprojx b/bsp/wch/arm/ch32f103c8-core/project.uvprojx
index b00c028f60..9153f0f165 100644
--- a/bsp/wch/arm/ch32f103c8-core/project.uvprojx
+++ b/bsp/wch/arm/ch32f103c8-core/project.uvprojx
@@ -533,16 +533,16 @@
Compiler
- syscall_mem.c
+ syscalls.c
1
- ..\..\..\..\components\libc\compilers\armlibc\syscall_mem.c
+ ..\..\..\..\components\libc\compilers\armlibc\syscalls.c
- syscalls.c
+ syscall_mem.c
1
- ..\..\..\..\components\libc\compilers\armlibc\syscalls.c
+ ..\..\..\..\components\libc\compilers\armlibc\syscall_mem.c
@@ -562,6 +562,13 @@
CPU
+
+
+ showmem.c
+ 1
+ ..\..\..\..\libcpu\arm\common\showmem.c
+
+
div0.c
@@ -578,9 +585,9 @@
- showmem.c
- 1
- ..\..\..\..\libcpu\arm\common\showmem.c
+ context_rvds.S
+ 2
+ ..\..\..\..\libcpu\arm\cortex-m3\context_rvds.S
@@ -590,13 +597,6 @@
..\..\..\..\libcpu\arm\cortex-m3\cpuport.c
-
-
- context_rvds.S
- 2
- ..\..\..\..\libcpu\arm\cortex-m3\context_rvds.S
-
-
DeviceDrivers
@@ -614,6 +614,13 @@
..\..\..\..\components\drivers\i2c\i2c_dev.c
+
+
+ waitqueue.c
+ 1
+ ..\..\..\..\components\drivers\ipc\waitqueue.c
+
+
ringblk_buf.c
@@ -621,27 +628,6 @@
..\..\..\..\components\drivers\ipc\ringblk_buf.c
-
-
- workqueue.c
- 1
- ..\..\..\..\components\drivers\ipc\workqueue.c
-
-
-
-
- completion.c
- 1
- ..\..\..\..\components\drivers\ipc\completion.c
-
-
-
-
- dataqueue.c
- 1
- ..\..\..\..\components\drivers\ipc\dataqueue.c
-
-
pipe.c
@@ -651,9 +637,9 @@
- waitqueue.c
+ completion.c
1
- ..\..\..\..\components\drivers\ipc\waitqueue.c
+ ..\..\..\..\components\drivers\ipc\completion.c
@@ -663,6 +649,20 @@
..\..\..\..\components\drivers\ipc\ringbuffer.c
+
+
+ dataqueue.c
+ 1
+ ..\..\..\..\components\drivers\ipc\dataqueue.c
+
+
+
+
+ workqueue.c
+ 1
+ ..\..\..\..\components\drivers\ipc\workqueue.c
+
+
pin.c
@@ -722,16 +722,16 @@
Drivers
- startup_ch32f10x.s
- 2
- ..\Libraries\CH32F10x_StdPeriph_Driver\CMSIS\WCH\CH32F10x\Source\ARM\startup_ch32f10x.s
+ system_ch32f10x.c
+ 1
+ board\system_ch32f10x.c
- system_ch32f10x.c
- 1
- board\system_ch32f10x.c
+ startup_ch32f10x.s
+ 2
+ ..\Libraries\CH32F10x_StdPeriph_Driver\CMSIS\WCH\CH32F10x\Source\ARM\startup_ch32f10x.s
@@ -741,34 +741,6 @@
board\board.c
-
-
- drv_rtc_ch32f10x.c
- 1
- ..\Libraries\ch32_drivers\drv_rtc_ch32f10x.c
-
-
-
-
- drv_hwi2c_ch32f10x.c
- 1
- ..\Libraries\ch32_drivers\drv_hwi2c_ch32f10x.c
-
-
-
-
- drv_gpio_ch32f10x.c
- 1
- ..\Libraries\ch32_drivers\drv_gpio_ch32f10x.c
-
-
-
-
- drv_spi_ch32f10x.c
- 1
- ..\Libraries\ch32_drivers\drv_spi_ch32f10x.c
-
-
drv_uart_ch32f10x.c
@@ -778,16 +750,16 @@
- drv_iwdt_ch32f10x.c
+ drv_common.c
1
- ..\Libraries\ch32_drivers\drv_iwdt_ch32f10x.c
+ ..\Libraries\ch32_drivers\drv_common.c
- drv_common.c
+ drv_gpio_ch32f10x.c
1
- ..\Libraries\ch32_drivers\drv_common.c
+ ..\Libraries\ch32_drivers\drv_gpio_ch32f10x.c
@@ -817,41 +789,6 @@
Kernel
-
-
- thread.c
- 1
- ..\..\..\..\src\thread.c
-
-
-
-
- mem.c
- 1
- ..\..\..\..\src\mem.c
-
-
-
-
- idle.c
- 1
- ..\..\..\..\src\idle.c
-
-
-
-
- timer.c
- 1
- ..\..\..\..\src\timer.c
-
-
-
-
- clock.c
- 1
- ..\..\..\..\src\clock.c
-
-
irq.c
@@ -861,30 +798,9 @@
- components.c
+ scheduler.c
1
- ..\..\..\..\src\components.c
-
-
-
-
- object.c
- 1
- ..\..\..\..\src\object.c
-
-
-
-
- mempool.c
- 1
- ..\..\..\..\src\mempool.c
-
-
-
-
- kservice.c
- 1
- ..\..\..\..\src\kservice.c
+ ..\..\..\..\src\scheduler.c
@@ -894,6 +810,34 @@
..\..\..\..\src\device.c
+
+
+ components.c
+ 1
+ ..\..\..\..\src\components.c
+
+
+
+
+ kservice.c
+ 1
+ ..\..\..\..\src\kservice.c
+
+
+
+
+ clock.c
+ 1
+ ..\..\..\..\src\clock.c
+
+
+
+
+ mempool.c
+ 1
+ ..\..\..\..\src\mempool.c
+
+
ipc.c
@@ -903,9 +847,37 @@
- scheduler.c
+ object.c
1
- ..\..\..\..\src\scheduler.c
+ ..\..\..\..\src\object.c
+
+
+
+
+ idle.c
+ 1
+ ..\..\..\..\src\idle.c
+
+
+
+
+ mem.c
+ 1
+ ..\..\..\..\src\mem.c
+
+
+
+
+ timer.c
+ 1
+ ..\..\..\..\src\timer.c
+
+
+
+
+ thread.c
+ 1
+ ..\..\..\..\src\thread.c
diff --git a/bsp/wch/arm/ch32f103c8-core/rtconfig.h b/bsp/wch/arm/ch32f103c8-core/rtconfig.h
index cc5ddae209..8285146024 100644
--- a/bsp/wch/arm/ch32f103c8-core/rtconfig.h
+++ b/bsp/wch/arm/ch32f103c8-core/rtconfig.h
@@ -209,18 +209,7 @@
/* On-chip Peripheral Drivers */
#define BSP_USING_UART
-#define BSP_USING_UART1
#define BSP_USING_UART2
-#define BSP_USING_UART3
-#define BSP_USING_SPI
-#define BSP_USING_SPI1
-#define BSP_USING_SPI2
-#define BSP_USING_HWI2C
-#define BSP_USING_HWI2C1
-#define BSP_USING_HWI2C2
-#define BSP_USING_IWDT
-#define BSP_USING_RTC
-#define BSP_USING_RTC_LSI
#define LSI_VALUE 40000
/* Onboard Peripheral Drivers */