summaryrefslogtreecommitdiffstats
path: root/drivers/clocksource
diff options
context:
space:
mode:
authorafzal mohammed <afzal.mohd.ma@gmail.com>2020-03-12 07:48:17 +0100
committerDaniel Lezcano <daniel.lezcano@linaro.org>2020-03-12 19:23:06 +0100
commit470cf1c28d2f601ea666a96d676c10b09b2321ab (patch)
treed21075b34c65acdb5642661c6adc9495a7d8ae3e /drivers/clocksource
parentclocksource: Replace setup_irq() by request_irq() (diff)
downloadlinux-470cf1c28d2f601ea666a96d676c10b09b2321ab.tar.xz
linux-470cf1c28d2f601ea666a96d676c10b09b2321ab.zip
clocksource/drivers/timer-cs5535: Request irq with non-NULL dev_id
Recently all usages of setup_irq() was replaced by request_irq(). request_irq() does a few sanity checks that were not done in setup_irq(), if they fail irq registration will fail. One of the check is to ensure that non-NULL dev_id is passed in the case of shared irq. Fix it by passing non-NULL dev_id while registering the shared irq. Fixes: cc2550b421aa ("clocksource: Replace setup_irq() by request_irq()") Signed-off-by: afzal mohammed <afzal.mohd.ma@gmail.com> Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org> Link: https://lore.kernel.org/r/20200312064817.19000-1-afzal.mohd.ma@gmail.com
Diffstat (limited to 'drivers/clocksource')
-rw-r--r--drivers/clocksource/timer-cs5535.c5
1 files changed, 2 insertions, 3 deletions
diff --git a/drivers/clocksource/timer-cs5535.c b/drivers/clocksource/timer-cs5535.c
index 51ea0509fb25..d47acfe848ae 100644
--- a/drivers/clocksource/timer-cs5535.c
+++ b/drivers/clocksource/timer-cs5535.c
@@ -133,6 +133,7 @@ static irqreturn_t mfgpt_tick(int irq, void *dev_id)
static int __init cs5535_mfgpt_init(void)
{
+ unsigned long flags = IRQF_NOBALANCING | IRQF_TIMER | IRQF_SHARED;
struct cs5535_mfgpt_timer *timer;
int ret;
uint16_t val;
@@ -152,9 +153,7 @@ static int __init cs5535_mfgpt_init(void)
}
/* And register it with the kernel */
- ret = request_irq(timer_irq, mfgpt_tick,
- IRQF_NOBALANCING | IRQF_TIMER | IRQF_SHARED,
- DRV_NAME, NULL);
+ ret = request_irq(timer_irq, mfgpt_tick, flags, DRV_NAME, timer);
if (ret) {
printk(KERN_ERR DRV_NAME ": Unable to set up the interrupt.\n");
goto err_irq;