我用的是Yocto Warrior和SPI TPM ST33HTPH2X32AHD4。
我添加了这些配方: tpm2-abrmd,tpm2-tools,rng-tools,tpm2-tss。另外,我在内核上设置了以下开关:
CONFIG_TCG_TPM=m
CONFIG_TCG_CRB=y
CONFIG_TCG_TIS=m
CONFIG_TCG_TIS_CORE=m
CONFIG_TCG_TIS_SPI=m
CONFIG_TCG_TIS_ST33ZP24=m
CONFIG_TCG_TIS_ST33ZP24_SPI=m
CONFIG_HW_RANDOM_TPM=m最后,我在dts上插入:
&spi0 {
status = "okay";
clock-frequency = <20000000>;
// st tpm
st,st33htpm-spi@0 {
compatible = "st,st33htpm-spi";
spi-max-frequency = <20000000>;
reg = <0>;
};
};我构建了映像,但无法使用TPM...每个tpm实用程序都找不到/dev/tpm。我该怎么做呢?我也应该更新u-boot吗?
发布于 2020-08-27 18:19:40
您确定模块已安装到rootfs中吗?如果IMAGE_INSTALL中没有内核模块包,则可以编译模块,但不能将其安装到根文件系统中。
请验证是否:
TPM模块已存在(在/lib/modules/)
无需更改U-Boot即可在Linux中使用TPM。
发布于 2020-11-18 16:32:10
我下定决心了。这是我的错,因为我在内核开关和DTB上都使用了git diff的补丁。内核开关必须通过添加一个简单的enable.cfg文件来修改
https://stackoverflow.com/questions/63524435
复制相似问题