[PATCH] OF: update coherent_dma_mask
Rob Herring
robherring2 at gmail.com
Mon Dec 10 11:30:01 EST 2012
On 12/10/2012 06:09 AM, Subash Patel wrote:
> This patch is tested in ARM:exynos5250 with LPAE enabled. The coherent_dma_mask
> needs to be defined to DMA_BIT_MASK(64) as dma-mapping API's check it against
> 64-bit mask.
>
> Signed-off-by: Subash Patel <subash.rp at samsung.com>
> ---
> drivers/of/platform.c | 2 +-
> 1 files changed, 1 insertions(+), 1 deletions(-)
>
> diff --git a/drivers/of/platform.c b/drivers/of/platform.c
> index 9bdeaf30..3c5417b 100644
> --- a/drivers/of/platform.c
> +++ b/drivers/of/platform.c
> @@ -214,7 +214,7 @@ struct platform_device *of_platform_device_create_pdata(
> #if defined(CONFIG_MICROBLAZE)
> dev->archdata.dma_mask = 0xffffffffUL;
> #endif
> - dev->dev.coherent_dma_mask = DMA_BIT_MASK(32);
> + dev->dev.coherent_dma_mask = DMA_BIT_MASK(64);
> dev->dev.bus = &platform_bus_type;
> dev->dev.platform_data = platform_data;
This is assuming all masters support 64-bit addressing which is probably
not universally valid. This really needs to be determined from the DT
and there's been recent patches to do this[1] although they need more work.
[1] - https://lkml.org/lkml/2012/12/4/54
Rob
More information about the linux-arm-kernel
mailing list