net: macb: remove BUG_ON() and reset the queue to handle RX errors
authorCyrille Pitchen <cyrille.pitchen@atmel.com>
Fri, 25 Mar 2016 09:37:34 +0000 (10:37 +0100)
committerDavid S. Miller <davem@davemloft.net>
Fri, 25 Mar 2016 15:44:08 +0000 (11:44 -0400)
commit9ba723b081a2d1be81fb6f60f912bd94fa744965
treec92d0e70c46c389930360a37940801289db80af1
parentd31fecd1af991e39cbe27a59f290cdcefb7ba6ae
net: macb: remove BUG_ON() and reset the queue to handle RX errors

This patch removes two BUG_ON() used to notify about RX queue corruptions
on macb (not gem) hardware without actually handling the error.

The new code skips corrupted frames but still processes faultless frames.
Then it resets the RX queue before restarting the reception from a clean
state.

This patch is a rework of an older patch proposed by Neil Armstrong:
http://patchwork.ozlabs.org/patch/371525/

Signed-off-by: Cyrille Pitchen <cyrille.pitchen@atmel.com>
Acked-by: Neil Armstrong <narmstrong@baylibre.com>
Acked-by: Nicolas Ferre <nicolas.ferre@atmel.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ethernet/cadence/macb.c