]> err.no Git - linux-2.6/blobdiff - drivers/net/arcnet/capmode.c
pegasus: add blacklist support to fix Belkin bluetooth dongle.
[linux-2.6] / drivers / net / arcnet / capmode.c
index 66485585ab393a1fc7eb210895cdd896be9d81d6..02cb8f1c11484b23460100c85f60faec62bd3ea5 100644 (file)
@@ -80,17 +80,19 @@ void arcnet_cap_init(void)
 
 #ifdef MODULE
 
-int __init init_module(void)
+static int __init capmode_module_init(void)
 {
        printk(VERSION);
        arcnet_cap_init();
        return 0;
 }
 
-void cleanup_module(void)
+static void __exit capmode_module_exit(void)
 {
        arcnet_unregister_proto(&capmode_proto);
 }
+module_init(capmode_module_init);
+module_exit(capmode_module_exit);
 
 MODULE_LICENSE("GPL");
 #endif                         /* MODULE */
@@ -122,10 +124,8 @@ static void rx(struct net_device *dev, int bufnum,
        }
        skb_put(skb, length + ARC_HDR_SIZE + sizeof(int));
        skb->dev = dev;
-
-       pkt = (struct archdr *) skb->data;
-
-       skb->mac.raw = skb->data;
+       skb_reset_mac_header(skb);
+       pkt = (struct archdr *)skb_mac_header(skb);
        skb_pull(skb, ARC_HDR_SIZE);
 
        /* up to sizeof(pkt->soft) has already been copied from the card */
@@ -270,13 +270,13 @@ static int ack_tx(struct net_device *dev, int acked)
   skb_put(ackskb, length + ARC_HDR_SIZE );
   ackskb->dev = dev;
 
-  ackpkt = (struct archdr *) ackskb->data;
-
-  ackskb->mac.raw = ackskb->data;
+  skb_reset_mac_header(ackskb);
+  ackpkt = (struct archdr *)skb_mac_header(ackskb);
   /* skb_pull(ackskb, ARC_HDR_SIZE); */
 
 
-  memcpy(ackpkt, lp->outgoing.skb->data, ARC_HDR_SIZE+sizeof(struct arc_cap));
+  skb_copy_from_linear_data(lp->outgoing.skb, ackpkt,
+               ARC_HDR_SIZE + sizeof(struct arc_cap));
   ackpkt->soft.cap.proto=0; /* using protocol 0 for acknowledge */
   ackpkt->soft.cap.mes.ack=acked;