[devel-sbc] UEFI для Raspberry Pi 3 и 4

Антон Мидюков midyukov-anton at ya.ru
Mon Jan 27 19:12:03 MSK 2020


Доброго времени суток

Я собрал пакет с UEFI firmware (EDK2) для Raspberry Pi 3B, 3B+, 4B:

https://packages.altlinux.org/ru/sisyphus/srpms/edk2-rpi

EFI на Raspberry Pi запускается также как запускается ядро или u-boot 
фирмварью Broadcom'а. Соответственно, сохраняются требования для 
разметки файловой системы:

1. Таблица разделов MBR

2. Первый раздел FAT32 или FAT16, никакого ESP

3. На разделе с FAT размещается firmware и UEFI.

При использовании EFI добавляется ещё одно требование: загрузка EFI 
должна осуществляться с micro-SD карты, так как на данный момент 
загрузка с USB не поддерживается.

Для того, чтобы желающие могли попробовать я сделал zip-архив, который 
необходимо распаковать на FAT-раздел micro-SD карты:

http://nightly.altlinux.org/sisyphus-aarch64/alpha/RPi_EFI.zip

После распаковки  откройте Readme.ru и прочтите инструкцию.

Также я собрал два пробных образа для записи на флешку:

http://nightly.altlinux.org/sisyphus-aarch64/alpha/regular-jeos-systemd-efi-mbr-20200127-aarch64.img.xz 
(без графики)

http://nightly.altlinux.org/sisyphus-aarch64/alpha/regular-lxqt-efi-mbr-20200127-aarch64.img.xz 
(с рабочим столом LXQt)

Для Raspberry Pi 3  образ можно записать на micro-SD карту и затем 
распаковать архив на раздел FAT.

Для Raspberry Pi 4 загрузка Linux с micro-SD происходит почему-то 
катастрофически медленно, так что она почти всегда останавливается на 
одном из ранних этапов. Поэтому на micro-SD нужно создать только раздел 
FAT и распаковать туда RPi_EFI.zip

А сам образ записать на USB-флешку. Примечательно, что грузятся наши 
стандартные ядра std-def, un-def, mp, lts, но не грузятся rpi-def и 
rpi-un, собранные для Raspberry Pi 4 специально. Секрет, думаю, в том, 
что в UEFI приходится вместо dtb использовать ACPI (для того, чтобы 
заработал USB , которое совсем неполное). Использование ACPI также 
ограничивает видимую зону оперативной памяти 3 ГБ.

При загрузке, что Raspberry Pi 3, что Raspberry Pi 4 наблюдается 
проблема с KMS, так что не только 3D недоступно, но и хоть какие-то 
приемлемые разрешения экрана.

На Raspberry Pi 4 этим проблемы не заканчиваются. Не заработали ни 
Ethernet, ни wi-fi. Но зато работает перезагрузка и выключение, 
благодаря EFI :-)

Так что для повседневного использования EFI не годится, но для 
экспериментов вполне.

-- 
С уважением, Антон Мидюков <antohami �� altlinux.org>



More information about the devel-sbc mailing list