diff options
Diffstat (limited to 'debian/patches-rt/at91_dont_enable_disable_clock.patch')
-rw-r--r-- | debian/patches-rt/at91_dont_enable_disable_clock.patch | 14 |
1 files changed, 7 insertions, 7 deletions
diff --git a/debian/patches-rt/at91_dont_enable_disable_clock.patch b/debian/patches-rt/at91_dont_enable_disable_clock.patch index 1b24e75d2..3cc25f0cc 100644 --- a/debian/patches-rt/at91_dont_enable_disable_clock.patch +++ b/debian/patches-rt/at91_dont_enable_disable_clock.patch @@ -1,7 +1,7 @@ From: Sebastian Andrzej Siewior <bigeasy@linutronix.de> Date: Wed, 09 Mar 2016 10:51:06 +0100 Subject: arm: at91: do not disable/enable clocks in a row -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.2/older/patches-5.2.17-rt9.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.4/older/patches-5.4.3-rt1.tar.xz Currently the driver will disable the clock and enable it one line later if it is switching from periodic mode into one shot. @@ -14,7 +14,7 @@ Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de> --- a/drivers/clocksource/timer-atmel-tcb.c +++ b/drivers/clocksource/timer-atmel-tcb.c -@@ -130,6 +130,7 @@ static u64 notrace tc_sched_clock_read32 +@@ -143,6 +143,7 @@ static unsigned long notrace tc_delay_ti struct tc_clkevt_device { struct clock_event_device clkevt; struct clk *clk; @@ -22,7 +22,7 @@ Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de> void __iomem *regs; }; -@@ -147,6 +148,24 @@ static struct tc_clkevt_device *to_tc_cl +@@ -160,6 +161,24 @@ static struct tc_clkevt_device *to_tc_cl */ static u32 timer_clock; @@ -47,7 +47,7 @@ Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de> static int tc_shutdown(struct clock_event_device *d) { struct tc_clkevt_device *tcd = to_tc_clkevt(d); -@@ -154,8 +173,14 @@ static int tc_shutdown(struct clock_even +@@ -167,8 +186,14 @@ static int tc_shutdown(struct clock_even writel(0xff, regs + ATMEL_TC_REG(2, IDR)); writel(ATMEL_TC_CLKDIS, regs + ATMEL_TC_REG(2, CCR)); @@ -63,7 +63,7 @@ Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de> return 0; } -@@ -168,7 +193,7 @@ static int tc_set_oneshot(struct clock_e +@@ -181,7 +206,7 @@ static int tc_set_oneshot(struct clock_e if (clockevent_state_oneshot(d) || clockevent_state_periodic(d)) tc_shutdown(d); @@ -72,7 +72,7 @@ Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de> /* slow clock, count up to RC, then irq and stop */ writel(timer_clock | ATMEL_TC_CPCSTOP | ATMEL_TC_WAVE | -@@ -190,7 +215,7 @@ static int tc_set_periodic(struct clock_ +@@ -203,7 +228,7 @@ static int tc_set_periodic(struct clock_ /* By not making the gentime core emulate periodic mode on top * of oneshot, we get lower overhead and improved accuracy. */ @@ -81,7 +81,7 @@ Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de> /* slow clock, count up to RC, then irq and restart */ writel(timer_clock | ATMEL_TC_WAVE | ATMEL_TC_WAVESEL_UP_AUTO, -@@ -223,7 +248,7 @@ static struct tc_clkevt_device clkevt = +@@ -236,7 +261,7 @@ static struct tc_clkevt_device clkevt = /* Should be lower than at91rm9200's system timer */ .rating = 125, .set_next_event = tc_next_event, |