diff options
Diffstat (limited to 'drivers/net/ni52.c')
-rw-r--r-- | drivers/net/ni52.c | 13 |
1 files changed, 5 insertions, 8 deletions
diff --git a/drivers/net/ni52.c b/drivers/net/ni52.c index f7a8f707361e..9bddb5fa7a96 100644 --- a/drivers/net/ni52.c +++ b/drivers/net/ni52.c | |||
@@ -595,7 +595,7 @@ static int init586(struct net_device *dev) | |||
595 | struct iasetup_cmd_struct __iomem *ias_cmd; | 595 | struct iasetup_cmd_struct __iomem *ias_cmd; |
596 | struct tdr_cmd_struct __iomem *tdr_cmd; | 596 | struct tdr_cmd_struct __iomem *tdr_cmd; |
597 | struct mcsetup_cmd_struct __iomem *mc_cmd; | 597 | struct mcsetup_cmd_struct __iomem *mc_cmd; |
598 | struct dev_mc_list *dmi; | 598 | struct netdev_hw_addr *ha; |
599 | int num_addrs = netdev_mc_count(dev); | 599 | int num_addrs = netdev_mc_count(dev); |
600 | 600 | ||
601 | ptr = p->scb + 1; | 601 | ptr = p->scb + 1; |
@@ -724,8 +724,8 @@ static int init586(struct net_device *dev) | |||
724 | writew(num_addrs * 6, &mc_cmd->mc_cnt); | 724 | writew(num_addrs * 6, &mc_cmd->mc_cnt); |
725 | 725 | ||
726 | i = 0; | 726 | i = 0; |
727 | netdev_for_each_mc_addr(dmi, dev) | 727 | netdev_for_each_mc_addr(ha, dev) |
728 | memcpy_toio(mc_cmd->mc_list[i++], dmi->dmi_addr, 6); | 728 | memcpy_toio(mc_cmd->mc_list[i++], ha->addr, 6); |
729 | 729 | ||
730 | writew(make16(mc_cmd), &p->scb->cbl_offset); | 730 | writew(make16(mc_cmd), &p->scb->cbl_offset); |
731 | writeb(CUC_START, &p->scb->cmd_cuc); | 731 | writeb(CUC_START, &p->scb->cmd_cuc); |
@@ -1147,7 +1147,7 @@ static void ni52_timeout(struct net_device *dev) | |||
1147 | writeb(CUC_START, &p->scb->cmd_cuc); | 1147 | writeb(CUC_START, &p->scb->cmd_cuc); |
1148 | ni_attn586(); | 1148 | ni_attn586(); |
1149 | wait_for_scb_cmd(dev); | 1149 | wait_for_scb_cmd(dev); |
1150 | dev->trans_start = jiffies; | 1150 | dev->trans_start = jiffies; /* prevent tx timeout */ |
1151 | return 0; | 1151 | return 0; |
1152 | } | 1152 | } |
1153 | #endif | 1153 | #endif |
@@ -1165,7 +1165,7 @@ static void ni52_timeout(struct net_device *dev) | |||
1165 | ni52_close(dev); | 1165 | ni52_close(dev); |
1166 | ni52_open(dev); | 1166 | ni52_open(dev); |
1167 | } | 1167 | } |
1168 | dev->trans_start = jiffies; | 1168 | dev->trans_start = jiffies; /* prevent tx timeout */ |
1169 | } | 1169 | } |
1170 | 1170 | ||
1171 | /****************************************************** | 1171 | /****************************************************** |
@@ -1218,7 +1218,6 @@ static netdev_tx_t ni52_send_packet(struct sk_buff *skb, | |||
1218 | writeb(CUC_START, &p->scb->cmd_cuc); | 1218 | writeb(CUC_START, &p->scb->cmd_cuc); |
1219 | } | 1219 | } |
1220 | ni_attn586(); | 1220 | ni_attn586(); |
1221 | dev->trans_start = jiffies; | ||
1222 | if (!i) | 1221 | if (!i) |
1223 | dev_kfree_skb(skb); | 1222 | dev_kfree_skb(skb); |
1224 | wait_for_scb_cmd(dev); | 1223 | wait_for_scb_cmd(dev); |
@@ -1240,7 +1239,6 @@ static netdev_tx_t ni52_send_packet(struct sk_buff *skb, | |||
1240 | writew(0, &p->nop_cmds[next_nop]->cmd_status); | 1239 | writew(0, &p->nop_cmds[next_nop]->cmd_status); |
1241 | 1240 | ||
1242 | writew(make16(p->xmit_cmds[0]), &p->nop_cmds[p->nop_point]->cmd_link); | 1241 | writew(make16(p->xmit_cmds[0]), &p->nop_cmds[p->nop_point]->cmd_link); |
1243 | dev->trans_start = jiffies; | ||
1244 | p->nop_point = next_nop; | 1242 | p->nop_point = next_nop; |
1245 | dev_kfree_skb(skb); | 1243 | dev_kfree_skb(skb); |
1246 | # endif | 1244 | # endif |
@@ -1256,7 +1254,6 @@ static netdev_tx_t ni52_send_packet(struct sk_buff *skb, | |||
1256 | writew(0, &p->nop_cmds[next_nop]->cmd_status); | 1254 | writew(0, &p->nop_cmds[next_nop]->cmd_status); |
1257 | writew(make16(p->xmit_cmds[p->xmit_count]), | 1255 | writew(make16(p->xmit_cmds[p->xmit_count]), |
1258 | &p->nop_cmds[p->xmit_count]->cmd_link); | 1256 | &p->nop_cmds[p->xmit_count]->cmd_link); |
1259 | dev->trans_start = jiffies; | ||
1260 | p->xmit_count = next_nop; | 1257 | p->xmit_count = next_nop; |
1261 | { | 1258 | { |
1262 | unsigned long flags; | 1259 | unsigned long flags; |