When I reset the EVB and then attach with debugger (with 'attach to running target' selected in the startup tab of the debug configuration), if I suspend the program it is in the loop as you are.
However, sending any data to the UART doesn't break the loop. (and no data was sent out the UART before entering that loop) If I look in EmbSys Registers:
LinFlexD_2.LINCR1 = 0x00000090 (expected 0x00000080, set in LINFlexD_2_Init())
LinFlexD_2.UARTCR = 0x00000033 (as expected)
LinFlexD_2.LINSR = 0x00002000
LINFBRR and LINIBRR are set as expected.
SIUL2.MSCR_IO_62 = 0x00090000 (expected 0x32090002, set in SIUL2_Init())
SIUL2.MSCR_MUX_850 = 0x00000000 (expected 0x00000001, set in SIUL2_Init())
If I try to change the value of SIUL2.MSCR_IO_62 or SIUL2.MSCR_MUX_850 in the EmbSys Registers view, it has no effect (value doesn't change).
Also, PA0 has not been pulled low. Even when watching PA0 with logic analyzer, it is not pulled low even momentarily after reset.
Viewing in EmbSys Registers when attached with debugger after standalone boot:
SIUL2.MSCR_IO_0 = 0x00090000 (should be set to 0x12380000 in main())
GPDO0 = 0x00
Thank you for your help troubleshooting this!