We are working on getting Linux running on normal side of TrustZone. To do that we have Linux uses RAM base starting at 0x20000000 while the secure side OS uses 128MB starting from 0x10000000. It works but without SMP, Linux seems to hang right after enabling MMU on the secondary cores starting up routines. At the time the identity mapping is used (TTBCR is configured to use TTBR0 only, TTBR0 pointed to the identity mapping - idmap_pgd in Linux) so I thought it could be problems with the value there but upon inspection it seems to be correct, the TTBR0 base address is properly aligned to 16KB (section) and the values there don't seem off. TLB as well as other caches also seems to be properly invalidated.Anyone has any idea what we could be doing wrong here?