Добавление новых точек в проект Raspberry Yocto - PullRequest
0 голосов
/ 17 октября 2019

У меня есть экспериментальное оборудование, подключенное к линиям GPIO Raspberry, и создан соответствующий файл dts. В Raspbian модуль ядра и dtbo (оверлей) работают хорошо, т. Е. Аппаратное обеспечение можно контролировать.

Теперь я попытался перенести это на Yocto 2.7.1, используя слой meta-rpi Jumpnowtek [x]. В противном случае перенос модуля ядра был успешным (по крайней мере, я не получил никаких жалоб во время компиляции), но я не смог добавить файл dts в систему, чтобы он автоматически компилировался в dtbo и добавлялся в / boot/ overlays -directory.

[x] https://jumpnowtek.com/rpi/Raspberry-Pi-Systems-with-Yocto.html

Я создал рецепт linux-raspberrypi_4.19.bbappend следующим образом:

FILESEXTRAPATHS_prepend := "${THISDIR}/files:"
SRC_URI += "file://newlayer.dts"

RPI_KERNEL_DEVICETREE_OVERLAYS_append = " overlays/newlayer.dtbo "

do_compile_prepend() {
  sed -i '/dtbo-$(CONFIG_ARCH_BCM2835) += \\/a newlayer.dtbo \\' ${S}/arch/${ARCH}/boot/dts/overlays/Makefile
  cp ${WORKDIR}/newlayer.dts ${S}/arch/${ARCH}/boot/dts/overlays/
}

Когда я выполняю"bitbake console-image", я получаю следующую ошибку:

| make[3]: *** No rule to make target 'arch/arm/boot/dts/overlays/newlayer.dtbo'.  Stop.
| make[2]: *** [arch/arm/Makefile:345: overlays/newlayer.dtbo] Error 2
| make[1]: *** [Makefile:146: sub-make] Error 2
| make: *** [Makefile:24: __sub-make] Error 2
| ERROR: oe_runmake failed
| WARNING: exit code 1 from a shell command.

Если я не добавлю строку "RPI_KERNEL_DEVICETREE_OVERLAYS_append", я не получу никакого сообщения об ошибке, но файл dts не будетбыть скомпилированным либо. Похоже, что содержимое упомянутой переменной control, файлы dts будут скомпилированы.

Любая помощь приветствуется.

...