On Mon, Oct 31, 2016 at 6:08 PM, Geert Uytterhoeven
<[email protected]> wrote:
> By default, the DMA mask covers only the low 32-bit address space, which
> causes SWIOTLB on arm64 to fall back to a bounce buffer for DMA
> transfers involving memory outside the 32-bit address space.
>
> The R-Car DMA controller hardware supports a 40-bit address space, hence
> widen the DMA mask to 40 bits to actually make use of this feature.
>
> Signed-off-by: Geert Uytterhoeven <[email protected]>
Any comments? Thanks!
> ---
> drivers/dma/sh/rcar-dmac.c | 1 +
> 1 file changed, 1 insertion(+)
>
> diff --git a/drivers/dma/sh/rcar-dmac.c b/drivers/dma/sh/rcar-dmac.c
> index 2e441d0ccd79a37a..93a69b992a51a7aa 100644
> --- a/drivers/dma/sh/rcar-dmac.c
> +++ b/drivers/dma/sh/rcar-dmac.c
> @@ -1716,6 +1716,7 @@ static int rcar_dmac_probe(struct platform_device *pdev)
>
> dmac->dev = &pdev->dev;
> platform_set_drvdata(pdev, dmac);
> + dma_set_mask_and_coherent(dmac->dev, DMA_BIT_MASK(40));
>
> ret = rcar_dmac_parse_of(&pdev->dev, dmac);
> if (ret < 0)
Gr{oetje,eeting}s,
Geert
--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- [email protected]
In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
-- Linus Torvalds