Fix heap setup problem

git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@1793 42af7a65-404d-4744-a932-0658087f49c3
This commit is contained in:
patacongo 2009-05-19 15:17:28 +00:00
parent 579d73bcd0
commit 314843a301
2 changed files with 14 additions and 6 deletions

View File

@ -73,7 +73,7 @@ CONFIG_ARCH_BOARD=eagle100
CONFIG_ARCH_BOARD_EAGLE100=y CONFIG_ARCH_BOARD_EAGLE100=y
CONFIG_BOARD_LOOPSPERMSEC=4531 CONFIG_BOARD_LOOPSPERMSEC=4531
CONFIG_DRAM_SIZE=0x00010000 CONFIG_DRAM_SIZE=0x00010000
CONFIG_DRAM_START=0x00000000 CONFIG_DRAM_START=0x20000000
CONFIG_DRAM_END=(CONFIG_DRAM_START+CONFIG_DRAM_SIZE) CONFIG_DRAM_END=(CONFIG_DRAM_START+CONFIG_DRAM_SIZE)
CONFIG_ARCH_IRQPRIO=y CONFIG_ARCH_IRQPRIO=y
CONFIG_DRAM_NUTTXENTRY=0x00002000 CONFIG_DRAM_NUTTXENTRY=0x00002000

View File

@ -64,6 +64,8 @@
* Public Functions * Public Functions
****************************************************************************/ ****************************************************************************/
static boolean g_nest;
/**************************************************************************** /****************************************************************************
* Name: up_ledinit * Name: up_ledinit
****************************************************************************/ ****************************************************************************/
@ -78,6 +80,7 @@ void up_ledinit(void)
/* Configure Port E, Bit 1 as an output, initial value=OFF */ /* Configure Port E, Bit 1 as an output, initial value=OFF */
lm3s_configgpio(GPIO_FUNC_OUTPUT | GPIO_VALUE_ZERO | GPIO_PORTE | 1); lm3s_configgpio(GPIO_FUNC_OUTPUT | GPIO_VALUE_ZERO | GPIO_PORTE | 1);
g_nest = 0;
} }
/**************************************************************************** /****************************************************************************
@ -92,12 +95,14 @@ void up_ledon(int led)
case LED_HEAPALLOCATE: case LED_HEAPALLOCATE:
default: default:
break; break;
case LED_IRQSENABLED:
case LED_STACKCREATED:
case LED_INIRQ: case LED_INIRQ:
case LED_SIGNAL: case LED_SIGNAL:
case LED_ASSERTION: case LED_ASSERTION:
case LED_PANIC: case LED_PANIC:
g_nest++;
case LED_IRQSENABLED:
case LED_STACKCREATED:
modifyreg32(LM3S_GPIOE_DATA, 0, (1 << 1)); modifyreg32(LM3S_GPIOE_DATA, 0, (1 << 1));
break; break;
} }
@ -113,16 +118,19 @@ void up_ledoff(int led)
{ {
case LED_IRQSENABLED: case LED_IRQSENABLED:
case LED_STACKCREATED: case LED_STACKCREATED:
case LED_STARTED:
case LED_HEAPALLOCATE:
default: default:
break; break;
case LED_STARTED:
case LED_HEAPALLOCATE:
case LED_INIRQ: case LED_INIRQ:
case LED_SIGNAL: case LED_SIGNAL:
case LED_ASSERTION: case LED_ASSERTION:
case LED_PANIC: case LED_PANIC:
modifyreg32(LM3S_GPIOE_DATA, (1 << 1), 0); if (--g_nest <= 0)
{
modifyreg32(LM3S_GPIOE_DATA, (1 << 1), 0);
}
break; break;
} }
} }