[PATCH] Add adm8211 802.11b wireless driver
[pandora-kernel.git] / drivers / net / ni65.c
index 340ad0d..4ef5fe3 100644 (file)
@@ -610,7 +610,6 @@ static void *ni65_alloc_mem(struct net_device *dev,char *what,int size,int type)
                        printk(KERN_WARNING "%s: unable to allocate %s memory.\n",dev->name,what);
                        return NULL;
                }
-               skb->dev = dev;
                skb_reserve(skb,2+16);
                skb_put(skb,R_BUF_SIZE);         /* grab the whole space .. (not necessary) */
                ptr = skb->data;
@@ -1094,11 +1093,10 @@ static void ni65_recv_intr(struct net_device *dev,int csr0)
                        if(skb)
                        {
                                skb_reserve(skb,2);
-       skb->dev = dev;
 #ifdef RCV_VIA_SKB
                                if( (unsigned long) (skb->data + R_BUF_SIZE) > 0x1000000) {
                                        skb_put(skb,len);
-                                       eth_copy_and_sum(skb, (unsigned char *)(p->recv_skb[p->rmdnum]->data),len,0);
+                                       skb_copy_to_linear_data(skb, (unsigned char *)(p->recv_skb[p->rmdnum]->data),len);
                                }
                                else {
                                        struct sk_buff *skb1 = p->recv_skb[p->rmdnum];
@@ -1110,7 +1108,7 @@ static void ni65_recv_intr(struct net_device *dev,int csr0)
                                }
 #else
                                skb_put(skb,len);
-                               eth_copy_and_sum(skb, (unsigned char *) p->recvbounce[p->rmdnum],len,0);
+                               skb_copy_to_linear_data(skb, (unsigned char *) p->recvbounce[p->rmdnum],len);
 #endif
                                p->stats.rx_packets++;
                                p->stats.rx_bytes += len;
@@ -1178,8 +1176,9 @@ static int ni65_send_packet(struct sk_buff *skb, struct net_device *dev)
                if( (unsigned long) (skb->data + skb->len) > 0x1000000) {
 #endif
 
-                       memcpy((char *) p->tmdbounce[p->tmdbouncenum] ,(char *)skb->data,
-                                                        (skb->len > T_BUF_SIZE) ? T_BUF_SIZE : skb->len);
+                       skb_copy_from_linear_data(skb, p->tmdbounce[p->tmdbouncenum],
+                                     skb->len > T_BUF_SIZE ? T_BUF_SIZE :
+                                                             skb->len);
                        if (len > skb->len)
                                memset((char *)p->tmdbounce[p->tmdbouncenum]+skb->len, 0, len-skb->len);
                        dev_kfree_skb (skb);
@@ -1259,7 +1258,7 @@ int __init init_module(void)
        return IS_ERR(dev_ni65) ? PTR_ERR(dev_ni65) : 0;
 }
 
-void cleanup_module(void)
+void __exit cleanup_module(void)
 {
        unregister_netdev(dev_ni65);
        cleanup_card(dev_ni65);