summaryrefslogtreecommitdiffstats
path: root/arch
diff options
context:
space:
mode:
Diffstat (limited to 'arch')
-rw-r--r--arch/Kconfig3
-rw-r--r--arch/alpha/Kconfig1
-rw-r--r--arch/alpha/include/asm/dma-mapping.h2
-rw-r--r--arch/arc/Kconfig1
-rw-r--r--arch/arc/include/asm/dma-mapping.h2
-rw-r--r--arch/arm/Kconfig1
-rw-r--r--arch/arm/include/asm/dma-mapping.h7
-rw-r--r--arch/arm64/Kconfig1
-rw-r--r--arch/arm64/include/asm/dma-mapping.h2
-rw-r--r--arch/avr32/Kconfig1
-rw-r--r--arch/avr32/include/asm/dma-mapping.h2
-rw-r--r--arch/blackfin/Kconfig1
-rw-r--r--arch/blackfin/include/asm/dma-mapping.h2
-rw-r--r--arch/c6x/Kconfig1
-rw-r--r--arch/c6x/include/asm/dma-mapping.h2
-rw-r--r--arch/cris/Kconfig1
-rw-r--r--arch/cris/include/asm/dma-mapping.h2
-rw-r--r--arch/frv/Kconfig1
-rw-r--r--arch/frv/include/asm/dma-mapping.h2
-rw-r--r--arch/h8300/Kconfig1
-rw-r--r--arch/h8300/include/asm/dma-mapping.h2
-rw-r--r--arch/hexagon/Kconfig1
-rw-r--r--arch/hexagon/include/asm/dma-mapping.h2
-rw-r--r--arch/ia64/Kconfig1
-rw-r--r--arch/ia64/include/asm/dma-mapping.h2
-rw-r--r--arch/m68k/Kconfig1
-rw-r--r--arch/m68k/include/asm/dma-mapping.h2
-rw-r--r--arch/metag/Kconfig1
-rw-r--r--arch/metag/include/asm/dma-mapping.h2
-rw-r--r--arch/microblaze/Kconfig1
-rw-r--r--arch/microblaze/include/asm/dma-mapping.h2
-rw-r--r--arch/mips/Kconfig1
-rw-r--r--arch/mips/include/asm/dma-mapping.h2
-rw-r--r--arch/mn10300/Kconfig1
-rw-r--r--arch/mn10300/include/asm/dma-mapping.h2
-rw-r--r--arch/nios2/Kconfig1
-rw-r--r--arch/openrisc/Kconfig3
-rw-r--r--arch/openrisc/include/asm/dma-mapping.h2
-rw-r--r--arch/parisc/Kconfig1
-rw-r--r--arch/parisc/include/asm/dma-mapping.h2
-rw-r--r--arch/powerpc/Kconfig1
-rw-r--r--arch/powerpc/include/asm/dma-mapping.h2
-rw-r--r--arch/s390/Kconfig1
-rw-r--r--arch/s390/include/asm/dma-mapping.h2
-rw-r--r--arch/sh/Kconfig1
-rw-r--r--arch/sh/include/asm/dma-mapping.h2
-rw-r--r--arch/sparc/Kconfig1
-rw-r--r--arch/sparc/include/asm/dma-mapping.h2
-rw-r--r--arch/tile/Kconfig1
-rw-r--r--arch/tile/include/asm/dma-mapping.h3
-rw-r--r--arch/unicore32/Kconfig1
-rw-r--r--arch/unicore32/include/asm/dma-mapping.h2
-rw-r--r--arch/x86/Kconfig1
-rw-r--r--arch/x86/include/asm/dma-mapping.h2
-rw-r--r--arch/xtensa/Kconfig1
-rw-r--r--arch/xtensa/include/asm/dma-mapping.h2
56 files changed, 0 insertions, 93 deletions
diff --git a/arch/Kconfig b/arch/Kconfig
index 51c03efb4083..f6b649d88ec8 100644
--- a/arch/Kconfig
+++ b/arch/Kconfig
@@ -205,9 +205,6 @@ config HAVE_NMI_WATCHDOG
205config HAVE_ARCH_TRACEHOOK 205config HAVE_ARCH_TRACEHOOK
206 bool 206 bool
207 207
208config HAVE_DMA_ATTRS
209 bool
210
211config HAVE_DMA_CONTIGUOUS 208config HAVE_DMA_CONTIGUOUS
212 bool 209 bool
213 210
diff --git a/arch/alpha/Kconfig b/arch/alpha/Kconfig
index f515a4dbf7a0..9d8a85801ed1 100644
--- a/arch/alpha/Kconfig
+++ b/arch/alpha/Kconfig
@@ -9,7 +9,6 @@ config ALPHA
9 select HAVE_OPROFILE 9 select HAVE_OPROFILE
10 select HAVE_PCSPKR_PLATFORM 10 select HAVE_PCSPKR_PLATFORM
11 select HAVE_PERF_EVENTS 11 select HAVE_PERF_EVENTS
12 select HAVE_DMA_ATTRS
13 select VIRT_TO_BUS 12 select VIRT_TO_BUS
14 select GENERIC_IRQ_PROBE 13 select GENERIC_IRQ_PROBE
15 select AUTO_IRQ_AFFINITY if SMP 14 select AUTO_IRQ_AFFINITY if SMP
diff --git a/arch/alpha/include/asm/dma-mapping.h b/arch/alpha/include/asm/dma-mapping.h
index 72a8ca7796d9..3c3451f58ff4 100644
--- a/arch/alpha/include/asm/dma-mapping.h
+++ b/arch/alpha/include/asm/dma-mapping.h
@@ -10,8 +10,6 @@ static inline struct dma_map_ops *get_dma_ops(struct device *dev)
10 return dma_ops; 10 return dma_ops;
11} 11}
12 12
13#include <asm-generic/dma-mapping-common.h>
14
15#define dma_cache_sync(dev, va, size, dir) ((void)0) 13#define dma_cache_sync(dev, va, size, dir) ((void)0)
16 14
17#endif /* _ALPHA_DMA_MAPPING_H */ 15#endif /* _ALPHA_DMA_MAPPING_H */
diff --git a/arch/arc/Kconfig b/arch/arc/Kconfig
index 8150c2783583..76dde9db7934 100644
--- a/arch/arc/Kconfig
+++ b/arch/arc/Kconfig
@@ -38,7 +38,6 @@ config ARC
38 select OF_EARLY_FLATTREE 38 select OF_EARLY_FLATTREE
39 select PERF_USE_VMALLOC 39 select PERF_USE_VMALLOC
40 select HAVE_DEBUG_STACKOVERFLOW 40 select HAVE_DEBUG_STACKOVERFLOW
41 select HAVE_DMA_ATTRS
42 41
43config TRACE_IRQFLAGS_SUPPORT 42config TRACE_IRQFLAGS_SUPPORT
44 def_bool y 43 def_bool y
diff --git a/arch/arc/include/asm/dma-mapping.h b/arch/arc/include/asm/dma-mapping.h
index 2a617f9c1e92..660205414f1d 100644
--- a/arch/arc/include/asm/dma-mapping.h
+++ b/arch/arc/include/asm/dma-mapping.h
@@ -18,6 +18,4 @@ static inline struct dma_map_ops *get_dma_ops(struct device *dev)
18 return &arc_dma_ops; 18 return &arc_dma_ops;
19} 19}
20 20
21#include <asm-generic/dma-mapping-common.h>
22
23#endif 21#endif
diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
index 6a889afa6a2c..52311774e18e 100644
--- a/arch/arm/Kconfig
+++ b/arch/arm/Kconfig
@@ -47,7 +47,6 @@ config ARM
47 select HAVE_C_RECORDMCOUNT 47 select HAVE_C_RECORDMCOUNT
48 select HAVE_DEBUG_KMEMLEAK 48 select HAVE_DEBUG_KMEMLEAK
49 select HAVE_DMA_API_DEBUG 49 select HAVE_DMA_API_DEBUG
50 select HAVE_DMA_ATTRS
51 select HAVE_DMA_CONTIGUOUS if MMU 50 select HAVE_DMA_CONTIGUOUS if MMU
52 select HAVE_DYNAMIC_FTRACE if (!XIP_KERNEL) && !CPU_ENDIAN_BE32 && MMU 51 select HAVE_DYNAMIC_FTRACE if (!XIP_KERNEL) && !CPU_ENDIAN_BE32 && MMU
53 select HAVE_EFFICIENT_UNALIGNED_ACCESS if (CPU_V6 || CPU_V6K || CPU_V7) && MMU 52 select HAVE_EFFICIENT_UNALIGNED_ACCESS if (CPU_V6 || CPU_V6K || CPU_V7) && MMU
diff --git a/arch/arm/include/asm/dma-mapping.h b/arch/arm/include/asm/dma-mapping.h
index ccb3aa64640d..6ad1ceda62a5 100644
--- a/arch/arm/include/asm/dma-mapping.h
+++ b/arch/arm/include/asm/dma-mapping.h
@@ -41,13 +41,6 @@ static inline void set_dma_ops(struct device *dev, struct dma_map_ops *ops)
41#define HAVE_ARCH_DMA_SUPPORTED 1 41#define HAVE_ARCH_DMA_SUPPORTED 1
42extern int dma_supported(struct device *dev, u64 mask); 42extern int dma_supported(struct device *dev, u64 mask);
43 43
44/*
45 * Note that while the generic code provides dummy dma_{alloc,free}_noncoherent
46 * implementations, we don't provide a dma_cache_sync function so drivers using
47 * this API are highlighted with build warnings.
48 */
49#include <asm-generic/dma-mapping-common.h>
50
51#ifdef __arch_page_to_dma 44#ifdef __arch_page_to_dma
52#error Please update to __arch_pfn_to_dma 45#error Please update to __arch_pfn_to_dma
53#endif 46#endif
diff --git a/arch/arm64/Kconfig b/arch/arm64/Kconfig
index 6be3fa2310ee..8cc62289a63e 100644
--- a/arch/arm64/Kconfig
+++ b/arch/arm64/Kconfig
@@ -64,7 +64,6 @@ config ARM64
64 select HAVE_DEBUG_BUGVERBOSE 64 select HAVE_DEBUG_BUGVERBOSE
65 select HAVE_DEBUG_KMEMLEAK 65 select HAVE_DEBUG_KMEMLEAK
66 select HAVE_DMA_API_DEBUG 66 select HAVE_DMA_API_DEBUG
67 select HAVE_DMA_ATTRS
68 select HAVE_DMA_CONTIGUOUS 67 select HAVE_DMA_CONTIGUOUS
69 select HAVE_DYNAMIC_FTRACE 68 select HAVE_DYNAMIC_FTRACE
70 select HAVE_EFFICIENT_UNALIGNED_ACCESS 69 select HAVE_EFFICIENT_UNALIGNED_ACCESS
diff --git a/arch/arm64/include/asm/dma-mapping.h b/arch/arm64/include/asm/dma-mapping.h
index 61e08f360e31..ba437f090a74 100644
--- a/arch/arm64/include/asm/dma-mapping.h
+++ b/arch/arm64/include/asm/dma-mapping.h
@@ -64,8 +64,6 @@ static inline bool is_device_dma_coherent(struct device *dev)
64 return dev->archdata.dma_coherent; 64 return dev->archdata.dma_coherent;
65} 65}
66 66
67#include <asm-generic/dma-mapping-common.h>
68
69static inline dma_addr_t phys_to_dma(struct device *dev, phys_addr_t paddr) 67static inline dma_addr_t phys_to_dma(struct device *dev, phys_addr_t paddr)
70{ 68{
71 return (dma_addr_t)paddr; 69 return (dma_addr_t)paddr;
diff --git a/arch/avr32/Kconfig b/arch/avr32/Kconfig
index aac3d6972c30..b6878eb64884 100644
--- a/arch/avr32/Kconfig
+++ b/arch/avr32/Kconfig
@@ -7,7 +7,6 @@ config AVR32
7 select HAVE_OPROFILE 7 select HAVE_OPROFILE
8 select HAVE_KPROBES 8 select HAVE_KPROBES
9 select VIRT_TO_BUS 9 select VIRT_TO_BUS
10 select HAVE_DMA_ATTRS
11 select GENERIC_IRQ_PROBE 10 select GENERIC_IRQ_PROBE
12 select GENERIC_ATOMIC64 11 select GENERIC_ATOMIC64
13 select HARDIRQS_SW_RESEND 12 select HARDIRQS_SW_RESEND
diff --git a/arch/avr32/include/asm/dma-mapping.h b/arch/avr32/include/asm/dma-mapping.h
index 0239ca84eb41..1115f2a645d1 100644
--- a/arch/avr32/include/asm/dma-mapping.h
+++ b/arch/avr32/include/asm/dma-mapping.h
@@ -11,6 +11,4 @@ static inline struct dma_map_ops *get_dma_ops(struct device *dev)
11 return &avr32_dma_ops; 11 return &avr32_dma_ops;
12} 12}
13 13
14#include <asm-generic/dma-mapping-common.h>
15
16#endif /* __ASM_AVR32_DMA_MAPPING_H */ 14#endif /* __ASM_AVR32_DMA_MAPPING_H */
diff --git a/arch/blackfin/Kconfig b/arch/blackfin/Kconfig
index 4be2f905198d..af76634f8d98 100644
--- a/arch/blackfin/Kconfig
+++ b/arch/blackfin/Kconfig
@@ -14,7 +14,6 @@ config BLACKFIN
14 def_bool y 14 def_bool y
15 select HAVE_ARCH_KGDB 15 select HAVE_ARCH_KGDB
16 select HAVE_ARCH_TRACEHOOK 16 select HAVE_ARCH_TRACEHOOK
17 select HAVE_DMA_ATTRS
18 select HAVE_DYNAMIC_FTRACE 17 select HAVE_DYNAMIC_FTRACE
19 select HAVE_FTRACE_MCOUNT_RECORD 18 select HAVE_FTRACE_MCOUNT_RECORD
20 select HAVE_FUNCTION_GRAPH_TRACER 19 select HAVE_FUNCTION_GRAPH_TRACER
diff --git a/arch/blackfin/include/asm/dma-mapping.h b/arch/blackfin/include/asm/dma-mapping.h
index ea5a2e82db7c..3490570aaa82 100644
--- a/arch/blackfin/include/asm/dma-mapping.h
+++ b/arch/blackfin/include/asm/dma-mapping.h
@@ -43,6 +43,4 @@ static inline struct dma_map_ops *get_dma_ops(struct device *dev)
43 return &bfin_dma_ops; 43 return &bfin_dma_ops;
44} 44}
45 45
46#include <asm-generic/dma-mapping-common.h>
47
48#endif /* _BLACKFIN_DMA_MAPPING_H */ 46#endif /* _BLACKFIN_DMA_MAPPING_H */
diff --git a/arch/c6x/Kconfig b/arch/c6x/Kconfig
index 8602f725e270..79049d432d3c 100644
--- a/arch/c6x/Kconfig
+++ b/arch/c6x/Kconfig
@@ -18,7 +18,6 @@ config C6X
18 select GENERIC_CLOCKEVENTS 18 select GENERIC_CLOCKEVENTS
19 select MODULES_USE_ELF_RELA 19 select MODULES_USE_ELF_RELA
20 select ARCH_NO_COHERENT_DMA_MMAP 20 select ARCH_NO_COHERENT_DMA_MMAP
21 select HAVE_DMA_ATTRS
22 21
23config MMU 22config MMU
24 def_bool n 23 def_bool n
diff --git a/arch/c6x/include/asm/dma-mapping.h b/arch/c6x/include/asm/dma-mapping.h
index f881e425d442..6b5cd7b0cf32 100644
--- a/arch/c6x/include/asm/dma-mapping.h
+++ b/arch/c6x/include/asm/dma-mapping.h
@@ -24,8 +24,6 @@ static inline struct dma_map_ops *get_dma_ops(struct device *dev)
24 return &c6x_dma_ops; 24 return &c6x_dma_ops;
25} 25}
26 26
27#include <asm-generic/dma-mapping-common.h>
28
29extern void coherent_mem_init(u32 start, u32 size); 27extern void coherent_mem_init(u32 start, u32 size);
30void *c6x_dma_alloc(struct device *dev, size_t size, dma_addr_t *handle, 28void *c6x_dma_alloc(struct device *dev, size_t size, dma_addr_t *handle,
31 gfp_t gfp, struct dma_attrs *attrs); 29 gfp_t gfp, struct dma_attrs *attrs);
diff --git a/arch/cris/Kconfig b/arch/cris/Kconfig
index 20d919c93c7f..e086f9e93728 100644
--- a/arch/cris/Kconfig
+++ b/arch/cris/Kconfig
@@ -54,7 +54,6 @@ config CRIS
54 select GENERIC_ATOMIC64 54 select GENERIC_ATOMIC64
55 select HAVE_UID16 55 select HAVE_UID16
56 select VIRT_TO_BUS 56 select VIRT_TO_BUS
57 select HAVE_DMA_ATTRS
58 select ARCH_WANT_IPC_PARSE_VERSION 57 select ARCH_WANT_IPC_PARSE_VERSION
59 select GENERIC_IRQ_SHOW 58 select GENERIC_IRQ_SHOW
60 select GENERIC_IOMAP 59 select GENERIC_IOMAP
diff --git a/arch/cris/include/asm/dma-mapping.h b/arch/cris/include/asm/dma-mapping.h
index 34e7c7c7eccb..5a370178a0e9 100644
--- a/arch/cris/include/asm/dma-mapping.h
+++ b/arch/cris/include/asm/dma-mapping.h
@@ -16,8 +16,6 @@ static inline struct dma_map_ops *get_dma_ops(struct device *dev)
16} 16}
17#endif 17#endif
18 18
19#include <asm-generic/dma-mapping-common.h>
20
21static inline void 19static inline void
22dma_cache_sync(struct device *dev, void *vaddr, size_t size, 20dma_cache_sync(struct device *dev, void *vaddr, size_t size,
23 enum dma_data_direction direction) 21 enum dma_data_direction direction)
diff --git a/arch/frv/Kconfig b/arch/frv/Kconfig
index e3837814f593..eefd9a4ed156 100644
--- a/arch/frv/Kconfig
+++ b/arch/frv/Kconfig
@@ -16,7 +16,6 @@ config FRV
16 select OLD_SIGACTION 16 select OLD_SIGACTION
17 select HAVE_DEBUG_STACKOVERFLOW 17 select HAVE_DEBUG_STACKOVERFLOW
18 select ARCH_NO_COHERENT_DMA_MMAP 18 select ARCH_NO_COHERENT_DMA_MMAP
19 select HAVE_DMA_ATTRS
20 19
21config ZONE_DMA 20config ZONE_DMA
22 bool 21 bool
diff --git a/arch/frv/include/asm/dma-mapping.h b/arch/frv/include/asm/dma-mapping.h
index 750951cbba88..9a82bfa4303b 100644
--- a/arch/frv/include/asm/dma-mapping.h
+++ b/arch/frv/include/asm/dma-mapping.h
@@ -21,6 +21,4 @@ void dma_cache_sync(struct device *dev, void *vaddr, size_t size,
21 flush_write_buffers(); 21 flush_write_buffers();
22} 22}
23 23
24#include <asm-generic/dma-mapping-common.h>
25
26#endif /* _ASM_DMA_MAPPING_H */ 24#endif /* _ASM_DMA_MAPPING_H */
diff --git a/arch/h8300/Kconfig b/arch/h8300/Kconfig
index 2e20333cbce9..8c7c82586da0 100644
--- a/arch/h8300/Kconfig
+++ b/arch/h8300/Kconfig
@@ -15,7 +15,6 @@ config H8300
15 select OF_IRQ 15 select OF_IRQ
16 select OF_EARLY_FLATTREE 16 select OF_EARLY_FLATTREE
17 select HAVE_MEMBLOCK 17 select HAVE_MEMBLOCK
18 select HAVE_DMA_ATTRS
19 select CLKSRC_OF 18 select CLKSRC_OF
20 select H8300_TMR8 19 select H8300_TMR8
21 20
diff --git a/arch/h8300/include/asm/dma-mapping.h b/arch/h8300/include/asm/dma-mapping.h
index d9b5b806afe6..7ac7fadffed0 100644
--- a/arch/h8300/include/asm/dma-mapping.h
+++ b/arch/h8300/include/asm/dma-mapping.h
@@ -8,6 +8,4 @@ static inline struct dma_map_ops *get_dma_ops(struct device *dev)
8 return &h8300_dma_map_ops; 8 return &h8300_dma_map_ops;
9} 9}
10 10
11#include <asm-generic/dma-mapping-common.h>
12
13#endif 11#endif
diff --git a/arch/hexagon/Kconfig b/arch/hexagon/Kconfig
index 4dc89d1f9c48..57298e7b4867 100644
--- a/arch/hexagon/Kconfig
+++ b/arch/hexagon/Kconfig
@@ -27,7 +27,6 @@ config HEXAGON
27 select GENERIC_CLOCKEVENTS_BROADCAST 27 select GENERIC_CLOCKEVENTS_BROADCAST
28 select MODULES_USE_ELF_RELA 28 select MODULES_USE_ELF_RELA
29 select GENERIC_CPU_DEVICES 29 select GENERIC_CPU_DEVICES
30 select HAVE_DMA_ATTRS
31 ---help--- 30 ---help---
32 Qualcomm Hexagon is a processor architecture designed for high 31 Qualcomm Hexagon is a processor architecture designed for high
33 performance and low power across a wide variety of applications. 32 performance and low power across a wide variety of applications.
diff --git a/arch/hexagon/include/asm/dma-mapping.h b/arch/hexagon/include/asm/dma-mapping.h
index 268fde8a4575..aa6203464520 100644
--- a/arch/hexagon/include/asm/dma-mapping.h
+++ b/arch/hexagon/include/asm/dma-mapping.h
@@ -49,8 +49,6 @@ extern int dma_is_consistent(struct device *dev, dma_addr_t dma_handle);
49extern void dma_cache_sync(struct device *dev, void *vaddr, size_t size, 49extern void dma_cache_sync(struct device *dev, void *vaddr, size_t size,
50 enum dma_data_direction direction); 50 enum dma_data_direction direction);
51 51
52#include <asm-generic/dma-mapping-common.h>
53
54static inline bool dma_capable(struct device *dev, dma_addr_t addr, size_t size) 52static inline bool dma_capable(struct device *dev, dma_addr_t addr, size_t size)
55{ 53{
56 if (!dev->dma_mask) 54 if (!dev->dma_mask)
diff --git a/arch/ia64/Kconfig b/arch/ia64/Kconfig
index eb0249e37981..fb0515eb639b 100644
--- a/arch/ia64/Kconfig
+++ b/arch/ia64/Kconfig
@@ -25,7 +25,6 @@ config IA64
25 select HAVE_FTRACE_MCOUNT_RECORD 25 select HAVE_FTRACE_MCOUNT_RECORD
26 select HAVE_DYNAMIC_FTRACE if (!ITANIUM) 26 select HAVE_DYNAMIC_FTRACE if (!ITANIUM)
27 select HAVE_FUNCTION_TRACER 27 select HAVE_FUNCTION_TRACER
28 select HAVE_DMA_ATTRS
29 select TTY 28 select TTY
30 select HAVE_ARCH_TRACEHOOK 29 select HAVE_ARCH_TRACEHOOK
31 select HAVE_DMA_API_DEBUG 30 select HAVE_DMA_API_DEBUG
diff --git a/arch/ia64/include/asm/dma-mapping.h b/arch/ia64/include/asm/dma-mapping.h
index 9beccf8010bd..d472805edfa9 100644
--- a/arch/ia64/include/asm/dma-mapping.h
+++ b/arch/ia64/include/asm/dma-mapping.h
@@ -25,8 +25,6 @@ extern void machvec_dma_sync_sg(struct device *, struct scatterlist *, int,
25 25
26#define get_dma_ops(dev) platform_dma_get_ops(dev) 26#define get_dma_ops(dev) platform_dma_get_ops(dev)
27 27
28#include <asm-generic/dma-mapping-common.h>
29
30static inline bool dma_capable(struct device *dev, dma_addr_t addr, size_t size) 28static inline bool dma_capable(struct device *dev, dma_addr_t addr, size_t size)
31{ 29{
32 if (!dev->dma_mask) 30 if (!dev->dma_mask)
diff --git a/arch/m68k/Kconfig b/arch/m68k/Kconfig
index d5d75b3154a1..498b567f007b 100644
--- a/arch/m68k/Kconfig
+++ b/arch/m68k/Kconfig
@@ -23,7 +23,6 @@ config M68K
23 select MODULES_USE_ELF_RELA 23 select MODULES_USE_ELF_RELA
24 select OLD_SIGSUSPEND3 24 select OLD_SIGSUSPEND3
25 select OLD_SIGACTION 25 select OLD_SIGACTION
26 select HAVE_DMA_ATTRS
27 26
28config RWSEM_GENERIC_SPINLOCK 27config RWSEM_GENERIC_SPINLOCK
29 bool 28 bool
diff --git a/arch/m68k/include/asm/dma-mapping.h b/arch/m68k/include/asm/dma-mapping.h
index 2c082a63af35..96c536194287 100644
--- a/arch/m68k/include/asm/dma-mapping.h
+++ b/arch/m68k/include/asm/dma-mapping.h
@@ -8,8 +8,6 @@ static inline struct dma_map_ops *get_dma_ops(struct device *dev)
8 return &m68k_dma_ops; 8 return &m68k_dma_ops;
9} 9}
10 10
11#include <asm-generic/dma-mapping-common.h>
12
13static inline void dma_cache_sync(struct device *dev, void *vaddr, size_t size, 11static inline void dma_cache_sync(struct device *dev, void *vaddr, size_t size,
14 enum dma_data_direction dir) 12 enum dma_data_direction dir)
15{ 13{
diff --git a/arch/metag/Kconfig b/arch/metag/Kconfig
index ad8604c2d9f6..a0fa88da3e31 100644
--- a/arch/metag/Kconfig
+++ b/arch/metag/Kconfig
@@ -29,7 +29,6 @@ config METAG
29 select OF 29 select OF
30 select OF_EARLY_FLATTREE 30 select OF_EARLY_FLATTREE
31 select SPARSE_IRQ 31 select SPARSE_IRQ
32 select HAVE_DMA_ATTRS
33 32
34config STACKTRACE_SUPPORT 33config STACKTRACE_SUPPORT
35 def_bool y 34 def_bool y
diff --git a/arch/metag/include/asm/dma-mapping.h b/arch/metag/include/asm/dma-mapping.h
index 768f2e30236d..27af5d479ce6 100644
--- a/arch/metag/include/asm/dma-mapping.h
+++ b/arch/metag/include/asm/dma-mapping.h
@@ -8,8 +8,6 @@ static inline struct dma_map_ops *get_dma_ops(struct device *dev)
8 return &metag_dma_ops; 8 return &metag_dma_ops;
9} 9}
10 10
11#include <asm-generic/dma-mapping-common.h>
12
13/* 11/*
14 * dma_alloc_noncoherent() returns non-cacheable memory, so there's no need to 12 * dma_alloc_noncoherent() returns non-cacheable memory, so there's no need to
15 * do any flushing here. 13 * do any flushing here.
diff --git a/arch/microblaze/Kconfig b/arch/microblaze/Kconfig
index 5ecd0287a874..53b69deceb99 100644
--- a/arch/microblaze/Kconfig
+++ b/arch/microblaze/Kconfig
@@ -19,7 +19,6 @@ config MICROBLAZE
19 select HAVE_ARCH_KGDB 19 select HAVE_ARCH_KGDB
20 select HAVE_DEBUG_KMEMLEAK 20 select HAVE_DEBUG_KMEMLEAK
21 select HAVE_DMA_API_DEBUG 21 select HAVE_DMA_API_DEBUG
22 select HAVE_DMA_ATTRS
23 select HAVE_DYNAMIC_FTRACE 22 select HAVE_DYNAMIC_FTRACE
24 select HAVE_FTRACE_MCOUNT_RECORD 23 select HAVE_FTRACE_MCOUNT_RECORD
25 select HAVE_FUNCTION_GRAPH_TRACER 24 select HAVE_FUNCTION_GRAPH_TRACER
diff --git a/arch/microblaze/include/asm/dma-mapping.h b/arch/microblaze/include/asm/dma-mapping.h
index 24b12970c9cf..1884783d15c0 100644
--- a/arch/microblaze/include/asm/dma-mapping.h
+++ b/arch/microblaze/include/asm/dma-mapping.h
@@ -44,8 +44,6 @@ static inline struct dma_map_ops *get_dma_ops(struct device *dev)
44 return &dma_direct_ops; 44 return &dma_direct_ops;
45} 45}
46 46
47#include <asm-generic/dma-mapping-common.h>
48
49static inline void __dma_sync(unsigned long paddr, 47static inline void __dma_sync(unsigned long paddr,
50 size_t size, enum dma_data_direction direction) 48 size_t size, enum dma_data_direction direction)
51{ 49{
diff --git a/arch/mips/Kconfig b/arch/mips/Kconfig
index 71683a853372..fbf3f6670b69 100644
--- a/arch/mips/Kconfig
+++ b/arch/mips/Kconfig
@@ -31,7 +31,6 @@ config MIPS
31 select RTC_LIB if !MACH_LOONGSON64 31 select RTC_LIB if !MACH_LOONGSON64
32 select GENERIC_ATOMIC64 if !64BIT 32 select GENERIC_ATOMIC64 if !64BIT
33 select ARCH_HAS_ATOMIC64_DEC_IF_POSITIVE 33 select ARCH_HAS_ATOMIC64_DEC_IF_POSITIVE
34 select HAVE_DMA_ATTRS
35 select HAVE_DMA_CONTIGUOUS 34 select HAVE_DMA_CONTIGUOUS
36 select HAVE_DMA_API_DEBUG 35 select HAVE_DMA_API_DEBUG
37 select GENERIC_IRQ_PROBE 36 select GENERIC_IRQ_PROBE
diff --git a/arch/mips/include/asm/dma-mapping.h b/arch/mips/include/asm/dma-mapping.h
index e604f760c4a0..12fa79e2f1b4 100644
--- a/arch/mips/include/asm/dma-mapping.h
+++ b/arch/mips/include/asm/dma-mapping.h
@@ -29,8 +29,6 @@ static inline bool dma_capable(struct device *dev, dma_addr_t addr, size_t size)
29 29
30static inline void dma_mark_clean(void *addr, size_t size) {} 30static inline void dma_mark_clean(void *addr, size_t size) {}
31 31
32#include <asm-generic/dma-mapping-common.h>
33
34extern void dma_cache_sync(struct device *dev, void *vaddr, size_t size, 32extern void dma_cache_sync(struct device *dev, void *vaddr, size_t size,
35 enum dma_data_direction direction); 33 enum dma_data_direction direction);
36 34
diff --git a/arch/mn10300/Kconfig b/arch/mn10300/Kconfig
index e8ebf78f6d21..10607f0d2bcd 100644
--- a/arch/mn10300/Kconfig
+++ b/arch/mn10300/Kconfig
@@ -15,7 +15,6 @@ config MN10300
15 select OLD_SIGACTION 15 select OLD_SIGACTION
16 select HAVE_DEBUG_STACKOVERFLOW 16 select HAVE_DEBUG_STACKOVERFLOW
17 select ARCH_NO_COHERENT_DMA_MMAP 17 select ARCH_NO_COHERENT_DMA_MMAP
18 select HAVE_DMA_ATTRS
19 18
20config AM33_2 19config AM33_2
21 def_bool n 20 def_bool n
diff --git a/arch/mn10300/include/asm/dma-mapping.h b/arch/mn10300/include/asm/dma-mapping.h
index e69b0130335c..1dcd44757f32 100644
--- a/arch/mn10300/include/asm/dma-mapping.h
+++ b/arch/mn10300/include/asm/dma-mapping.h
@@ -28,6 +28,4 @@ void dma_cache_sync(void *vaddr, size_t size,
28 mn10300_dcache_flush_inv(); 28 mn10300_dcache_flush_inv();
29} 29}
30 30
31#include <asm-generic/dma-mapping-common.h>
32
33#endif 31#endif
diff --git a/arch/nios2/Kconfig b/arch/nios2/Kconfig
index 4b2504d28178..437555424bda 100644
--- a/arch/nios2/Kconfig
+++ b/arch/nios2/Kconfig
@@ -16,7 +16,6 @@ config NIOS2
16 select SOC_BUS 16 select SOC_BUS
17 select SPARSE_IRQ 17 select SPARSE_IRQ
18 select USB_ARCH_HAS_HCD if USB_SUPPORT 18 select USB_ARCH_HAS_HCD if USB_SUPPORT
19 select HAVE_DMA_ATTRS
20 19
21config GENERIC_CSUM 20config GENERIC_CSUM
22 def_bool y 21 def_bool y
diff --git a/arch/openrisc/Kconfig b/arch/openrisc/Kconfig
index 443f44de1020..e118c02cc79a 100644
--- a/arch/openrisc/Kconfig
+++ b/arch/openrisc/Kconfig
@@ -29,9 +29,6 @@ config OPENRISC
29config MMU 29config MMU
30 def_bool y 30 def_bool y
31 31
32config HAVE_DMA_ATTRS
33 def_bool y
34
35config RWSEM_GENERIC_SPINLOCK 32config RWSEM_GENERIC_SPINLOCK
36 def_bool y 33 def_bool y
37 34
diff --git a/arch/openrisc/include/asm/dma-mapping.h b/arch/openrisc/include/asm/dma-mapping.h
index 413bfcf86384..1f260bccb368 100644
--- a/arch/openrisc/include/asm/dma-mapping.h
+++ b/arch/openrisc/include/asm/dma-mapping.h
@@ -42,6 +42,4 @@ static inline int dma_supported(struct device *dev, u64 dma_mask)
42 return dma_mask == DMA_BIT_MASK(32); 42 return dma_mask == DMA_BIT_MASK(32);
43} 43}
44 44
45#include <asm-generic/dma-mapping-common.h>
46
47#endif /* __ASM_OPENRISC_DMA_MAPPING_H */ 45#endif /* __ASM_OPENRISC_DMA_MAPPING_H */
diff --git a/arch/parisc/Kconfig b/arch/parisc/Kconfig
index 1489351134fa..14f655cf542e 100644
--- a/arch/parisc/Kconfig
+++ b/arch/parisc/Kconfig
@@ -30,7 +30,6 @@ config PARISC
30 select HAVE_DEBUG_STACKOVERFLOW 30 select HAVE_DEBUG_STACKOVERFLOW
31 select HAVE_ARCH_AUDITSYSCALL 31 select HAVE_ARCH_AUDITSYSCALL
32 select ARCH_NO_COHERENT_DMA_MMAP 32 select ARCH_NO_COHERENT_DMA_MMAP
33 select HAVE_DMA_ATTRS
34 33
35 help 34 help
36 The PA-RISC microprocessor is designed by Hewlett-Packard and used 35 The PA-RISC microprocessor is designed by Hewlett-Packard and used
diff --git a/arch/parisc/include/asm/dma-mapping.h b/arch/parisc/include/asm/dma-mapping.h
index 4de518647612..16e024602737 100644
--- a/arch/parisc/include/asm/dma-mapping.h
+++ b/arch/parisc/include/asm/dma-mapping.h
@@ -83,6 +83,4 @@ struct parisc_device;
83void * sba_get_iommu(struct parisc_device *dev); 83void * sba_get_iommu(struct parisc_device *dev);
84#endif 84#endif
85 85
86#include <asm-generic/dma-mapping-common.h>
87
88#endif 86#endif
diff --git a/arch/powerpc/Kconfig b/arch/powerpc/Kconfig
index 8310be4ffe31..e4824fd04bb7 100644
--- a/arch/powerpc/Kconfig
+++ b/arch/powerpc/Kconfig
@@ -108,7 +108,6 @@ config PPC
108 select HAVE_ARCH_TRACEHOOK 108 select HAVE_ARCH_TRACEHOOK
109 select HAVE_MEMBLOCK 109 select HAVE_MEMBLOCK
110 select HAVE_MEMBLOCK_NODE_MAP 110 select HAVE_MEMBLOCK_NODE_MAP
111 select HAVE_DMA_ATTRS
112 select HAVE_DMA_API_DEBUG 111 select HAVE_DMA_API_DEBUG
113 select HAVE_OPROFILE 112 select HAVE_OPROFILE
114 select HAVE_DEBUG_KMEMLEAK 113 select HAVE_DEBUG_KMEMLEAK
diff --git a/arch/powerpc/include/asm/dma-mapping.h b/arch/powerpc/include/asm/dma-mapping.h
index 7f522c021dc3..77816acd4fd9 100644
--- a/arch/powerpc/include/asm/dma-mapping.h
+++ b/arch/powerpc/include/asm/dma-mapping.h
@@ -125,8 +125,6 @@ static inline void set_dma_offset(struct device *dev, dma_addr_t off)
125#define HAVE_ARCH_DMA_SET_MASK 1 125#define HAVE_ARCH_DMA_SET_MASK 1
126extern int dma_set_mask(struct device *dev, u64 dma_mask); 126extern int dma_set_mask(struct device *dev, u64 dma_mask);
127 127
128#include <asm-generic/dma-mapping-common.h>
129
130extern int __dma_set_mask(struct device *dev, u64 dma_mask); 128extern int __dma_set_mask(struct device *dev, u64 dma_mask);
131extern u64 __dma_get_required_mask(struct device *dev); 129extern u64 __dma_get_required_mask(struct device *dev);
132 130
diff --git a/arch/s390/Kconfig b/arch/s390/Kconfig
index dbeeb3a049f2..3be9c832dec1 100644
--- a/arch/s390/Kconfig
+++ b/arch/s390/Kconfig
@@ -579,7 +579,6 @@ config QDIO
579 579
580menuconfig PCI 580menuconfig PCI
581 bool "PCI support" 581 bool "PCI support"
582 select HAVE_DMA_ATTRS
583 select PCI_MSI 582 select PCI_MSI
584 select IOMMU_SUPPORT 583 select IOMMU_SUPPORT
585 help 584 help
diff --git a/arch/s390/include/asm/dma-mapping.h b/arch/s390/include/asm/dma-mapping.h
index b3fd54d93dd2..e64bfcb9702f 100644
--- a/arch/s390/include/asm/dma-mapping.h
+++ b/arch/s390/include/asm/dma-mapping.h
@@ -23,8 +23,6 @@ static inline void dma_cache_sync(struct device *dev, void *vaddr, size_t size,
23{ 23{
24} 24}
25 25
26#include <asm-generic/dma-mapping-common.h>
27
28static inline bool dma_capable(struct device *dev, dma_addr_t addr, size_t size) 26static inline bool dma_capable(struct device *dev, dma_addr_t addr, size_t size)
29{ 27{
30 if (!dev->dma_mask) 28 if (!dev->dma_mask)
diff --git a/arch/sh/Kconfig b/arch/sh/Kconfig
index 6c391a5d3e5c..e13da05505dc 100644
--- a/arch/sh/Kconfig
+++ b/arch/sh/Kconfig
@@ -11,7 +11,6 @@ config SUPERH
11 select HAVE_GENERIC_DMA_COHERENT 11 select HAVE_GENERIC_DMA_COHERENT
12 select HAVE_ARCH_TRACEHOOK 12 select HAVE_ARCH_TRACEHOOK
13 select HAVE_DMA_API_DEBUG 13 select HAVE_DMA_API_DEBUG
14 select HAVE_DMA_ATTRS
15 select HAVE_PERF_EVENTS 14 select HAVE_PERF_EVENTS
16 select HAVE_DEBUG_BUGVERBOSE 15 select HAVE_DEBUG_BUGVERBOSE
17 select ARCH_HAVE_CUSTOM_GPIO_H 16 select ARCH_HAVE_CUSTOM_GPIO_H
diff --git a/arch/sh/include/asm/dma-mapping.h b/arch/sh/include/asm/dma-mapping.h
index a3745a3fe029..e11cf0c8206b 100644
--- a/arch/sh/include/asm/dma-mapping.h
+++ b/arch/sh/include/asm/dma-mapping.h
@@ -11,8 +11,6 @@ static inline struct dma_map_ops *get_dma_ops(struct device *dev)
11 11
12#define DMA_ERROR_CODE 0 12#define DMA_ERROR_CODE 0
13 13
14#include <asm-generic/dma-mapping-common.h>
15
16void dma_cache_sync(struct device *dev, void *vaddr, size_t size, 14void dma_cache_sync(struct device *dev, void *vaddr, size_t size,
17 enum dma_data_direction dir); 15 enum dma_data_direction dir);
18 16
diff --git a/arch/sparc/Kconfig b/arch/sparc/Kconfig
index 3203e42190dd..57ffaf285c2f 100644
--- a/arch/sparc/Kconfig
+++ b/arch/sparc/Kconfig
@@ -26,7 +26,6 @@ config SPARC
26 select RTC_CLASS 26 select RTC_CLASS
27 select RTC_DRV_M48T59 27 select RTC_DRV_M48T59
28 select RTC_SYSTOHC 28 select RTC_SYSTOHC
29 select HAVE_DMA_ATTRS
30 select HAVE_DMA_API_DEBUG 29 select HAVE_DMA_API_DEBUG
31 select HAVE_ARCH_JUMP_LABEL if SPARC64 30 select HAVE_ARCH_JUMP_LABEL if SPARC64
32 select GENERIC_IRQ_SHOW 31 select GENERIC_IRQ_SHOW
diff --git a/arch/sparc/include/asm/dma-mapping.h b/arch/sparc/include/asm/dma-mapping.h
index 2777092dd851..1180ae254154 100644
--- a/arch/sparc/include/asm/dma-mapping.h
+++ b/arch/sparc/include/asm/dma-mapping.h
@@ -37,6 +37,4 @@ static inline struct dma_map_ops *get_dma_ops(struct device *dev)
37 return dma_ops; 37 return dma_ops;
38} 38}
39 39
40#include <asm-generic/dma-mapping-common.h>
41
42#endif 40#endif
diff --git a/arch/tile/Kconfig b/arch/tile/Kconfig
index 6bfbe8b71e7e..de4a4fff9323 100644
--- a/arch/tile/Kconfig
+++ b/arch/tile/Kconfig
@@ -5,7 +5,6 @@ config TILE
5 def_bool y 5 def_bool y
6 select HAVE_PERF_EVENTS 6 select HAVE_PERF_EVENTS
7 select USE_PMC if PERF_EVENTS 7 select USE_PMC if PERF_EVENTS
8 select HAVE_DMA_ATTRS
9 select HAVE_DMA_API_DEBUG 8 select HAVE_DMA_API_DEBUG
10 select HAVE_KVM if !TILEGX 9 select HAVE_KVM if !TILEGX
11 select GENERIC_FIND_FIRST_BIT 10 select GENERIC_FIND_FIRST_BIT
diff --git a/arch/tile/include/asm/dma-mapping.h b/arch/tile/include/asm/dma-mapping.h
index c342736e3f1f..01ceb4a895b0 100644
--- a/arch/tile/include/asm/dma-mapping.h
+++ b/arch/tile/include/asm/dma-mapping.h
@@ -73,9 +73,6 @@ static inline bool dma_capable(struct device *dev, dma_addr_t addr, size_t size)
73} 73}
74 74
75#define HAVE_ARCH_DMA_SET_MASK 1 75#define HAVE_ARCH_DMA_SET_MASK 1
76
77#include <asm-generic/dma-mapping-common.h>
78
79int dma_set_mask(struct device *dev, u64 mask); 76int dma_set_mask(struct device *dev, u64 mask);
80 77
81/* 78/*
diff --git a/arch/unicore32/Kconfig b/arch/unicore32/Kconfig
index 877342640b6e..e5602ee9c610 100644
--- a/arch/unicore32/Kconfig
+++ b/arch/unicore32/Kconfig
@@ -5,7 +5,6 @@ config UNICORE32
5 select ARCH_MIGHT_HAVE_PC_SERIO 5 select ARCH_MIGHT_HAVE_PC_SERIO
6 select HAVE_MEMBLOCK 6 select HAVE_MEMBLOCK
7 select HAVE_GENERIC_DMA_COHERENT 7 select HAVE_GENERIC_DMA_COHERENT
8 select HAVE_DMA_ATTRS
9 select HAVE_KERNEL_GZIP 8 select HAVE_KERNEL_GZIP
10 select HAVE_KERNEL_BZIP2 9 select HAVE_KERNEL_BZIP2
11 select GENERIC_ATOMIC64 10 select GENERIC_ATOMIC64
diff --git a/arch/unicore32/include/asm/dma-mapping.h b/arch/unicore32/include/asm/dma-mapping.h
index 8140e053ccd3..4749854afd03 100644
--- a/arch/unicore32/include/asm/dma-mapping.h
+++ b/arch/unicore32/include/asm/dma-mapping.h
@@ -28,8 +28,6 @@ static inline struct dma_map_ops *get_dma_ops(struct device *dev)
28 return &swiotlb_dma_map_ops; 28 return &swiotlb_dma_map_ops;
29} 29}
30 30
31#include <asm-generic/dma-mapping-common.h>
32
33static inline bool dma_capable(struct device *dev, dma_addr_t addr, size_t size) 31static inline bool dma_capable(struct device *dev, dma_addr_t addr, size_t size)
34{ 32{
35 if (dev && dev->dma_mask) 33 if (dev && dev->dma_mask)
diff --git a/arch/x86/Kconfig b/arch/x86/Kconfig
index 92b2a73162ee..89159a6fa503 100644
--- a/arch/x86/Kconfig
+++ b/arch/x86/Kconfig
@@ -100,7 +100,6 @@ config X86
100 select HAVE_DEBUG_KMEMLEAK 100 select HAVE_DEBUG_KMEMLEAK
101 select HAVE_DEBUG_STACKOVERFLOW 101 select HAVE_DEBUG_STACKOVERFLOW
102 select HAVE_DMA_API_DEBUG 102 select HAVE_DMA_API_DEBUG
103 select HAVE_DMA_ATTRS
104 select HAVE_DMA_CONTIGUOUS 103 select HAVE_DMA_CONTIGUOUS
105 select HAVE_DYNAMIC_FTRACE 104 select HAVE_DYNAMIC_FTRACE
106 select HAVE_DYNAMIC_FTRACE_WITH_REGS 105 select HAVE_DYNAMIC_FTRACE_WITH_REGS
diff --git a/arch/x86/include/asm/dma-mapping.h b/arch/x86/include/asm/dma-mapping.h
index 953b7263f844..3a27b93e6261 100644
--- a/arch/x86/include/asm/dma-mapping.h
+++ b/arch/x86/include/asm/dma-mapping.h
@@ -46,8 +46,6 @@ bool arch_dma_alloc_attrs(struct device **dev, gfp_t *gfp);
46#define HAVE_ARCH_DMA_SUPPORTED 1 46#define HAVE_ARCH_DMA_SUPPORTED 1
47extern int dma_supported(struct device *hwdev, u64 mask); 47extern int dma_supported(struct device *hwdev, u64 mask);
48 48
49#include <asm-generic/dma-mapping-common.h>
50
51extern void *dma_generic_alloc_coherent(struct device *dev, size_t size, 49extern void *dma_generic_alloc_coherent(struct device *dev, size_t size,
52 dma_addr_t *dma_addr, gfp_t flag, 50 dma_addr_t *dma_addr, gfp_t flag,
53 struct dma_attrs *attrs); 51 struct dma_attrs *attrs);
diff --git a/arch/xtensa/Kconfig b/arch/xtensa/Kconfig
index 82044f732323..e9df1567d778 100644
--- a/arch/xtensa/Kconfig
+++ b/arch/xtensa/Kconfig
@@ -15,7 +15,6 @@ config XTENSA
15 select GENERIC_PCI_IOMAP 15 select GENERIC_PCI_IOMAP
16 select GENERIC_SCHED_CLOCK 16 select GENERIC_SCHED_CLOCK
17 select HAVE_DMA_API_DEBUG 17 select HAVE_DMA_API_DEBUG
18 select HAVE_DMA_ATTRS
19 select HAVE_FUNCTION_TRACER 18 select HAVE_FUNCTION_TRACER
20 select HAVE_FUTEX_CMPXCHG if !MMU 19 select HAVE_FUTEX_CMPXCHG if !MMU
21 select HAVE_IRQ_TIME_ACCOUNTING 20 select HAVE_IRQ_TIME_ACCOUNTING
diff --git a/arch/xtensa/include/asm/dma-mapping.h b/arch/xtensa/include/asm/dma-mapping.h
index 66c9ba261e30..87b7a7dfbcf3 100644
--- a/arch/xtensa/include/asm/dma-mapping.h
+++ b/arch/xtensa/include/asm/dma-mapping.h
@@ -30,8 +30,6 @@ static inline struct dma_map_ops *get_dma_ops(struct device *dev)
30 return &xtensa_dma_map_ops; 30 return &xtensa_dma_map_ops;
31} 31}
32 32
33#include <asm-generic/dma-mapping-common.h>
34
35void dma_cache_sync(struct device *dev, void *vaddr, size_t size, 33void dma_cache_sync(struct device *dev, void *vaddr, size_t size,
36 enum dma_data_direction direction); 34 enum dma_data_direction direction);
37 35