I try run an unprivileged application in secure mode and get a strange behavior:
STM32U5 has TZ enabled, all application runs in secure mode.
1) LR = 0xffff_fff9, CONTROL = 1 => BX LR increments the SP, but all registers become 0 (including PC and XPSR!)
2) When setting CONTROL = 1 and executing SVC, SP is decremented correctly, but nothing is stored on the stack?
I check all errata I could find, but no hint.
If TZ is disabled, the system behaves normal.
The "problem" is the STM32 TZC which returns 0 on unprivileged reads and ignores unprivileged writes w/o issueing an exception.