diff options
Diffstat (limited to 'debian/patches-rt/clocksource-tclib-allow-higher-clockrates.patch')
-rw-r--r-- | debian/patches-rt/clocksource-tclib-allow-higher-clockrates.patch | 26 |
1 files changed, 13 insertions, 13 deletions
diff --git a/debian/patches-rt/clocksource-tclib-allow-higher-clockrates.patch b/debian/patches-rt/clocksource-tclib-allow-higher-clockrates.patch index 09d07f8ef..5b8e21240 100644 --- a/debian/patches-rt/clocksource-tclib-allow-higher-clockrates.patch +++ b/debian/patches-rt/clocksource-tclib-allow-higher-clockrates.patch @@ -1,7 +1,7 @@ From: Benedikt Spranger <b.spranger@linutronix.de> Date: Mon, 8 Mar 2010 18:57:04 +0100 Subject: clocksource: TCLIB: Allow higher clock rates for clock events -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 As default the TCLIB uses the 32KiHz base clock rate for clock events. Add a compile time selection to allow higher clock resulution. @@ -17,7 +17,7 @@ Signed-off-by: Thomas Gleixner <tglx@linutronix.de> --- a/drivers/clocksource/Kconfig +++ b/drivers/clocksource/Kconfig -@@ -429,6 +429,13 @@ config ATMEL_TCB_CLKSRC +@@ -434,6 +434,13 @@ config ATMEL_TCB_CLKSRC help Support for Timer Counter Blocks on Atmel SoCs. @@ -33,7 +33,7 @@ Signed-off-by: Thomas Gleixner <tglx@linutronix.de> depends on ARM || ARM64 --- a/drivers/clocksource/timer-atmel-tcb.c +++ b/drivers/clocksource/timer-atmel-tcb.c -@@ -27,8 +27,7 @@ +@@ -28,8 +28,7 @@ * this 32 bit free-running counter. the second channel is not used. * * - The third channel may be used to provide a 16-bit clockevent @@ -43,7 +43,7 @@ Signed-off-by: Thomas Gleixner <tglx@linutronix.de> * * REVISIT behavior during system suspend states... we should disable * all clocks and save the power. Easily done for clockevent devices, -@@ -131,6 +130,7 @@ struct tc_clkevt_device { +@@ -144,6 +143,7 @@ struct tc_clkevt_device { struct clock_event_device clkevt; struct clk *clk; bool clk_enabled; @@ -51,7 +51,7 @@ Signed-off-by: Thomas Gleixner <tglx@linutronix.de> void __iomem *regs; }; -@@ -139,13 +139,6 @@ static struct tc_clkevt_device *to_tc_cl +@@ -152,13 +152,6 @@ static struct tc_clkevt_device *to_tc_cl return container_of(clkevt, struct tc_clkevt_device, clkevt); } @@ -65,7 +65,7 @@ Signed-off-by: Thomas Gleixner <tglx@linutronix.de> static u32 timer_clock; static void tc_clk_disable(struct clock_event_device *d) -@@ -195,7 +188,7 @@ static int tc_set_oneshot(struct clock_e +@@ -208,7 +201,7 @@ static int tc_set_oneshot(struct clock_e tc_clk_enable(d); @@ -74,7 +74,7 @@ Signed-off-by: Thomas Gleixner <tglx@linutronix.de> writel(timer_clock | ATMEL_TC_CPCSTOP | ATMEL_TC_WAVE | ATMEL_TC_WAVESEL_UP_AUTO, regs + ATMEL_TC_REG(2, CMR)); writel(ATMEL_TC_CPCS, regs + ATMEL_TC_REG(2, IER)); -@@ -217,10 +210,10 @@ static int tc_set_periodic(struct clock_ +@@ -230,10 +223,10 @@ static int tc_set_periodic(struct clock_ */ tc_clk_enable(d); @@ -87,7 +87,7 @@ Signed-off-by: Thomas Gleixner <tglx@linutronix.de> /* Enable clock and interrupts on RC compare */ writel(ATMEL_TC_CPCS, regs + ATMEL_TC_REG(2, IER)); -@@ -246,7 +239,11 @@ static struct tc_clkevt_device clkevt = +@@ -259,7 +252,11 @@ static struct tc_clkevt_device clkevt = .features = CLOCK_EVT_FEAT_PERIODIC | CLOCK_EVT_FEAT_ONESHOT, /* Should be lower than at91rm9200's system timer */ @@ -99,7 +99,7 @@ Signed-off-by: Thomas Gleixner <tglx@linutronix.de> .set_next_event = tc_next_event, .set_state_shutdown = tc_shutdown_clk_off, .set_state_periodic = tc_set_periodic, -@@ -268,8 +265,11 @@ static irqreturn_t ch2_irq(int irq, void +@@ -281,8 +278,11 @@ static irqreturn_t ch2_irq(int irq, void return IRQ_NONE; } @@ -112,7 +112,7 @@ Signed-off-by: Thomas Gleixner <tglx@linutronix.de> int ret; struct clk *t2_clk = tc->clk[2]; int irq = tc->irq[2]; -@@ -290,7 +290,11 @@ static int __init setup_clkevents(struct +@@ -303,7 +303,11 @@ static int __init setup_clkevents(struct clkevt.regs = tc->regs; clkevt.clk = t2_clk; @@ -125,7 +125,7 @@ Signed-off-by: Thomas Gleixner <tglx@linutronix.de> clkevt.clkevt.cpumask = cpumask_of(0); -@@ -301,7 +305,7 @@ static int __init setup_clkevents(struct +@@ -314,7 +318,7 @@ static int __init setup_clkevents(struct return ret; } @@ -134,7 +134,7 @@ Signed-off-by: Thomas Gleixner <tglx@linutronix.de> return ret; } -@@ -358,8 +362,6 @@ static void __init tcb_setup_single_chan +@@ -371,8 +375,6 @@ static void __init tcb_setup_single_chan writel(ATMEL_TC_SYNC, tcaddr + ATMEL_TC_BCR); } @@ -143,7 +143,7 @@ Signed-off-by: Thomas Gleixner <tglx@linutronix.de> static const struct of_device_id atmel_tcb_of_match[] = { { .compatible = "atmel,at91rm9200-tcb", .data = (void *)16, }, { .compatible = "atmel,at91sam9x5-tcb", .data = (void *)32, }, -@@ -477,7 +479,11 @@ static int __init tcb_clksrc_init(struct +@@ -492,7 +494,11 @@ static int __init tcb_clksrc_init(struct goto err_disable_t1; /* channel 2: periodic and oneshot timer support */ |