Message ID | a07cbd61db83c3308dd76f7c0f481477@doppler.thel33t.co.uk (mailing list archive) |
---|---|
State | Awaiting Upstream, archived |
Headers | show |
Hi, On Sun, Jun 19, 2011 at 07:00:13PM +0000, Leigh Brown wrote: > Many thanks for trying to assist me with my problem. To recap, yeah, no problem ;-) > I'm seeing the keypad lock-up on my N810 using this driver, > when I type quickly. > > I tried your patch, and it doesn't fix the issue. However, I've > read the datasheet for the lm8323 and it looks to me like the > interrupt should be level rather than edge triggered. > > The following additional patch makes things work for me. I > couldn't tell you if it's the correct thing to do but I can no > longer cause the keypad to lock-up by typing too fast. good good. Looks like IRQF_ONESHOT is what did the trick. Did you check if IRQF_ONESHOT alone was enough ?
On Sun, 19 Jun 2011 22:56:06 +0300, Felipe Balbi wrote: > Hi, > > On Sun, Jun 19, 2011 at 07:00:13PM +0000, Leigh Brown wrote: >> Many thanks for trying to assist me with my problem. To recap, > > yeah, no problem ;-) > >> I'm seeing the keypad lock-up on my N810 using this driver, >> when I type quickly. >> >> I tried your patch, and it doesn't fix the issue. However, I've >> read the datasheet for the lm8323 and it looks to me like the >> interrupt should be level rather than edge triggered. >> >> The following additional patch makes things work for me. I >> couldn't tell you if it's the correct thing to do but I can no >> longer cause the keypad to lock-up by typing too fast. > > good good. Looks like IRQF_ONESHOT is what did the trick. > > Did you check if IRQF_ONESHOT alone was enough ? I tried that first, but it didn't fix it, although it makes it a little bit harder to trigger. I've just tried again to be sure, but I got a lock-up quite easily. Regards, Leigh. -- To unsubscribe from this list: send the line "unsubscribe linux-omap" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Hi, On Sun, Jun 19, 2011 at 11:01:43PM +0100, Leigh Brown wrote: > On Sun, 19 Jun 2011 22:56:06 +0300, Felipe Balbi wrote: > >Hi, > > > >On Sun, Jun 19, 2011 at 07:00:13PM +0000, Leigh Brown wrote: > >>Many thanks for trying to assist me with my problem. To recap, > > > >yeah, no problem ;-) > > > >>I'm seeing the keypad lock-up on my N810 using this driver, > >>when I type quickly. > >> > >>I tried your patch, and it doesn't fix the issue. However, I've > >>read the datasheet for the lm8323 and it looks to me like the > >>interrupt should be level rather than edge triggered. > >> > >>The following additional patch makes things work for me. I > >>couldn't tell you if it's the correct thing to do but I can no > >>longer cause the keypad to lock-up by typing too fast. > > > >good good. Looks like IRQF_ONESHOT is what did the trick. > > > >Did you check if IRQF_ONESHOT alone was enough ? > > I tried that first, but it didn't fix it, although it makes it a > little bit harder to trigger. I've just tried again to be sure, > but I got a lock-up quite easily. Ok, cool thanks... Can you send your patch as a proper patch (with your Signed-off-by line and everything) saying that it fixes the lock up ? My patch converts to threaded IRQ and yours fixes the triggering ;-)
diff --git a/drivers/input/keyboard/lm8323.c b/drivers/input/keyboard/lm8323.c index 3b21f42..ab0acaf 100644 --- a/drivers/input/keyboard/lm8323.c +++ b/drivers/input/keyboard/lm8323.c @@ -734,7 +734,7 @@ static int __devinit lm8323_probe(struct i2c_client *client, } err = request_threaded_irq(client->irq, NULL, lm8323_irq, - IRQF_TRIGGER_FALLING, "lm8323", lm); + IRQF_TRIGGER_LOW|IRQF_ONESHOT, "lm8323", lm); if (err) { dev_err(&client->dev, "could not get IRQ %d\n", client->irq);