1/* 2 * (C) Copyright 2015 3 * 4 * SPDX-License-Identifier: GPL-2.0+ 5 */ 6 7esbc_validate command 8======================================== 9 101. esbc_validate command is meant for validating header and 11 signature of images (Boot Script and ESBC uboot client). 12 SHA-256 and RSA operations are performed using SEC block in HW. 13 This command works on both PBL based and Non PBL based Freescale 14 platforms. 15 Command usage: 16 esbc_validate img_hdr_addr [pub_key_hash] 17 esbc_validate hdr_addr <hash_val> 18 Validates signature using RSA verification. 19 $hdr_addr Address of header of the image to be validated. 20 $hash_val -Optional. It provides Hash of public/srk key to be 21 used to verify signature. 22 232. ESBC uboot client can be linux. Additionally, rootfs and device 24 tree blob can also be signed. 253. In the event of header or signature failure in validation, 26 ITS and ITF bits determine further course of action. 274. In case of soft failure, appropriate error is dumped on console. 285. In case of hard failure, SoC is issued RESET REQUEST after 29 dumping error on the console. 306. KEY REVOCATION Feature: 31 QorIQ platforms like B4/T4 have support of srk key table and key 32 revocation in ISBC code in Silicon. 33 The srk key table allows the user to have a key table with multiple 34 keys and revoke any key in case of particular key gets compromised. 35 In case the ISBC code uses the key revocation and srk key table to 36 verify the u-boot code, the subsequent chain of trust should also 37 use the same. 386. ISBC KEY EXTENSION Feature: 39 This feature allows large number of keys to be used for esbc validation 40 of images. A set of public keys is being signed and validated by ISBC 41 which can be further used for esbc validation of images. 42