![从 x86 系统上的 dts 文件获取配置](https://linux22.com/image/172782/%E4%BB%8E%20x86%20%E7%B3%BB%E7%BB%9F%E4%B8%8A%E7%9A%84%20dts%20%E6%96%87%E4%BB%B6%E8%8E%B7%E5%8F%96%E9%85%8D%E7%BD%AE.png)
项目中有一个需求,我们必须从设备树中获取设备的某些配置值。
我能够.dtb
从.dts
文件生成设备树 blob ( )。显然有一个名为 GRUB 的命令,devicetree
使用它我们可以将设备树 blob 传递给内核并使用其中的 API<linux/of.h>
来提取参数。
但是每当我在 GRUB 命令行中使用该命令时devicetree
,我都会收到一条错误消息“找不到命令”。当我输入时,该命令不存在于列表中help
,但存在于GRUB手册。
我在这里做错了什么?在 x86 系统上的 GRUB 中使用设备树的过程是什么?
答案1
检查您的 grub 版本。几年前我也遇到过类似的情况。结果发现 grub 文档适用于 2.02 版本,而我们的软件(Wind River Linux 8)中的版本是 2.00 版本,并且缺少我们想要使用的功能。我们最终从源代码构建 grub,将 2.02 版本纳入我们的构建中。