ramips: don't read RAMIPS_RX_CALC_IDX0 register in the loop
authorjuhosg <juhosg@3c298f89-4303-0410-b956-a3cf2f4a3e73>
Sun, 26 Feb 2012 10:54:13 +0000 (10:54 +0000)
committerjuhosg <juhosg@3c298f89-4303-0410-b956-a3cf2f4a3e73>
Sun, 26 Feb 2012 10:54:13 +0000 (10:54 +0000)
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

index 60001e3..beceb94 100644 (file)
@@ -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;