i2c: switch from 'pci_' to 'dma_' API
PATCH 1/1 i2c: switch from 'pci_' to 'dma_' API
The wrappers in include/linux/pci-dma-compat.h should go away.
The patch has been generated with the coccinelle script below.
It has been hand modified to use 'dma_set_mask_and_coherent()' instead of 'pci_set_dma_mask()/pci_set_consistent_dma_mask()' when applicable. This is less verbose.
While at it a 'dev_err()' message has been slightly simplified.
It has been compile tested.
@@
@@
- PCI_DMA_BIDIRECTIONAL
+ DMA_BIDIRECTIONAL
@@
@@
- PCI_DMA_TODEVICE
+ DMA_TO_DEVICE
@@
@@
- PCI_DMA_FROMDEVICE
+ DMA_FROM_DEVICE
@@
@@
- PCI_DMA_NONE
+ DMA_NONE
@@
expression e1, e2, e3;
@@
- pci_alloc_consistent(e1, e2, e3)
+ dma_alloc_coherent(&e1->dev, e2, e3, GFP_)
@@
expression e1, e2, e3;
@@
- pci_zalloc_consistent(e1, e2, e3)
+ dma_alloc_coherent(&e1->dev, e2, e3, GFP_)
@@
expression e1, e2, e3, e4;
@@
- pci_free_consistent(e1, e2, e3, e4)
+ dma_free_coherent(&e1->dev, e2, e3, e4)
@@
expression e1, e2, e3, e4;
@@
- pci_map_single(e1, e2, e3, e4)
+ dma_map_single(&e1->dev, e2, e3, e4)
@@
expression e1, e2, e3, e4;
@@
- pci_unmap_single(e1, e2, e3, e4)
+ dma_unmap_single(&e1->dev, e2, e3, e4)
@@
expression e1, e2, e3, e4, e5;
@@
- pci_map_page(e1, e2, e3, e4, e5)
+ dma_map_page(&e1->dev, e2, e3, e4, e5)
@@
expression e1, e2, e3, e4;
@@
- pci_unmap_page(e1, e2, e3, e4)
+ dma_unmap_page(&e1->dev, e2, e3, e4)
@@
expression e1, e2, e3, e4;
@@
- pci_map_sg(e1, e2, e3, e4)
+ dma_map_sg(&e1->dev, e2, e3, e4)
@@
expression e1, e2, e3, e4;
@@
- pci_unmap_sg(e1, e2, e3, e4)
+ dma_unmap_sg(&e1->dev, e2, e3, e4)
@@
expression e1, e2, e3, e4;
@@
- pci_dma_sync_single_for_cpu(e1, e2, e3, e4)
+ dma_sync_single_for_cpu(&e1->dev, e2, e3, e4)
@@
expression e1, e2, e3, e4;
@@
- pci_dma_sync_single_for_device(e1, e2, e3, e4)
+ dma_sync_single_for_device(&e1->dev, e2, e3, e4)
@@
expression e1, e2, e3, e4;
@@
- pci_dma_sync_sg_for_cpu(e1, e2, e3, e4)
+ dma_sync_sg_for_cpu(&e1->dev, e2, e3, e4)
@@
expression e1, e2, e3, e4;
@@
- pci_dma_sync_sg_for_device(e1, e2, e3, e4)
+ dma_sync_sg_for_device(&e1->dev, e2, e3, e4)
@@
expression e1, e2;
@@
- pci_dma_mapping_error(e1, e2)
+ dma_mapping_error(&e1->dev, e2)
@@
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)
---
If needed, see post from Christoph Hellwig on the kernel-janitors ML:
https://marc.info/?l=kernel-janitors&m=158745678307186&w=4
--- drivers/i2c/busses/i2c-amd-mp2-pci.c | 4 ++-- drivers/i2c/busses/i2c-ismt.c | 12 +++++------- 2 files changed, 7 insertions(+), 9 deletions(-)
drivers/i2c/busses/i2c-amd-mp2-pci.c +2 -2
@@ -307,9 +307,9 @@ static int amd_mp2_pci_init(struct amd_mp2_dev *privdata,pci_set_master (pci_dev); - rc =pci_set_dma_mask (pci_dev,DMA_BIT_MASK (64 )); + rc =dma_set_mask (&pci_dev->dev,DMA_BIT_MASK (64 ));if (rc) { - rc =pci_set_dma_mask (pci_dev,DMA_BIT_MASK (32 )); + rc =dma_set_mask (&pci_dev->dev,DMA_BIT_MASK (32 ));if (rc) goto err_dma_mask; }
drivers/i2c/busses/i2c-ismt.c +5 -7
@@ -918,13 +918,11 @@ ismt_probe(struct pci_dev *pdev, const struct pci_device_id *id)return -ENODEV ; } -if ((pci_set_dma_mask (pdev,DMA_BIT_MASK (64 )) !=0 ) || - (pci_set_consistent_dma_mask (pdev,DMA_BIT_MASK (64 )) !=0 )) { -if ((pci_set_dma_mask (pdev,DMA_BIT_MASK (32 )) !=0 ) || - (pci_set_consistent_dma_mask (pdev, -DMA_BIT_MASK (32 )) !=0 )) { -dev_err (&pdev->dev,"pci_set_dma_mask fail %p\n" , - pdev); + err =dma_set_mask_and_coherent (&pdev->dev,DMA_BIT_MASK (64 )); +if (err) { + err =dma_set_mask_and_coherent (&pdev->dev,DMA_BIT_MASK (32 )); +if (err) { +dev_err (&pdev->dev,"dma_set_mask fail\n" );return -ENODEV ; } }
Signature · 1 line
2.30.2
Wolfram Sang
AppliedQuoted 129 lines · Christophe JAILLET
The wrappers in
include/linux/pci-dma-compat.hshould go away.The patch has been generated with the coccinelle script below.
It has been hand modified to use '
dma_set_mask_and_coherent()' instead of 'pci_set_dma_mask()/pci_set_consistent_dma_mask()' when applicable. This is less verbose.While at it a '
dev_err()' message has been slightly simplified.It has been compile tested.
@@
@@(quoted diff) +1
-1- PCI_DMA_BIDIRECTIONAL + DMA_BIDIRECTIONAL@@
@@(quoted diff) +1
-1- PCI_DMA_TODEVICE + DMA_TO_DEVICE@@
@@(quoted diff) +1
-1- PCI_DMA_FROMDEVICE + DMA_FROM_DEVICE@@
@@(quoted diff) +1
-1- PCI_DMA_NONE + DMA_NONE@@
expression e1, e2, e3;
@@(quoted diff) +1
-1- pci_alloc_consistent(e1, e2, e3) + dma_alloc_coherent(&e1->dev, e2, e3, GFP_)@@
expression e1, e2, e3;
@@(quoted diff) +1
-1- pci_zalloc_consistent(e1, e2, e3) + dma_alloc_coherent(&e1->dev, e2, e3, GFP_)@@
expression e1, e2, e3, e4;
@@(quoted diff) +1
-1- pci_free_consistent(e1, e2, e3, e4) + dma_free_coherent(&e1->dev, e2, e3, e4)@@
expression e1, e2, e3, e4;
@@(quoted diff) +1
-1- pci_map_single(e1, e2, e3, e4) + dma_map_single(&e1->dev, e2, e3, e4)@@
expression e1, e2, e3, e4;
@@(quoted diff) +1
-1- pci_unmap_single(e1, e2, e3, e4) + dma_unmap_single(&e1->dev, e2, e3, e4)@@
expression e1, e2, e3, e4, e5;
@@(quoted diff) +1
-1- pci_map_page(e1, e2, e3, e4, e5) + dma_map_page(&e1->dev, e2, e3, e4, e5)@@
expression e1, e2, e3, e4;
@@(quoted diff) +1
-1- pci_unmap_page(e1, e2, e3, e4) + dma_unmap_page(&e1->dev, e2, e3, e4)@@
expression e1, e2, e3, e4;
@@(quoted diff) +1
-1- pci_map_sg(e1, e2, e3, e4) + dma_map_sg(&e1->dev, e2, e3, e4)@@
expression e1, e2, e3, e4;
@@(quoted diff) +1
-1- pci_unmap_sg(e1, e2, e3, e4) + dma_unmap_sg(&e1->dev, e2, e3, e4)@@
expression e1, e2, e3, e4;
@@(quoted diff) +1
-1- pci_dma_sync_single_for_cpu(e1, e2, e3, e4) + dma_sync_single_for_cpu(&e1->dev, e2, e3, e4)@@
expression e1, e2, e3, e4;
@@(quoted diff) +1
-1- pci_dma_sync_single_for_device(e1, e2, e3, e4) + dma_sync_single_for_device(&e1->dev, e2, e3, e4)@@
expression e1, e2, e3, e4;
@@(quoted diff) +1
-1- pci_dma_sync_sg_for_cpu(e1, e2, e3, e4) + dma_sync_sg_for_cpu(&e1->dev, e2, e3, e4)@@
expression e1, e2, e3, e4;
@@(quoted diff) +1
-1- pci_dma_sync_sg_for_device(e1, e2, e3, e4) + dma_sync_sg_for_device(&e1->dev, e2, e3, e4)@@
expression e1, e2;
@@(quoted diff) +1
-1- pci_dma_mapping_error(e1, e2) + dma_mapping_error(&e1->dev, e2)@@
expression e1, e2;
@@(quoted diff) +1
-1- pci_set_dma_mask(e1, e2) + dma_set_mask(&e1->dev, e2)@@
expression e1, e2;
@@(quoted diff) +1
-1- pci_set_consistent_dma_mask(e1, e2) + dma_set_coherent_mask(&e1->dev, e2)
Quoted 1 line
Signed-off-by Christophe JAILLET <[email protected]>
Applied to for-next, thanks!