cmd: mvebu/bubt: Check for A38x/A37xx OTP secure bits and secure boot
authorPali Rohár <pali@kernel.org>
Tue, 23 Aug 2022 12:52:24 +0000 (14:52 +0200)
committerStefan Roese <sr@denx.de>
Tue, 13 Sep 2022 04:38:08 +0000 (06:38 +0200)
commitf7b0bbca2b6257c50d4e087322602593a0f279cf
treea56a4c806c9865df74b56c11813fae19dad5d5af
parent5a0653493307796e63227d78e40651096c1ca23a
cmd: mvebu/bubt: Check for A38x/A37xx OTP secure bits and secure boot

For obvious reasons BootROMS rejects unsigned images when secure boot is
enabled in OTP secure bits. So check for OPT secure bits and do not allow
flashing unsigned images when secure boot is enabled. Access to OTP via
U-Boot fuse API is currently implemented only for A38x and A37xx SoCs.

Additionally Armada 3700 BootROM rejects signed trusted image when secure
boot is not enabled in OTP. So add also check for this case. On the other
hand Armada 38x BootROM acceps images with secure boot header when secure
boot is not enabled in OTP.

OTP secure bits may have burned also boot device source. Check it also and
reject flashing images to target storage which does not match OTP.

Signed-off-by: Pali Rohár <pali@kernel.org>
Reviewed-by: Stefan Roese <sr@denx.de>
cmd/mvebu/Kconfig
cmd/mvebu/bubt.c