[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <175343951511.1420.10772161053647291523.tip-bot2@tip-bot2>
Date: Fri, 25 Jul 2025 10:31:55 -0000
From: "tip-bot2 for Daniel Lezcano" <tip-bot2@...utronix.de>
To: linux-tip-commits@...r.kernel.org
Cc: Daniel Lezcano <daniel.lezcano@...aro.org>, Ingo Molnar <mingo@...nel.org>,
Will McVicker <willmcvicker@...gle.com>, "Chen-Yu Tsai" <wens@...e.org>,
x86@...nel.org, linux-kernel@...r.kernel.org
Subject: [tip: timers/clocksource] clocksource/drivers/sun5i: Add module owner
The following commit has been merged into the timers/clocksource branch of tip:
Commit-ID: d89048fedbe7a13056497a2bd93e28981e17c6fe
Gitweb: https://git.kernel.org/tip/d89048fedbe7a13056497a2bd93e28981e17c6fe
Author: Daniel Lezcano <daniel.lezcano@...aro.org>
AuthorDate: Mon, 02 Jun 2025 17:18:47 +02:00
Committer: Ingo Molnar <mingo@...nel.org>
CommitterDate: Fri, 25 Jul 2025 11:43:18 +02:00
clocksource/drivers/sun5i: Add module owner
The conversion to modules requires a correct handling of the module
refcount in order to prevent to unload it if it is in use. That is
especially true with clockevents where there is no function to
unregister them.
The core time framework correctly handles the module refcount with the
different clocksource and clockevents if the module owner is set.
Add the module owner to make sure the core framework will prevent
stupid things happening when the driver will be converted into a
module.
Signed-off-by: Daniel Lezcano <daniel.lezcano@...aro.org>
Signed-off-by: Ingo Molnar <mingo@...nel.org>
Reviewed-by: Will McVicker <willmcvicker@...gle.com>
Acked-by: Chen-Yu Tsai <wens@...e.org>
Link: https://lore.kernel.org/r/20250602151853.1942521-4-daniel.lezcano@linaro.org
---
drivers/clocksource/timer-sun5i.c | 2 ++
1 file changed, 2 insertions(+)
diff --git a/drivers/clocksource/timer-sun5i.c b/drivers/clocksource/timer-sun5i.c
index 6b48a90..f827d3f 100644
--- a/drivers/clocksource/timer-sun5i.c
+++ b/drivers/clocksource/timer-sun5i.c
@@ -185,6 +185,7 @@ static int sun5i_setup_clocksource(struct platform_device *pdev,
cs->clksrc.read = sun5i_clksrc_read;
cs->clksrc.mask = CLOCKSOURCE_MASK(32);
cs->clksrc.flags = CLOCK_SOURCE_IS_CONTINUOUS;
+ cs->clksrc.owner = THIS_MODULE;
ret = clocksource_register_hz(&cs->clksrc, rate);
if (ret) {
@@ -214,6 +215,7 @@ static int sun5i_setup_clockevent(struct platform_device *pdev,
ce->clkevt.rating = 340;
ce->clkevt.irq = irq;
ce->clkevt.cpumask = cpu_possible_mask;
+ ce->clkevt.owner = THIS_MODULE;
/* Enable timer0 interrupt */
val = readl(base + TIMER_IRQ_EN_REG);
Powered by blists - more mailing lists