regulator: ltc3589: Fix Wvoid-pointer-to-enum-cast warning
authorKrzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Thu, 10 Aug 2023 11:19:12 +0000 (13:19 +0200)
committerMark Brown <broonie@kernel.org>
Thu, 10 Aug 2023 14:44:44 +0000 (15:44 +0100)
'variant' is an enum, thus cast of pointer on 64-bit compile test with
W=1 causes:

  ltc3589.c:394:22: error: cast to smaller integer type 'enum ltc3589_variant' from 'const void *' [-Werror,-Wvoid-pointer-to-enum-cast]

Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Link: https://lore.kernel.org/r/20230810111914.204847-1-krzysztof.kozlowski@linaro.org
Signed-off-by: Mark Brown <broonie@kernel.org>
drivers/regulator/ltc3589.c

index cf931b8..d892c2a 100644 (file)
@@ -391,8 +391,7 @@ static int ltc3589_probe(struct i2c_client *client)
 
        i2c_set_clientdata(client, ltc3589);
        if (client->dev.of_node)
-               ltc3589->variant = (enum ltc3589_variant)
-                       of_device_get_match_data(&client->dev);
+               ltc3589->variant = (uintptr_t)of_device_get_match_data(&client->dev);
        else
                ltc3589->variant = id->driver_data;
        ltc3589->dev = dev;