diff --git a/bsp/stm32f20x/SConscript b/bsp/stm32f20x/SConscript
index a2c2f3d16b..d9c64eb9f9 100644
--- a/bsp/stm32f20x/SConscript
+++ b/bsp/stm32f20x/SConscript
@@ -1,18 +1,12 @@
-import rtconfig
-Import('RTT_ROOT')
from building import *
-src_bsp = ['application.c', 'startup.c', 'board.c', 'stm32f20x_it.c']
-src_drv = ['usart.c', 'serial.c', 'rtc.c']
+cwd = GetCurrentDir()
+objs = []
+list = os.listdir(cwd)
-if GetDepend('RT_USING_DFS'):
- src_drv += ['stm32f2xx_eth.c']
+for d in list:
+ path = os.path.join(cwd, d)
+ if os.path.isfile(os.path.join(path, 'SConscript')):
+ objs = objs + SConscript(os.path.join(d, 'SConscript'))
-if GetDepend('RT_USING_LWIP'):
- src_drv += ['sdio_sd.c']
-
-src = src_bsp + src_drv
-CPPPATH = [GetCurrentDir()]
-group = DefineGroup('Startup', src, depend = [''], CPPPATH = CPPPATH)
-
-Return('group')
+Return('objs')
diff --git a/bsp/stm32f20x/SConstruct b/bsp/stm32f20x/SConstruct
index 8929042d16..2ef1c0c2c2 100644
--- a/bsp/stm32f20x/SConstruct
+++ b/bsp/stm32f20x/SConstruct
@@ -10,7 +10,7 @@ else:
sys.path = sys.path + [os.path.join(RTT_ROOT, 'tools')]
from building import *
-TARGET = 'rtthread-stm32.' + rtconfig.TARGET_EXT
+TARGET = 'rtthread-stm32f2xx.' + rtconfig.TARGET_EXT
env = Environment(tools = ['mingw'],
AS = rtconfig.AS, ASFLAGS = rtconfig.AFLAGS,
@@ -28,10 +28,7 @@ Export('RTT_ROOT')
Export('rtconfig')
# prepare building environment
-objs = PrepareBuilding(env, RTT_ROOT)
-
-# STM32 firemare library building script
-objs = objs + SConscript('Libraries/SConscript', variant_dir='build/bsp/Libraries', duplicate=0)
+objs = PrepareBuilding(env, RTT_ROOT, has_libcpu=False)
# build program
env.Program(TARGET, objs)
diff --git a/bsp/stm32f20x/project.uvopt b/bsp/stm32f20x/project.uvopt
index 65e7c6ba65..211330dc95 100644
--- a/bsp/stm32f20x/project.uvopt
+++ b/bsp/stm32f20x/project.uvopt
@@ -27,7 +27,7 @@
25000000
- 1
+ 0
1
1
0
@@ -75,14 +75,7 @@
0
1
- 255
-
-
- 0
- Reference Manual
- DATASHTS\ST\STM32F20x.PDF
-
-
+ 0
SARMCM3.DLL
-MPU
@@ -94,8 +87,8 @@
-pSTM32F207VG
- 1
- 0
+ 0
+ 1
1
0
1
@@ -112,7 +105,7 @@
1
0
0
- 5
+ 7
@@ -125,27 +118,15 @@
Segger\JL2CM3.dll
-
-
- 0
- DLGDARM
- (1010=-1,-1,-1,-1,0)(1007=-1,-1,-1,-1,0)(1008=-1,-1,-1,-1,0)(1009=-1,-1,-1,-1,0)(1012=-1,-1,-1,-1,0)
-
-
- 0
- ARMDBGFLAGS
- -T0
-
-
0
0
0
0
- 1
+ 0
0
0
- 1
+ 0
0
0
0
@@ -169,7 +150,7 @@
- Startup
+ Applications
0
0
0
@@ -179,12 +160,12 @@
1
0
0
- 50
+ 0
0
- 25
- 26
+ 0
+ 0
0
- .\application.c
+ applications\application.c
application.c
@@ -195,42 +176,49 @@
0
0
0
- 102
- 108
+ 0
+ 0
0
- .\startup.c
+ applications\startup.c
startup.c
+
+
+
+ Drivers
+ 0
+ 0
+ 0
- 1
+ 2
3
1
0
0
0
0
- 65
- 65
+ 0
+ 0
0
- .\board.c
- board.c
+ Drivers\24LCxx.c
+ 24LCxx.c
- 1
+ 2
4
1
0
0
0
0
- 79
- 80
+ 0
+ 0
0
- .\stm32f20x_it.c
- stm32f20x_it.c
+ Drivers\FM25Lx.c
+ FM25Lx.c
- 1
+ 2
5
1
0
@@ -240,11 +228,11 @@
0
0
0
- .\usart.c
- usart.c
+ Drivers\board.c
+ board.c
- 1
+ 2
6
1
0
@@ -254,11 +242,11 @@
0
0
0
- .\serial.c
- serial.c
+ Drivers\i2c.c
+ i2c.c
- 1
+ 2
7
1
0
@@ -268,30 +256,23 @@
0
0
0
- .\rtc.c
+ Drivers\rtc.c
rtc.c
- 1
+ 2
8
1
0
0
- 27
+ 0
0
- 1
- 15
+ 0
+ 0
0
- .\sdio_sd.c
+ Drivers\sdio_sd.c
sdio_sd.c
-
-
-
- Kernel
- 0
- 0
- 0
2
9
@@ -303,8 +284,8 @@
0
0
0
- ..\..\src\clock.c
- clock.c
+ Drivers\serial.c
+ serial.c
2
@@ -317,8 +298,8 @@
0
0
0
- ..\..\src\device.c
- device.c
+ Drivers\stm32f2_eth.c
+ stm32f2_eth.c
2
@@ -331,8 +312,8 @@
0
0
0
- ..\..\src\idle.c
- idle.c
+ Drivers\stm32f2xx_it.c
+ stm32f2xx_it.c
2
@@ -345,12 +326,572 @@
0
0
0
+ Drivers\usart.c
+ usart.c
+
+
+
+
+ STM32_StdPeriph
+ 0
+ 0
+ 0
+
+ 3
+ 13
+ 1
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ Libraries\CMSIS\CM3\CoreSupport\core_cm3.c
+ core_cm3.c
+
+
+ 3
+ 14
+ 1
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ Libraries\CMSIS\CM3\DeviceSupport\ST\STM32F2xx\system_stm32f2xx.c
+ system_stm32f2xx.c
+
+
+ 3
+ 15
+ 1
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ Libraries\STM32F2xx_StdPeriph_Driver\src\misc.c
+ misc.c
+
+
+ 3
+ 16
+ 1
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ Libraries\STM32F2xx_StdPeriph_Driver\src\stm32f2xx_adc.c
+ stm32f2xx_adc.c
+
+
+ 3
+ 17
+ 1
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ Libraries\STM32F2xx_StdPeriph_Driver\src\stm32f2xx_can.c
+ stm32f2xx_can.c
+
+
+ 3
+ 18
+ 1
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ Libraries\STM32F2xx_StdPeriph_Driver\src\stm32f2xx_crc.c
+ stm32f2xx_crc.c
+
+
+ 3
+ 19
+ 1
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ Libraries\STM32F2xx_StdPeriph_Driver\src\stm32f2xx_cryp.c
+ stm32f2xx_cryp.c
+
+
+ 3
+ 20
+ 1
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ Libraries\STM32F2xx_StdPeriph_Driver\src\stm32f2xx_cryp_aes.c
+ stm32f2xx_cryp_aes.c
+
+
+ 3
+ 21
+ 1
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ Libraries\STM32F2xx_StdPeriph_Driver\src\stm32f2xx_cryp_des.c
+ stm32f2xx_cryp_des.c
+
+
+ 3
+ 22
+ 1
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ Libraries\STM32F2xx_StdPeriph_Driver\src\stm32f2xx_cryp_tdes.c
+ stm32f2xx_cryp_tdes.c
+
+
+ 3
+ 23
+ 1
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ Libraries\STM32F2xx_StdPeriph_Driver\src\stm32f2xx_dac.c
+ stm32f2xx_dac.c
+
+
+ 3
+ 24
+ 1
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ Libraries\STM32F2xx_StdPeriph_Driver\src\stm32f2xx_dbgmcu.c
+ stm32f2xx_dbgmcu.c
+
+
+ 3
+ 25
+ 1
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ Libraries\STM32F2xx_StdPeriph_Driver\src\stm32f2xx_dcmi.c
+ stm32f2xx_dcmi.c
+
+
+ 3
+ 26
+ 1
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ Libraries\STM32F2xx_StdPeriph_Driver\src\stm32f2xx_dma.c
+ stm32f2xx_dma.c
+
+
+ 3
+ 27
+ 1
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ Libraries\STM32F2xx_StdPeriph_Driver\src\stm32f2xx_exti.c
+ stm32f2xx_exti.c
+
+
+ 3
+ 28
+ 1
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ Libraries\STM32F2xx_StdPeriph_Driver\src\stm32f2xx_flash.c
+ stm32f2xx_flash.c
+
+
+ 3
+ 29
+ 1
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ Libraries\STM32F2xx_StdPeriph_Driver\src\stm32f2xx_fsmc.c
+ stm32f2xx_fsmc.c
+
+
+ 3
+ 30
+ 1
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ Libraries\STM32F2xx_StdPeriph_Driver\src\stm32f2xx_gpio.c
+ stm32f2xx_gpio.c
+
+
+ 3
+ 31
+ 1
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ Libraries\STM32F2xx_StdPeriph_Driver\src\stm32f2xx_hash.c
+ stm32f2xx_hash.c
+
+
+ 3
+ 32
+ 1
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ Libraries\STM32F2xx_StdPeriph_Driver\src\stm32f2xx_hash_md5.c
+ stm32f2xx_hash_md5.c
+
+
+ 3
+ 33
+ 1
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ Libraries\STM32F2xx_StdPeriph_Driver\src\stm32f2xx_hash_sha1.c
+ stm32f2xx_hash_sha1.c
+
+
+ 3
+ 34
+ 1
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ Libraries\STM32F2xx_StdPeriph_Driver\src\stm32f2xx_i2c.c
+ stm32f2xx_i2c.c
+
+
+ 3
+ 35
+ 1
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ Libraries\STM32F2xx_StdPeriph_Driver\src\stm32f2xx_iwdg.c
+ stm32f2xx_iwdg.c
+
+
+ 3
+ 36
+ 1
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ Libraries\STM32F2xx_StdPeriph_Driver\src\stm32f2xx_pwr.c
+ stm32f2xx_pwr.c
+
+
+ 3
+ 37
+ 1
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ Libraries\STM32F2xx_StdPeriph_Driver\src\stm32f2xx_rcc.c
+ stm32f2xx_rcc.c
+
+
+ 3
+ 38
+ 1
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ Libraries\STM32F2xx_StdPeriph_Driver\src\stm32f2xx_rng.c
+ stm32f2xx_rng.c
+
+
+ 3
+ 39
+ 1
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ Libraries\STM32F2xx_StdPeriph_Driver\src\stm32f2xx_rtc.c
+ stm32f2xx_rtc.c
+
+
+ 3
+ 40
+ 1
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ Libraries\STM32F2xx_StdPeriph_Driver\src\stm32f2xx_sdio.c
+ stm32f2xx_sdio.c
+
+
+ 3
+ 41
+ 1
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ Libraries\STM32F2xx_StdPeriph_Driver\src\stm32f2xx_spi.c
+ stm32f2xx_spi.c
+
+
+ 3
+ 42
+ 1
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ Libraries\STM32F2xx_StdPeriph_Driver\src\stm32f2xx_syscfg.c
+ stm32f2xx_syscfg.c
+
+
+ 3
+ 43
+ 1
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ Libraries\STM32F2xx_StdPeriph_Driver\src\stm32f2xx_tim.c
+ stm32f2xx_tim.c
+
+
+ 3
+ 44
+ 1
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ Libraries\STM32F2xx_StdPeriph_Driver\src\stm32f2xx_usart.c
+ stm32f2xx_usart.c
+
+
+ 3
+ 45
+ 1
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ Libraries\STM32F2xx_StdPeriph_Driver\src\stm32f2xx_wwdg.c
+ stm32f2xx_wwdg.c
+
+
+ 3
+ 46
+ 2
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ Libraries\CMSIS\CM3\DeviceSupport\ST\STM32F2xx\startup\arm\startup_stm32f2xx.s
+ startup_stm32f2xx.s
+
+
+ 3
+ 47
+ 1
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ Libraries\STM32F2x7_ETH_Driver\src\stm32f2x7_eth.c
+ stm32f2x7_eth.c
+
+
+
+
+ Kernel
+ 0
+ 0
+ 0
+
+ 4
+ 48
+ 1
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ ..\..\src\clock.c
+ clock.c
+
+
+ 4
+ 49
+ 1
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ ..\..\src\device.c
+ device.c
+
+
+ 4
+ 50
+ 1
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ ..\..\src\idle.c
+ idle.c
+
+
+ 4
+ 51
+ 1
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
..\..\src\ipc.c
ipc.c
- 2
- 13
+ 4
+ 52
1
0
0
@@ -363,8 +904,8 @@
irq.c
- 2
- 14
+ 4
+ 53
1
0
0
@@ -377,8 +918,8 @@
kservice.c
- 2
- 15
+ 4
+ 54
1
0
0
@@ -391,8 +932,22 @@
mem.c
- 2
- 16
+ 4
+ 55
+ 1
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ ..\..\src\memheap.c
+ memheap.c
+
+
+ 4
+ 56
1
0
0
@@ -405,22 +960,8 @@
mempool.c
- 2
- 17
- 1
- 0
- 0
- 0
- 0
- 0
- 0
- 0
- ..\..\src\module.c
- module.c
-
-
- 2
- 18
+ 4
+ 57
1
0
0
@@ -433,22 +974,8 @@
object.c
- 2
- 19
- 1
- 0
- 0
- 0
- 0
- 0
- 0
- 0
- ..\..\src\rtm.c
- rtm.c
-
-
- 2
- 20
+ 4
+ 58
1
0
0
@@ -461,22 +988,8 @@
scheduler.c
- 2
- 21
- 1
- 0
- 0
- 0
- 0
- 0
- 0
- 0
- ..\..\src\slab.c
- slab.c
-
-
- 2
- 22
+ 4
+ 59
1
0
0
@@ -489,8 +1002,8 @@
thread.c
- 2
- 23
+ 4
+ 60
1
0
0
@@ -505,13 +1018,13 @@
- STM32
+ CORTEX-M3
0
0
0
- 3
- 26
+ 5
+ 61
1
0
0
@@ -520,40 +1033,12 @@
0
0
0
- ..\..\libcpu\arm\common\backtrace.c
- backtrace.c
+ ..\..\libcpu\arm\cortex-m3\cpuport.c
+ cpuport.c
- 3
- 27
- 1
- 0
- 0
- 0
- 0
- 0
- 0
- 0
- ..\..\libcpu\arm\common\div0.c
- div0.c
-
-
- 3
- 28
- 1
- 0
- 0
- 0
- 0
- 0
- 0
- 0
- ..\..\libcpu\arm\common\showmem.c
- showmem.c
-
-
- 3
- 0
+ 5
+ 62
2
0
0
@@ -566,8 +1051,8 @@
context_rvds.S
- 3
- 0
+ 5
+ 63
1
0
0
@@ -576,8 +1061,141 @@
0
0
0
- ..\..\libcpu\arm\cortex-m3\cpuport.c
- cpuport.c
+ ..\..\libcpu\arm\common\backtrace.c
+ backtrace.c
+
+
+ 5
+ 64
+ 1
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ ..\..\libcpu\arm\common\div0.c
+ div0.c
+
+
+ 5
+ 65
+ 1
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ ..\..\libcpu\arm\common\showmem.c
+ showmem.c
+
+
+
+
+ Filesystem
+ 0
+ 0
+ 0
+
+ 6
+ 66
+ 1
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ ..\..\components\dfs\src\dfs.c
+ dfs.c
+
+
+ 6
+ 67
+ 1
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ ..\..\components\dfs\src\dfs_fs.c
+ dfs_fs.c
+
+
+ 6
+ 68
+ 1
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ ..\..\components\dfs\src\dfs_file.c
+ dfs_file.c
+
+
+ 6
+ 69
+ 1
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ ..\..\components\dfs\src\dfs_posix.c
+ dfs_posix.c
+
+
+ 6
+ 70
+ 1
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ ..\..\components\dfs\filesystems\elmfat\dfs_elm.c
+ dfs_elm.c
+
+
+ 6
+ 71
+ 1
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ ..\..\components\dfs\filesystems\elmfat\ff.c
+ ff.c
+
+
+ 6
+ 72
+ 1
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ ..\..\components\dfs\filesystems\elmfat\option\cc936.c
+ cc936.c
@@ -587,8 +1205,8 @@
0
0
- 4
- 29
+ 7
+ 73
1
0
0
@@ -601,8 +1219,8 @@
cmd.c
- 4
- 30
+ 7
+ 74
1
0
0
@@ -615,8 +1233,8 @@
finsh_compiler.c
- 4
- 31
+ 7
+ 75
1
0
0
@@ -629,8 +1247,8 @@
finsh_error.c
- 4
- 32
+ 7
+ 76
1
0
0
@@ -643,8 +1261,8 @@
finsh_heap.c
- 4
- 33
+ 7
+ 77
1
0
0
@@ -657,8 +1275,8 @@
finsh_init.c
- 4
- 34
+ 7
+ 78
1
0
0
@@ -671,8 +1289,8 @@
finsh_node.c
- 4
- 35
+ 7
+ 79
1
0
0
@@ -685,8 +1303,8 @@
finsh_ops.c
- 4
- 36
+ 7
+ 80
1
0
0
@@ -699,8 +1317,8 @@
finsh_parser.c
- 4
- 37
+ 7
+ 81
1
0
0
@@ -713,8 +1331,8 @@
finsh_token.c
- 4
- 38
+ 7
+ 82
1
0
0
@@ -727,8 +1345,8 @@
finsh_var.c
- 4
- 39
+ 7
+ 83
1
0
0
@@ -741,8 +1359,8 @@
finsh_vm.c
- 4
- 40
+ 7
+ 84
1
0
0
@@ -755,8 +1373,8 @@
shell.c
- 4
- 41
+ 7
+ 85
1
0
0
@@ -771,13 +1389,13 @@
- STM32_StdPeriph
+ LwIP
0
0
0
- 5
- 42
+ 8
+ 86
1
0
0
@@ -786,12 +1404,12 @@
0
0
0
- Libraries\CMSIS\CM3\CoreSupport\core_cm3.c
- core_cm3.c
+ ..\..\components\net\lwip\src\api\api_lib.c
+ api_lib.c
- 5
- 43
+ 8
+ 87
1
0
0
@@ -800,12 +1418,12 @@
0
0
0
- Libraries\CMSIS\CM3\DeviceSupport\ST\STM32F2xx\system_stm32f2xx.c
- system_stm32f2xx.c
+ ..\..\components\net\lwip\src\api\api_msg.c
+ api_msg.c
- 5
- 44
+ 8
+ 88
1
0
0
@@ -814,12 +1432,12 @@
0
0
0
- Libraries\STM32F2xx_StdPeriph_Driver\src\misc.c
- misc.c
+ ..\..\components\net\lwip\src\api\err.c
+ err.c
- 5
- 45
+ 8
+ 89
1
0
0
@@ -828,12 +1446,12 @@
0
0
0
- Libraries\STM32F2xx_StdPeriph_Driver\src\stm32f2xx_adc.c
- stm32f2xx_adc.c
+ ..\..\components\net\lwip\src\api\netbuf.c
+ netbuf.c
- 5
- 46
+ 8
+ 90
1
0
0
@@ -842,12 +1460,12 @@
0
0
0
- Libraries\STM32F2xx_StdPeriph_Driver\src\stm32f2xx_can.c
- stm32f2xx_can.c
+ ..\..\components\net\lwip\src\api\netdb.c
+ netdb.c
- 5
- 47
+ 8
+ 91
1
0
0
@@ -856,12 +1474,12 @@
0
0
0
- Libraries\STM32F2xx_StdPeriph_Driver\src\stm32f2xx_crc.c
- stm32f2xx_crc.c
+ ..\..\components\net\lwip\src\api\netifapi.c
+ netifapi.c
- 5
- 48
+ 8
+ 92
1
0
0
@@ -870,12 +1488,12 @@
0
0
0
- Libraries\STM32F2xx_StdPeriph_Driver\src\stm32f2xx_cryp.c
- stm32f2xx_cryp.c
+ ..\..\components\net\lwip\src\api\sockets.c
+ sockets.c
- 5
- 49
+ 8
+ 93
1
0
0
@@ -884,12 +1502,12 @@
0
0
0
- Libraries\STM32F2xx_StdPeriph_Driver\src\stm32f2xx_cryp_aes.c
- stm32f2xx_cryp_aes.c
+ ..\..\components\net\lwip\src\api\tcpip.c
+ tcpip.c
- 5
- 50
+ 8
+ 94
1
0
0
@@ -898,12 +1516,12 @@
0
0
0
- Libraries\STM32F2xx_StdPeriph_Driver\src\stm32f2xx_cryp_des.c
- stm32f2xx_cryp_des.c
+ ..\..\components\net\lwip\src\arch\sys_arch.c
+ sys_arch.c
- 5
- 51
+ 8
+ 95
1
0
0
@@ -912,12 +1530,12 @@
0
0
0
- Libraries\STM32F2xx_StdPeriph_Driver\src\stm32f2xx_cryp_tdes.c
- stm32f2xx_cryp_tdes.c
+ ..\..\components\net\lwip\src\core\def.c
+ def.c
- 5
- 52
+ 8
+ 96
1
0
0
@@ -926,12 +1544,12 @@
0
0
0
- Libraries\STM32F2xx_StdPeriph_Driver\src\stm32f2xx_dac.c
- stm32f2xx_dac.c
+ ..\..\components\net\lwip\src\core\dhcp.c
+ dhcp.c
- 5
- 53
+ 8
+ 97
1
0
0
@@ -940,12 +1558,12 @@
0
0
0
- Libraries\STM32F2xx_StdPeriph_Driver\src\stm32f2xx_dbgmcu.c
- stm32f2xx_dbgmcu.c
+ ..\..\components\net\lwip\src\core\dns.c
+ dns.c
- 5
- 54
+ 8
+ 98
1
0
0
@@ -954,12 +1572,12 @@
0
0
0
- Libraries\STM32F2xx_StdPeriph_Driver\src\stm32f2xx_dcmi.c
- stm32f2xx_dcmi.c
+ ..\..\components\net\lwip\src\core\init.c
+ init.c
- 5
- 55
+ 8
+ 99
1
0
0
@@ -968,12 +1586,12 @@
0
0
0
- Libraries\STM32F2xx_StdPeriph_Driver\src\stm32f2xx_dma.c
- stm32f2xx_dma.c
+ ..\..\components\net\lwip\src\core\memp.c
+ memp.c
- 5
- 56
+ 8
+ 100
1
0
0
@@ -982,12 +1600,12 @@
0
0
0
- Libraries\STM32F2xx_StdPeriph_Driver\src\stm32f2xx_exti.c
- stm32f2xx_exti.c
+ ..\..\components\net\lwip\src\core\netif.c
+ netif.c
- 5
- 57
+ 8
+ 101
1
0
0
@@ -996,12 +1614,12 @@
0
0
0
- Libraries\STM32F2xx_StdPeriph_Driver\src\stm32f2xx_flash.c
- stm32f2xx_flash.c
+ ..\..\components\net\lwip\src\core\pbuf.c
+ pbuf.c
- 5
- 58
+ 8
+ 102
1
0
0
@@ -1010,12 +1628,12 @@
0
0
0
- Libraries\STM32F2xx_StdPeriph_Driver\src\stm32f2xx_fsmc.c
- stm32f2xx_fsmc.c
+ ..\..\components\net\lwip\src\core\raw.c
+ raw.c
- 5
- 59
+ 8
+ 103
1
0
0
@@ -1024,12 +1642,12 @@
0
0
0
- Libraries\STM32F2xx_StdPeriph_Driver\src\stm32f2xx_gpio.c
- stm32f2xx_gpio.c
+ ..\..\components\net\lwip\src\core\stats.c
+ stats.c
- 5
- 60
+ 8
+ 104
1
0
0
@@ -1038,12 +1656,12 @@
0
0
0
- Libraries\STM32F2xx_StdPeriph_Driver\src\stm32f2xx_hash.c
- stm32f2xx_hash.c
+ ..\..\components\net\lwip\src\core\sys.c
+ sys.c
- 5
- 61
+ 8
+ 105
1
0
0
@@ -1052,12 +1670,12 @@
0
0
0
- Libraries\STM32F2xx_StdPeriph_Driver\src\stm32f2xx_hash_md5.c
- stm32f2xx_hash_md5.c
+ ..\..\components\net\lwip\src\core\tcp.c
+ tcp.c
- 5
- 62
+ 8
+ 106
1
0
0
@@ -1066,12 +1684,12 @@
0
0
0
- Libraries\STM32F2xx_StdPeriph_Driver\src\stm32f2xx_hash_sha1.c
- stm32f2xx_hash_sha1.c
+ ..\..\components\net\lwip\src\core\tcp_in.c
+ tcp_in.c
- 5
- 63
+ 8
+ 107
1
0
0
@@ -1080,12 +1698,12 @@
0
0
0
- Libraries\STM32F2xx_StdPeriph_Driver\src\stm32f2xx_i2c.c
- stm32f2xx_i2c.c
+ ..\..\components\net\lwip\src\core\tcp_out.c
+ tcp_out.c
- 5
- 64
+ 8
+ 108
1
0
0
@@ -1094,12 +1712,12 @@
0
0
0
- Libraries\STM32F2xx_StdPeriph_Driver\src\stm32f2xx_iwdg.c
- stm32f2xx_iwdg.c
+ ..\..\components\net\lwip\src\core\timers.c
+ timers.c
- 5
- 65
+ 8
+ 109
1
0
0
@@ -1108,12 +1726,12 @@
0
0
0
- Libraries\STM32F2xx_StdPeriph_Driver\src\stm32f2xx_pwr.c
- stm32f2xx_pwr.c
+ ..\..\components\net\lwip\src\core\udp.c
+ udp.c
- 5
- 66
+ 8
+ 110
1
0
0
@@ -1122,12 +1740,12 @@
0
0
0
- Libraries\STM32F2xx_StdPeriph_Driver\src\stm32f2xx_rcc.c
- stm32f2xx_rcc.c
+ ..\..\components\net\lwip\src\core\ipv4\autoip.c
+ autoip.c
- 5
- 67
+ 8
+ 111
1
0
0
@@ -1136,12 +1754,12 @@
0
0
0
- Libraries\STM32F2xx_StdPeriph_Driver\src\stm32f2xx_rng.c
- stm32f2xx_rng.c
+ ..\..\components\net\lwip\src\core\ipv4\icmp.c
+ icmp.c
- 5
- 68
+ 8
+ 112
1
0
0
@@ -1150,12 +1768,12 @@
0
0
0
- Libraries\STM32F2xx_StdPeriph_Driver\src\stm32f2xx_rtc.c
- stm32f2xx_rtc.c
+ ..\..\components\net\lwip\src\core\ipv4\igmp.c
+ igmp.c
- 5
- 69
+ 8
+ 113
1
0
0
@@ -1164,12 +1782,12 @@
0
0
0
- Libraries\STM32F2xx_StdPeriph_Driver\src\stm32f2xx_sdio.c
- stm32f2xx_sdio.c
+ ..\..\components\net\lwip\src\core\ipv4\inet.c
+ inet.c
- 5
- 70
+ 8
+ 114
1
0
0
@@ -1178,12 +1796,12 @@
0
0
0
- Libraries\STM32F2xx_StdPeriph_Driver\src\stm32f2xx_spi.c
- stm32f2xx_spi.c
+ ..\..\components\net\lwip\src\core\ipv4\inet_chksum.c
+ inet_chksum.c
- 5
- 71
+ 8
+ 115
1
0
0
@@ -1192,12 +1810,12 @@
0
0
0
- Libraries\STM32F2xx_StdPeriph_Driver\src\stm32f2xx_syscfg.c
- stm32f2xx_syscfg.c
+ ..\..\components\net\lwip\src\core\ipv4\ip.c
+ ip.c
- 5
- 72
+ 8
+ 116
1
0
0
@@ -1206,12 +1824,12 @@
0
0
0
- Libraries\STM32F2xx_StdPeriph_Driver\src\stm32f2xx_tim.c
- stm32f2xx_tim.c
+ ..\..\components\net\lwip\src\core\ipv4\ip_addr.c
+ ip_addr.c
- 5
- 73
+ 8
+ 117
1
0
0
@@ -1220,12 +1838,12 @@
0
0
0
- Libraries\STM32F2xx_StdPeriph_Driver\src\stm32f2xx_usart.c
- stm32f2xx_usart.c
+ ..\..\components\net\lwip\src\core\ipv4\ip_frag.c
+ ip_frag.c
- 5
- 74
+ 8
+ 118
1
0
0
@@ -1234,33 +1852,12 @@
0
0
0
- Libraries\STM32F2xx_StdPeriph_Driver\src\stm32f2xx_wwdg.c
- stm32f2xx_wwdg.c
+ ..\..\components\net\lwip\src\netif\etharp.c
+ etharp.c
- 5
- 75
- 2
- 0
- 0
- 0
- 0
- 0
- 0
- 0
- Libraries\CMSIS\CM3\DeviceSupport\ST\STM32F2xx\startup\arm\startup_stm32f2xx.s
- startup_stm32f2xx.s
-
-
-
-
- dfs
- 0
- 0
- 0
-
- 6
- 76
+ 8
+ 119
1
0
0
@@ -1269,12 +1866,12 @@
0
0
0
- ..\..\components\dfs\src\dfs.c
- dfs.c
+ ..\..\components\net\lwip\src\netif\ethernetif.c
+ ethernetif.c
- 6
- 77
+ 8
+ 120
1
0
0
@@ -1283,36 +1880,8 @@
0
0
0
- ..\..\components\dfs\src\dfs_file.c
- dfs_file.c
-
-
- 6
- 78
- 1
- 0
- 0
- 0
- 0
- 0
- 0
- 0
- ..\..\components\dfs\src\dfs_fs.c
- dfs_fs.c
-
-
- 6
- 79
- 1
- 0
- 0
- 0
- 0
- 0
- 0
- 0
- ..\..\components\dfs\src\dfs_posix.c
- dfs_posix.c
+ ..\..\components\net\lwip\src\netif\slipif.c
+ slipif.c
diff --git a/bsp/stm32f20x/project.uvproj b/bsp/stm32f20x/project.uvproj
index 76b85913b5..bbdc001193 100644
--- a/bsp/stm32f20x/project.uvproj
+++ b/bsp/stm32f20x/project.uvproj
@@ -343,7 +343,7 @@
USE_STDPERIPH_DRIVER
- .;..\..\components\finsh;..\..\include;..\..\libcpu\arm\common;..\..\libcpu\arm\cortex-m3;Libraries\CMSIS\CM3\CoreSupport;Libraries\CMSIS\CM3\DeviceSupport\ST\STM32F2xx;Libraries\STM32F2xx_StdPeriph_Driver\inc
+ .;..\..\components\finsh;..\..\include;..\..\libcpu\arm\common;..\..\libcpu\arm\cortex-m3;Libraries\CMSIS\CM3\CoreSupport;Libraries\CMSIS\CM3\DeviceSupport\ST\STM32F2xx;Libraries\STM32F2xx_StdPeriph_Driver\inc;applications;drivers
@@ -381,280 +381,78 @@
- Startup
+ Applications
application.c
1
- .\application.c
+ applications\application.c
startup.c
1
- .\startup.c
+ applications\startup.c
+
+
+
+
+ Drivers
+
+
+ 24LCxx.c
+ 1
+ Drivers\24LCxx.c
+
+
+
+
+ FM25Lx.c
+ 1
+ Drivers\FM25Lx.c
board.c
1
- .\board.c
+ Drivers\board.c
- stm32f20x_it.c
+ i2c.c
1
- .\stm32f20x_it.c
-
-
-
-
- usart.c
- 1
- .\usart.c
-
-
-
-
- serial.c
- 1
- .\serial.c
+ Drivers\i2c.c
rtc.c
1
- .\rtc.c
+ Drivers\rtc.c
-
-
- Kernel
- clock.c
+ serial.c
1
- ..\..\src\clock.c
+ Drivers\serial.c
- device.c
+ stm32f2xx_it.c
1
- ..\..\src\device.c
+ Drivers\stm32f2xx_it.c
- idle.c
+ usart.c
1
- ..\..\src\idle.c
-
-
-
-
- ipc.c
- 1
- ..\..\src\ipc.c
-
-
-
-
- irq.c
- 1
- ..\..\src\irq.c
-
-
-
-
- kservice.c
- 1
- ..\..\src\kservice.c
-
-
-
-
- mem.c
- 1
- ..\..\src\mem.c
-
-
-
-
- memheap.c
- 1
- ..\..\src\memheap.c
-
-
-
-
- mempool.c
- 1
- ..\..\src\mempool.c
-
-
-
-
- object.c
- 1
- ..\..\src\object.c
-
-
-
-
- scheduler.c
- 1
- ..\..\src\scheduler.c
-
-
-
-
- thread.c
- 1
- ..\..\src\thread.c
-
-
-
-
- timer.c
- 1
- ..\..\src\timer.c
-
-
-
-
- CORTEX-M3
-
-
- cpuport.c
- 1
- ..\..\libcpu\arm\cortex-m3\cpuport.c
-
-
-
-
- context_rvds.S
- 2
- ..\..\libcpu\arm\cortex-m3\context_rvds.S
-
-
-
-
- backtrace.c
- 1
- ..\..\libcpu\arm\common\backtrace.c
-
-
-
-
- div0.c
- 1
- ..\..\libcpu\arm\common\div0.c
-
-
-
-
- showmem.c
- 1
- ..\..\libcpu\arm\common\showmem.c
-
-
-
-
- finsh
-
-
- cmd.c
- 1
- ..\..\components\finsh\cmd.c
-
-
-
-
- finsh_compiler.c
- 1
- ..\..\components\finsh\finsh_compiler.c
-
-
-
-
- finsh_error.c
- 1
- ..\..\components\finsh\finsh_error.c
-
-
-
-
- finsh_heap.c
- 1
- ..\..\components\finsh\finsh_heap.c
-
-
-
-
- finsh_init.c
- 1
- ..\..\components\finsh\finsh_init.c
-
-
-
-
- finsh_node.c
- 1
- ..\..\components\finsh\finsh_node.c
-
-
-
-
- finsh_ops.c
- 1
- ..\..\components\finsh\finsh_ops.c
-
-
-
-
- finsh_parser.c
- 1
- ..\..\components\finsh\finsh_parser.c
-
-
-
-
- finsh_token.c
- 1
- ..\..\components\finsh\finsh_token.c
-
-
-
-
- finsh_var.c
- 1
- ..\..\components\finsh\finsh_var.c
-
-
-
-
- finsh_vm.c
- 1
- ..\..\components\finsh\finsh_vm.c
-
-
-
-
- shell.c
- 1
- ..\..\components\finsh\shell.c
-
-
-
-
- symbol.c
- 1
- ..\..\components\finsh\symbol.c
+ Drivers\usart.c
@@ -899,6 +697,232 @@
+
+ Kernel
+
+
+ clock.c
+ 1
+ ..\..\src\clock.c
+
+
+
+
+ device.c
+ 1
+ ..\..\src\device.c
+
+
+
+
+ idle.c
+ 1
+ ..\..\src\idle.c
+
+
+
+
+ ipc.c
+ 1
+ ..\..\src\ipc.c
+
+
+
+
+ irq.c
+ 1
+ ..\..\src\irq.c
+
+
+
+
+ kservice.c
+ 1
+ ..\..\src\kservice.c
+
+
+
+
+ mem.c
+ 1
+ ..\..\src\mem.c
+
+
+
+
+ memheap.c
+ 1
+ ..\..\src\memheap.c
+
+
+
+
+ mempool.c
+ 1
+ ..\..\src\mempool.c
+
+
+
+
+ object.c
+ 1
+ ..\..\src\object.c
+
+
+
+
+ scheduler.c
+ 1
+ ..\..\src\scheduler.c
+
+
+
+
+ thread.c
+ 1
+ ..\..\src\thread.c
+
+
+
+
+ timer.c
+ 1
+ ..\..\src\timer.c
+
+
+
+
+ CORTEX-M3
+
+
+ cpuport.c
+ 1
+ ..\..\libcpu\arm\cortex-m3\cpuport.c
+
+
+
+
+ context_rvds.S
+ 2
+ ..\..\libcpu\arm\cortex-m3\context_rvds.S
+
+
+
+
+ backtrace.c
+ 1
+ ..\..\libcpu\arm\common\backtrace.c
+
+
+
+
+ div0.c
+ 1
+ ..\..\libcpu\arm\common\div0.c
+
+
+
+
+ showmem.c
+ 1
+ ..\..\libcpu\arm\common\showmem.c
+
+
+
+
+ finsh
+
+
+ cmd.c
+ 1
+ ..\..\components\finsh\cmd.c
+
+
+
+
+ finsh_compiler.c
+ 1
+ ..\..\components\finsh\finsh_compiler.c
+
+
+
+
+ finsh_error.c
+ 1
+ ..\..\components\finsh\finsh_error.c
+
+
+
+
+ finsh_heap.c
+ 1
+ ..\..\components\finsh\finsh_heap.c
+
+
+
+
+ finsh_init.c
+ 1
+ ..\..\components\finsh\finsh_init.c
+
+
+
+
+ finsh_node.c
+ 1
+ ..\..\components\finsh\finsh_node.c
+
+
+
+
+ finsh_ops.c
+ 1
+ ..\..\components\finsh\finsh_ops.c
+
+
+
+
+ finsh_parser.c
+ 1
+ ..\..\components\finsh\finsh_parser.c
+
+
+
+
+ finsh_token.c
+ 1
+ ..\..\components\finsh\finsh_token.c
+
+
+
+
+ finsh_var.c
+ 1
+ ..\..\components\finsh\finsh_var.c
+
+
+
+
+ finsh_vm.c
+ 1
+ ..\..\components\finsh\finsh_vm.c
+
+
+
+
+ shell.c
+ 1
+ ..\..\components\finsh\shell.c
+
+
+
+
+ symbol.c
+ 1
+ ..\..\components\finsh\symbol.c
+
+
+
diff --git a/bsp/stm32f20x/rtconfig.h b/bsp/stm32f20x/rtconfig.h
index 31ca5853b4..01f860b160 100644
--- a/bsp/stm32f20x/rtconfig.h
+++ b/bsp/stm32f20x/rtconfig.h
@@ -73,7 +73,7 @@
#define FINSH_USING_DESCRIPTION
/* SECTION: device filesystem */
-/* #define RT_USING_DFS */
+/* #define RT_USING_DFS */
#define RT_USING_DFS_ELMFAT
#define RT_DFS_ELM_REENTRANT
#define RT_DFS_ELM_WORD_ACCESS
diff --git a/bsp/stm32f20x/rtconfig.py b/bsp/stm32f20x/rtconfig.py
index ca103f6aa6..c083c43708 100644
--- a/bsp/stm32f20x/rtconfig.py
+++ b/bsp/stm32f20x/rtconfig.py
@@ -3,17 +3,17 @@ import os
# toolchains options
ARCH='arm'
CPU='cortex-m3'
-CROSS_TOOL='keil'
+CROSS_TOOL='gcc'
if os.getenv('RTT_CC'):
CROSS_TOOL = os.getenv('RTT_CC')
if CROSS_TOOL == 'gcc':
PLATFORM = 'gcc'
- EXEC_PATH = 'E:/SourceryGCC/bin'
+ EXEC_PATH = 'C:/Program Files (x86)/CodeSourcery/Sourcery G++ Lite/bin'
elif CROSS_TOOL == 'keil':
PLATFORM = 'armcc'
- EXEC_PATH = 'E:/Keil'
+ EXEC_PATH = 'C:/Keil/ARM/BIN40'
elif CROSS_TOOL == 'iar':
PLATFORM = 'iar'
IAR_PATH = 'C:/Program Files/IAR Systems/Embedded Workbench 6.0 Evaluation'