diff options
author | Felix Fietkau <nbd@openwrt.org> | 2013-09-27 08:41:44 -0400 |
---|---|---|
committer | Ralf Baechle <ralf@linux-mips.org> | 2014-01-22 14:43:10 -0500 |
commit | 885014bcf284cdfbe3428f2cfa3882edde5ff5fa (patch) | |
tree | cb0eeee346b51eb7af6c8cf8c49a046bb937f296 /arch/mips/include | |
parent | 5792bf6438658cb129c3022aa2cf7e9b19b5de3a (diff) |
MIPS: improve checks for noncoherent DMA
Only one MIPS development board actually supports enabling/disabling DMA
coherency at runtime, so it's not a good idea to push the overhead of
checking that configuration setting onto every other supported target as
well.
Signed-off-by: Felix Fietkau <nbd@openwrt.org>
Signed-off-by: John Crispin <blogic@openwrt.org>
Patchwork: http://patchwork.linux-mips.org/patch/5912/
Diffstat (limited to 'arch/mips/include')
-rw-r--r-- | arch/mips/include/asm/dma-coherence.h | 9 | ||||
-rw-r--r-- | arch/mips/include/asm/mach-generic/dma-coherence.h | 4 |
2 files changed, 9 insertions, 4 deletions
diff --git a/arch/mips/include/asm/dma-coherence.h b/arch/mips/include/asm/dma-coherence.h index 242cbb3ca582..bc5e85d579e6 100644 --- a/arch/mips/include/asm/dma-coherence.h +++ b/arch/mips/include/asm/dma-coherence.h | |||
@@ -9,7 +9,16 @@ | |||
9 | #ifndef __ASM_DMA_COHERENCE_H | 9 | #ifndef __ASM_DMA_COHERENCE_H |
10 | #define __ASM_DMA_COHERENCE_H | 10 | #define __ASM_DMA_COHERENCE_H |
11 | 11 | ||
12 | #ifdef CONFIG_DMA_MAYBE_COHERENT | ||
12 | extern int coherentio; | 13 | extern int coherentio; |
13 | extern int hw_coherentio; | 14 | extern int hw_coherentio; |
15 | #else | ||
16 | #ifdef CONFIG_DMA_COHERENT | ||
17 | #define coherentio 1 | ||
18 | #else | ||
19 | #define coherentio 0 | ||
20 | #endif | ||
21 | #define hw_coherentio 0 | ||
22 | #endif /* CONFIG_DMA_MAYBE_COHERENT */ | ||
14 | 23 | ||
15 | #endif | 24 | #endif |
diff --git a/arch/mips/include/asm/mach-generic/dma-coherence.h b/arch/mips/include/asm/mach-generic/dma-coherence.h index a9e8f6b62b0b..7629c35986f7 100644 --- a/arch/mips/include/asm/mach-generic/dma-coherence.h +++ b/arch/mips/include/asm/mach-generic/dma-coherence.h | |||
@@ -49,11 +49,7 @@ static inline int plat_dma_supported(struct device *dev, u64 mask) | |||
49 | 49 | ||
50 | static inline int plat_device_is_coherent(struct device *dev) | 50 | static inline int plat_device_is_coherent(struct device *dev) |
51 | { | 51 | { |
52 | #ifdef CONFIG_DMA_COHERENT | ||
53 | return 1; | ||
54 | #else | ||
55 | return coherentio; | 52 | return coherentio; |
56 | #endif | ||
57 | } | 53 | } |
58 | 54 | ||
59 | #ifdef CONFIG_SWIOTLB | 55 | #ifdef CONFIG_SWIOTLB |