[devel-distro] grub и devicetree
Sergey Bolshakov
sbolshakov at altlinux.ru
Thu Dec 19 11:41:45 MSK 2019
>>>>> "Антон" == Антон Мидюков <midyukov-anton �� ya.ru> writes:
> 19.12.2019 3:28, Sergey Bolshakov пишет:
>> > 18.12.2019 0:10, Антон Мидюков пишет:
>> >> Доброго времени суток!
>> >>
>> >> Существует задача прописать конкретный путь до devicetree в
>> >> конфигурации grub. Я так понимаю, что на данный момент devicetree
>> >> задаётся автоматом в /etc/grub.d/10_linux:
>> >>
>> >> [...]
>>
>> > Я сделал тестовое задание:
>>
>> > [#243217] [test-only] EPERM (try 2) grub.git=2.02-alt21
>>
>> > Изменения следующие:
>>
>> > 1. Появилась возможность в /etc/sysconfig/grub2 записать в переменную
>> > GRUB_FDT_LINUX имя необходимого dtb вместо умолчального
>> > foundation-v8.dtb, который во всех наших ядрах для aarch64 есть (но
>> > есть ещё и не совсем наши ядра). Возможно, стоит отказаться от этой
>> > возможности. А может и не стоит, удобная фича.
>>
>> > 2. Добавил в качестве пути поиска dtb для симлинков vmlinuz и kernel:
>> > /boot/dtb
>>
>> > Таким образом, для того, чтобы можно было задать devicetree, должны
>> > быть в наличии симлинки:
>>
>> > /boot/dtb -> /lib/devicetree/%version-%flavour-%release
>>
>> > /boot/dtb-%version-%flavour-%release ->
>> > /lib/devicetree/%version-%flavour-%release
>>
>> > И в наличии должен быть
>> > /boot/dtb-%version-%flavour-%release/${GRUB_FDT_LINUX} и
>> > /boot/dtb/${GRUB_FDT_LINUX}
>>
>> > Вопрос: их, видимо, должен создавать installkernel при наличии
>> > /lib/devicetree/%version-%flavour-%release?
>>
>> > Получается, нужно ещё доработать bootloaders-utils. Или добавить в
>> > пути поиска /lib/devicetree/%version-%flavour-%release лучше?
>>
>> Собственно, что за проблема таким образом решается ?
> Решаем возможность нормального обновления grub на системе с EFI,
> которая не имеет ACPI и не предоставляет devicetree при загрузке.
Я высказывался offlist, повторю и сюда:
такое железо (EFI без ACPI и без вшитого devicetree) просто, в силу
принятых стандартов в этой области, не должно существовать, и я надеюсь,
что у сопровождающих grub достанет здравого смысла не принимать такие
изменения.
> Иначе, прописав в grub.cfg devicetree, после обновления его там уже не
> будет.
> Хорошенько подумав, я решил, что не стоит трогать installkernel, всё
> можно сделать и в grub.
> Так как я добавил ранее поиск devicetree в /boot/dtb для vmlinuz, то
> пришлось отказаться от дефолтного значения, которое теперь стало
> ломать загрузку на нормальных EFI.
> Собран новый вариант, который ничего ломать не должен:
> [#243217] [test-only] EPERM (try 5) grub.git=2.02-alt21
> Ещё несколько слов. У нас поиск devicetree добавлялся ранее патчем от
> 2014 года
> grub-2.02-sb-0005-Make-10_linux-work-with-our-changes-for-linux16-and-.patch
> Но использоваться фактически не мог, так как мы не делаем симлинки:
> boot/dtb-%version-%flavour-%release ->
> /lib/devicetree/%version-%flavour-%release
--
More information about the devel-distro
mailing list