1.. SPDX-License-Identifier: GPL-2.0+: 2 3ebtupdate command 4================= 5 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). 70