Thread (5 messages) 5 messages, 3 authors, 2021-11-09

Re: [PATCH V2] dma: dw-edma-pcie: switch from 'pci_' to 'dma_' API

flat view

From: Christophe JAILLET <hidden>
Date: 2021-11-02 19:06:02
Also in: kernel-janitors, lkml

Hi,


Le 28/09/2021 à 05:44, Qing Wang a écrit :
quoted hunk ↗ jump to hunk
From: Wang Qing <redacted>

The wrappers in include/linux/pci-dma-compat.h should go away.

The patch has been generated with the coccinelle script below.
expression e1, e2;
@@
-    pci_set_dma_mask(e1, e2)
+    dma_set_mask(&e1->dev, e2)

@@
expression e1, e2;
@@
-    pci_set_consistent_dma_mask(e1, e2)
+    dma_set_coherent_mask(&e1->dev, e2)

While at it, some 'dma_set_mask()/dma_set_coherent_mask()' have been
updated to a much less verbose 'dma_set_mask_and_coherent()'.

Signed-off-by: Wang Qing <redacted>
---
  drivers/dma/dw-edma/dw-edma-pcie.c | 17 ++++-------------
  1 file changed, 4 insertions(+), 13 deletions(-)
diff --git a/drivers/dma/dw-edma/dw-edma-pcie.c b/drivers/dma/dw-edma/dw-edma-pcie.c
index 44f6e09..198f6cd
--- a/drivers/dma/dw-edma/dw-edma-pcie.c
+++ b/drivers/dma/dw-edma/dw-edma-pcie.c
@@ -186,27 +186,18 @@ static int dw_edma_pcie_probe(struct pci_dev *pdev,
  	pci_set_master(pdev);
  
  	/* DMA configuration */
-	err = pci_set_dma_mask(pdev, DMA_BIT_MASK(64));
+	err = dma_set_mask_and_coherent(&pdev->dev, DMA_BIT_MASK(64));
  	if (!err) {
if err = 0, so if no error...
quoted hunk ↗ jump to hunk
-		err = pci_set_consistent_dma_mask(pdev, DMA_BIT_MASK(64));
-		if (err) {
-			pci_err(pdev, "consistent DMA mask 64 set failed\n");
-			return err;
-		}
+		pci_err(pdev, "DMA mask 64 set failed\n");
+		return err;
... we log an error, return success but don't perform the last steps of the probe.
quoted hunk ↗ jump to hunk
  	} else {
  		pci_err(pdev, "DMA mask 64 set failed\n");
  
-		err = pci_set_dma_mask(pdev, DMA_BIT_MASK(32));
+		err = dma_set_mask_and_coherent(&pdev->dev, DMA_BIT_MASK(32));
  		if (err) {
  			pci_err(pdev, "DMA mask 32 set failed\n");
  			return err;
  		}
-
-		err = pci_set_consistent_dma_mask(pdev, DMA_BIT_MASK(32));
-		if (err) {
-			pci_err(pdev, "consistent DMA mask 32 set failed\n");
-			return err;
-		}
  	}
  
  	/* Data structure allocation */
This patch is broken and should be reworked.

It has been applied in ecb8c88bd31c.

CJ
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help