From: Harshit Mogalapalli Date: Wed, 23 Aug 2023 19:42:02 +0000 (-0700) Subject: i2c: qcom-cci: Fix error checking in cci_probe() X-Git-Tag: microblaze-v6.8~540^2~8 X-Git-Url: http://git.monstr.eu/?a=commitdiff_plain;h=7f2e65a8f546a0b1e5fd0770c802c5e4af9cf14e;p=linux-2.6-microblaze.git i2c: qcom-cci: Fix error checking in cci_probe() devm_clk_bulk_get_all() can return zero when no clocks are obtained. Passing zero to dev_err_probe() is a success which is incorrect. Fixes: 605efbf43813 ("i2c: qcom-cci: Use dev_err_probe in probe function") Signed-off-by: Harshit Mogalapalli Reviewed-by: Bryan O'Donoghue Reviewed-by: Andi Shyti Signed-off-by: Wolfram Sang --- diff --git a/drivers/i2c/busses/i2c-qcom-cci.c b/drivers/i2c/busses/i2c-qcom-cci.c index cf13abec05f1..414882c57d7f 100644 --- a/drivers/i2c/busses/i2c-qcom-cci.c +++ b/drivers/i2c/busses/i2c-qcom-cci.c @@ -588,8 +588,10 @@ static int cci_probe(struct platform_device *pdev) /* Clocks */ ret = devm_clk_bulk_get_all(dev, &cci->clocks); - if (ret < 1) + if (ret < 0) return dev_err_probe(dev, ret, "failed to get clocks\n"); + else if (!ret) + return dev_err_probe(dev, -EINVAL, "not enough clocks in DT\n"); cci->nclocks = ret; /* Retrieve CCI clock rate */