我正在开发基于 i.MX8M Mini、Yocto kirkstone、U-Boot v2021.04 的系统。它源自 imx8mm-evk 机器(在 U-Boot v2021.04 中,是 imx8mm-evk-qca-wifi 机器)。
我已经到达步骤 1.8“验证 HAB 事件”。我执行
hab_status命令,但出现 HAB 错误:
U-Boot SPL 2021.04-imx_v2021.04_5.15.5-1.0.0+gf7b43f8b4c (Mar 01 2022 - 07:31:56 +0000)
power_bd71837_init
DDRINFO: start DRAM init
DDRINFO: DRAM rate 3000MTS
DDRINFO:ddrphy calibra
tion done
DDRINFO: ddrmix config done
SEC0: RNG instantiated
Normal Boot
Trying to boot from MMC2
hab fuse not enabled
Authenticate image from DDR location 0x401fcdc0...
NOTICE: BL31: v2.4(release):lf-5.15.5-1.0.0-0-g05f788b9b-dirty
NOTICE: BL31: Built : 05:49:10, Mar 2 2022
U-Boot 2021.04-imx_v2021.04_5.15.5-1.0.0+gf7b43f8b4c (Mar 01 2022 - 07:31:56 +0000)
CPU: i.MX8MMQ rev1.0 1600 MHz (running at 1200 MHz)
CPU: Industrial temperature grade (-40C to 105C) at 42C
Reset cause: POR
Model: ----
DRAM: 2 GiB
MMC: FSL_SDHC: 1, FSL_SDHC: 2
Loading Environment from MMC... *** Warning - bad CRC, using default environment
Fail to setup video link
In: serial
Out: serial
Err: serial
SEC0: RNG instantiated
BuildInfo:
- ATF 05f788b
flash target is MMC:2
Fastboot: Normal
Normal Boot
Autoboot in 3 seconds; press SPACE to abort
u-boot=> hab_status
Secure boot disabled
HAB Configuration: 0xf0, HAB State: 0x66
--------- HAB Event 1 -----------------
event data:
0xdb 0x00 0x14 0x43 0x33 0x0c 0xa0 0x00
0x00 0x00 0x00 0x00 0x40 0x1f 0xdd 0xc0
0x00 0x00 0x00 0x20
STS = HAB_FAILURE (0x33)
RSN = HAB_INV_ASSERTION (0x0C)
CTX = HAB_CTX_ASSERT (0xA0)
ENG = HAB_ENG_ANY (0x00)
--------- HAB Event 2 -----------------
event data:
0xdb 0x00 0x14 0x43 0x33 0x0c 0xa0 0x00
0x00 0x00 0x00 0x00 0x40 0x1f 0xcd 0xc0
0x00 0x00 0x00 0x04
STS = HAB_FAILURE (0x33)
RSN = HAB_INV_ASSERTION (0x0C)
CTX = HAB_CTX_ASSERT (0xA0)
ENG = HAB_ENG_ANY (0x00)
--------- HAB Event 3 -----------------
event data:
0xdb 0x00 0x3c 0x43 0x33 0x18 0xc0 0x00
0xca 0x00 0x34 0x00 0x02 0xc5 0x1d 0x00
0x00 0x00 0x0a 0x30 0x40 0x1f 0xcd 0xc0
0x00 0x00 0x10 0x20 0x40 0x20 0x00 0x00
0x00 0x0d 0x23 0x70 0x40 0x2d 0x23 0x70
0x00 0x00 0xa3 0xca 0x00 0x92 0x00 0x00
0x00 0x00 0xc0 0xc6 0xfe 0x00 0x00 0x00
0x00 0x00 0x00 0x10
STS = HAB_FAILURE (0x33)
RSN = HAB_INV_SIGNATURE (0x18)
CTX = HAB_CTX_COMMAND (0xC0)
ENG = HAB_ENG_ANY (0x00)
u-boot=>
如果我理解我在其他地方读到的内容,这表明它期望一个数据块被签名,但事实并非如此。如果我正在正确读取数据,则有两个块:
- 地址 0x401fddc0,大小 0x20
- 地址 0x401fcdc0,大小 0x04
我有一个以下列结尾的
csf_fit.txt :
[Authenticate Data]
# Key slot index used to authenticate the image data
Verification index = 2
# Authenticate Start Address, Offset, Length and file
Blocks =
0x401fcdc0 0x57c00 0x1020 "imx-boot-machine-sd.bin-flash_evk",
0x40200000 0x5B000 0xD2370 "imx-boot-machine-sd.bin-flash_evk",
0x402D2370 0x12D370 0xA3CA "imx-boot-machine-sd.bin-flash_evk",
0x920000 0x13773C 0xC0C6 "imx-boot-machine-sd.bin-flash_evk",
0xFE000000 0x143804 0x10 "imx-boot-machine-sd.bin-flash_evk"
这些块源自
mkimage输出行
sld hab 块和
print_fit_hab.sh,如上述文档中所述。
那么,民政事务局似乎也希望签署的这些其他区块是什么?