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]

 



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...

Yours,
Linus Walleij
--
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