fix ENET interrupt issue; fix the end address of heap issue.
git-svn-id: https://rt-thread.googlecode.com/svn/trunk@738 bbd45198-f89e-11dd-88c7-29a3b14d5316
This commit is contained in:
parent
5b91286805
commit
a5b48e361e
|
@ -29,8 +29,14 @@ void ENET_IRQHandler(void)
|
||||||
{
|
{
|
||||||
rt_uint32_t status;
|
rt_uint32_t status;
|
||||||
|
|
||||||
|
/* enter interrupt */
|
||||||
|
rt_interrupt_enter();
|
||||||
|
|
||||||
status = LPC_EMAC->IntStatus & LPC_EMAC->IntEnable;
|
status = LPC_EMAC->IntStatus & LPC_EMAC->IntEnable;
|
||||||
|
|
||||||
|
/* Clear the interrupt. */
|
||||||
|
LPC_EMAC->IntClear = status;
|
||||||
|
|
||||||
if (status & INT_RX_DONE)
|
if (status & INT_RX_DONE)
|
||||||
{
|
{
|
||||||
/* Disable EMAC RxDone interrupts. */
|
/* Disable EMAC RxDone interrupts. */
|
||||||
|
@ -44,6 +50,9 @@ void ENET_IRQHandler(void)
|
||||||
/* release one slot */
|
/* release one slot */
|
||||||
rt_sem_release(&sem_slot);
|
rt_sem_release(&sem_slot);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* leave interrupt */
|
||||||
|
rt_interrupt_leave();
|
||||||
}
|
}
|
||||||
|
|
||||||
/* phy write */
|
/* phy write */
|
||||||
|
|
|
@ -85,12 +85,12 @@ void rtthread_startup(void)
|
||||||
|
|
||||||
#ifdef RT_USING_HEAP
|
#ifdef RT_USING_HEAP
|
||||||
#ifdef __CC_ARM
|
#ifdef __CC_ARM
|
||||||
rt_system_heap_init((void*)&Image$$RW_IRAM1$$ZI$$Limit, (void*)0x10004000);
|
rt_system_heap_init((void*)&Image$$RW_IRAM1$$ZI$$Limit, (void*)0x10008000);
|
||||||
#elif __ICCARM__
|
#elif __ICCARM__
|
||||||
rt_system_heap_init(__segment_end("HEAP"), (void*)0x10004000);
|
rt_system_heap_init(__segment_end("HEAP"), (void*)0x10008000);
|
||||||
#else
|
#else
|
||||||
/* init memory system */
|
/* init memory system */
|
||||||
rt_system_heap_init((void*)&__bss_end, (void*)0x10004000);
|
rt_system_heap_init((void*)&__bss_end, (void*)0x10008000);
|
||||||
#endif
|
#endif
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue