Message ID | 20200327124143.3520-1-afzal.mohd.ma@gmail.com (mailing list archive) |
---|---|
State | Mainlined |
Commit | 2164f34965f51ab24e27c429fa8cce7587a82583 |
Headers | show |
Series | [v4,1/5] ARM: ep93xx: Replace setup_irq() by request_irq() | expand |
Hello: This series was applied to soc/soc.git (refs/heads/for-next). On Fri, 27 Mar 2020 18:11:43 +0530 you wrote: > 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(). > > [...] Here is a summary with links: - [v4,1/5] ARM: ep93xx: Replace setup_irq() by request_irq() https://git.kernel.org/soc/soc/c/2164f34965f51ab24e27c429fa8cce7587a82583 - [v4,2/5] ARM: spear: replace setup_irq() by request_irq() https://git.kernel.org/soc/soc/c/c84e48997ccafc9990a267fe6508f72027bd1bcf - [v4,3/5] ARM: cns3xxx: replace setup_irq() by request_irq() https://git.kernel.org/soc/soc/c/4c819924f571fb74496c85df2780dc75f8686b68 - [v4,4/5] ARM: mmp: replace setup_irq() by request_irq() https://git.kernel.org/soc/soc/c/2fcf53350810d0e2af9ef57a57957c6c739c5647 - [v4,5/5] ARM: iop32x: replace setup_irq() by request_irq() https://git.kernel.org/soc/soc/c/d163dcc2be7fe04059782db35c73ad32c56864e3 You are awesome, thank you!
diff --git a/arch/arm/mach-ep93xx/timer-ep93xx.c b/arch/arm/mach-ep93xx/timer-ep93xx.c index de998830f534..dd4b164d1831 100644 --- a/arch/arm/mach-ep93xx/timer-ep93xx.c +++ b/arch/arm/mach-ep93xx/timer-ep93xx.c @@ -117,15 +117,11 @@ static irqreturn_t ep93xx_timer_interrupt(int irq, void *dev_id) return IRQ_HANDLED; } -static struct irqaction ep93xx_timer_irq = { - .name = "ep93xx timer", - .flags = IRQF_TIMER | IRQF_IRQPOLL, - .handler = ep93xx_timer_interrupt, - .dev_id = &ep93xx_clockevent, -}; - void __init ep93xx_timer_init(void) { + int irq = IRQ_EP93XX_TIMER3; + unsigned long flags = IRQF_TIMER | IRQF_IRQPOLL; + /* Enable and register clocksource and sched_clock on timer 4 */ writel(EP93XX_TIMER4_VALUE_HIGH_ENABLE, EP93XX_TIMER4_VALUE_HIGH); @@ -136,7 +132,9 @@ void __init ep93xx_timer_init(void) EP93XX_TIMER4_RATE); /* Set up clockevent on timer 3 */ - setup_irq(IRQ_EP93XX_TIMER3, &ep93xx_timer_irq); + if (request_irq(irq, ep93xx_timer_interrupt, flags, "ep93xx timer", + &ep93xx_clockevent)) + pr_err("Failed to request irq %d (ep93xx timer)\n", irq); clockevents_config_and_register(&ep93xx_clockevent, EP93XX_TIMER123_RATE, 1,