I am using the following:
Current freeRTOS (5.0.3)
Followed the Rowling/GCC AT91SAM7X demo
I currently create all interrupt code in ARM - naked and wrap the calls with portSAVE_CONTEXT and portRESTORE_CONTEXT. The SAM7 has an AIC and my dilema I only wish to disable/mask certain parts of an interrupt. The example being is that I have a uartISR and a spiISR. When I am dealing with something critical with the UART, I would only like to to mask the UART ISR, not the FIQ and nIQ which in turn disables all interrupts. When I need to disable IRQ’s, I am under the impression that I must only use ENTER_CRITICAL and EXIT_CRITICAL in my code and not try and mask individual interrupt flags (my code breaks if I try this). Am I doing this incorrectly or is that how the demo was created. Does anyone have any idea or can point out other forum postings that deal with this?