can: sja1000 platform data fixes
[safe/jmp/linux-2.6] / drivers / net / s2io.c
index 2eb7f8a..668327c 100644 (file)
@@ -79,6 +79,7 @@
 #include <linux/tcp.h>
 #include <linux/uaccess.h>
 #include <linux/io.h>
+#include <linux/slab.h>
 #include <net/tcp.h>
 
 #include <asm/system.h>
@@ -2399,7 +2400,7 @@ static struct sk_buff *s2io_txdl_getskb(struct fifo_info *fifo_data,
                return NULL;
        }
        pci_unmap_single(nic->pdev, (dma_addr_t)txds->Buffer_Pointer,
-                        skb->len - skb->data_len, PCI_DMA_TODEVICE);
+                        skb_headlen(skb), PCI_DMA_TODEVICE);
        frg_cnt = skb_shinfo(skb)->nr_frags;
        if (frg_cnt) {
                txds++;
@@ -2942,7 +2943,6 @@ static void s2io_netpoll(struct net_device *dev)
                }
        }
        enable_irq(dev->irq);
-       return;
 }
 #endif
 
@@ -4201,7 +4201,7 @@ static netdev_tx_t s2io_xmit(struct sk_buff *skb, struct net_device *dev)
                txdp->Control_2 |= TXD_VLAN_TAG(vlan_tag);
        }
 
-       frg_len = skb->len - skb->data_len;
+       frg_len = skb_headlen(skb);
        if (offload_type == SKB_GSO_UDP) {
                int ufo_size;
 
@@ -4755,7 +4755,6 @@ reset:
        s2io_stop_all_tx_queue(sp);
        schedule_work(&sp->rst_timer_task);
        sw_stat->soft_reset_cnt++;
-       return;
 }
 
 /**
@@ -4964,7 +4963,7 @@ static struct net_device_stats *s2io_get_stats(struct net_device *dev)
 static void s2io_set_multicast(struct net_device *dev)
 {
        int i, j, prev_cnt;
-       struct dev_mc_list *mclist;
+       struct netdev_hw_addr *ha;
        struct s2io_nic *sp = netdev_priv(dev);
        struct XENA_dev_config __iomem *bar0 = sp->bar0;
        u64 val64 = 0, multi_mac = 0x010203040506ULL, mask =
@@ -5093,12 +5092,12 @@ static void s2io_set_multicast(struct net_device *dev)
 
                /* Create the new Rx filter list and update the same in H/W. */
                i = 0;
-               netdev_for_each_mc_addr(mclist, dev) {
-                       memcpy(sp->usr_addrs[i].addr, mclist->dmi_addr,
+               netdev_for_each_mc_addr(ha, dev) {
+                       memcpy(sp->usr_addrs[i].addr, ha->addr,
                               ETH_ALEN);
                        mac_addr = 0;
                        for (j = 0; j < ETH_ALEN; j++) {
-                               mac_addr |= mclist->dmi_addr[j];
+                               mac_addr |= ha->addr[j];
                                mac_addr <<= 8;
                        }
                        mac_addr >>= 8;
@@ -8644,7 +8643,6 @@ static void lro_append_pkt(struct s2io_nic *sp, struct lro *lro,
        first->truesize += skb->truesize;
        lro->last_frag = skb;
        swstats->clubbed_frms_cnt++;
-       return;
 }
 
 /**