ASoC: codecs: Fix error code in aw88261_i2c_probe()
authorHarshit Mogalapalli <harshit.m.mogalapalli@oracle.com>
Thu, 24 Aug 2023 19:17:10 +0000 (12:17 -0700)
committerMark Brown <broonie@kernel.org>
Thu, 24 Aug 2023 20:10:45 +0000 (21:10 +0100)
Passing zero to dev_err_probe is a success which is incorrect when
i2c_check_functionality() fails.

Fix this by passing -ENXIO instead of zero to dev_err_probe().

Fixes: 028a2ae25691 ("ASoC: codecs: Add aw88261 amplifier driver")
Reported-by: kernel test robot <lkp@intel.com
Reported-by: Dan Carpenter <error27@gmail.com
Closes: https://lore.kernel.org/r/202308150315.CvOTIOKm-lkp@intel.com/
Signed-off-by: Harshit Mogalapalli <harshit.m.mogalapalli@oracle.com
Link: https://lore.kernel.org/r/20230824191722.2701215-1-harshit.m.mogalapalli@oracle.com
Signed-off-by: Mark Brown <broonie@kernel.org
sound/soc/codecs/aw88261.c

index 6e2266b..a697b50 100644 (file)
@@ -1245,7 +1245,7 @@ static int aw88261_i2c_probe(struct i2c_client *i2c)
 
        ret = i2c_check_functionality(i2c->adapter, I2C_FUNC_I2C);
        if (!ret)
-               return dev_err_probe(&i2c->dev, ret, "check_functionality failed");
+               return dev_err_probe(&i2c->dev, -ENXIO, "check_functionality failed");
 
        aw88261 = devm_kzalloc(&i2c->dev, sizeof(*aw88261), GFP_KERNEL);
        if (!aw88261)