I want my UART to have highest priority in interrupt handling, so that it can be handled also during lower priority timer interrupts are execute.
How to use the FIQ for this?
This very simple to do.
The IRQ und FIQ related MMRs have all the same bit-layout across the related peripheral blocks. The FIQ exception has a higher priority in the integrated interrupt controller and can suspend the execution of a IRQ exception. To enable i.e. the UART interrupt to be handled as a FIQ the related bit in the FIQEN register needs to set. This automatically clears the UART bit in the IRQEN if set before. Than a interrupt from the UART will be handled as a FIQ exception and the FIQ-exception-handler is called via the FIQ-Vector.
Retrieving data ...