Coherent dma on ARM64 also can't work with mapped system ram, that means 'no-map' property must be specified in dts. Add the missing check for ARM64 platforms as well. Besides 'no-map' checking, 'linux,dma-default' feature is also enabled for ARM64 along with this patch.
Cc: Christoph Hellwig <[email protected]> Cc: Marek Szyprowski <[email protected]> Cc: Robin Murphy <[email protected]> Signed-off-by: Dong Aisheng <[email protected]> --- kernel/dma/coherent.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/kernel/dma/coherent.c b/kernel/dma/coherent.c index 5b5b6c7ec7f2..d1831da7afba 100644 --- a/kernel/dma/coherent.c +++ b/kernel/dma/coherent.c @@ -356,7 +356,7 @@ static int __init rmem_dma_setup(struct reserved_mem *rmem) if (of_get_flat_dt_prop(node, "reusable", NULL)) return -EINVAL; -#ifdef CONFIG_ARM +#if defined(CONFIG_ARM) || defined(CONFIG_ARM64) if (!of_get_flat_dt_prop(node, "no-map", NULL)) { pr_err("Reserved memory: regions without no-map are not yet supported\n"); return -EINVAL; -- 2.25.1 _______________________________________________ iommu mailing list [email protected] https://lists.linuxfoundation.org/mailman/listinfo/iommu
