Fixing Christian's e-mail address. On 20 November 2013 17:13, Markus Mayer <[email protected]> wrote: > On 19 November 2013 05:17, Linus Walleij <[email protected]> wrote: >> This uses the new API for tagging GPIO lines as in use by >> IRQs. This enforces a few semantic checks on how the underlying >> GPIO line is used. >> >> Cc: Markus Mayer <[email protected]> >> Cc: Christian Daudt <[email protected]> >> Signed-off-by: Linus Walleij <[email protected]> >> --- >> drivers/gpio/gpio-bcm-kona.c | 20 ++++++++++++++++++++ >> 1 file changed, 20 insertions(+) >> >> diff --git a/drivers/gpio/gpio-bcm-kona.c b/drivers/gpio/gpio-bcm-kona.c >> index 72c927dc3be1..dee6d03a7959 100644 >> --- a/drivers/gpio/gpio-bcm-kona.c >> +++ b/drivers/gpio/gpio-bcm-kona.c >> @@ -449,12 +449,32 @@ static void bcm_kona_gpio_irq_handler(unsigned int >> irq, struct irq_desc *desc) >> chained_irq_exit(chip, desc); >> } >> >> +static unsigned int bcm_kona_gpio_irq_startup(struct irq_data *d) >> +{ >> + struct bcm_kona_gpio *kona_gpio = irq_data_get_irq_chip_data(d); >> + >> + if (gpio_lock_as_irq(&kona_gpio->gpio_chip, d->hwirq)) >> + dev_err(kona_gpio->gpio_chip.dev, >> + "unable to lock HW IRQ %lu for IRQ\n", >> + d->hwirq); >> + return 0; >> +} >> + >> +static void bcm_kona_gpio_irq_shutdown(struct irq_data *d) >> +{ >> + struct bcm_kona_gpio *kona_gpio = irq_data_get_irq_chip_data(d); >> + >> + gpio_unlock_as_irq(&kona_gpio->gpio_chip, d->hwirq); >> +} >> + >> static struct irq_chip bcm_gpio_irq_chip = { >> .name = "bcm-kona-gpio", >> .irq_ack = bcm_kona_gpio_irq_ack, >> .irq_mask = bcm_kona_gpio_irq_mask, >> .irq_unmask = bcm_kona_gpio_irq_unmask, >> .irq_set_type = bcm_kona_gpio_irq_set_type, >> + .irq_startup = bcm_kona_gpio_irq_startup, >> + .irq_shutdown = bcm_kona_gpio_irq_shutdown, >> }; >> >> static struct __initconst of_device_id bcm_kona_gpio_of_match[] = { >> -- >> 1.8.3.1 >> > > I don't know yet why, but as soon as I apply that patch, the cd-gpio > interrupt doesn't seem to get triggered anymore. > > $ grep bcm-kona-gpio /proc/interrupts > 270: 0 bcm-kona-gpio 14 3f1b0000.sdio cd > > The counter remains at 0. If I comment-out the irq_startup & > irq_shutdown assignments to temporarily disable the new code, the > interrupt counter increases again when I insert/remove an SD card. > > Regards, > -Markus
-- Markus Mayer Broadcom Landing Team -- To unsubscribe from this list: send the line "unsubscribe linux-gpio" in the body of a message to [email protected] More majordomo info at http://vger.kernel.org/majordomo-info.html
