diff options
Diffstat (limited to 'drivers/of/address.c')
-rw-r--r-- | drivers/of/address.c | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/drivers/of/address.c b/drivers/of/address.c index 5393be762da4..f565eaf88acb 100644 --- a/drivers/of/address.c +++ b/drivers/of/address.c @@ -1025,11 +1025,17 @@ EXPORT_SYMBOL_GPL(of_dma_get_range); * @np: device node * * It returns true if "dma-coherent" property was found - * for this device in DT. + * for this device in the DT, or if DMA is coherent by + * default for OF devices on the current platform. */ bool of_dma_is_coherent(struct device_node *np) { - struct device_node *node = of_node_get(np); + struct device_node *node; + + if (IS_ENABLED(CONFIG_OF_DMA_DEFAULT_COHERENT)) + return true; + + node = of_node_get(np); while (node) { if (of_property_read_bool(node, "dma-coherent")) { |