Re: [PATCH 2/3] gpio: zynq: Clear pending interrupt when enabling a IRQ

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Lars-Peter,

On Wed, Jul 23, 2014 at 11:12 PM, Sören Brinkmann
<soren.brinkmann@xxxxxxxxxx> wrote:
> On Wed, 2014-07-23 at 04:31PM +0200, Linus Walleij wrote:
>> On Fri, Jul 18, 2014 at 11:52 AM, Lars-Peter Clausen <lars@xxxxxxxxxx> wrote:
>>
>> > The Zynq GPIO controller does not disable the interrupt detection when the
>> > interrupt is masked and only disables the propagation of the interrupt. This
>> > means when the controller detects an interrupt condition while the interrupt is
>> > logically disabled (and masked) it will propagate the recorded interrupt event
>> > once the interrupt is enabled. This will cause the interrupt consumer to see
>> > spurious interrupts to prevent this first make sure that the interrupt is not
>> > asserted and then enable it.
>> >
>> > E.g. when a interrupt is requested with request_irq() it will be configured
>> > according to the requested type (edge/level triggered, etc.) after that it will
>> > be enabled. But the detection circuit might have already registered a false
>> > interrupt before the interrupt type was correctly configured and once the
>> > interrupt is unmasked this false interrupt will be propagated and the interrupt
>> > handler for the just request interrupt will called.
>> >
>> > Signed-off-by: Lars-Peter Clausen <lars@xxxxxxxxxx>
>>
>> Seems like you know what you're doing.
>>
>> Patch tentatively applied unless Harini or Soren protests...
>
> All these things look good to me, though I thought I had tested
> interrupts on banks other than zero, but it might have slipped through.
>

Sorry for the delay - I was away for a few days.
The change looks OK to me.

Regards,
Harini
--
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




[Index of Archives]     [Linux SPI]     [Linux Kernel]     [Linux ARM (vger)]     [Linux ARM MSM]     [Linux Omap]     [Linux Arm]     [Linux Tegra]     [Fedora ARM]     [Linux for Samsung SOC]     [eCos]     [Linux Fastboot]     [Gcc Help]     [Git]     [DCCP]     [IETF Announce]     [Security]     [Linux MIPS]     [Yosemite Campsites]

  Powered by Linux