exo2: fix bugs in non-core0 bootup

This commit is contained in:
Michael Scire 2020-05-15 10:09:42 -07:00 committed by SciresM
parent fa64bf4951
commit 864b6085a8
2 changed files with 4 additions and 1 deletions

View file

@ -1018,7 +1018,7 @@ namespace ams::secmon {
constexpr u32 ResetVectorHigh = static_cast<u32>((PhysicalTzramProgramResetVector >> BITSIZEOF(u32)));
/* Write our reset vector to the secure boot registers. */
reg::Write(secmon::MemoryRegionVirtualDeviceSystem.GetAddress() + SB_AA64_RESET_LOW, ResetVectorLow);
reg::Write(secmon::MemoryRegionVirtualDeviceSystem.GetAddress() + SB_AA64_RESET_LOW, ResetVectorLow | 1);
reg::Write(secmon::MemoryRegionVirtualDeviceSystem.GetAddress() + SB_AA64_RESET_HIGH, ResetVectorHigh);
/* Disable non-secure writes to the reset vector. */

View file

@ -59,6 +59,9 @@ _ZN3ams6secmon20StartWarmbootVirtualEv:
ldr x20, =0x1F01F67C0
mov sp, x20
/* Setup X18 to point to the global context. */
ldr x18, =0x1F01FA000
/* Perform final warmboot setup. */
bl _ZN3ams6secmon24SetupSocSecurityWarmbootEv