[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <20230321110813.26808-2-jiaxun.yang@flygoat.com>
Date: Tue, 21 Mar 2023 11:08:10 +0000
From: Jiaxun Yang <jiaxun.yang@...goat.com>
To: linux-mips@...r.kernel.org
Cc: linux-kernel@...r.kernel.org, linuxppc-dev@...ts.ozlabs.org,
tsbogend@...ha.franken.de, mpe@...erman.id.au,
paul.walmsley@...ive.com, palmer@...belt.com, robh+dt@...nel.org,
hch@....de, m.szyprowski@...sung.com, robin.murphy@....com,
linux-riscv@...ts.infradead.org,
Jiaxun Yang <jiaxun.yang@...goat.com>
Subject: [PATCH v3 1/4] of: address: Fix default coherency for MIPS
DT-based MIPS doesn't use OF_DMA_DEFAULT_COHERENT, but
might override the system-wide default at runtime.
Use dma_default_coherent to override default coherence for
MIPS.
Signed-off-by: Jiaxun Yang <jiaxun.yang@...goat.com>
---
drivers/of/address.c | 8 ++++++++
1 file changed, 8 insertions(+)
diff --git a/drivers/of/address.c b/drivers/of/address.c
index 4c0b169ef9bf..c105d66a1fa4 100644
--- a/drivers/of/address.c
+++ b/drivers/of/address.c
@@ -1105,6 +1105,14 @@ bool of_dma_is_coherent(struct device_node *np)
struct device_node *node;
bool is_coherent = IS_ENABLED(CONFIG_OF_DMA_DEFAULT_COHERENT);
+ /*
+ * DT-based MIPS doesn't use OF_DMA_DEFAULT_COHERENT, but
+ * might override the system-wide default at runtime.
+ */
+#if defined(CONFIG_MIPS) && defined(CONFIG_DMA_NONCOHERENT)
+ is_coherent = dma_default_coherent;
+#endif
+
node = of_node_get(np);
while (node) {
--
2.37.1 (Apple Git-137.1)
Powered by blists - more mailing lists