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
 
 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;
        }
 
        /* 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;