net: sgi: ioc3-eth: simplify setting the DMA mask
authorChristoph Hellwig <hch@lst.de>
Mon, 4 Nov 2019 10:45:13 +0000 (11:45 +0100)
committerDavid S. Miller <davem@davemloft.net>
Mon, 4 Nov 2019 19:30:14 +0000 (11:30 -0800)
There is no need to fall back to a lower mask these days, the DMA mask
just communicates the hardware supported features.

Signed-off-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Thomas Bogendoerfer <tbogendoerfer@suse.de>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ethernet/sgi/ioc3-eth.c

index 8a684d882e639a5824fd861c46ddb6a011a4b52c..dc2e22652b5574d9da466f418f1f6a9a7b7666d8 100644 (file)
@@ -1173,26 +1173,14 @@ static int ioc3_probe(struct pci_dev *pdev, const struct pci_device_id *ent)
        struct ioc3 *ioc3;
        unsigned long ioc3_base, ioc3_size;
        u32 vendor, model, rev;
-       int err, pci_using_dac;
+       int err;
 
        /* Configure DMA attributes. */
-       err = pci_set_dma_mask(pdev, DMA_BIT_MASK(64));
-       if (!err) {
-               pci_using_dac = 1;
-               err = pci_set_consistent_dma_mask(pdev, DMA_BIT_MASK(64));
-               if (err < 0) {
-                       pr_err("%s: Unable to obtain 64 bit DMA for consistent allocations\n",
-                              pci_name(pdev));
-                       goto out;
-               }
-       } else {
-               err = pci_set_dma_mask(pdev, DMA_BIT_MASK(32));
-               if (err) {
-                       pr_err("%s: No usable DMA configuration, aborting.\n",
-                              pci_name(pdev));
-                       goto out;
-               }
-               pci_using_dac = 0;
+       err = dma_set_mask_and_coherent(&pdev->dev, DMA_BIT_MASK(64));
+       if (err) {
+               pr_err("%s: No usable DMA configuration, aborting.\n",
+                      pci_name(pdev));
+               goto out;
        }
 
        if (pci_enable_device(pdev))
@@ -1204,8 +1192,7 @@ static int ioc3_probe(struct pci_dev *pdev, const struct pci_device_id *ent)
                goto out_disable;
        }
 
-       if (pci_using_dac)
-               dev->features |= NETIF_F_HIGHDMA;
+       dev->features |= NETIF_F_HIGHDMA;
 
        err = pci_request_regions(pdev, "ioc3");
        if (err)