yocto 构建中结合了用户 space 和设备树配方
user space and device tree recipe combined in yocto build
我正在尝试创建一个由依赖于特定外围接口 spi 的用户应用程序组成的食谱
我已经创建了相同的配方,但只有应用程序成为构建映像的一部分。
我该如何修改以及修改哪些内容以包含设备树?
MKI-33Axx.dts 是我的平台设备树,我的修改仅针对 spi 在此文件中,我希望拾取此文件而不是原始文件。
我读过
KERNEL_DEVICETREE_append 需要提供修改后的“dtb”文件而不是 dts file.Do 我必须单独编译设备树然后在构建映像后将其添加到映像中?
但是我对此仍然不清楚。
有人可以告诉我如何以及在哪里激活它吗?
这样我就可以将此设备树更改也附加到我的食谱中。
KERNEL_DEVICETREE变量用于指定需要生成并添加到boot分区的设备树文件,但是bootloader在启动时只会在RAM中加载其中一个。
例如,对于 U-boot,将使用开发板的 defconfig 文件中 DEFAULT_FDT_FILE 中指定的文件。但是您可以通过暂停 U-boot 并指定 DTB 文件来更改 DTB:
setenv fdt_file new_file.dtb (make sure of "fdt_file" var with "printenv")
您可以使用 recipetool 将新的设备树文件自动添加到您的 linux 配方中,查看我的回答 。
您不必单独编译 DTS,因为将它添加到 KERNEL_DEVICETREE 变量会导致它在启动分区中被传送。
对Linux内核的任何修改都可以添加到:
meta-custom/recipes-kernel/linux/linux-(PROVIDER)_%.append
可以在机器配置文件中找到 (PROVIDER),它是 virtual/kernel 配方的提供者。
您为 Linux 创建补丁,前往:
tmp/work/.../linux-(PROVIDER)/../git
进行编辑并:
git add modified_file
git commit -m "updates"
git format-patch -1
这将生成一个“updates.patch”文件,您可以将其添加到 linux-(PROVIDER)_%.append 文件中:
SRC_URI += "file://updates.patch"
确保将补丁文件复制到:
meta-custom/recipes-kernel/linux/files
现在,Linux 构建将触发并应用补丁。
我正在尝试创建一个由依赖于特定外围接口 spi 的用户应用程序组成的食谱
我已经创建了相同的配方,但只有应用程序成为构建映像的一部分。
我该如何修改以及修改哪些内容以包含设备树?
MKI-33Axx.dts 是我的平台设备树,我的修改仅针对 spi 在此文件中,我希望拾取此文件而不是原始文件。
我读过 KERNEL_DEVICETREE_append 需要提供修改后的“dtb”文件而不是 dts file.Do 我必须单独编译设备树然后在构建映像后将其添加到映像中? 但是我对此仍然不清楚。 有人可以告诉我如何以及在哪里激活它吗? 这样我就可以将此设备树更改也附加到我的食谱中。
KERNEL_DEVICETREE变量用于指定需要生成并添加到boot分区的设备树文件,但是bootloader在启动时只会在RAM中加载其中一个。
例如,对于 U-boot,将使用开发板的 defconfig 文件中 DEFAULT_FDT_FILE 中指定的文件。但是您可以通过暂停 U-boot 并指定 DTB 文件来更改 DTB:
setenv fdt_file new_file.dtb (make sure of "fdt_file" var with "printenv")
您可以使用 recipetool 将新的设备树文件自动添加到您的 linux 配方中,查看我的回答
您不必单独编译 DTS,因为将它添加到 KERNEL_DEVICETREE 变量会导致它在启动分区中被传送。
对Linux内核的任何修改都可以添加到:
meta-custom/recipes-kernel/linux/linux-(PROVIDER)_%.append
可以在机器配置文件中找到 (PROVIDER),它是 virtual/kernel 配方的提供者。
您为 Linux 创建补丁,前往:
tmp/work/.../linux-(PROVIDER)/../git
进行编辑并:
git add modified_file
git commit -m "updates"
git format-patch -1
这将生成一个“updates.patch”文件,您可以将其添加到 linux-(PROVIDER)_%.append 文件中:
SRC_URI += "file://updates.patch"
确保将补丁文件复制到:
meta-custom/recipes-kernel/linux/files
现在,Linux 构建将触发并应用补丁。