Hi Song, On Mon, Sep 9, 2019 at 11:12 AM Hui Song <hui.song_1@xxxxxxx> wrote: > static void mpc8xxx_irq_unmask(struct irq_data *d) > @@ -409,8 +409,14 @@ static int mpc8xxx_probe(struct platform_device *pdev) > if (devtype->gpio_dir_in_init) > devtype->gpio_dir_in_init(gc); > > - irq_set_chained_handler_and_data(mpc8xxx_gc->irqn, > - mpc8xxx_gpio_irq_cascade, mpc8xxx_gc); > + ret = request_irq(mpc8xxx_gc->irqn, mpc8xxx_gpio_irq_cascade, > + IRQF_NO_THREAD | IRQF_SHARED, "gpio-cascade", mpc8xxx_gc); > + if (ret) { > + pr_err("%s: failed to request_irq(%d), ret = %d\n", In drivers, it is preferred to use dev_err() instead of pr_err(). Please swicth for dev_err().