小编Ale*_*ian的帖子

如何使用 Yocto 将文件部署到 /boot 分区

我正在尝试将一些二进制文件部署到 RPi CM3 的 Yocto 映像中的 /boot ,但它将它们部署到错误的位置。

do_install() {
    install -d ${D}/boot/overlays
    install -m 0664 ${WORKDIR}/*.dtb ${D}/boot/overlays/
    install -m 0664 ${WORKDIR}/*.dtbo ${D}/boot/overlays/
}
Run Code Online (Sandbox Code Playgroud)

这些文件部署到最终映像的 / 分区中的 /boot,但不部署到 /boot 分区。所以它们在启动时不可用。

我已经用谷歌搜索并研究了 Poky 发行版的内核配方(和类),但我没有找到它使用的机制如何确保将文件部署到引导映像(而不是部署到根映像中的 /boot 目录) )。

任何帮助表示赞赏:)

更新 #1

在我的 local.conf 中,我做了:

IMAGE_BOOT_FILES_append = " \
  overlays/3dlab-nano-player.dtbo \
  overlays/adau1977-adc.dtbo \
  ...
"
Run Code Online (Sandbox Code Playgroud)

在我的 rpi3-overlays.bb

do_deploy() {
    install -d ${DEPLOYDIR}/${PN}
    install -m 0664 ${WORKDIR}/*.dtb ${DEPLOYDIR}/${PN}
    install -m 0664 ${WORKDIR}/*.dtbo ${DEPLOYDIR}/${PN}

    touch ${DEPLOYDIR}/${PN}/${PN}-${PV}.stamp
}
Run Code Online (Sandbox Code Playgroud)

使用此映像构建,但文件仍未部署在 /boot 分区中。使用 RPI_KERNEL_DEVICETREE_OVERLAYS 我得到一个构建错误,因为内核配方试图构建 dtbo 文件,如 dts …

linux embedded yocto

5
推荐指数
1
解决办法
3414
查看次数

标签 统计

embedded ×1

linux ×1

yocto ×1