Message ID | 20180425051539.1989-12-hch@lst.de (mailing list archive) |
---|---|
State | New, archived |
Delegated to: | Bjorn Helgaas |
Headers | show |
On Wed, Apr 25, 2018 at 07:15:37AM +0200, Christoph Hellwig wrote: > Only mips and unicore32 select CONFIG_NEED_SG_DMA_LENGTH when building > swiotlb. swiotlb itself never merges segements and doesn't accesses the > dma_length field directly, so drop the dependency. Is that at odds with Documentation/DMA-API-HOWTO.txt, which seems to suggest arch ports should enable it for IOMMUs? Cheers James
On Wed, May 02, 2018 at 11:20:18PM +0100, James Hogan wrote: > On Wed, Apr 25, 2018 at 07:15:37AM +0200, Christoph Hellwig wrote: > > Only mips and unicore32 select CONFIG_NEED_SG_DMA_LENGTH when building > > swiotlb. swiotlb itself never merges segements and doesn't accesses the > > dma_length field directly, so drop the dependency. > > Is that at odds with Documentation/DMA-API-HOWTO.txt, which seems to > suggest arch ports should enable it for IOMMUs? swiotlb isn't really an iommu.. That being said iommus don't have to merge segments either if they don't want to, and we have various implementations that don't. The whole dma api documentation needs a major overhaul, including merging the various files and dropping a lot of dead wood. It has been on my todo list for a while, with an inner hope that someone else would do it before me.
On Thu, May 03, 2018 at 05:56:43AM +0200, Christoph Hellwig wrote: > On Wed, May 02, 2018 at 11:20:18PM +0100, James Hogan wrote: > > On Wed, Apr 25, 2018 at 07:15:37AM +0200, Christoph Hellwig wrote: > > > Only mips and unicore32 select CONFIG_NEED_SG_DMA_LENGTH when building > > > swiotlb. swiotlb itself never merges segements and doesn't accesses the > > > dma_length field directly, so drop the dependency. > > > > Is that at odds with Documentation/DMA-API-HOWTO.txt, which seems to > > suggest arch ports should enable it for IOMMUs? > > swiotlb isn't really an iommu.. That being said iommus don't have to > merge segments either if they don't want to, and we have various > implementations that don't. The whole dma api documentation needs > a major overhaul, including merging the various files and dropping a lot > of dead wood. It has been on my todo list for a while, with an inner > hope that someone else would do it before me. Okay, for MIPS: Acked-by: James Hogan <jhogan@kernel.org> Cheers James
diff --git a/arch/mips/cavium-octeon/Kconfig b/arch/mips/cavium-octeon/Kconfig index 5d73041547a7..eb5faeed4f66 100644 --- a/arch/mips/cavium-octeon/Kconfig +++ b/arch/mips/cavium-octeon/Kconfig @@ -70,7 +70,6 @@ config CAVIUM_OCTEON_LOCK_L2_MEMCPY config SWIOTLB def_bool y select DMA_DIRECT_OPS - select NEED_SG_DMA_LENGTH config OCTEON_ILM tristate "Module to measure interrupt latency using Octeon CIU Timer" diff --git a/arch/mips/loongson64/Kconfig b/arch/mips/loongson64/Kconfig index 641a1477031e..2a4fb91adbb6 100644 --- a/arch/mips/loongson64/Kconfig +++ b/arch/mips/loongson64/Kconfig @@ -135,7 +135,6 @@ config SWIOTLB default y depends on CPU_LOONGSON3 select DMA_DIRECT_OPS - select NEED_SG_DMA_LENGTH select NEED_DMA_MAP_STATE config PHYS48_TO_HT40 diff --git a/arch/unicore32/mm/Kconfig b/arch/unicore32/mm/Kconfig index 1d9fed0ada71..45b7f769375e 100644 --- a/arch/unicore32/mm/Kconfig +++ b/arch/unicore32/mm/Kconfig @@ -43,4 +43,3 @@ config CPU_TLB_SINGLE_ENTRY_DISABLE config SWIOTLB def_bool y select DMA_DIRECT_OPS - select NEED_SG_DMA_LENGTH
Only mips and unicore32 select CONFIG_NEED_SG_DMA_LENGTH when building swiotlb. swiotlb itself never merges segements and doesn't accesses the dma_length field directly, so drop the dependency. Signed-off-by: Christoph Hellwig <hch@lst.de> --- arch/mips/cavium-octeon/Kconfig | 1 - arch/mips/loongson64/Kconfig | 1 - arch/unicore32/mm/Kconfig | 1 - 3 files changed, 3 deletions(-)