use minimal configuration on rtconfig.h

git-svn-id: https://rt-thread.googlecode.com/svn/trunk@876 bbd45198-f89e-11dd-88c7-29a3b14d5316
This commit is contained in:
bernard.xiong@gmail.com 2010-08-22 23:19:11 +00:00
parent d7c6cad8c1
commit 4eeae777dc
4 changed files with 124 additions and 4 deletions

113
bsp/jz47xx/jz47xx_ram.lds Normal file
View File

@ -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) }
}

View File

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

View File

@ -5,11 +5,12 @@ import SCons.cpp
# make all component false # make all component false
RT_USING_FINSH = False RT_USING_FINSH = False
RT_USING_DFS = False RT_USING_DFS = False
RT_USING_DFS_ELMFAT = False RT_USING_DFS_ELMFAT = False
RT_USING_DFS_YAFFS2 = False RT_USING_DFS_YAFFS2 = False
RT_USING_LWIP = False RT_USING_LWIP = False
RT_USING_WEBSERVER = False RT_USING_WEBSERVER = False
RT_USING_RTGUI = False RT_USING_RTGUI = False
RT_USING_MODULE = False
# parse rtconfig.h to get used component # parse rtconfig.h to get used component
PreProcessor = SCons.cpp.PreProcessor() PreProcessor = SCons.cpp.PreProcessor()
@ -42,6 +43,10 @@ if rtconfig_ns.has_key('RT_USING_LWIP'):
if rtconfig_ns.has_key('RT_USING_RTGUI'): if rtconfig_ns.has_key('RT_USING_RTGUI'):
RT_USING_RTGUI = True RT_USING_RTGUI = True
# module options
if rtconfig_ns.has_key('RT_USING_MODULE'):
RT_USING_MODULE = True
# toolchains options # toolchains options
ARCH='mips' ARCH='mips'
CPU='jz47xx' CPU='jz47xx'
@ -65,7 +70,7 @@ OBJCPY = PREFIX + 'objcopy'
DEVICE = ' -mips32 -msoft-float' DEVICE = ' -mips32 -msoft-float'
CFLAGS = DEVICE + ' -G0 -DRT_USING_MINILIBC -mno-abicalls -fno-pic -fno-builtin -fno-exceptions -ffunction-sections -fomit-frame-pointer' 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' 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 = '' CPATH = ''
LPATH = '' LPATH = ''

View File

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