GPIO interrupt not working on Zynq7000

Greg Gallagher greg at embeddedgreg.com
Wed Mar 4 14:57:46 CET 2020


Hi,

On Wed, Mar 4, 2020 at 4:01 AM François Legal via Xenomai <
xenomai at xenomai.org> wrote:

> Hello,
>
> trying to diagnose an interrupt problem on a Zynq 7000 hardware. The
> environment is linux 4.4.189, xenomai 3.0.9.
>
> I'm trying to trig some realtime thread pending on a gpio read.
>
> At the beginning, the system would freeze if the GPIO pin was toggled,
> because the GPIO int pending status was never cleared by the existing code.

how do you clear it? Do you call one of the irqchip functions?

>
> So now I don't get the system freeze anymore, however, the RTDM gpio  irq
> handler never gets called whenever the interrupt is raised.
>
It’s possible what you called to clear the irq has also masked the
interrupt and requires a unmask. Can you post a patch of what you did?


> I'm not sure how to diagnose that. For what I could see, the IRQ is
> registered in ipipe domain "xnsched_realtime_domain", and I'm not sure if
> that matches "ipipe_head_domain" that is


Are you using the rtdm gpio driver? Or is this a custom rtdm driver using
the gpio directly?


>
> Any help appreciated
>
> François
>

Greg

>
>
>


More information about the Xenomai mailing list