if ( icr & INTEL_IRQ_TXDW )
intel_poll_tx ( netdev );
- /* Poll for RX completionsm, if applicable */
+ /* Poll for RX completions, if applicable */
if ( icr & INTEL_IRQ_RXT0 )
intel_poll_rx ( netdev );
+ /* Report receive overruns */
+ if ( icr & INTEL_IRQ_RXO )
+ netdev_rx_err ( netdev, NULL, -ENOBUFS );
+
/* Check link state, if applicable */
if ( icr & INTEL_IRQ_LSC )
intel_check_link ( netdev );
#define INTEL_IRQ_TXDW 0x00000001UL /**< Transmit descriptor done */
#define INTEL_IRQ_LSC 0x00000004UL /**< Link status change */
#define INTEL_IRQ_RXT0 0x00000080UL /**< Receive timer */
+#define INTEL_IRQ_RXO 0x00000400UL /**< Receive overrun */
/** Interrupt Mask Set/Read Register */
#define INTEL_IMS 0x000d0UL