I’m running FreeRTOS on a Zynq 7000 (dual core ARM Cortex-A9, but only using 1 core for FreeRTOS). I enabled FPGA2 interrupt (IntID 63) with the following:
XScuGic_Connect( &xInterruptController, XPS_FPGA2_INT_ID, (Xil_ExceptionHandler) FPGA2_IntHandler, NULL); XScuGic_SetPriorityTriggerType( &xInterruptController, XPS_FPGA2_INT_ID, configMAX_API_CALL_INTERRUPT_PRIORITY << portPRIORITY_SHIFT, 3 ); XScuGic_Enable(&xInterruptController, XPS_FPGA2_INT_ID);
The FreeRTOS tick timer interrupt handler is triggering, but not this FPGA2 interrupt handler. I can see the interrupt input line toggling on spi_status_0 register. This code on a bare-metal application triggers the FPGA2 interrupt handler, but not in FreeRTOS. Anyone know what I’m missing?
Thanks for your help.