diff options
author | Wolfgang Denk <wd@denx.de> | 2007-08-14 18:43:14 +0200 |
---|---|---|
committer | Wolfgang Denk <wd@denx.de> | 2007-08-14 18:43:14 +0200 |
commit | 541d41b2f23182047c0d655ad8d795f33dd37df2 (patch) | |
tree | b6c9395bacc120d62415f45a0598a41ea0b5d018 /cpu/ppc4xx/4xx_enet.c | |
parent | f01dbb5424a81453c81190dd30e945891466f621 (diff) | |
parent | 3b3bff4cbf2cb14f9a3e7d03f26ebab900efe4ae (diff) | |
download | u-boot-imx-541d41b2f23182047c0d655ad8d795f33dd37df2.zip u-boot-imx-541d41b2f23182047c0d655ad8d795f33dd37df2.tar.gz u-boot-imx-541d41b2f23182047c0d655ad8d795f33dd37df2.tar.bz2 |
Merge with /home/wd/git/u-boot/custodian/u-boot-ppc4xx
Diffstat (limited to 'cpu/ppc4xx/4xx_enet.c')
-rw-r--r-- | cpu/ppc4xx/4xx_enet.c | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/cpu/ppc4xx/4xx_enet.c b/cpu/ppc4xx/4xx_enet.c index d782791..cc8e734 100644 --- a/cpu/ppc4xx/4xx_enet.c +++ b/cpu/ppc4xx/4xx_enet.c @@ -1415,10 +1415,8 @@ static void enet_rcv (struct eth_device *dev, unsigned long malisr) if ((MAL_RX_CTRL_EMPTY & hw_p->rx[i].ctrl) || (loop_count >= NUM_RX_BUFF)) break; + loop_count++; - hw_p->rx_slot++; - if (NUM_RX_BUFF == hw_p->rx_slot) - hw_p->rx_slot = 0; handled++; data_len = (unsigned long) hw_p->rx[i].data_len; /* Get len */ if (data_len) { @@ -1468,6 +1466,10 @@ static void enet_rcv (struct eth_device *dev, unsigned long malisr) if (NUM_RX_BUFF == hw_p->rx_i_index) hw_p->rx_i_index = 0; + hw_p->rx_slot++; + if (NUM_RX_BUFF == hw_p->rx_slot) + hw_p->rx_slot = 0; + /* AS.HARNOIS * free receive buffer only when * buffer has been handled (eth_rx) |