clocksource/drivers/riscv: Events are stopped during CPU suspend
[ Upstream commit232ccac1bd] Some implementations of the SBI time extension depend on hart-local state (for example, CSRs) that are lost or hardware that is powered down when a CPU is suspended. To be safe, the clockevents driver cannot assume that timer IRQs will be received during CPU suspend. Fixes:62b0194368("clocksource: new RISC-V SBI timer driver") Signed-off-by: Samuel Holland <samuel@sholland.org> Reviewed-by: Anup Patel <anup@brainfault.org> Link: https://lore.kernel.org/r/20220509012121.40031-1-samuel@sholland.org Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org> Signed-off-by: Sasha Levin <sashal@kernel.org>
This commit is contained in:
committed by
Greg Kroah-Hartman
parent
5b3e990f85
commit
d54a51b518
@@ -32,7 +32,7 @@ static int riscv_clock_next_event(unsigned long delta,
|
|||||||
static unsigned int riscv_clock_event_irq;
|
static unsigned int riscv_clock_event_irq;
|
||||||
static DEFINE_PER_CPU(struct clock_event_device, riscv_clock_event) = {
|
static DEFINE_PER_CPU(struct clock_event_device, riscv_clock_event) = {
|
||||||
.name = "riscv_timer_clockevent",
|
.name = "riscv_timer_clockevent",
|
||||||
.features = CLOCK_EVT_FEAT_ONESHOT,
|
.features = CLOCK_EVT_FEAT_ONESHOT | CLOCK_EVT_FEAT_C3STOP,
|
||||||
.rating = 100,
|
.rating = 100,
|
||||||
.set_next_event = riscv_clock_next_event,
|
.set_next_event = riscv_clock_next_event,
|
||||||
};
|
};
|
||||||
|
|||||||
Reference in New Issue
Block a user