summaryrefslogtreecommitdiff
path: root/target/linux/ramips/files/drivers
diff options
context:
space:
mode:
authorjuhosg <juhosg@3c298f89-4303-0410-b956-a3cf2f4a3e73>2012-02-26 10:54:13 +0000
committerjuhosg <juhosg@3c298f89-4303-0410-b956-a3cf2f4a3e73>2012-02-26 10:54:13 +0000
commitc369186781ad419dc837eb5b1dda1bf139fbb901 (patch)
tree8ea350fc62d0f52c10b019c9613e59b47459f447 /target/linux/ramips/files/drivers
parentbcc8770afa7f25036c8380a572b08aa51a753da6 (diff)
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
Diffstat (limited to 'target/linux/ramips/files/drivers')
-rw-r--r--target/linux/ramips/files/drivers/net/ethernet/ramips/ramips_main.c4
1 files changed, 3 insertions, 1 deletions
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;