fbdevdrm

Thomas Zimmermann tzimmermann at suse.de
Tue Aug 18 13:09:55 UTC 2020


(cc'ing dri-devel. It's public information that others should be able to
find.)

Hi Mark,

generally speaking, what you try to do should be possible with
fbconv/fbdevdrm.

Am 17.08.20 um 21:12 schrieb Nnext unnnext:
> Hey Thomas!
> 
> I am working on postmarketOS, mobile Alpine Linux distribution, and I
> got really excited when saw your fbdevdrm project. While pmOS encourage
> mainlining,  most mobile devices often use old kernels(3.*-4.*), and so
> can't run any modern compositor which uses drm. Most of them utilize
> fbdev though. So if it's possible to run drm on top of fbdev, that would
> be really cool! However, I have some questions about the project. First,
> can it be brought to downstream devices? Second, is it in working state?

It works for all the desktop graphics cards that I was able to get my
hands on. I'd expect that other hardware works as well. The latest
snapshot is at

  https://gitlab.freedesktop.org/tzimmermann/linux/-/commits/fbconv/

for Linux v5.4. It should be possible to back-port it to earlier kernels.

The code depends on fbdev (which hasn't changed in a decade), simple-kms
helpers and SHMEM. The latter are DRM helper libraries that you may need
to backport as well.

In the commit history, you'll find that I created each DRM driver from
the fbdev driver and a DRM skeleton driver. That gives a basic driver
without HW acceleration.

I guess if you use Android you cannot always copy around fbdev drivers
easily. If you still can build your own kernel, you may want to take a
look at an earlier approach available at

  https://lists.freedesktop.org/archives/dri-devel/2019-March/211970.html

It hooks into the fbdev device registering and creates a DRM device
whenever an fbdev device becomes available; all without having to copy
the fbdev driver into DRM.

Let me know if you have more detailed questions on either option.

> Third, is it upstreamed somewhere? 

Nope and won't be. It's meant as a helper for porting fbdev drivers to
DRM. The expectation is that only the converted driver is merged in its
final state.

If none of this works, you could attempt to back-port the whole DRM
subsystem to these old kernels. A lot of mobile hardware has DRM drivers
these days.

Best regards
Thomas

> 
> Thank you for your contribution!
> 
> Sincerely,
> Mark.

-- 
Thomas Zimmermann
Graphics Driver Developer
SUSE Software Solutions Germany GmbH
Maxfeldstr. 5, 90409 Nürnberg, Germany
(HRB 36809, AG Nürnberg)
Geschäftsführer: Felix Imendörffer

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 516 bytes
Desc: OpenPGP digital signature
URL: <https://lists.freedesktop.org/archives/dri-devel/attachments/20200818/a25e783e/attachment.sig>


More information about the dri-devel mailing list