]> git.ipfire.org Git - thirdparty/kernel/stable.git/commit
i2c: sprd: Delete i2c adapter in .remove's error path
authorUwe Kleine-König <u.kleine-koenig@pengutronix.de>
Thu, 9 Mar 2023 09:58:19 +0000 (10:58 +0100)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 14 Jun 2023 08:59:58 +0000 (10:59 +0200)
commit0360652bf6abf82551d75290ea7828b41f005be1
tree0eb2b8b26e271f24b2c73e874f67d2e9efc8614b
parentc73f1c2f6816c6b5f5b3bedfd809337fb9d6caa9
i2c: sprd: Delete i2c adapter in .remove's error path

[ Upstream commit ca0aa17f2db3468fd017038d23a78e17388e2f67 ]

If pm runtime resume fails the .remove callback used to exit early. This
resulted in an error message by the driver core but the device gets
removed anyhow. This lets the registered i2c adapter stay around with an
unbound parent device.

So only skip clk disabling if resume failed, but do delete the adapter.

Fixes: 8b9ec0719834 ("i2c: Add Spreadtrum I2C controller driver")
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
Reviewed-by: Andi Shyti <andi.shyti@kernel.org>
Signed-off-by: Wolfram Sang <wsa@kernel.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/i2c/busses/i2c-sprd.c