i2c: synquacer: Fix an error handling path in synquacer_i2c_probe()
authorChristophe JAILLET <christophe.jaillet@wanadoo.fr>
Sat, 6 Jan 2024 12:48:24 +0000 (13:48 +0100)
committerAndi Shyti <andi.shyti@kernel.org>
Mon, 6 May 2024 08:58:04 +0000 (10:58 +0200)
commit55750148e5595bb85605e8fbb40b2759c2c4c2d7
treebd057ae165b6d19dca6c745da98fb1250d458f19
parentc2e55b449de7298a751ed0256251019d302af453
i2c: synquacer: Fix an error handling path in synquacer_i2c_probe()

If an error occurs after the clk_prepare_enable() call, it should be undone
by a corresponding clk_disable_unprepare() call, as already done in the
remove() function.

As devm_clk_get() is used, we can switch to devm_clk_get_enabled() to
handle it automatically and fix the probe.

Update the remove() function accordingly and remove the now useless
clk_disable_unprepare() call.

Fixes: 0d676a6c4390 ("i2c: add support for Socionext SynQuacer I2C controller")
Signed-off-by: Christophe JAILLET <christophe.jaillet@wanadoo.fr>
Acked-by: Ard Biesheuvel <ardb@kernel.org>
Signed-off-by: Andi Shyti <andi.shyti@kernel.org>
drivers/i2c/busses/i2c-synquacer.c