2023-08-10 11:21:47

by Krzysztof Kozlowski

[permalink] [raw]
Subject: [PATCH 2/2] drm/lima: fix Wvoid-pointer-to-enum-cast warning

'id' is an enum, thus cast of pointer on 64-bit compile test with W=1
causes:

lima_drv.c:387:13: error: cast to smaller integer type 'enum lima_gpu_id' from 'const void *' [-Werror,-Wvoid-pointer-to-enum-cast]

Signed-off-by: Krzysztof Kozlowski <[email protected]>
---
drivers/gpu/drm/lima/lima_drv.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/gpu/drm/lima/lima_drv.c b/drivers/gpu/drm/lima/lima_drv.c
index 10fd9154cc46..884181708de8 100644
--- a/drivers/gpu/drm/lima/lima_drv.c
+++ b/drivers/gpu/drm/lima/lima_drv.c
@@ -384,7 +384,7 @@ static int lima_pdev_probe(struct platform_device *pdev)
}

ldev->dev = &pdev->dev;
- ldev->id = (enum lima_gpu_id)of_device_get_match_data(&pdev->dev);
+ ldev->id = (uintptr_t)of_device_get_match_data(&pdev->dev);

platform_set_drvdata(pdev, ldev);

--
2.34.1



2023-08-10 12:46:45

by Qiang Yu

[permalink] [raw]
Subject: Re: [PATCH 2/2] drm/lima: fix Wvoid-pointer-to-enum-cast warning

Reviewed-by: Qiang Yu <[email protected]>

On Thu, Aug 10, 2023 at 5:59 PM Krzysztof Kozlowski
<[email protected]> wrote:
>
> 'id' is an enum, thus cast of pointer on 64-bit compile test with W=1
> causes:
>
> lima_drv.c:387:13: error: cast to smaller integer type 'enum lima_gpu_id' from 'const void *' [-Werror,-Wvoid-pointer-to-enum-cast]
>
> Signed-off-by: Krzysztof Kozlowski <[email protected]>
> ---
> drivers/gpu/drm/lima/lima_drv.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/gpu/drm/lima/lima_drv.c b/drivers/gpu/drm/lima/lima_drv.c
> index 10fd9154cc46..884181708de8 100644
> --- a/drivers/gpu/drm/lima/lima_drv.c
> +++ b/drivers/gpu/drm/lima/lima_drv.c
> @@ -384,7 +384,7 @@ static int lima_pdev_probe(struct platform_device *pdev)
> }
>
> ldev->dev = &pdev->dev;
> - ldev->id = (enum lima_gpu_id)of_device_get_match_data(&pdev->dev);
> + ldev->id = (uintptr_t)of_device_get_match_data(&pdev->dev);
>
> platform_set_drvdata(pdev, ldev);
>
> --
> 2.34.1
>