diff options
author | Vitalii Mordan <mordan@ispras.ru> | 2025-02-12 20:28:03 +0300 |
---|---|---|
committer | Andi Shyti <andi.shyti@kernel.org> | 2025-03-18 21:53:53 +0100 |
commit | be7113d2e2a6f20cbee99c98d261a1fd6fd7b549 (patch) | |
tree | 1d67523ba8b04305beb525512c12697d8134dd64 /drivers/i2c | |
parent | fad3d2e3014957d99e4616bc1a698b8d719614b3 (diff) |
i2c: pxa: fix call balance of i2c->clk handling routines
If the clock i2c->clk was not enabled in i2c_pxa_probe(), it should not be
disabled in any path.
Found by Linux Verification Center (linuxtesting.org) with Klever.
Signed-off-by: Vitalii Mordan <mordan@ispras.ru>
Signed-off-by: Andi Shyti <andi.shyti@kernel.org>
Link: https://lore.kernel.org/r/20250212172803.1422136-1-mordan@ispras.ru
Diffstat (limited to 'drivers/i2c')
-rw-r--r-- | drivers/i2c/busses/i2c-pxa.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/drivers/i2c/busses/i2c-pxa.c b/drivers/i2c/busses/i2c-pxa.c index cb6988482673..4415a29f749b 100644 --- a/drivers/i2c/busses/i2c-pxa.c +++ b/drivers/i2c/busses/i2c-pxa.c @@ -1503,7 +1503,10 @@ static int i2c_pxa_probe(struct platform_device *dev) i2c->adap.name); } - clk_prepare_enable(i2c->clk); + ret = clk_prepare_enable(i2c->clk); + if (ret) + return dev_err_probe(&dev->dev, ret, + "failed to enable clock\n"); if (i2c->use_pio) { i2c->adap.algo = &i2c_pxa_pio_algorithm; |