瀏覽代碼

use minimal configuration on rtconfig.h

git-svn-id: https://rt-thread.googlecode.com/svn/trunk@876 bbd45198-f89e-11dd-88c7-29a3b14d5316
bernard.xiong@gmail.com 14 年之前
父節點
當前提交
4eeae777dc
共有 4 個文件被更改,包括 124 次插入4 次删除
  1. 113 0
      bsp/jz47xx/jz47xx_ram.lds
  2. 2 2
      bsp/jz47xx/rtconfig.h
  3. 7 2
      bsp/jz47xx/rtconfig.py
  4. 2 0
      bsp/jz47xx/startup.c

+ 113 - 0
bsp/jz47xx/jz47xx_ram.lds

@@ -0,0 +1,113 @@
+/*
+ * File      : jz47xx_ram.lds
+ * This file is part of RT-Thread RTOS
+ * COPYRIGHT (C) 2010, RT-Thread Development Team
+ *
+ * The license and distribution terms for this file may be
+ * found in the file LICENSE in this distribution or at
+ * http://www.rt-thread.org/license/LICENSE
+ *
+ * Change Logs:
+ * Date           Author       Notes
+ * 2010-05-17     swkyer       first version
+ * 2010-08-23     bernard      change to jz47xx
+ */
+
+ENTRY(_entry)
+SECTIONS
+{
+	.start 0x80000000:
+    {
+        *(.start);
+    }
+    
+    .text ALIGN(0x4) : 
+    {
+     *(.text)
+     *(.text.*)
+     *(.rodata)
+     *(.rodata.*)
+     *(.rodata1)
+     *(.rodata1.*)
+     
+     /* section information for finsh shell */
+     . = ALIGN(4);
+     __fsymtab_start = .;
+     KEEP(*(FSymTab))
+     __fsymtab_end = .;
+     . = ALIGN(4);
+     __vsymtab_start = .;
+     KEEP(*(VSymTab))
+     __vsymtab_end = .;
+     . = ALIGN(4);
+    }
+    
+	.data ALIGN(0x4) : 
+    {
+     *(.data)
+     *(.data.*)
+    
+     *(.data1)
+     *(.data1.*)
+     
+     . = ALIGN(8);
+     _gp = ABSOLUTE(.);     /* Base of small data */
+     
+     *(.sdata)
+     *(.sdata.*)
+    }
+
+	__bss_start = ABSOLUTE(.);
+	.sbss : 
+  	{
+		*(.sbss)
+        *(.sbss.*)
+        *(.dynsbss)
+		*(.scommon)
+ 	}
+ 	
+ 	.bss :
+ 	{
+		*(.bss)
+        *(.bss.*)
+        *(.dynbss)
+		*(COMMON)
+ 	}
+	__bss_end = ABSOLUTE(.);
+	
+    _end = .;
+
+    /* Stabs debugging sections.  */
+    .stab          0 : { *(.stab) }
+    .stabstr       0 : { *(.stabstr) }
+    .stab.excl     0 : { *(.stab.excl) }
+    .stab.exclstr  0 : { *(.stab.exclstr) }
+    .stab.index    0 : { *(.stab.index) }
+    .stab.indexstr 0 : { *(.stab.indexstr) }
+    .comment       0 : { *(.comment) }
+    /* DWARF debug sections.
+     * Symbols in the DWARF debugging sections are relative to the beginning
+     * of the section so we begin them at 0.  */
+    /* DWARF 1 */
+    .debug          0 : { *(.debug) }
+    .line           0 : { *(.line) }
+    /* GNU DWARF 1 extensions */
+    .debug_srcinfo  0 : { *(.debug_srcinfo) }
+    .debug_sfnames  0 : { *(.debug_sfnames) }
+    /* DWARF 1.1 and DWARF 2 */
+    .debug_aranges  0 : { *(.debug_aranges) }
+    .debug_pubnames 0 : { *(.debug_pubnames) }
+    /* DWARF 2 */
+    .debug_info     0 : { *(.debug_info .gnu.linkonce.wi.*) }
+    .debug_abbrev   0 : { *(.debug_abbrev) }
+    .debug_line     0 : { *(.debug_line) }
+    .debug_frame    0 : { *(.debug_frame) }
+    .debug_str      0 : { *(.debug_str) }
+    .debug_loc      0 : { *(.debug_loc) }
+    .debug_macinfo  0 : { *(.debug_macinfo) }
+    /* SGI/MIPS DWARF 2 extensions */
+    .debug_weaknames 0 : { *(.debug_weaknames) }
+    .debug_funcnames 0 : { *(.debug_funcnames) }
+    .debug_typenames 0 : { *(.debug_typenames) }
+    .debug_varnames  0 : { *(.debug_varnames) }
+}

