Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 57910
b: refs/heads/master
c: c3d1182
h: refs/heads/master
v: v3
  • Loading branch information
Linas Vepstas authored and Jeff Garzik committed Jun 20, 2007
1 parent a1c52bf commit 6baa390
Show file tree
Hide file tree
Showing 3 changed files with 13 additions and 10 deletions.
2 changes: 1 addition & 1 deletion [refs]
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
refs/heads/master: 2bf27a0d4913a5f0ef38e3be510b1b3add2869ad
refs/heads/master: c3d1182a538fd99b6fe5effa1ab54521c0efb1d1
20 changes: 11 additions & 9 deletions trunk/drivers/net/spider_net.c
Original file line number Diff line number Diff line change
Expand Up @@ -1172,7 +1172,7 @@ spider_net_decode_one_descr(struct spider_net_card *card)
goto bad_desc;
}

if (hwdescr->dmac_cmd_status & 0xfefe) {
if (hwdescr->dmac_cmd_status & 0xfcf4) {
pr_err("%s: bad status, cmd_status=x%08x\n",
card->netdev->name,
hwdescr->dmac_cmd_status);
Expand Down Expand Up @@ -1251,6 +1251,7 @@ spider_net_poll(struct net_device *netdev, int *budget)
if (no_more_packets) {
netif_rx_complete(netdev);
spider_net_rx_irq_on(card);
card->ignore_rx_ramfull = 0;
return 0;
}

Expand Down Expand Up @@ -1484,15 +1485,15 @@ spider_net_handle_error_irq(struct spider_net_card *card, u32 status_reg)
case SPIDER_NET_GRFBFLLINT: /* fallthrough */
case SPIDER_NET_GRFAFLLINT: /* fallthrough */
case SPIDER_NET_GRMFLLINT:
if (netif_msg_intr(card) && net_ratelimit())
pr_err("Spider RX RAM full, incoming packets "
"might be discarded!\n");
/* Could happen when rx chain is full */
spider_net_resync_head_ptr(card);
spider_net_refill_rx_chain(card);
spider_net_enable_rxdmac(card);
card->num_rx_ints ++;
netif_rx_schedule(card->netdev);
if (card->ignore_rx_ramfull == 0) {
card->ignore_rx_ramfull = 1;
spider_net_resync_head_ptr(card);
spider_net_refill_rx_chain(card);
spider_net_enable_rxdmac(card);
card->num_rx_ints ++;
netif_rx_schedule(card->netdev);
}
show_error = 0;
break;

Expand Down Expand Up @@ -2265,6 +2266,7 @@ spider_net_setup_netdev(struct spider_net_card *card)

netdev->irq = card->pdev->irq;
card->num_rx_ints = 0;
card->ignore_rx_ramfull = 0;

dn = pci_device_to_OF_node(card->pdev);
if (!dn)
Expand Down
1 change: 1 addition & 0 deletions trunk/drivers/net/spider_net.h
Original file line number Diff line number Diff line change
Expand Up @@ -462,6 +462,7 @@ struct spider_net_card {
atomic_t tx_timeout_task_counter;
wait_queue_head_t waitq;
int num_rx_ints;
int ignore_rx_ramfull;

/* for ethtool */
int msg_enable;
Expand Down

0 comments on commit 6baa390

Please sign in to comment.