我试图在u-boot中为gumstix overo storm启用安全启动。 基于http://www.denx-cs.de/doku/?q=m28verifiedboot
我用SD卡准备好后,u-boot无法启动并提供以下错误信息。
SELECT
SomeField,
SomeOtherField
这是我正在使用的u-boot.dts文件。
U-Boot SPL 2015.07 (Apr 28 2016 - 13:53:06)
SPL: Please implement spl_start_uboot() for your board
SPL: Direct Linux boot not active!
reading u-boot.img
spl_load_image_fat: error reading image u-boot.img, err - -1
SPL: Please implement spl_start_uboot() for your board
SPL: Direct Linux boot not active!
Failed to mount ext2 filesystem...
spl_load_image_ext: ext4fs mount err - 0
================
生成u-boot.dtb, dtc -p 0x1000 /work/u-boot.dts -O dtb -o /work/u-boot.dtb
这些是我添加到conf / configs / omap3_overo.h
的内容/dts-v1/;
/ {
model = "Keys";
signature {
key-dev {
required = "conf";
algo = "sha1,rsa2048";
key-name-hint = "my_key";
};
};
};
我正在使用以下行编译u-boot:
make ARCH = arm CROSS_COMPILE = arm-linux-gnueabi- EXT_DTB = / work / u-boot.dtb all -j4
如果您对如何调试此问题有任何想法,请与我们联系。
===================
有更新。
**
#define CONFIG_OF_CONTROL
#define CONFIG_OF_SEPARATE
#define CONFIG_FIT
#define CONFIG_FIT_SIGNATURE
#define CONFIG_RSA
#define CONFIG_FIT_VERBOSE
**
正如doc / uImage.FIT / beaglebone_vboot.txt中提到的,我尝试了脚本 - tools / fit_check_sign,其输出正常。能够验证签名。
所以仍然不知道,确切的问题是什么,为什么我收到上述错误消息。 我搜索了UCLASS_MOD_EXP,/ * RSA Mod Exp设备* /,但无法获得更多信息。
什么是RSA Mod Exp设备以及如何确保我拥有它?
任何调试输入都会非常有用。
编辑:
Overo #
## Loading kernel from FIT Image at 82000000 ...
Using 'conf@1' configuration
Verifying Hash Integrity ... sha1,rsa2048:my_keyRSA: Can't find Modular Exp implementation
RSA: Can't find Modular Exp implementation
- Failed to verify required signature 'key-my_key'
Bad Data Hash
ERROR: can't get kernel image!
Overo #
答案 0 :(得分:1)
嗯,要解决的第一个问题是:
reading u-boot.img
spl_load_image_fat: error reading image u-boot.img, err - -1
你的SD卡也有u-boot.img吗?请注意,您链接到的示例 NOT 执行SPL,而是使用旧样式(但仍然是功能和支持的)imximage格式,而不是像i.MX上的那样,并且您使用的是OMAP3平台。在这种情况下,阅读doc / uImage.FIT / beaglebone_vboot.txt对你很有帮助,因为am335x(在beaglebone板上找到的)是OMAP3部分的演变而不是不同的SoC供应商(比如i.MX vs OMAP3是)。
编辑: 现在我们正在加载正确的文件,在v2015.07中这些文件尚未迁移到Kconfig。你启用了CONFIG_RSA吗?看看在各种配置标头和树的其余部分下在ENABLE_VBOOT下完成的操作,你需要做类似的事情。