On Wed, Sep 16, 2009 at 07:03:18PM +0400, Dmitry Eremin-Solenikov wrote: > There is nothing that disallows gpio-keys to share it's IRQ line > w/ other drivers. Make it use IRQF_SHARED in request_irq(). > > An example of other driver with which I'd like to share IRQ line > for GPIO buttons is ledtrig-gpio. > > Signed-off-by: Dmitry Eremin-Solenikov <dbaryshkov@xxxxxxxxx> > --- > drivers/input/keyboard/gpio_keys.c | 1 + > 1 files changed, 1 insertions(+), 0 deletions(-) > > diff --git a/drivers/input/keyboard/gpio_keys.c b/drivers/input/keyboard/gpio_keys.c > index efed0c9..9fc2fab 100644 > --- a/drivers/input/keyboard/gpio_keys.c > +++ b/drivers/input/keyboard/gpio_keys.c > @@ -147,6 +147,7 @@ static int __devinit gpio_keys_probe(struct platform_device *pdev) > } > > error = request_irq(irq, gpio_keys_isr, > + IRQF_SHARED | > IRQF_TRIGGER_RISING | IRQF_TRIGGER_FALLING, > button->desc ? button->desc : "gpio_keys", > bdata); How will you determine which device generated the interrupt? Because you can't return IRQ_HANDLED unconditionally and expect both devices work reliably. -- Dmitry -- To unsubscribe from this list: send the line "unsubscribe linux-input" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html