Re: [PATCH] drm/v3d/v3d_drv: Check for error num after setting mask

From: Melissa Wen
Date: Thu Jan 06 2022 - 05:18:27 EST


On 01/06, Jiasheng Jiang wrote:
> Because of the possible failure of the dma_supported(), the
> dma_set_mask_and_coherent() may return error num.
> Therefore, it should be better to check it and return the error if
> fails.
>
> Fixes: 334dd38a3878 ("drm/v3d: Set dma_mask as well as coherent_dma_mask")
> Signed-off-by: Jiasheng Jiang <jiasheng@xxxxxxxxxxx>
> ---
> drivers/gpu/drm/v3d/v3d_drv.c | 5 ++++-
> 1 file changed, 4 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/gpu/drm/v3d/v3d_drv.c b/drivers/gpu/drm/v3d/v3d_drv.c
> index 99e22beea90b..bedd52195723 100644
> --- a/drivers/gpu/drm/v3d/v3d_drv.c
> +++ b/drivers/gpu/drm/v3d/v3d_drv.c
> @@ -232,8 +232,11 @@ static int v3d_platform_drm_probe(struct platform_device *pdev)
> return ret;
>
> mmu_debug = V3D_READ(V3D_MMU_DEBUG_INFO);
> - dma_set_mask_and_coherent(dev,
> + ret = dma_set_mask_and_coherent(dev,
> DMA_BIT_MASK(30 + V3D_GET_FIELD(mmu_debug, V3D_MMU_PA_WIDTH)));
> + if (ret)
> + return ret;
> +
lgtm, thanks!

Reviewed-by: Melissa Wen <mwen@xxxxxxxxxx>

> v3d->va_width = 30 + V3D_GET_FIELD(mmu_debug, V3D_MMU_VA_WIDTH);
>
> ident1 = V3D_READ(V3D_HUB_IDENT1);
> --
> 2.25.1
>

Attachment: signature.asc
Description: PGP signature