9
0
Fork 0

Make room for the noinit section before the heap

git-svn-id: https://nuttx.svn.sourceforge.net/svnroot/nuttx/trunk@3710 7fd9a85b-ad96-42d3-883c-3090e2eb8679
This commit is contained in:
patacongo 2011-06-15 23:54:25 +00:00
parent c489254e2d
commit 0480efca53
7 changed files with 19 additions and 19 deletions

View File

@ -46,9 +46,9 @@
* Pre-processor definitions
****************************************************************************/
/* Stack is allocated just after .bss and before the heap */
/* Stack is allocated just after uninitialized data and just before the heap */
#define STACKBASE (_ebss+CONFIG_IDLETHREAD_STACKSIZE-1)
#define STACKBASE (_enoinit+CONFIG_IDLETHREAD_STACKSIZE-1)
/* The RAMPZ register is only available for CPUs with more than 64Kb of FLASH.
* Only the AT90USB646, 647, 1286, and 1287 are supported by this file.
@ -72,6 +72,7 @@
.global _sdata /* Start of .data section in RAM */
.global _edata /* End of .data section in RAM */
.global _eronly /* Start of .data section in FLASH */
.global _enoinit /* End of uninitialized data. Defined by ld.script */
.global up_lowinit /* Perform low level initialization */
.global os_start /* NuttX entry point */
@ -263,15 +264,14 @@ __do_clear_bss:
* Heap Base
****************************************************************************/
/* This global variable is unsigned long g_heapbase and is
* exported from here only because of its coupling to other
* uses of _ebss in this file
/* This global variable is unsigned long g_heapbase and is exported from
* here only because of its coupling to other uses of _enoinit in this file
*/
.data
.globl g_heapbase
.type g_heapbase, object
g_heapbase:
.word _ebss+CONFIG_IDLETHREAD_STACKSIZE
.word _enoinit+CONFIG_IDLETHREAD_STACKSIZE
.size g_heapbase, .-g_heapbase
.end

View File

@ -47,9 +47,9 @@
* Pre-processor definitions
****************************************************************************/
/* Stack is allocated just after .bss and before the heap */
/* Stack is allocated just after uninitialized data and just before the heap */
#define STACKBASE (_ebss+CONFIG_IDLETHREAD_STACKSIZE-4)
#define STACKBASE (_enoinit+CONFIG_IDLETHREAD_STACKSIZE-1)
/* The RAMPZ register is only available for CPUs with more than 64Kb of FLASH.
* At present, only the ATMega128 is supported so RAMPZ should always be
@ -72,6 +72,7 @@
.global _sdata /* Start of .data section in RAM */
.global _edata /* End of .data section in RAM */
.global _eronly /* Start of .data section in FLASH */
.global _enoinit /* End of uninitilized data. Defined by ld.script */
.global up_lowinit /* Perform low level initialization */
.global os_start /* NuttX entry point */
@ -257,15 +258,14 @@ __do_clear_bss:
* Heap Base
****************************************************************************/
/* This global variable is unsigned long g_heapbase and is
* exported from here only because of its coupling to other
* uses of _ebss in this file
/* This global variable is unsigned long g_heapbase and is exported from
* here only because of its coupling to other uses of _enoinit in this file
*/
.data
.globl g_heapbase
.type g_heapbase, object
g_heapbase:
.word _ebss+CONFIG_IDLETHREAD_STACKSIZE
.word _enoinit+CONFIG_IDLETHREAD_STACKSIZE
.size g_heapbase, .-g_heapbase
.end

View File

@ -181,7 +181,7 @@ void up_dumpstate(void)
if (rtcb->pid == 0)
{
ustackbase = g_heapbase - 4;
ustackbase = g_heapbase - 1;
ustacksize = CONFIG_IDLETHREAD_STACKSIZE;
}
else
@ -193,8 +193,8 @@ void up_dumpstate(void)
/* Get the limits on the interrupt stack memory */
#if CONFIG_ARCH_INTERRUPTSTACK > 0
istackbase = (uint16_t)&g_intstackbase;
istacksize = (CONFIG_ARCH_INTERRUPTSTACK & ~3) - 4;
istackbase = (uint16_t)&g_intstackbase - 1;
istacksize = CONFIG_ARCH_INTERRUPTSTACK;
/* Show interrupt stack info */

View File

@ -125,7 +125,7 @@ SECTIONS
_etext = . ;
} > flash
_eronly = ABSOLUTE(.); /* See below */
_eronly = ABSOLUTE(.);
.data :
{

View File

@ -125,7 +125,7 @@ SECTIONS
_etext = . ;
} > flash
_eronly = ABSOLUTE(.); /* See below */
_eronly = ABSOLUTE(.);
.data :
{

View File

@ -125,7 +125,7 @@ SECTIONS
_etext = . ;
} > flash
_eronly = ABSOLUTE(.); /* See below */
_eronly = ABSOLUTE(.);
.data :
{

View File

@ -125,7 +125,7 @@ SECTIONS
_etext = . ;
} > flash
_eronly = ABSOLUTE(.); /* See below */
_eronly = ABSOLUTE(.);
.data :
{