diff options
author | Manuel Lauss <manuel.lauss@gmail.com> | 2014-02-20 08:59:22 -0500 |
---|---|---|
committer | Ralf Baechle <ralf@linux-mips.org> | 2014-03-26 18:09:20 -0400 |
commit | 8005711c8d80e452748e9572bead54493818f042 (patch) | |
tree | 193f76f8296c996e44e8c2bf18b74e3c28aaaf4c /arch/mips/mm/c-r4k.c | |
parent | bfc3c5a6c71ea17b79ad524c5627333bd46834a2 (diff) |
MIPS: Extend DMA_MAYBE_COHERENT logic to DMA_NONCOHERENT use
Setting DMA_MAYBE_COHERENT gives a platform the opportunity to select
use of cache ops at boot.
Signed-off-by: Manuel Lauss <manuel.lauss@gmail.com>
Cc: Linux-MIPS <linux-mips@linux-mips.org>
Patchwork: https://patchwork.linux-mips.org/patch/6575/
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Diffstat (limited to 'arch/mips/mm/c-r4k.c')
-rw-r--r-- | arch/mips/mm/c-r4k.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/arch/mips/mm/c-r4k.c b/arch/mips/mm/c-r4k.c index 8fc713f1d139..a62b6379b6ae 100644 --- a/arch/mips/mm/c-r4k.c +++ b/arch/mips/mm/c-r4k.c | |||
@@ -673,7 +673,7 @@ static void r4k_flush_icache_range(unsigned long start, unsigned long end) | |||
673 | instruction_hazard(); | 673 | instruction_hazard(); |
674 | } | 674 | } |
675 | 675 | ||
676 | #ifdef CONFIG_DMA_NONCOHERENT | 676 | #if defined(CONFIG_DMA_NONCOHERENT) || defined(CONFIG_DMA_MAYBE_COHERENT) |
677 | 677 | ||
678 | static void r4k_dma_cache_wback_inv(unsigned long addr, unsigned long size) | 678 | static void r4k_dma_cache_wback_inv(unsigned long addr, unsigned long size) |
679 | { | 679 | { |
@@ -744,7 +744,7 @@ static void r4k_dma_cache_inv(unsigned long addr, unsigned long size) | |||
744 | bc_inv(addr, size); | 744 | bc_inv(addr, size); |
745 | __sync(); | 745 | __sync(); |
746 | } | 746 | } |
747 | #endif /* CONFIG_DMA_NONCOHERENT */ | 747 | #endif /* CONFIG_DMA_NONCOHERENT || CONFIG_DMA_MAYBE_COHERENT */ |
748 | 748 | ||
749 | /* | 749 | /* |
750 | * While we're protected against bad userland addresses we don't care | 750 | * While we're protected against bad userland addresses we don't care |
@@ -1559,7 +1559,7 @@ void r4k_cache_init(void) | |||
1559 | flush_icache_range = r4k_flush_icache_range; | 1559 | flush_icache_range = r4k_flush_icache_range; |
1560 | local_flush_icache_range = local_r4k_flush_icache_range; | 1560 | local_flush_icache_range = local_r4k_flush_icache_range; |
1561 | 1561 | ||
1562 | #if defined(CONFIG_DMA_NONCOHERENT) | 1562 | #if defined(CONFIG_DMA_NONCOHERENT) || defined(CONFIG_DMA_MAYBE_COHERENT) |
1563 | if (coherentio) { | 1563 | if (coherentio) { |
1564 | _dma_cache_wback_inv = (void *)cache_noop; | 1564 | _dma_cache_wback_inv = (void *)cache_noop; |
1565 | _dma_cache_wback = (void *)cache_noop; | 1565 | _dma_cache_wback = (void *)cache_noop; |