Skip to content

Commit 5748e1b

Browse files
author
Christoph Hellwig
committed
MIPS: don't select DMA_MAYBE_COHERENT from DMA_PERDEV_COHERENT
While both option select a form of conditional dma coherence they don't actually share any code in the implementation, so untangle them. Signed-off-by: Christoph Hellwig <hch@lst.de> Acked-by: Paul Burton <paul.burton@mips.com>
1 parent 684f7e9 commit 5748e1b

File tree

3 files changed

+10
-11
lines changed

3 files changed

+10
-11
lines changed

arch/mips/Kconfig

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1111,7 +1111,7 @@ config DMA_MAYBE_COHERENT
11111111

11121112
config DMA_PERDEV_COHERENT
11131113
bool
1114-
select DMA_MAYBE_COHERENT
1114+
select DMA_NONCOHERENT
11151115

11161116
config DMA_NONCOHERENT
11171117
bool

arch/mips/kernel/setup.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1067,7 +1067,7 @@ static int __init debugfs_mips(void)
10671067
arch_initcall(debugfs_mips);
10681068
#endif
10691069

1070-
#if defined(CONFIG_DMA_MAYBE_COHERENT) && !defined(CONFIG_DMA_PERDEV_COHERENT)
1070+
#ifdef CONFIG_DMA_MAYBE_COHERENT
10711071
/* User defined DMA coherency from command line. */
10721072
enum coherent_io_user_state coherentio = IO_COHERENCE_DEFAULT;
10731073
EXPORT_SYMBOL_GPL(coherentio);

arch/mips/mm/c-r4k.c

Lines changed: 8 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1955,22 +1955,21 @@ void r4k_cache_init(void)
19551955
__flush_icache_user_range = r4k_flush_icache_user_range;
19561956
__local_flush_icache_user_range = local_r4k_flush_icache_user_range;
19571957

1958-
#if defined(CONFIG_DMA_NONCOHERENT) || defined(CONFIG_DMA_MAYBE_COHERENT)
1959-
# if defined(CONFIG_DMA_PERDEV_COHERENT)
1960-
if (0) {
1961-
# else
1962-
if ((coherentio == IO_COHERENCE_ENABLED) ||
1963-
((coherentio == IO_COHERENCE_DEFAULT) && hw_coherentio)) {
1964-
# endif
1958+
#ifdef CONFIG_DMA_NONCOHERENT
1959+
#ifdef CONFIG_DMA_MAYBE_COHERENT
1960+
if (coherentio == IO_COHERENCE_ENABLED ||
1961+
(coherentio == IO_COHERENCE_DEFAULT && hw_coherentio)) {
19651962
_dma_cache_wback_inv = (void *)cache_noop;
19661963
_dma_cache_wback = (void *)cache_noop;
19671964
_dma_cache_inv = (void *)cache_noop;
1968-
} else {
1965+
} else
1966+
#endif /* CONFIG_DMA_MAYBE_COHERENT */
1967+
{
19691968
_dma_cache_wback_inv = r4k_dma_cache_wback_inv;
19701969
_dma_cache_wback = r4k_dma_cache_wback_inv;
19711970
_dma_cache_inv = r4k_dma_cache_inv;
19721971
}
1973-
#endif
1972+
#endif /* CONFIG_DMA_NONCOHERENT */
19741973

19751974
build_clear_page();
19761975
build_copy_page();

0 commit comments

Comments
 (0)