Commit 2e02da1d authored by Gaosheng Cui's avatar Gaosheng Cui Committed by Daniel Lezcano
Browse files

clocksource/drivers/cadence-ttc: Add missing clk_disable_unprepare in ttc_setup_clockevent



Add the missing clk_disable_unprepare() before return in
ttc_setup_clockevent().

Signed-off-by: default avatarGaosheng Cui <cuigaosheng1@huawei.com>
Reviewed-by: default avatarMichal Simek <michal.simek@amd.com>
Link: https://lore.kernel.org/r/20240803064253.331946-3-cuigaosheng1@huawei.com


Signed-off-by: default avatarDaniel Lezcano <daniel.lezcano@linaro.org>
parent 6cc11b65
Loading
Loading
Loading
Loading
+4 −2
Original line number Diff line number Diff line
@@ -435,7 +435,7 @@ static int __init ttc_setup_clockevent(struct clk *clk,
				    &ttcce->ttc.clk_rate_change_nb);
	if (err) {
		pr_warn("Unable to register clock notifier.\n");
		goto out_kfree;
		goto out_clk_unprepare;
	}

	ttcce->ttc.freq = clk_get_rate(ttcce->ttc.clk);
@@ -465,13 +465,15 @@ static int __init ttc_setup_clockevent(struct clk *clk,
	err = request_irq(irq, ttc_clock_event_interrupt,
			  IRQF_TIMER, ttcce->ce.name, ttcce);
	if (err)
		goto out_kfree;
		goto out_clk_unprepare;

	clockevents_config_and_register(&ttcce->ce,
			ttcce->ttc.freq / PRESCALE, 1, 0xfffe);

	return 0;

out_clk_unprepare:
	clk_disable_unprepare(ttcce->ttc.clk);
out_kfree:
	kfree(ttcce);
	return err;