net: pasemi: set a 64-bit DMA mask on the DMA device
authorChristoph Hellwig <hch@lst.de>
Wed, 13 Feb 2019 07:01:02 +0000 (08:01 +0100)
committerMichael Ellerman <mpe@ellerman.id.au>
Mon, 18 Feb 2019 11:41:01 +0000 (22:41 +1100)
The pasemi driver never set a DMA mask, and given that the powerpc
DMA mapping routines never check it this worked ok so far.  But the
generic dma-direct code which I plan to switch on for powerpc checks
the DMA mask and fails unsupported mapping requests, so we need to
make sure the proper 64-bit mask is set.

Reported-by: Christian Zigotzky <chzigotzky@xenosoft.de>
Signed-off-by: Christoph Hellwig <hch@lst.de>
Tested-by: Christian Zigotzky <chzigotzky@xenosoft.de>
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
drivers/net/ethernet/pasemi/pasemi_mac.c

index d21041554507139415a23b61fb1d857bb1ca862f..a5bf46310f60dc314b5ac5684f7ac9ac23ad15f1 100644 (file)
@@ -1716,6 +1716,7 @@ pasemi_mac_probe(struct pci_dev *pdev, const struct pci_device_id *ent)
                err = -ENODEV;
                goto out;
        }
+       dma_set_mask(&mac->dma_pdev->dev, DMA_BIT_MASK(64));
 
        mac->iob_pdev = pci_get_device(PCI_VENDOR_ID_PASEMI, 0xa001, NULL);
        if (!mac->iob_pdev) {