summaryrefslogtreecommitdiffstats
path: root/arch/Kconfig
diff options
context:
space:
mode:
authorChristoph Hellwig <hch@lst.de>2024-08-28 08:02:47 +0200
committerChristoph Hellwig <hch@lst.de>2024-09-04 06:08:51 +0200
commitde6c85bf918ea52d5c680f0d130b37ee2ff152d6 (patch)
tree4dd1ee15eaeac8ee0f26c1c4ec258d6b81057581 /arch/Kconfig
parentvdpa_sim: don't select DMA_OPS (diff)
downloadlinux-de6c85bf918ea52d5c680f0d130b37ee2ff152d6.tar.xz
linux-de6c85bf918ea52d5c680f0d130b37ee2ff152d6.zip
dma-mapping: clearly mark DMA ops as an architecture feature
DMA ops are a helper for architectures and not for drivers to override the DMA implementation. Unfortunately driver authors keep ignoring this. Make the fact more clear by renaming the symbol to ARCH_HAS_DMA_OPS and having the two drivers overriding their dma_ops depend on that. These drivers should probably be marked broken, but we can give them a bit of a grace period for that. Signed-off-by: Christoph Hellwig <hch@lst.de> Reviewed-by: Thomas Gleixner <tglx@linutronix.de> Acked-by: Sakari Ailus <sakari.ailus@linux.intel.com> # for IPU6 Acked-by: Robin Murphy <robin.murphy@arm.com>
Diffstat (limited to 'arch/Kconfig')
-rw-r--r--arch/Kconfig9
1 files changed, 9 insertions, 0 deletions
diff --git a/arch/Kconfig b/arch/Kconfig
index 975dd22a2dbd..61c4ec048787 100644
--- a/arch/Kconfig
+++ b/arch/Kconfig
@@ -17,6 +17,15 @@ config CPU_MITIGATIONS
def_bool y
endif
+#
+# Selected by architectures that need custom DMA operations for e.g. legacy
+# IOMMUs not handled by dma-iommu. Drivers must never select this symbol.
+#
+config ARCH_HAS_DMA_OPS
+ depends on HAS_DMA
+ select DMA_OPS_HELPERS
+ bool
+
menu "General architecture-dependent options"
config ARCH_HAS_SUBPAGE_FAULTS