I want to enable NVIC interrupt controller in CM7 of PIMX8ML8DVNLZAB processor. According to “IMX8MPRM reference manual” I used GPIO1_0 to GPIO1_7 to enable INT0-INT7 which are related to IRQ 63 to 56 respectively. Furthermore, I defined GPIO1_Combgfdhined_0_15_IRQHandler as a callback for interrupt event and the pin configuration is as follows:
gpio_pin_config_t exi_config = {kGPIO_DigitalInput , 0, kGPIO_IntRisingOrFallingEdge};
IOMUXC_SetPinMux(IOMUXC_GPIO1_IO01_GPIO1_IO01, 1U);
IOMUXC_SetPinConfig(IOMUXC_GPIO1_IO01_GPIO1_IO01, IOMUXC_SW_PAD_CTL_PAD_DSE(3U) |
IOMUXC_SW_PAD_CTL_PAD_PUE_MASK | IOMUXC_SW_PAD_CTL_PAD_PE_MASK);
. For exi_config I have tested all other cases such as kGPIO_IntRisingEdge, kGPIO_IntFallingEdge and I tested both SION enable and disable cases. However, none of these changes works. And I am still unable to use NVIC of CM7. I checked the MCUXpresso SDK for IMX8ML8xxxLZ series and I couldn’t find any input-interrupt example.
Could you please explain if there is any other requirement? I have attached the code. I configured pins in pin_mux.c and enable interrupt controller in test_nvic.c
Please consider that there is another interrupt controller GIC which is available through Linux. I have tested GIC interrupt controller with this code for GPIO3_14 or GPIO1_11 and it works. However, I need the interrupt controller of CM7 (NVIC) which is completely independent of Linux and Cortex-A.