[PATCH] i2c: davinci: Unregister cpufreq notifier on probe failure
Bartosz Golaszewski
brgl at kernel.org
Wed Jun 10 00:09:51 PDT 2026
On Wed, 10 Jun 2026 05:05:13 +0200, Haoxiang Li <haoxiang_li2024 at 163.com> said:
> davinci_i2c_probe() registers a cpufreq transition notifier before adding
> the I2C adapter. If i2c_add_numbered_adapter() fails, the probe error path
> releases the device resources without unregistering the notifier.
>
> Add a dedicated error path to unregister the cpufreq notifier after
> i2c_add_numbered_adapter() fails.
>
> Fixes: 82c0de11b734 ("i2c: davinci: Add cpufreq support")
> Cc: stable at vger.kernel.org
> Signed-off-by: Haoxiang Li <haoxiang_li2024 at 163.com>
> ---
> drivers/i2c/busses/i2c-davinci.c | 4 +++-
> 1 file changed, 3 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/i2c/busses/i2c-davinci.c b/drivers/i2c/busses/i2c-davinci.c
> index a773ba082321..a24c3e8b87ff 100644
> --- a/drivers/i2c/busses/i2c-davinci.c
> +++ b/drivers/i2c/busses/i2c-davinci.c
> @@ -818,12 +818,14 @@ static int davinci_i2c_probe(struct platform_device *pdev)
> adap->nr = pdev->id;
> r = i2c_add_numbered_adapter(adap);
> if (r)
> - goto err_unuse_clocks;
> + goto err_cpufreq;
>
> pm_runtime_put_autosuspend(dev->dev);
>
> return 0;
>
> +err_cpufreq:
> + i2c_davinci_cpufreq_deregister(dev);
> err_unuse_clocks:
> pm_runtime_dont_use_autosuspend(dev->dev);
> pm_runtime_put_sync(dev->dev);
> --
> 2.25.1
>
>
Reviewed-by: Bartosz Golaszewski <bartosz.golaszewski at oss.qualcomm.com>
More information about the linux-arm-kernel
mailing list