BCT: Difference between revisions
Jump to navigation
Jump to search
Created page with "BCT (Boot Configuration Table) is a data structure present on Tegra based devices that supplies boot time configuration parameters. The Switch 2 can use different types of BCTs with the BRBCT (BootROM BCT) being installed into the first bytes of UFS storage's LUN0 and LUN1. = Structure = == BRBCT == {| class="wikitable" border="1" |- ! Offset ! Size ! Description |- | 0x0 | 0x4 | Magic ("BCTB") |- | 0x4 | 0x4..." |
No edit summary |
||
Line 17: | Line 17: | ||
| 0x4 | | 0x4 | ||
| 0x40 | | 0x40 | ||
| | | BctHash (SHA-512 hash over data from 0x44 to 0x2000) | ||
|- | |- | ||
| 0x44 | | 0x44 | ||
| 0x180 | | 0x180 | ||
| | | Pcp | ||
|- | |- | ||
| 0x1C4 | | 0x1C4 | ||
| 0x40 | | 0x40 | ||
| | | CryptoHash (SHA-512 hash over data from 0x1200 to 0x2000) | ||
|- | |- | ||
| 0x204 | | 0x204 | ||
| 0xB10 | | 0xB10 | ||
| | | CryptoSignature | ||
|- | |- | ||
| 0xD14 | | 0xD14 | ||
Line 64: | Line 64: | ||
|- | |- | ||
| 0x48 | | 0x48 | ||
| 0xC0 ( | | 0xC0 (0x30 * 4) | ||
| BlInfo | | [[#BlInfo|BlInfo]] | ||
|- | |- | ||
| 0x108 | | 0x108 | ||
| | | 0x1 | ||
| | | VerMajor | ||
|- | |||
| 0x109 | |||
| 0x1 | |||
| VerMinor | |||
|- | |||
| 0x10A | |||
| 0x1 | |||
| RatchetLevel | |||
|- | |||
| 0x10B | |||
| 0x1 | |||
| RevokePk | |||
|- | |- | ||
| 0x10C | | 0x10C | ||
Line 113: | Line 125: | ||
| 0x7F0 | | 0x7F0 | ||
| 0x4 | | 0x4 | ||
| BfBlBits | | [[#BfBlBits|BfBlBits]] | ||
|- | |- | ||
| 0x7F4 | | 0x7F4 | ||
Line 136: | Line 148: | ||
|- | |- | ||
| 0x8C0 | | 0x8C0 | ||
| | | 0x4FC | ||
| | | | ||
|- | |||
| 0xDBC | |||
| 0x44 | |||
| Digest | |||
|} | |} | ||
Line 157: | Line 173: | ||
| 0x8 | | 0x8 | ||
| 0x4 | | 0x4 | ||
| | | | ||
|- | |- | ||
| 0xC | | 0xC | ||
| 0x4 | | 0x4 | ||
| | | | ||
|- | |||
| 0x10 | |||
| 0x20 | |||
| | |||
|} | |||
==== BfBlBits ==== | |||
{| class="wikitable" border="1" | |||
! Bits | |||
! Description | |||
|- | |||
| 0 | |||
| GpioSelectBootChain | |||
|- | |||
| 1 | |||
| Mb1DebugProduction | |||
|- | |||
| 2 | |||
| Sc7RfDebugProduction | |||
|- | |||
| 3 | |||
| PscBlDebugProduction | |||
|- | |||
| 4 | |||
| PscRfDebugProduction | |||
|- | |||
| 5 | |||
| PscFwDebugProduction | |||
|- | |||
| 6 | |||
| BpmpDebugProduction | |||
|- | |||
| 7 | |||
| BpmpIstDebugProduction | |||
|- | |||
| 8 | |||
| MceDebugProduction | |||
|- | |||
| 9 | |||
| IstCcplexDebugProduction | |||
|- | |||
| 10 | |||
| IstFwDebugProduction | |||
|- | |||
| 11 | |||
| RtcRailViolationDetect | |||
|- | |||
| 12 | |||
| CustNvCcplexDfdEn | |||
|- | |||
| 13 | |||
| DebugWithTestKeys | |||
|- | |||
| 14 | |||
| DebugWithTestKeysDuringPscDebug | |||
|- | |||
| 15 | |||
| DisableBootromClockBoost | |||
|- | |||
| 16 | |||
| DisablePscromClkBoost | |||
|- | |||
| 17 | |||
| EnableScpmReset | |||
|- | |||
| 18 | |||
| SkipOemAuthDiagBoot | |||
|- | |||
| 19 | |||
| DiagBoot | |||
|- | |||
| 20 | |||
| BpmpDiagBoot | |||
|- | |||
| 21 | |||
| L0Ist | |||
|- | |||
| 22 | |||
| L1Ist | |||
|- | |||
| 23-31 | |||
| | |||
|} | |} |
Revision as of 03:53, 17 June 2025
BCT (Boot Configuration Table) is a data structure present on Tegra based devices that supplies boot time configuration parameters.
The Switch 2 can use different types of BCTs with the BRBCT (BootROM BCT) being installed into the first bytes of UFS storage's LUN0 and LUN1.
Structure
BRBCT
Offset | Size | Description |
---|---|---|
0x0 | 0x4 | Magic ("BCTB") |
0x4 | 0x40 | BctHash (SHA-512 hash over data from 0x44 to 0x2000) |
0x44 | 0x180 | Pcp |
0x1C4 | 0x40 | CryptoHash (SHA-512 hash over data from 0x1200 to 0x2000) |
0x204 | 0xB10 | CryptoSignature |
0xD14 | 0x400 | CustomerInfo |
0x1114 | 0xEC | |
0x1200 | 0xE00 | SignedSect |
SignedSect
Offset | Size | Description |
---|---|---|
0x0 | 0x10 | |
0x10 | 0x4 | Magic ("BCTB") |
0x14 | 0x38 | |
0x48 | 0xC0 (0x30 * 4) | BlInfo |
0x108 | 0x1 | VerMajor |
0x109 | 0x1 | VerMinor |
0x10A | 0x1 | RatchetLevel |
0x10B | 0x1 | RevokePk |
0x10C | 0x400 | CustomerInfo |
0x50C | 0x294 | |
0x7A0 | 0x10 | Ecid |
0x7B0 | 0x28 | |
0x7D8 | 0x4 | NonGpioSelectBootChain |
0x7DC | 0x4 | BootLoadersUsed |
0x7E0 | 0x4 | SecureDebugControlNoneEcid |
0x7E4 | 0x4 | SecureDebugControlEcid |
0x7E8 | 0x4 | PreprodDevSign |
0x7EC | 0x4 | SecProvisioningKeynumSecure |
0x7F0 | 0x4 | BfBlBits |
0x7F4 | 0x87 | |
0x87B | 0x20 | SecProvisionDerivationString1 |
0x89B | 0x20 | SecProvisionDerivationString2 |
0x8BB | 0x1 | |
0x8BC | 0x4 | SoftSkuOverwrite |
0x8C0 | 0x4FC | |
0xDBC | 0x44 | Digest |
BlInfo
Offset | Size | Description |
---|---|---|
0x0 | 0x4 | StartBlock |
0x4 | 0x4 | StartPage |
0x8 | 0x4 | |
0xC | 0x4 | |
0x10 | 0x20 |
BfBlBits
Bits | Description |
---|---|
0 | GpioSelectBootChain |
1 | Mb1DebugProduction |
2 | Sc7RfDebugProduction |
3 | PscBlDebugProduction |
4 | PscRfDebugProduction |
5 | PscFwDebugProduction |
6 | BpmpDebugProduction |
7 | BpmpIstDebugProduction |
8 | MceDebugProduction |
9 | IstCcplexDebugProduction |
10 | IstFwDebugProduction |
11 | RtcRailViolationDetect |
12 | CustNvCcplexDfdEn |
13 | DebugWithTestKeys |
14 | DebugWithTestKeysDuringPscDebug |
15 | DisableBootromClockBoost |
16 | DisablePscromClkBoost |
17 | EnableScpmReset |
18 | SkipOemAuthDiagBoot |
19 | DiagBoot |
20 | BpmpDiagBoot |
21 | L0Ist |
22 | L1Ist |
23-31 |