In bcm_cpu_probe the test on the return value from clk_enable is
incorrect and will not work as intended. Change the || to && in order to
achieve the desired effect.

This issue was found by Smatch.

Signed-off-by: Andrew Goodbody <andrew.goodb...@linaro.org>
---
 drivers/cpu/bcm283x_cpu.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/cpu/bcm283x_cpu.c b/drivers/cpu/bcm283x_cpu.c
index 59a7b142c95..7db00dadd90 100644
--- a/drivers/cpu/bcm283x_cpu.c
+++ b/drivers/cpu/bcm283x_cpu.c
@@ -174,7 +174,7 @@ static int bcm_cpu_probe(struct udevice *dev)
        ret = clk_get_by_index(dev, 0, &clk);
        if (!ret) {
                ret = clk_enable(&clk);
-               if (ret && (ret != -ENOSYS || ret != -EOPNOTSUPP))
+               if (ret && (ret != -ENOSYS && ret != -EOPNOTSUPP))
                        return ret;
                ret = clk_get_rate(&clk);
                if (IS_ERR_VALUE(ret))

---
base-commit: 3532f1f5edfc97c9dcea723cdeb732eda44bc669
change-id: 20250724-bcm283x-24aa0074df01

Best regards,
-- 
Andrew Goodbody <andrew.goodb...@linaro.org>

Reply via email to