diff options
author | afzal mohammed <afzal.mohd.ma@gmail.com> | 2020-03-27 13:44:06 +0100 |
---|---|---|
committer | Arnd Bergmann <arnd@arndb.de> | 2020-03-27 14:11:45 +0100 |
commit | c84e48997ccafc9990a267fe6508f72027bd1bcf (patch) | |
tree | 98cc2d64241f9ccaf1ad0ab3bd44b230107a745c | |
parent | ARM: ep93xx: Replace setup_irq() by request_irq() (diff) | |
download | linux-c84e48997ccafc9990a267fe6508f72027bd1bcf.tar.xz linux-c84e48997ccafc9990a267fe6508f72027bd1bcf.zip |
ARM: spear: replace setup_irq() by request_irq()
request_irq() is preferred over setup_irq(). Invocations of setup_irq()
occur after memory allocators are ready.
Per tglx[1], setup_irq() existed in olden days when allocators were not
ready by the time early interrupts were initialized.
Hence replace setup_irq() by request_irq().
[1] https://lkml.kernel.org/r/alpine.DEB.2.20.1710191609480.1971@nanos
Link: https://lore.kernel.org/r/20200327124406.4123-1-afzal.mohd.ma@gmail.com
Signed-off-by: afzal mohammed <afzal.mohd.ma@gmail.com>
Acked-by: Viresh Kumar <viresh.kumar@linaro.org>
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
-rw-r--r-- | arch/arm/mach-spear/time.c | 9 |
1 files changed, 2 insertions, 7 deletions
diff --git a/arch/arm/mach-spear/time.c b/arch/arm/mach-spear/time.c index 289e036c9c30..d1fdb6066f7b 100644 --- a/arch/arm/mach-spear/time.c +++ b/arch/arm/mach-spear/time.c @@ -181,12 +181,6 @@ static irqreturn_t spear_timer_interrupt(int irq, void *dev_id) return IRQ_HANDLED; } -static struct irqaction spear_timer_irq = { - .name = "timer", - .flags = IRQF_TIMER, - .handler = spear_timer_interrupt -}; - static void __init spear_clockevent_init(int irq) { u32 tick_rate; @@ -201,7 +195,8 @@ static void __init spear_clockevent_init(int irq) clockevents_config_and_register(&clkevt, tick_rate, 3, 0xfff0); - setup_irq(irq, &spear_timer_irq); + if (request_irq(irq, spear_timer_interrupt, IRQF_TIMER, "timer", NULL)) + pr_err("Failed to request irq %d (timer)\n", irq); } static const struct of_device_id timer_of_match[] __initconst = { |