fix luminaryif_rx pooling issue

git-svn-id: https://rt-thread.googlecode.com/svn/trunk@1038 bbd45198-f89e-11dd-88c7-29a3b14d5316
This commit is contained in:
qiuyiuestc 2010-11-01 01:26:00 +00:00
parent 644c879a4c
commit 6e4a697d0c
1 changed files with 7 additions and 6 deletions

View File

@ -121,9 +121,10 @@ void luminaryif_isr(void)
// Indicate that a packet has been received.
//
rt_err_t result;
/* a frame has been received */
result = eth_device_ready((struct eth_device*)&(luminaryif_dev->parent));
RT_ASSERT(result == RT_EOK);
//
// Disable Ethernet RX Interrupt.
//
@ -340,6 +341,11 @@ struct pbuf * luminaryif_rx(rt_device_t dev)
if(!EthernetPacketAvail(ETH_BASE))
{
//
// Enable Ethernet RX Interrupt.
//
EthernetIntEnable(ETH_BASE, ETH_INT_RX);
return(NULL);
}
@ -417,11 +423,6 @@ struct pbuf * luminaryif_rx(rt_device_t dev)
#endif
}
//
// Enable Ethernet RX Interrupt.
//
EthernetIntEnable(ETH_BASE, ETH_INT_RX);
return(p);
}