Hi, On Fri, Sep 07, 2018 at 12:20:49PM +0200, Hans Verkuil wrote: > -static int intel_gpio_irq_reqres(struct irq_data *d) > -{ > - struct gpio_chip *gc = irq_data_get_irq_chip_data(d); > - struct intel_pinctrl *pctrl = gpiochip_get_data(gc); > - int pin; > - int ret; > - > - pin = intel_gpio_to_pin(pctrl, irqd_to_hwirq(d), NULL, NULL); I don't think you can just remove this hook because we depend on the above translation. > - if (pin >= 0) { > - ret = gpiochip_lock_as_irq(gc, pin); > - if (ret) { > - dev_err(pctrl->dev, "unable to lock HW IRQ %d for IRQ\n", > - pin); > - return ret; > - } > - } > - return 0; > -} > - > -static void intel_gpio_irq_relres(struct irq_data *d) > -{ > - struct gpio_chip *gc = irq_data_get_irq_chip_data(d); > - struct intel_pinctrl *pctrl = gpiochip_get_data(gc); > - int pin; > - > - pin = intel_gpio_to_pin(pctrl, irqd_to_hwirq(d), NULL, NULL); Same here. > - if (pin >= 0) > - gpiochip_unlock_as_irq(gc, pin); > -}