blob: d90474ccec3d8a4d30dfe7c97ed227f36fe417b0 [file] [log] [blame]
Svyatoslav Ryhelf8700e42023-02-14 19:35:38 +02001.. SPDX-License-Identifier: GPL-2.0+:
2
3ebtupdate command
Tom Rini79a2dbb2023-02-23 17:32:22 -05004=================
Svyatoslav Ryhelf8700e42023-02-14 19:35:38 +02005
6Synopsis
7--------
8
9::
10
11 ebtupdate [<bct> [<ebt>] [<size>]]
12
13Description
14-----------
15
16The "ebtupdate" command is used to self-update bootloader on Tegra 2 and Tegra 3
17production devices which were processed using re-cryption.
18
19The "ebtupdate" performs encryption of new bootloader and decryption, patching
20and re-encryption of BCT "in situ". After BCT and bootloader can be written in
21their respective places.
22
23bct
24 address of BCT block pre-loaded into RAM.
25
26ebt
27 address of the bootloader pre-loaded into RAM.
28
29size
30 size of the pre-loaded bootloader.
31
32Example
33-------
34
35This is the boot log of a LG Optimus Vu:
36
37::
38
39 => mmc dev 0 1
40 switch to partitions #1, OK
41 mmc0(part 1) is current device
42 => mmc read $kernel_addr_r 0 $boot_block_size
43 MMC read: dev # 0, block # 0, count 4096 ... 4096 blocks read: OK
44 => load mmc 0:1 $ramdisk_addr_r $bootloader_file
45 684783 bytes read in 44 ms (14.8 MiB/s)
46 => size mmc 0:1 $bootloader_file
47 => ebtupdate $kernel_addr_r $ramdisk_addr_r $filesize
48 => mmc dev 0 1
49 switch to partitions #1, OK
50 mmc0(part 1) is current device
51 => mmc write $kernel_addr_r 0 $boot_block_size
52 MMC write: dev # 0, block # 0, count 4096 ... 4096 blocks written: OK
53 => mmc dev 0 2
54 switch to partitions #2, OK
55 mmc0(part 2) is current device
56 => mmc write $ramdisk_addr_r 0 $boot_block_size
57 MMC write: dev # 0, block # 0, count 4096 ... 4096 blocks written: OK
58
59Configuration
60-------------
61
62The ebtupdate command is only available if CONFIG_CMD_EBTUPDATE=y and
63only on Tegra 2 and Tegra 3 configurations.
64
65Return value
66------------
67
68The return value $? is set to 0 (true) if everything went successfully. If an
69error occurs, the return value $? is set to 1 (false).