]> bbs.cooldavid.org Git - net-next-2.6.git/blobdiff - drivers/net/wan/dscc4.c
[SK_BUFF]: Introduce skb_copy_to_linear_data{_offset}
[net-next-2.6.git] / drivers / net / wan / dscc4.c
index 4505540e3c591611182645433ac5dbc353e07a2a..dca024471455a7daebf956158459b0852ec4a394 100644 (file)
@@ -365,7 +365,7 @@ static int dscc4_init_ring(struct net_device *);
 static void dscc4_release_ring(struct dscc4_dev_priv *);
 static void dscc4_timer(unsigned long);
 static void dscc4_tx_timeout(struct net_device *);
-static irqreturn_t dscc4_irq(int irq, void *dev_id, struct pt_regs *ptregs);
+static irqreturn_t dscc4_irq(int irq, void *dev_id);
 static int dscc4_hdlc_attach(struct net_device *, unsigned short, unsigned short);
 static int dscc4_set_iface(struct dscc4_dev_priv *, struct net_device *);
 #ifdef DSCC4_POLLING
@@ -732,15 +732,15 @@ static int __devinit dscc4_init_one(struct pci_dev *pdev,
        ioaddr = ioremap(pci_resource_start(pdev, 0),
                                        pci_resource_len(pdev, 0));
        if (!ioaddr) {
-               printk(KERN_ERR "%s: cannot remap MMIO region %lx @ %lx\n",
-                       DRV_NAME, pci_resource_len(pdev, 0),
-                       pci_resource_start(pdev, 0));
+               printk(KERN_ERR "%s: cannot remap MMIO region %llx @ %llx\n",
+                       DRV_NAME, (unsigned long long)pci_resource_len(pdev, 0),
+                       (unsigned long long)pci_resource_start(pdev, 0));
                rc = -EIO;
                goto err_free_mmio_regions_2;
        }
-       printk(KERN_DEBUG "Siemens DSCC4, MMIO at %#lx (regs), %#lx (lbi), IRQ %d\n",
-               pci_resource_start(pdev, 0),
-               pci_resource_start(pdev, 1), pdev->irq);
+       printk(KERN_DEBUG "Siemens DSCC4, MMIO at %#llx (regs), %#llx (lbi), IRQ %d\n",
+               (unsigned long long)pci_resource_start(pdev, 0),
+               (unsigned long long)pci_resource_start(pdev, 1), pdev->irq);
 
        /* Cf errata DS5 p.2 */
        pci_write_config_byte(pdev, PCI_LATENCY_TIMER, 0xf8);
@@ -752,7 +752,7 @@ static int __devinit dscc4_init_one(struct pci_dev *pdev,
 
        priv = pci_get_drvdata(pdev);
 
-       rc = request_irq(pdev->irq, dscc4_irq, SA_SHIRQ, DRV_NAME, priv->root);
+       rc = request_irq(pdev->irq, dscc4_irq, IRQF_SHARED, DRV_NAME, priv->root);
        if (rc < 0) {
                printk(KERN_WARNING "%s: IRQ %d busy\n", DRV_NAME, pdev->irq);
                goto err_release_4;
@@ -1476,7 +1476,7 @@ static int dscc4_set_iface(struct dscc4_dev_priv *dpriv, struct net_device *dev)
        return ret;
 }
 
-static irqreturn_t dscc4_irq(int irq, void *token, struct pt_regs *ptregs)
+static irqreturn_t dscc4_irq(int irq, void *token)
 {
        struct dscc4_dev_priv *root = token;
        struct dscc4_pci_priv *priv;
@@ -1904,7 +1904,8 @@ static struct sk_buff *dscc4_init_dummy_skb(struct dscc4_dev_priv *dpriv)
                struct TxFD *tx_fd = dpriv->tx_fd + last;
 
                skb->len = DUMMY_SKB_SIZE;
-               memcpy(skb->data, version, strlen(version)%DUMMY_SKB_SIZE);
+               skb_copy_to_linear_data(skb, version,
+                                       strlen(version) % DUMMY_SKB_SIZE);
                tx_fd->state = FrameEnd | TO_STATE_TX(DUMMY_SKB_SIZE);
                tx_fd->data = pci_map_single(dpriv->pci_priv->pdev, skb->data,
                                             DUMMY_SKB_SIZE, PCI_DMA_TODEVICE);
@@ -2062,7 +2063,7 @@ static struct pci_driver dscc4_driver = {
 
 static int __init dscc4_init_module(void)
 {
-       return pci_module_init(&dscc4_driver);
+       return pci_register_driver(&dscc4_driver);
 }
 
 static void __exit dscc4_cleanup_module(void)