Replace occurences of the pci api by appropriate call to the dma api.
A simplified version of the semantic patch that finds this problem is as
follows: (http://coccinelle.lip6.fr)
@deprecated@
idexpression id;
position p;
@@
(
  pci_dma_supported@p ( id, ...)
|
  pci_alloc_consistent@p ( id, ...)
)
@bad1@
idexpression id;
position deprecated.p;
@@
...when != &id->dev
   when != pci_get_drvdata ( id )
   when != pci_enable_device ( id )
(
  pci_dma_supported@p ( id, ...)
|
  pci_alloc_consistent@p ( id, ...)
)
@depends on !bad1@
idexpression id;
expression direction;
position deprecated.p;
@@
(
- pci_dma_supported@p ( id,
+ dma_supported ( &id->dev,
...
+ , GFP_ATOMIC
  )
|
- pci_alloc_consistent@p ( id,
+ dma_alloc_coherent ( &id->dev,
...
+ , GFP_ATOMIC
  )
)
Signed-off-by: Quentin Lambert <lambert.quentin@gmail.com>
Signed-off-by: Tejun Heo <tj@kernel.org>
        int rc;
 
        if (using_dac &&
-           !pci_set_dma_mask(pdev, DMA_BIT_MASK(64))) {
-               rc = pci_set_consistent_dma_mask(pdev, DMA_BIT_MASK(64));
+           !dma_set_mask(&pdev->dev, DMA_BIT_MASK(64))) {
+               rc = dma_set_coherent_mask(&pdev->dev, DMA_BIT_MASK(64));
                if (rc) {
-                       rc = pci_set_consistent_dma_mask(pdev, DMA_BIT_MASK(32));
+                       rc = dma_set_coherent_mask(&pdev->dev, DMA_BIT_MASK(32));
                        if (rc) {
                                dev_err(&pdev->dev,
                                           "64-bit DMA enable failed\n");
                        }
                }
        } else {
-               rc = pci_set_dma_mask(pdev, DMA_BIT_MASK(32));
+               rc = dma_set_mask(&pdev->dev, DMA_BIT_MASK(32));
                if (rc) {
                        dev_err(&pdev->dev, "32-bit DMA enable failed\n");
                        return rc;
                }
-               rc = pci_set_consistent_dma_mask(pdev, DMA_BIT_MASK(32));
+               rc = dma_set_coherent_mask(&pdev->dev, DMA_BIT_MASK(32));
                if (rc) {
                        dev_err(&pdev->dev,
                                "32-bit consistent DMA enable failed\n");
 
                return 0;
 
        if (using_dac &&
-           !pci_set_dma_mask(pdev, DMA_BIT_MASK(64))) {
-               rc = pci_set_consistent_dma_mask(pdev, DMA_BIT_MASK(64));
+           !dma_set_mask(&pdev->dev, DMA_BIT_MASK(64))) {
+               rc = dma_set_coherent_mask(&pdev->dev, DMA_BIT_MASK(64));
                if (rc) {
-                       rc = pci_set_consistent_dma_mask(pdev, DMA_BIT_MASK(32));
+                       rc = dma_set_coherent_mask(&pdev->dev, DMA_BIT_MASK(32));
                        if (rc) {
                                dev_err(&pdev->dev,
                                        "64-bit DMA enable failed\n");
                        }
                }
        } else {
-               rc = pci_set_dma_mask(pdev, DMA_BIT_MASK(32));
+               rc = dma_set_mask(&pdev->dev, DMA_BIT_MASK(32));
                if (rc) {
                        dev_err(&pdev->dev, "32-bit DMA enable failed\n");
                        return rc;
                }
-               rc = pci_set_consistent_dma_mask(pdev, DMA_BIT_MASK(32));
+               rc = dma_set_coherent_mask(&pdev->dev, DMA_BIT_MASK(32));
                if (rc) {
                        dev_err(&pdev->dev,
                                "32-bit consistent DMA enable failed\n");
 
         * ->sff_irq_clear method.  Try to initialize bmdma_addr
         * regardless of dma masks.
         */
-       rc = pci_set_dma_mask(pdev, ATA_DMA_MASK);
+       rc = dma_set_mask(&pdev->dev, ATA_DMA_MASK);
        if (rc)
                ata_bmdma_nodma(host, "failed to set dma mask");
        if (!rc) {
-               rc = pci_set_consistent_dma_mask(pdev, ATA_DMA_MASK);
+               rc = dma_set_coherent_mask(&pdev->dev, ATA_DMA_MASK);
                if (rc)
                        ata_bmdma_nodma(host,
                                        "failed to set consistent dma mask");
 
 
        atp867x_fixup(host);
 
-       rc = pci_set_dma_mask(pdev, ATA_DMA_MASK);
+       rc = dma_set_mask(&pdev->dev, ATA_DMA_MASK);
        if (rc)
                return rc;
 
-       rc = pci_set_consistent_dma_mask(pdev, ATA_DMA_MASK);
+       rc = dma_set_coherent_mask(&pdev->dev, ATA_DMA_MASK);
        return rc;
 }
 
 
                return -ENODEV;
        }
 
-       if (pci_set_dma_mask(pdev, DMA_BIT_MASK(32))) {
+       if (dma_set_mask(&pdev->dev, DMA_BIT_MASK(32))) {
                printk(KERN_ERR DRV_NAME ": unable to configure DMA mask.\n");
                return -ENODEV;
        }
-       if (pci_set_consistent_dma_mask(pdev, DMA_BIT_MASK(32))) {
+       if (dma_set_coherent_mask(&pdev->dev, DMA_BIT_MASK(32))) {
                printk(KERN_ERR DRV_NAME ": unable to configure consistent DMA mask.\n");
                return -ENODEV;
        }
 
        if (rc)
                return rc;
        host->iomap = pcim_iomap_table(pdev);
-       rc = pci_set_dma_mask(pdev, ATA_DMA_MASK);
+       rc = dma_set_mask(&pdev->dev, ATA_DMA_MASK);
        if (rc)
                return rc;
-       rc = pci_set_consistent_dma_mask(pdev, ATA_DMA_MASK);
+       rc = dma_set_coherent_mask(&pdev->dev, ATA_DMA_MASK);
        if (rc)
                return rc;
 
 
                return rc;
 
        host->iomap = pcim_iomap_table(dev);
-       rc = pci_set_dma_mask(dev, ATA_DMA_MASK);
+       rc = dma_set_mask(&dev->dev, ATA_DMA_MASK);
        if (rc)
                return rc;
-       rc = pci_set_consistent_dma_mask(dev, ATA_DMA_MASK);
+       rc = dma_set_coherent_mask(&dev->dev, ATA_DMA_MASK);
        if (rc)
                return rc;
        pci_set_master(dev);
 
                return rc;
        host->iomap = pcim_iomap_table(pdev);
 
-       rc = pci_set_dma_mask(pdev, ATA_DMA_MASK);
+       rc = dma_set_mask(&pdev->dev, ATA_DMA_MASK);
        if (rc)
                return rc;
 
-       rc = pci_set_consistent_dma_mask(pdev, ATA_DMA_MASK);
+       rc = dma_set_coherent_mask(&pdev->dev, ATA_DMA_MASK);
        if (rc)
                return rc;
 
 
        if (rc)
                return rc;
 
-       rc = pci_set_dma_mask(pdev, ATA_DMA_MASK);
+       rc = dma_set_mask(&pdev->dev, ATA_DMA_MASK);
        if (rc)
                return rc;
-       rc = pci_set_consistent_dma_mask(pdev, ATA_DMA_MASK);
+       rc = dma_set_coherent_mask(&pdev->dev, ATA_DMA_MASK);
        if (rc)
                return rc;
 
 
        host->iomap = pcim_iomap_table(pdev);
 
        /* Setup DMA masks */
-       rc = pci_set_dma_mask(pdev, ATA_DMA_MASK);
+       rc = dma_set_mask(&pdev->dev, ATA_DMA_MASK);
        if (rc)
                return rc;
-       rc = pci_set_consistent_dma_mask(pdev, ATA_DMA_MASK);
+       rc = dma_set_coherent_mask(&pdev->dev, ATA_DMA_MASK);
        if (rc)
                return rc;
        pci_set_master(pdev);
 
 {
        int rc;
 
-       rc = pci_set_dma_mask(pdev, DMA_BIT_MASK(32));
+       rc = dma_set_mask(&pdev->dev, DMA_BIT_MASK(32));
        if (rc) {
                dev_err(&pdev->dev, "32-bit DMA enable failed\n");
                return rc;
        }
-       rc = pci_set_consistent_dma_mask(pdev, DMA_BIT_MASK(32));
+       rc = dma_set_coherent_mask(&pdev->dev, DMA_BIT_MASK(32));
        if (rc) {
                dev_err(&pdev->dev, "32-bit consistent DMA enable failed\n");
                return rc;
 
        }
 
        /* Set dma_mask.  This devices doesn't support 64bit addressing. */
-       rc = pci_set_dma_mask(pdev, DMA_BIT_MASK(32));
+       rc = dma_set_mask(&pdev->dev, DMA_BIT_MASK(32));
        if (rc) {
                dev_err(&pdev->dev, "32-bit DMA enable failed\n");
                return rc;
        }
 
-       rc = pci_set_consistent_dma_mask(pdev, DMA_BIT_MASK(32));
+       rc = dma_set_coherent_mask(&pdev->dev, DMA_BIT_MASK(32));
        if (rc) {
                dev_err(&pdev->dev, "32-bit consistent DMA enable failed\n");
                return rc;
 
 {
        int rc;
 
-       if (!pci_set_dma_mask(pdev, DMA_BIT_MASK(64))) {
-               rc = pci_set_consistent_dma_mask(pdev, DMA_BIT_MASK(64));
+       if (!dma_set_mask(&pdev->dev, DMA_BIT_MASK(64))) {
+               rc = dma_set_coherent_mask(&pdev->dev, DMA_BIT_MASK(64));
                if (rc) {
-                       rc = pci_set_consistent_dma_mask(pdev, DMA_BIT_MASK(32));
+                       rc = dma_set_coherent_mask(&pdev->dev, DMA_BIT_MASK(32));
                        if (rc) {
                                dev_err(&pdev->dev,
                                        "64-bit DMA enable failed\n");
                        }
                }
        } else {
-               rc = pci_set_dma_mask(pdev, DMA_BIT_MASK(32));
+               rc = dma_set_mask(&pdev->dev, DMA_BIT_MASK(32));
                if (rc) {
                        dev_err(&pdev->dev, "32-bit DMA enable failed\n");
                        return rc;
                }
-               rc = pci_set_consistent_dma_mask(pdev, DMA_BIT_MASK(32));
+               rc = dma_set_coherent_mask(&pdev->dev, DMA_BIT_MASK(32));
                if (rc) {
                        dev_err(&pdev->dev,
                                "32-bit consistent DMA enable failed\n");
 
                        blk_queue_bounce_limit(sdev1->request_queue,
                                               ATA_DMA_MASK);
 
-               pci_set_dma_mask(pdev, ATA_DMA_MASK);
+               dma_set_mask(&pdev->dev, ATA_DMA_MASK);
        } else {
                /** This shouldn't fail as it was set to this value before */
-               pci_set_dma_mask(pdev, pp->adma_dma_mask);
+               dma_set_mask(&pdev->dev, pp->adma_dma_mask);
                if (sdev0)
                        blk_queue_bounce_limit(sdev0->request_queue,
                                               pp->adma_dma_mask);
 
        /* Ensure DMA mask is set to 32-bit before allocating legacy PRD and
           pad buffers */
-       rc = pci_set_dma_mask(pdev, DMA_BIT_MASK(32));
+       rc = dma_set_mask(&pdev->dev, DMA_BIT_MASK(32));
        if (rc)
                return rc;
-       rc = pci_set_consistent_dma_mask(pdev, DMA_BIT_MASK(32));
+       rc = dma_set_coherent_mask(&pdev->dev, DMA_BIT_MASK(32));
        if (rc)
                return rc;
 
           These are allowed to fail since we store the value that ends up
           being used to set as the bounce limit in slave_config later if
           needed. */
-       pci_set_dma_mask(pdev, DMA_BIT_MASK(64));
-       pci_set_consistent_dma_mask(pdev, DMA_BIT_MASK(64));
+       dma_set_mask(&pdev->dev, DMA_BIT_MASK(64));
+       dma_set_coherent_mask(&pdev->dev, DMA_BIT_MASK(64));
        pp->adma_dma_mask = *dev->dma_mask;
 
        mem = dmam_alloc_coherent(dev, NV_ADMA_PORT_PRIV_DMA_SZ,
 
        /* initialize adapter */
        pdc_host_init(host);
 
-       rc = pci_set_dma_mask(pdev, ATA_DMA_MASK);
+       rc = dma_set_mask(&pdev->dev, ATA_DMA_MASK);
        if (rc)
                return rc;
-       rc = pci_set_consistent_dma_mask(pdev, ATA_DMA_MASK);
+       rc = dma_set_coherent_mask(&pdev->dev, ATA_DMA_MASK);
        if (rc)
                return rc;
 
 
        int rc, have_64bit_bus = (bus_info & QS_HPHY_64BIT);
 
        if (have_64bit_bus &&
-           !pci_set_dma_mask(pdev, DMA_BIT_MASK(64))) {
-               rc = pci_set_consistent_dma_mask(pdev, DMA_BIT_MASK(64));
+           !dma_set_mask(&pdev->dev, DMA_BIT_MASK(64))) {
+               rc = dma_set_coherent_mask(&pdev->dev, DMA_BIT_MASK(64));
                if (rc) {
-                       rc = pci_set_consistent_dma_mask(pdev, DMA_BIT_MASK(32));
+                       rc = dma_set_coherent_mask(&pdev->dev, DMA_BIT_MASK(32));
                        if (rc) {
                                dev_err(&pdev->dev,
                                        "64-bit DMA enable failed\n");
                        }
                }
        } else {
-               rc = pci_set_dma_mask(pdev, DMA_BIT_MASK(32));
+               rc = dma_set_mask(&pdev->dev, DMA_BIT_MASK(32));
                if (rc) {
                        dev_err(&pdev->dev, "32-bit DMA enable failed\n");
                        return rc;
                }
-               rc = pci_set_consistent_dma_mask(pdev, DMA_BIT_MASK(32));
+               rc = dma_set_coherent_mask(&pdev->dev, DMA_BIT_MASK(32));
                if (rc) {
                        dev_err(&pdev->dev,
                                "32-bit consistent DMA enable failed\n");
 
                return rc;
        host->iomap = pcim_iomap_table(pdev);
 
-       rc = pci_set_dma_mask(pdev, ATA_DMA_MASK);
+       rc = dma_set_mask(&pdev->dev, ATA_DMA_MASK);
        if (rc)
                return rc;
-       rc = pci_set_consistent_dma_mask(pdev, ATA_DMA_MASK);
+       rc = dma_set_coherent_mask(&pdev->dev, ATA_DMA_MASK);
        if (rc)
                return rc;
 
 
        host->iomap = iomap;
 
        /* configure and activate the device */
-       if (!pci_set_dma_mask(pdev, DMA_BIT_MASK(64))) {
-               rc = pci_set_consistent_dma_mask(pdev, DMA_BIT_MASK(64));
+       if (!dma_set_mask(&pdev->dev, DMA_BIT_MASK(64))) {
+               rc = dma_set_coherent_mask(&pdev->dev, DMA_BIT_MASK(64));
                if (rc) {
-                       rc = pci_set_consistent_dma_mask(pdev, DMA_BIT_MASK(32));
+                       rc = dma_set_coherent_mask(&pdev->dev, DMA_BIT_MASK(32));
                        if (rc) {
                                dev_err(&pdev->dev,
                                        "64-bit DMA enable failed\n");
                        }
                }
        } else {
-               rc = pci_set_dma_mask(pdev, DMA_BIT_MASK(32));
+               rc = dma_set_mask(&pdev->dev, DMA_BIT_MASK(32));
                if (rc) {
                        dev_err(&pdev->dev, "32-bit DMA enable failed\n");
                        return rc;
                }
-               rc = pci_set_consistent_dma_mask(pdev, DMA_BIT_MASK(32));
+               rc = dma_set_coherent_mask(&pdev->dev, DMA_BIT_MASK(32));
                if (rc) {
                        dev_err(&pdev->dev,
                                "32-bit consistent DMA enable failed\n");
 
                ata_port_pbar_desc(ap, 5, offset, "port");
        }
 
-       rc = pci_set_dma_mask(pdev, ATA_DMA_MASK);
+       rc = dma_set_mask(&pdev->dev, ATA_DMA_MASK);
        if (rc)
                return rc;
-       rc = pci_set_consistent_dma_mask(pdev, ATA_DMA_MASK);
+       rc = dma_set_coherent_mask(&pdev->dev, ATA_DMA_MASK);
        if (rc)
                return rc;
 
 
        }
 
        /* configure and activate */
-       rc = pci_set_dma_mask(pdev, ATA_DMA_MASK);
+       rc = dma_set_mask(&pdev->dev, ATA_DMA_MASK);
        if (rc)
                return rc;
-       rc = pci_set_consistent_dma_mask(pdev, ATA_DMA_MASK);
+       rc = dma_set_coherent_mask(&pdev->dev, ATA_DMA_MASK);
        if (rc)
                return rc;
 
 
        for (i = 0; i < host->n_ports; i++)
                vt6421_init_addrs(host->ports[i]);
 
-       rc = pci_set_dma_mask(pdev, ATA_DMA_MASK);
+       rc = dma_set_mask(&pdev->dev, ATA_DMA_MASK);
        if (rc)
                return rc;
-       rc = pci_set_consistent_dma_mask(pdev, ATA_DMA_MASK);
+       rc = dma_set_coherent_mask(&pdev->dev, ATA_DMA_MASK);
        if (rc)
                return rc;
 
 
        /*
         * Use 32 bit DMA mask, because 64 bit address support is poor.
         */
-       rc = pci_set_dma_mask(pdev, DMA_BIT_MASK(32));
+       rc = dma_set_mask(&pdev->dev, DMA_BIT_MASK(32));
        if (rc)
                return rc;
-       rc = pci_set_consistent_dma_mask(pdev, DMA_BIT_MASK(32));
+       rc = dma_set_coherent_mask(&pdev->dev, DMA_BIT_MASK(32));
        if (rc)
                return rc;