Secure Monitor: Difference between revisions

Moved config vals from SPL_services
as seen on 5.0.1 kernel
Line 225: Line 225:
| 11 || [[#IsDebugMode]]
| 11 || [[#IsDebugMode]]
|-
|-
| 12 || [[#KernelMemoryConfiguration]]
| 12 || [[#UnitConfiguration]]
|-
|-
| 13 || [[#IsChargerHiZModeEnabled]]
| 13 || [[#IsChargerHiZModeEnabled]]
Line 381: Line 381:
The value of this field is loaded from [[BootConfig]] unsigned-config+0x10 u8 bit1.
The value of this field is loaded from [[BootConfig]] unsigned-config+0x10 u8 bit1.


==== KernelMemoryConfiguration ====
==== UnitConfiguration ====
Kernel reads this when setting up memory-related code. If bit0 is set, it will memset various allocated memory-regions with 0x58, 0x59, 0x5A ('X', 'Y', 'Z') instead of zero. This allows Nintendo devs to find uninitialized memory bugs. If bit17-16 is 0b01, the kernel assumes 6GB of DRAM instead of 4GB.
Kernel reads this when setting up memory-related code. If bit0 is set, it will memset various allocated memory-regions with 0x58, 0x59, 0x5A ('X', 'Y', 'Z') instead of zero. This allows Nintendo devs to find uninitialized memory bugs. If bit17-16 is 0b01, the kernel assumes 6GB of DRAM instead of 4GB.
bit1 and bit2 are boolean values.
If bit15-8 is zero, kernel will loop forever without calling smcPanic, nonzero smcPanics with 0xf00 and then loops.


==== IsChargerHiZModeEnabled ====
==== IsChargerHiZModeEnabled ====