From 990c8a3efaf81a5967b0af9dd5583fdc102e71ea Mon Sep 17 00:00:00 2001 From: Gabor Juhos Date: Sun, 26 Feb 2012 10:54:13 +0000 Subject: ramips: don't read RAMIPS_RX_CALC_IDX0 register in the loop git-svn-id: svn://svn.openwrt.org/openwrt/trunk@30733 3c298f89-4303-0410-b956-a3cf2f4a3e73 --- target/linux/ramips/files/drivers/net/ethernet/ramips/ramips_main.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'target/linux/ramips') diff --git a/target/linux/ramips/files/drivers/net/ethernet/ramips/ramips_main.c b/target/linux/ramips/files/drivers/net/ethernet/ramips/ramips_main.c index 60001e3bc1..beceb9441e 100644 --- a/target/linux/ramips/files/drivers/net/ethernet/ramips/ramips_main.c +++ b/target/linux/ramips/files/drivers/net/ethernet/ramips/ramips_main.c @@ -717,13 +717,15 @@ ramips_eth_rx_hw(unsigned long ptr) int rx; int max_rx = 16; + rx = ramips_fe_rr(RAMIPS_RX_CALC_IDX0); + while (max_rx) { struct raeth_rx_info *rxi; struct ramips_rx_dma *rxd; struct sk_buff *rx_skb, *new_skb; int pktlen; - rx = (ramips_fe_rr(RAMIPS_RX_CALC_IDX0) + 1) % NUM_RX_DESC; + rx = (rx + 1) % NUM_RX_DESC; rxi = &re->rx_info[rx]; rxd = rxi->rx_desc; -- cgit v1.2.3