BCT: Difference between revisions
Created page with "BCT (Boot Configuration Table) is a data structure present on Tegra based devices that supplies boot time configuration parameters. The Switch's BCT is included in the firmwa..." |
No edit summary |
||
Line 6: | Line 6: | ||
= Structure = | = Structure = | ||
== NAND == | |||
Below is the BCT structure used by the Switch, which is a minimal variation of the Tegra 210 BCT format. | Below is the BCT structure used by the Switch, which is a minimal variation of the Tegra 210 BCT format. | ||
Line 49: | Line 50: | ||
| 0x0444 | | 0x0444 | ||
| 0xCC | | 0xCC | ||
| customer_data | | [[#BCT#customer_data|customer_data]] | ||
| Data block available for the customer. Used in key generation. | | Data block available for the customer. Used in key generation. | ||
0x0444: padding_0x0C | 0x0444: padding_0x0C | ||
Line 200: | Line 201: | ||
| Empty. | | Empty. | ||
|- | |- | ||
|} | |||
=== customer_data === | |||
This data block is ignored by the boot ROM, therefore is available for the programmer to use freely. | |||
The Switch uses 0xB0 bytes of this area, at offset 0x0450, to store the active [[#Flash_Filesystem#Keyblob|keyblob]]. All remaining bytes are zero. | |||
The first bootloader validates and decrypts this block for further key generation. | |||
The decrypted keyblob payload is as follows. | |||
{| class="wikitable" border="1" | |||
|- | |||
! Offset | |||
! Size | |||
! Description | |||
|- | |||
| 0x0 | |||
| 0x80 | |||
| Array of master static key encryption keys | |||
|- | |||
| 0x80 | |||
| 0x10 | |||
| [[Package1|Stage 2]] key | |||
|} | |} | ||