[devel-distro] Политика упаковки devicetree в ядрах
Антон Мидюков
midyukov-anton at ya.ru
Mon Oct 4 09:42:04 MSK 2021
Здравствуйте, коллеги
Хотел бы обсудить два вопроса упаковки devicetree в наших ядрах
1. devicetree у нас располагаются в одном каталоге /lib/devicetree/<ядро>/
без распределения по подкаталогам на каждого вендора. В других дистрибутивах
(например, Armbian) devicetree распределены по вендорам (allwinner/ nvidia/ rockchip/
и т.д.).
Хотелось бы иметь совместимость со сторонними u-boot, так как это позволит,
не записывать u-boot, а использовать уже имеющийся в eMMC или SPI flash.
Причина такого желания состоит в том, что пользователи могут желать сохранить
в eMMC Armbian или другой дистрибутив.
Замена штатного u-boot на u-boot Альта в свою очередь приведёт к тому, что не загрузятся
другие дистрибутивы, использующие распределение dtb по вендорам.
Для достижения совместимости с другими дистрибутивами достаточно создать
симлинки с именами вендоров на текущий каталог в каталоге /lib/devicetree/<ядро>/
ln -s . <имя_вендора>
Подойдёт ли такая реализация? Если да, то как бы её лучше реализовать?
2. Другая проблема - невозможность использования зашифрованного корня при выделенном
незашифрованном разделе /boot. Для того, чтобы это было возможно, необходимо
наличие devicetree в /boot.
Предлагаю начать паковать devicetree в /boot/devicetree/<ядро>/, и создавать для
обратной совместимости симлинк:
ln -s /boot/devicetree/<ядро> /lib/devicetree/<ядро>
devicetree не сильно много места занимают, так что /boot не разбухнет слишком сильно:
du -h lib/devicetree/5.10.70-std-def-alt1
8,7M lib/devicetree/5.10.70-std-def-alt1
du -h lib/devicetree/5.14.9-un-def-alt1/
14M lib/devicetree/5.14.9-un-def-alt1/
Но тенденция к разрастанию, конечно, заметная.
--
С уважением, Антон Мидюков <antohami �� altlinux.org>
More information about the devel-distro
mailing list