diff options
Diffstat (limited to 'drivers/fpga')
| -rw-r--r-- | drivers/fpga/dfl-pci.c | 15 | 
1 files changed, 5 insertions, 10 deletions
| diff --git a/drivers/fpga/dfl-pci.c b/drivers/fpga/dfl-pci.c index 4d68719e608f..717ac9715970 100644 --- a/drivers/fpga/dfl-pci.c +++ b/drivers/fpga/dfl-pci.c @@ -15,6 +15,7 @@   */  #include <linux/pci.h> +#include <linux/dma-mapping.h>  #include <linux/types.h>  #include <linux/kernel.h>  #include <linux/module.h> @@ -354,16 +355,10 @@ int cci_pci_probe(struct pci_dev *pcidev, const struct pci_device_id *pcidevid)  	pci_set_master(pcidev); -	if (!pci_set_dma_mask(pcidev, DMA_BIT_MASK(64))) { -		ret = pci_set_consistent_dma_mask(pcidev, DMA_BIT_MASK(64)); -		if (ret) -			goto disable_error_report_exit; -	} else if (!pci_set_dma_mask(pcidev, DMA_BIT_MASK(32))) { -		ret = pci_set_consistent_dma_mask(pcidev, DMA_BIT_MASK(32)); -		if (ret) -			goto disable_error_report_exit; -	} else { -		ret = -EIO; +	ret = dma_set_mask_and_coherent(&pcidev->dev, DMA_BIT_MASK(64)); +	if (ret) +		ret = dma_set_mask_and_coherent(&pcidev->dev, DMA_BIT_MASK(32)); +	if (ret) {  		dev_err(&pcidev->dev, "No suitable DMA support available.\n");  		goto disable_error_report_exit;  	} |