diff options
Diffstat (limited to 'drivers/net/s6gmac.c')
-rw-r--r-- | drivers/net/s6gmac.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/drivers/net/s6gmac.c b/drivers/net/s6gmac.c index d81706e91aa7..45f26344b368 100644 --- a/drivers/net/s6gmac.c +++ b/drivers/net/s6gmac.c | |||
@@ -373,9 +373,9 @@ struct s6gmac { | |||
373 | static void s6gmac_rx_fillfifo(struct s6gmac *pd) | 373 | static void s6gmac_rx_fillfifo(struct s6gmac *pd) |
374 | { | 374 | { |
375 | struct sk_buff *skb; | 375 | struct sk_buff *skb; |
376 | while ((((u8)(pd->rx_skb_i - pd->rx_skb_o)) < S6_NUM_RX_SKB) | 376 | while ((((u8)(pd->rx_skb_i - pd->rx_skb_o)) < S6_NUM_RX_SKB) && |
377 | && (!s6dmac_fifo_full(pd->rx_dma, pd->rx_chan)) | 377 | (!s6dmac_fifo_full(pd->rx_dma, pd->rx_chan)) && |
378 | && (skb = dev_alloc_skb(S6_MAX_FRLEN + 2))) { | 378 | (skb = dev_alloc_skb(S6_MAX_FRLEN + 2))) { |
379 | pd->rx_skb[(pd->rx_skb_i++) % S6_NUM_RX_SKB] = skb; | 379 | pd->rx_skb[(pd->rx_skb_i++) % S6_NUM_RX_SKB] = skb; |
380 | s6dmac_put_fifo_cache(pd->rx_dma, pd->rx_chan, | 380 | s6dmac_put_fifo_cache(pd->rx_dma, pd->rx_chan, |
381 | pd->io, (u32)skb->data, S6_MAX_FRLEN); | 381 | pd->io, (u32)skb->data, S6_MAX_FRLEN); |