mfd: stmfx: Fix dev_err_probe() call in stmfx_chip_init()
authorAmelie Delaunay <amelie.delaunay@st.com>
Fri, 13 Nov 2020 12:27:25 +0000 (13:27 +0100)
committerLee Jones <lee.jones@linaro.org>
Thu, 19 Nov 2020 08:34:28 +0000 (08:34 +0000)
'ret' may be 0 so, dev_err_probe() should be called only when 'ret' is
an error code.

Fixes: 41c9c06c491a ("mfd: stmfx: Simplify with dev_err_probe()")
Signed-off-by: Amelie Delaunay <amelie.delaunay@st.com>
Signed-off-by: Lee Jones <lee.jones@linaro.org>
drivers/mfd/stmfx.c

index 5e680bf..988e2ba 100644 (file)
@@ -329,11 +329,11 @@ static int stmfx_chip_init(struct i2c_client *client)
 
        stmfx->vdd = devm_regulator_get_optional(&client->dev, "vdd");
        ret = PTR_ERR_OR_ZERO(stmfx->vdd);
-       if (ret == -ENODEV) {
-               stmfx->vdd = NULL;
-       } else {
-               return dev_err_probe(&client->dev, ret,
-                                    "Failed to get VDD regulator\n");
+       if (ret) {
+               if (ret == -ENODEV)
+                       stmfx->vdd = NULL;
+               else
+                       return dev_err_probe(&client->dev, ret, "Failed to get VDD regulator\n");
        }
 
        if (stmfx->vdd) {