Hi Mark, thanks for your quick reply. I have read the information provided on the ARM Cortex M4 web site. I have also read through the K20 documentation. In short, set up looks pretty good.
The code below shows I have the priority set up with PORTA being the highest.
Address 0xE000E459 NVICIP61 USB = 0x20
Address 0xE000E43D NVICIP61 UART = 0x20
Address 0xE000E467 NVICIP103 PORTA = 0x00
I confirm this by looking both at the System Watch panel in the PE debugger and a memory watch window. (FIG 1)

FIG 2 shows a scope shot of the operation (hardware pin toggle high when we are in an interrupt)
Yellow UART0 - interrupt routine
Pink PORTA - signal that causes interrupt
Blue PORTA - interrupt routine (for this discussion disregard Blue X pulse … another PORTA interrupt source)

Put simply - we can see that the blue is not preempting the yellow but holding off until the yellow is complete.
Is there something I must do in the interrupt routine of the UART to allow the PORTA interrupt to preempt?
One curious thing came across, in the debugger I could write a value to the NVICIP61 (UART) register and it would take it (say 0x30, 0x40 etc). This is not true for
the NVICIP103 (PORTA). If a value is written such as 0x30 it reads back as 0x00. I don't think this affects anything as I want NVICIP103 to be 0x00.
Again, any ideas would be helpfull. Thanks