Применение наложения fdt с помощью u-boot с использованием extlinux.conf - PullRequest
0 голосов
/ 18 января 2019

Я хочу загрузить дистрибутив с моей платы, где менеджер пакетов контролирует extlinux.conf и отправляет файл dtb для моей платы, но у меня также есть плата расширения, поэтому мне понадобится оверлей, чтобы включить некоторые функции.

Раньше я просто писал файл boot.scr, который применял оверлей, а затем загружал ядро. Но имена файлов ядра и initramfs меняются между версиями, поэтому управление boot.scr было бы утомительным.

К счастью, он также поставляется с extlinux.conf, который указывает на новые версии, но мне трудно найти способ применить оверлей fdt таким образом.

Это вообще возможно?

1 Ответ

0 голосов
/ 22 января 2019

Синтаксис Syslinux, используемый в файлах extlinux.conf, читаемых U-Boot, не содержит ключевого слова для применения оверлеев fdt, так что вам не повезло.

Можно использовать ключевое слово localboot, чтобы U-Boot выполнил пользовательскую команду вместо загрузки образа ядра, указанного с ключевым словом kernel. Если метка содержит ключевое слово localboot, за которым следует неотрицательное число, например ::

label mycustomboot localboot 0

U-Boot при загрузке записи выполняет команды, содержащиеся в переменной окружения localcmd. Таким образом, теоретически вы можете поместить в переменную окружения localcmd серию команд, которые необходимо выполнить при загрузке (загрузить ядро, fdt и оверлей, применить оверлей и загрузить ядро). Но я полагаю, что в первую очередь это лишило бы цели использовать extlinux.conf и не сильно отличалось бы от того, как вы работаете с файлом boot.scr ...

...