Messages in this thread | | | Date | Fri, 7 Jan 2022 07:34:06 +0100 | Subject | Re: [PATCH 16/16] PCI: Remove usage of the deprecated "pci-dma-compat.h" API | From | Christophe JAILLET <> |
| |
Le 06/01/2022 à 23:28, Bjorn Helgaas a écrit : > On Thu, Jan 06, 2022 at 10:55:33PM +0100, Christophe JAILLET wrote: >> Final step, remove pci-dma-compat.h >> >> Signed-off-by: Christophe JAILLET <christophe.jaillet@wanadoo.fr> > > Acked-by: Bjorn Helgaas <bhelgaas@google.com> > > Obviously this has to be applied after all the others, so I assume > somebody else will take this. > >> --- >> include/linux/pci-dma-compat.h | 129 --------------------------------- >> include/linux/pci.h | 3 - >> 2 files changed, 132 deletions(-) >> delete mode 100644 include/linux/pci-dma-compat.h >> >> diff --git a/include/linux/pci-dma-compat.h b/include/linux/pci-dma-compat.h >> deleted file mode 100644 >> index 249d4d7fbf18..000000000000 >> --- a/include/linux/pci-dma-compat.h >> +++ /dev/null >> @@ -1,129 +0,0 @@ >> -/* SPDX-License-Identifier: GPL-2.0 */ >> -/* include this file if the platform implements the dma_ DMA Mapping API >> - * and wants to provide the pci_ DMA Mapping API in terms of it */ >> - >> -#ifndef _ASM_GENERIC_PCI_DMA_COMPAT_H >> -#define _ASM_GENERIC_PCI_DMA_COMPAT_H >> - >> -#include <linux/dma-mapping.h> >> - >> -/* This defines the direction arg to the DMA mapping routines. */ >> -#define PCI_DMA_BIDIRECTIONAL DMA_BIDIRECTIONAL >> -#define PCI_DMA_TODEVICE DMA_TO_DEVICE >> -#define PCI_DMA_FROMDEVICE DMA_FROM_DEVICE >> -#define PCI_DMA_NONE DMA_NONE >> - >> -static inline void * >> -pci_alloc_consistent(struct pci_dev *hwdev, size_t size, >> - dma_addr_t *dma_handle) >> -{ >> - return dma_alloc_coherent(&hwdev->dev, size, dma_handle, GFP_ATOMIC); >> -} >> - >> -static inline void * >> -pci_zalloc_consistent(struct pci_dev *hwdev, size_t size, >> - dma_addr_t *dma_handle) >> -{ >> - return dma_alloc_coherent(&hwdev->dev, size, dma_handle, GFP_ATOMIC); >> -} >> - >> -static inline void >> -pci_free_consistent(struct pci_dev *hwdev, size_t size, >> - void *vaddr, dma_addr_t dma_handle) >> -{ >> - dma_free_coherent(&hwdev->dev, size, vaddr, dma_handle); >> -} >> - >> -static inline dma_addr_t >> -pci_map_single(struct pci_dev *hwdev, void *ptr, size_t size, int direction) >> -{ >> - return dma_map_single(&hwdev->dev, ptr, size, (enum dma_data_direction)direction); >> -} >> - >> -static inline void >> -pci_unmap_single(struct pci_dev *hwdev, dma_addr_t dma_addr, >> - size_t size, int direction) >> -{ >> - dma_unmap_single(&hwdev->dev, dma_addr, size, (enum dma_data_direction)direction); >> -} >> - >> -static inline dma_addr_t >> -pci_map_page(struct pci_dev *hwdev, struct page *page, >> - unsigned long offset, size_t size, int direction) >> -{ >> - return dma_map_page(&hwdev->dev, page, offset, size, (enum dma_data_direction)direction); >> -} >> - >> -static inline void >> -pci_unmap_page(struct pci_dev *hwdev, dma_addr_t dma_address, >> - size_t size, int direction) >> -{ >> - dma_unmap_page(&hwdev->dev, dma_address, size, (enum dma_data_direction)direction); >> -} >> - >> -static inline int >> -pci_map_sg(struct pci_dev *hwdev, struct scatterlist *sg, >> - int nents, int direction) >> -{ >> - return dma_map_sg(&hwdev->dev, sg, nents, (enum dma_data_direction)direction); >> -} >> - >> -static inline void >> -pci_unmap_sg(struct pci_dev *hwdev, struct scatterlist *sg, >> - int nents, int direction) >> -{ >> - dma_unmap_sg(&hwdev->dev, sg, nents, (enum dma_data_direction)direction); >> -} >> - >> -static inline void >> -pci_dma_sync_single_for_cpu(struct pci_dev *hwdev, dma_addr_t dma_handle, >> - size_t size, int direction) >> -{ >> - dma_sync_single_for_cpu(&hwdev->dev, dma_handle, size, (enum dma_data_direction)direction); >> -} >> - >> -static inline void >> -pci_dma_sync_single_for_device(struct pci_dev *hwdev, dma_addr_t dma_handle, >> - size_t size, int direction) >> -{ >> - dma_sync_single_for_device(&hwdev->dev, dma_handle, size, (enum dma_data_direction)direction); >> -} >> - >> -static inline void >> -pci_dma_sync_sg_for_cpu(struct pci_dev *hwdev, struct scatterlist *sg, >> - int nelems, int direction) >> -{ >> - dma_sync_sg_for_cpu(&hwdev->dev, sg, nelems, (enum dma_data_direction)direction); >> -} >> - >> -static inline void >> -pci_dma_sync_sg_for_device(struct pci_dev *hwdev, struct scatterlist *sg, >> - int nelems, int direction) >> -{ >> - dma_sync_sg_for_device(&hwdev->dev, sg, nelems, (enum dma_data_direction)direction); >> -} >> - >> -static inline int >> -pci_dma_mapping_error(struct pci_dev *pdev, dma_addr_t dma_addr) >> -{ >> - return dma_mapping_error(&pdev->dev, dma_addr); >> -} >> - >> -#ifdef CONFIG_PCI >> -static inline int pci_set_dma_mask(struct pci_dev *dev, u64 mask) >> -{ >> - return dma_set_mask(&dev->dev, mask); >> -} >> - >> -static inline int pci_set_consistent_dma_mask(struct pci_dev *dev, u64 mask) >> -{ >> - return dma_set_coherent_mask(&dev->dev, mask); >> -} >> -#else >> -static inline int pci_set_dma_mask(struct pci_dev *dev, u64 mask) >> -{ return -EIO; } >> -static inline int pci_set_consistent_dma_mask(struct pci_dev *dev, u64 mask) >> -{ return -EIO; } >> -#endif >> - >> -#endif >> diff --git a/include/linux/pci.h b/include/linux/pci.h >> index d4308f847e58..ba8771eaf380 100644 >> --- a/include/linux/pci.h >> +++ b/include/linux/pci.h >> @@ -2455,9 +2455,6 @@ static inline bool pci_is_thunderbolt_attached(struct pci_dev *pdev) >> void pci_uevent_ers(struct pci_dev *pdev, enum pci_ers_result err_type); >> #endif >> >> -/* Provide the legacy pci_dma_* API */ >> -#include <linux/pci-dma-compat.h> >> -
After one more night, I should have mentionned that the way have removed "pci-dma-compat.h" may break OTHER drives because of indirect include.
The line above should maybe be replaced by: #include <linux/dma-mapping.h> which is hidden in "pci-dma-compat.h".
Will see if built-bots complain.
CJ
>> #define pci_printk(level, pdev, fmt, arg...) \ >> dev_printk(level, &(pdev)->dev, fmt, ##arg) >> >> -- >> 2.32.0 >> >
| |