realtek: timer: Register enabled scheduler clock

Before calling sched_clock_register(), the timer used to drive the
scheduling clock should already be enabled. Otherwise the kernel log
will show strange time jumps during, and the watchdog might not be
pinged in a timely fashion, resulting in reboots.

[    0.160281] NET: Registered PF_NETLINK/PF_ROUTE protocol family
[   78.104319] clocksource: Switched to clocksource realtek_otto_timer

Fixes: 3cc801117118 ("realtek: resurrect timer driver")
Signed-off-by: Sander Vanheule <sander@svanheule.net>
This commit is contained in:
Sander Vanheule 2023-01-27 23:35:47 +01:00 committed by Olliver Schinagl
parent a63430eac3
commit 38cba61bff
No known key found for this signature in database
GPG Key ID: 96E1A3A6C9044763
2 changed files with 2 additions and 2 deletions

View File

@ -229,7 +229,6 @@ struct rttm_cs rttm_cs = {
.mask = CLOCKSOURCE_MASK(RTTM_BIT_COUNT),
.flags = CLOCK_SOURCE_IS_CONTINUOUS,
.read = rttm_read_clocksource,
.enable = rttm_enable_clocksource
}
};
@ -276,6 +275,7 @@ static int __init rttm_probe(struct device_node *np)
to->of_base.index = clkidx;
timer_of_init(np, to);
if (rttm_cs.to.of_base.base && rttm_cs.to.of_clk.rate) {
rttm_enable_clocksource(&rttm_cs.cs);
clocksource_register_hz(&rttm_cs.cs, RTTM_TICKS_PER_SEC);
sched_clock_register(rttm_read_clock, RTTM_BIT_COUNT, RTTM_TICKS_PER_SEC);
} else

View File

@ -229,7 +229,6 @@ struct rttm_cs rttm_cs = {
.mask = CLOCKSOURCE_MASK(RTTM_BIT_COUNT),
.flags = CLOCK_SOURCE_IS_CONTINUOUS,
.read = rttm_read_clocksource,
.enable = rttm_enable_clocksource
}
};
@ -276,6 +275,7 @@ static int __init rttm_probe(struct device_node *np)
to->of_base.index = clkidx;
timer_of_init(np, to);
if (rttm_cs.to.of_base.base && rttm_cs.to.of_clk.rate) {
rttm_enable_clocksource(&rttm_cs.cs);
clocksource_register_hz(&rttm_cs.cs, RTTM_TICKS_PER_SEC);
sched_clock_register(rttm_read_clock, RTTM_BIT_COUNT, RTTM_TICKS_PER_SEC);
} else