BootConfig: Difference between revisions

No edit summary
Line 5: Line 5:
= Format =
= Format =
Despite having 0x4000 for storage, the actual loaded BootConfig is only 0x640 bytes, with the following format:
Despite having 0x4000 for storage, the actual loaded BootConfig is only 0x640 bytes, with the following format:
{| class="wikitable" border="1"
{| class="wikitable" border="1"
|-
|-
Line 13: Line 14:
| 0x0
| 0x0
| 0x200
| 0x200
| Unsigned Configuration
| [[#Unsigned Configuration]]
|-
|-
| 0x200
| 0x200
Line 21: Line 22:
| 0x300
| 0x300
| 0x100
| 0x100
| Signed Configuration
| [[#Signed Configuration]]
|-
|-
| 0x400
| 0x400
Line 28: Line 29:
|}
|}


= Unsigned Configuration =
This is "nn::bconfig::BootConfig".
{| class="wikitable" border="1"
|-
! Offset
! Size
! Description
|-
| 0x0
| 0x10
|
|-
| 0x10
| 0x1
| IsDebugMode (bit 1) and TakeExtabtSerrorToEl3 (bit 2)
|-
| 0x11
| 0x1
| [[SMC#KernelConfiguration|KernelConfiguration]] (first byte)
|-
| 0x12
| 0xF
|
|-
| 0x21
| 0x1
| [[SMC#KernelConfiguration|KernelConfiguration]] (second byte)
|-
| 0x22
| 0x1
|
|-
| 0x23
| 0x1
| [[SMC#MemoryMode|MemoryMode]]
|-
| 0x24
| 0x1
| HasInitialTscValue
|-
| 0x25
| 0xB
|
|-
| 0x30
| 0x8
| InitialTscValue
|-
| 0x38
| 0x1C8
|
|}


= Signed Config =
= Signed Configuration =
{| class="wikitable" border="1"
{| class="wikitable" border="1"
|-
|-
Line 60: Line 114:
|  
|  
|}
|}
= Unsigned Config =