[PATCH] etnaviv: Make sure DMA is setup
Lucas Stach
l.stach at pengutronix.de
Wed Sep 12 15:50:13 UTC 2018
Hi Guido,
I've just sent out a patch which should hopefully also fix this issue,
in a (slightly) more correct way. I don't have my MX8M system up right
now, so would appreciate if you could test drive this patch.
Regards,
Lucas
Am Mittwoch, den 12.09.2018, 17:44 +0200 schrieb Guido Günther:
> Since we don't want to setup up DMA via device tree we end up with
> arm64's dummy_dma_ops otherwise.
>
> Links: https://lists.freedesktop.org/archives/etnaviv/2018-August/001925.html
> > Signed-off-by: Guido Günther <agx at sigxcpu.org>
> ---
> drivers/gpu/drm/etnaviv/etnaviv_drv.c | 13 ++++++++++++-
> 1 file changed, 12 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/gpu/drm/etnaviv/etnaviv_drv.c b/drivers/gpu/drm/etnaviv/etnaviv_drv.c
> index 9b2720b41571..e488c07f333c 100644
> --- a/drivers/gpu/drm/etnaviv/etnaviv_drv.c
> +++ b/drivers/gpu/drm/etnaviv/etnaviv_drv.c
> @@ -591,8 +591,19 @@ static int etnaviv_pdev_probe(struct platform_device *pdev)
> {
> > struct device *dev = &pdev->dev;
> > struct component_match *match = NULL;
> > + int ret;
> +
> > + ret = of_dma_configure(dev, NULL, true);
> > + if (ret) {
> > + dev_err(&pdev->dev, "Setting up dma ops failed\n");
> > + return ret;
> > + };
>
> > - dma_set_coherent_mask(&pdev->dev, DMA_BIT_MASK(32));
> > + ret = dma_coerce_mask_and_coherent(&pdev->dev, DMA_BIT_MASK(32));
> > + if (ret) {
> > + dev_err(&pdev->dev, "dma_coerce_mask_and_coherent failed\n");
> > + return ret;
> > + };
>
> > if (!dev->platform_data) {
> > struct device_node *core_node;
More information about the etnaviv
mailing list