On 25 February 2016 at 22:44, Joachim Eastwood <manabian@xxxxxxxxx> wrote: > Some background here: > The LPC1850 has no less than 3 GPIO interrupt blocks. One of these > blocks is called 'gpio pin interrupt' or just PINT. LPC1850 PINT can > handle up to 8 interrupts and these have a one-to-one relationship with > the main interrupt controller (NVIC). > > Selecting which GPIOs that are associated with PINT irq lines is done in > pinctrl hw block (SCU). The pinctrl device usually deals with the pin > namespace but PINT selecction is done in the GPIO namespace. Fortunatly > there is a function that can translate from the pin namespace to the > GPIO namespace. > > Selection is done in DT with the "nxp,gpio-pin-interrupt" property. > Example usage; > &pinctrl { > gpio_joystick_1_cfg { > pins = "p9_0"; > function = "gpio"; > nxp,gpio-pin-interrupt = <0>; > input-enable; > bias-disable; > }; > }; > > The reason for not doing this irq line selection on the fly in the > irqchip driver is that the registers lie in the SCU hw block not in the > PINT block and DT gives you more control since you can select a specific > irq lines easily. > > The irq chip driver is ready but will posted separately. oh, I forgot to add the change log. Here it is: Changes since v1: - Add ack from Rob on DT doc - rename __pinctrl_find_gpio_range_from_pin to pinctrl_find_gpio_range_from_pin_nolock regards, Joachim Eastwood -- To unsubscribe from this list: send the line "unsubscribe linux-gpio" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html