+ 2 - 2
bsp/jz47xx/rtconfig.h

@@ -49,7 +49,7 @@
 #define RT_USING_MEMPOOL
 
 /* Using Dynamic Heap Management */
-#define RT_USING_HEAP
+/* #define RT_USING_HEAP */
 
 /* Using Small MM */
 #define RT_USING_SMALL_MEM
@@ -74,7 +74,7 @@
 #define FINSH_DEVICE_NAME "uart"
 
 /* SECTION: device filesystem support */
-#define RT_USING_DFS
+/* #define RT_USING_DFS */
 #define RT_USING_DFS_ELMFAT
 
 /* the max number of mounted filesystem */

+ 7 - 2
bsp/jz47xx/rtconfig.py

@@ -5,11 +5,12 @@ import SCons.cpp
 # make all component false
 RT_USING_FINSH 		= False
 RT_USING_DFS 		= False
-RT_USING_DFS_ELMFAT 	= False
+RT_USING_DFS_ELMFAT = False
 RT_USING_DFS_YAFFS2	= False
 RT_USING_LWIP 		= False
 RT_USING_WEBSERVER	= False
 RT_USING_RTGUI 		= False
+RT_USING_MODULE		= False
 
 # parse rtconfig.h to get used component
 PreProcessor = SCons.cpp.PreProcessor()
@@ -42,6 +43,10 @@ if rtconfig_ns.has_key('RT_USING_LWIP'):
 if rtconfig_ns.has_key('RT_USING_RTGUI'):
     RT_USING_RTGUI = True
 
+# module options
+if rtconfig_ns.has_key('RT_USING_MODULE'):
+    RT_USING_MODULE = True
+
 # toolchains options
 ARCH='mips'
 CPU='jz47xx'
@@ -65,7 +70,7 @@ OBJCPY = PREFIX + 'objcopy'
 DEVICE = ' -mips32 -msoft-float'
 CFLAGS = DEVICE + ' -G0 -DRT_USING_MINILIBC -mno-abicalls -fno-pic -fno-builtin -fno-exceptions -ffunction-sections -fomit-frame-pointer'
 AFLAGS = ' -c' + DEVICE + ' -x assembler-with-cpp'
-LFLAGS = DEVICE + ' -Wl,--gc-sections,-Map=rtthread-jz47xx.map,-cref,-u,Reset_Handler -T jz47xx_ram.ld'
+LFLAGS = DEVICE + ' -Wl,--gc-sections,-Map=rtthread-jz47xx.map,-cref,-u,Reset_Handler -T jz47xx_ram.lds'
 
 CPATH = ''
 LPATH = ''

+ 2 - 0
bsp/jz47xx/startup.c

@@ -42,7 +42,9 @@ void rtthread_startup(void)
 	/* init timer system */
 	rt_system_timer_init();
 
+#ifdef RT_USING_HEAP
 	rt_system_heap_init((void*)&__bss_end, (void*)RT_HW_HEAP_END);
+#endif
 
 	/* init scheduler system */
 	rt_system_scheduler_init();