I’m trying to set up the GTE to timestamp interrupts generated by GPIO pins. I have a driver that sets up and interrupt for three GPIO pins and I’m trying to get timestamps for each of the IRQs. The pins in question are GPIO3_PH.03, GPIO_PH.05 and GPIO3_PH.06. The interrupts are firing correctly and the ISR in the driver is being run without issues.
I’m struggling to understand how the GPIO IRQs are mapped to LIC IRQs. From the technical reference manual I understood port H is mapped to GPIO_CTL_4, and indeed registering the GTE event for number 320 (GPIO4_0) provides timestamps. However that is the only interrupt number that is providing events, and I don’t have events from the other two GPIOs.
From what I understood from the reference manual, LIC IRQs should go to the CCPLEX unaggregated, so I should be able to timestamp each interrupt separately, right? I have tried every LIC IRQ GPIO numbers and there’s no events from any other than 320.
I am aware that the GPIOs in the AON GPIO controller would work, but I’m curious whether what I’m trying to do is possible or not, because what I understood from the manuals is that is should be.
Thanks for the reply, I had misconfigured the GPIO interrupt map, which is why it had no effect.
I have a followup question:
I tried using INT1, INT2 and INT3 and it had the effect that I could not get GPIO interrupts anymore for any of those pins. Also there were no GTE events for any of the pins.
Then I tried to change the configuration to use INT0, INT1, INT2. In this configuration, both the interrupts and the GTE events are working for all of the pins as expected. Is there something special about INT0 that it needs to be used?