Добавление пользовательского оверлея в сборку проекта Yocto

У меня есть модуль Colibri IMX7D с настраиваемой платой, и я пытался создать минимальный образ с помощью Yocto, чтобы столкнуться с ним. Однако у меня есть дисплей, и я не могу заставить его работать.

Само наложение, безусловно, работает, но я все еще не знаю, нужно ли мне его компилировать и применять во время загрузки, или я могу просто добавить его в дерево устройств при создании образа, чтобы он стал частью ядра с самого начала.

Я попытался исправить создание файла dts и его добавление в Makefile, но он выдает ошибку, говоря, что исправление зависит от более старого содержимого. Итак, я добавил файл dts в build/tmp/work/<module>/<kernel>/<version>/git/arch/arm/boot/dts и в том же каталоге я добавил в Makefile строку с <my_device.dtb>. Я уверен, что это неправильный способ делать что-то, но я был готов нарушить некоторые правила, если бы это означало, что я пойму, как это работает.

Пытаясь применить во время загрузки, добавил <my_device.dtb> в /build/tmp/work/<module>/<image>/<version>/bootfs/overlays.txt и с тех пор я вижу сообщение, в котором говорится 'Applying Overlay:my_device.dtb'во время загрузки. Однако я не знаю, где должен быть этот файл, чтобы его правильно применили, и на данный момент он не работает.

С другой стороны, пытаясь добавить его в само дерево устройств, я создал новый слой с файлом bbappend с оператором KERNEL_DEVICETREE += "my_device.dtb". Он по-прежнему не работает, но я понял, что он выполняет поиск этого файла, потому что использование несуществующего имени файла вызывает ошибку.

Я также понял, что внутри моего build/deploy/images/<module> каталог у меня есть скомпилированный dtb из my_device.dts. Однако я считаю, что он также должен быть внутри build/deploy/images/<module>/devicetree каталог и это не так.

Я был бы очень признателен, если бы кто-нибудь помог мне найти оставшиеся части, чтобы все работало так, как только возможно.

заранее спасибо

0 ответов

Другие вопросы по тегам