Hi,
OK, after test you mentioned, I found that the Mode Transition, which is done on clock init, is pending due to previous active peripheral clock (PIT ch15). This channel is used by OSIF driver that uses a hardware timer to accurately measure time. OSIF is called when blocking function is used.
So you should disable PIT module before reinit is requested. use below code before your asm lines
PIT->MCR |= PIT_MCR_MDIS_MASK;
__asm__("e_lis %r12,0x00FA");
__asm__("e_or2i %r12,0x0010");
....
BR, Petr