mfd: hi6421-pmic: Fix Wvoid-pointer-to-enum-cast warning
authorKrzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Thu, 10 Aug 2023 09:58:44 +0000 (11:58 +0200)
committerLee Jones <lee@kernel.org>
Tue, 22 Aug 2023 07:07:51 +0000 (08:07 +0100)
'type' is an enum, thus cast of pointer on 64-bit compile test with W=1
causes:

  hi6421-pmic-core.c:62:9: error: cast to smaller integer type 'enum hi6421_type' from 'const void *' [-Werror,-Wvoid-pointer-to-enum-cast]

Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Link: https://lore.kernel.org/r/20230810095849.123321-4-krzysztof.kozlowski@linaro.org
Signed-off-by: Lee Jones <lee@kernel.org>
drivers/mfd/hi6421-pmic-core.c

index cb5cf4a..a6a8905 100644 (file)
@@ -59,7 +59,7 @@ static int hi6421_pmic_probe(struct platform_device *pdev)
        id = of_match_device(of_hi6421_pmic_match, &pdev->dev);
        if (!id)
                return -EINVAL;
-       type = (enum hi6421_type)id->data;
+       type = (uintptr_t)id->data;
 
        pmic = devm_kzalloc(&pdev->dev, sizeof(*pmic), GFP_KERNEL);
        if (!pmic)