[PATCH] imx/gpio: Use handle_level_irq
linuxzsc at gmail.com
Fri Oct 23 07:27:08 EDT 2009
2009/10/21 Uwe Kleine-König <u.kleine-koenig at pengutronix.de>:
> Hello Sascha,
> On Tue, Oct 20, 2009 at 10:13:03AM +0200, Sascha Hauer wrote:
>> On Mon, Oct 19, 2009 at 10:19:28PM +0200, Uwe Kleine-König wrote:
>> > According to Russell King handle_edge_irq is only useful for "edge-based
>> > inputs where the controller does not remember transitions with the input
>> > masked."
>> > So using handle_edge_irq unconditionally for both edge and level irqs is
>> > wrong. Testing showed that the controller does remember transitions
>> > while the interrupt is masked. So use handle_level_irq unconditionally.
>> As this fixes only rt kernels and we have no reports that something is
>> not working on non rt kernels I suggest putting this into the next merge
> The PMIC on pcm038 doesn't work anymore with handle_edge_irq since I
> switched to using threaded irqs in the driver. But as this won't hit
> mainline before the next merge window that is fine for me, too.
> Best regards
> Pengutronix e.K. | Uwe Kleine-König |
> Industrial Linux Solutions | http://www.pengutronix.de/ |
> linux-arm-kernel mailing list
> linux-arm-kernel at lists.infradead.org
handle_level_irq may lost edge irq request. The controller won't
change ISR when irq's masked.
Why not decide to use handle_level_irq or handle_edge_irq in gpio_set_irq_type?
More information about the linux-arm-kernel