[d-kernel] CONFIG_DRM_SIMPLEDRM vs CONFIG_FB_SIMPLE

Антон Мидюков antohami на basealt.ru
Вт Май 24 17:36:02 MSK 2022


23.05.2022 22:50, Vitaly Chikunov пишет:
> On Thu, May 12, 2022 at 06:04:01PM +0300, Vitaly Chikunov wrote:
>> On Wed, May 11, 2022 at 08:29:16PM +0300, Vitaly Chikunov wrote:
>>> On Wed, May 11, 2022 at 11:36:58PM +0700, Антон Мидюков wrote:
>>>> Здравствуйте
>>>>
>>>> Хотел бы узнать мнение коллег о возможности в светлом будущем включения в наших ядрах
>>>> CONFIG_DRM_SIMPLEDRM=y
>>>> вместо
>>>> CONFIG_FB_SIMPLE=y
>>>> а также отключения в следствие этого и некоторого множества
>>>> CONFIG_FB_*=m
>>>>
>>>> Т.е. полный переход на kms вместо fbdev.
>>>> Плюсы видятся в том, что в initrd не нужно будет паковать другие drm-модули для работы plymouth.
>>>> Вероятно, через IPMI графика также будет доступна с первых секунд старта ядра.
>>>>
>>>> Минус в том, что придётся включить:
>>>> CONFIG_DRM=y
>>>> CONFIG_DRM_KMS_HELPER=y
>>>>
>>>> Такое на данный момент проделали в Fedora 36.
>>>
>>> https://fedoraproject.org/wiki/Changes/ReplaceFbdevDrivers
>>
>> Если никто не против, то можно это сделать для >= 5.17.
> 
> Собрал задание
> 
>    [#300467] TESTED (try 2) kernel-image.git=kernel-image-un-def-5.17.9-alt2 ...
> 
> С этим изменением - если есть желание и время протестируйте, плс.
> 

Потестировал немного.
Я специально не устанавливал пакет с kernel-modules-drm, чтобы посмотреть на работу simpledrm.

UEFI x86_64
Для виртуалок Virtualbox + vmsvga, qemu + virtio, qemu + qxl работают plymouth и gnome3 в режиме wayland.
На реальном компьютере с intel celeron J3060 plymouth работает, но иксы стартануть не могут.
Но нашёл сочетание, которое не работает - qemu + bochs (используется, если не указать видеоадаптер на x86 и x86_64).
Показывает размытую, поделённую на четыре части картинку.
В целом не проблема, ожидаемо.

Legacy BIOS x86_64
В Legacy BIOS plymouth и wayland не работают. Иксы работают через vesa.
В виртуалках нормально работает.

aarch64
В aarch64 (Orange Pi Prime) при загрузке с u-boot, как в режиме EFI, так и без, framebuffer и иксы работают. Работает ли plymouth и wayland не проверял.
Но проявилась проблема опять на Raspberry Pi на aarch64 в режиме загрузки через u-boot без EFI режима:
https://bugzilla.altlinux.org/41479
Ядро стало несколько больше (на 1 МБ) и у него адресное пространство для загрузки devicetree сдвинулось за пределы дозволенные u-boot.
Но повезло с ядром 5.18.0 из таска 300545, оно поменьше, влезло.

armh
На Raspberry Pi 3 загрузиться не получилось. Можно ли для armh оставить, как было? Там EFI нет.

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


Подробная информация о списке рассылки devel-kernel