Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

v3d: dumb_create missing #154

Open
scpcom opened this issue Aug 31, 2019 · 2 comments
Open

v3d: dumb_create missing #154

scpcom opened this issue Aug 31, 2019 · 2 comments

Comments

@scpcom
Copy link

scpcom commented Aug 31, 2019

On RPi2/RPi3 I use a customized xorg video driver (which is a combination of well known fbturbo and armsoc driver).
http://seafile.servator.de/sbc/raspberrypi/build/xserver-xorg-video-fbturbo-gt-1.20190407.tar.gz
http://seafile.servator.de/sbc/raspberrypi/fbturbo/xserver-xorg-video-fbturbo-rpi-buster-armhf.zip
It uses dumb buffers and calls dumb_create via ioctl.
On RPi2/RPi3 it works fine, on RPi4 I get an "not implemented" error.

The reason why I still use a custom xorg video driver? With modesetting driver the desktop performance is still bad. Things like rdp (xfreerdp) are unusable. For example the animated login screen of the remote desktop shows up in slow motion with modesetting driver, on fbturbo it is less detailed (skipped frames) but fast.

The vc4 does have dumb_create and related code:
https://github.com/anholt/linux/blob/for-next/drivers/gpu/drm/vc4/vc4_drv.c#L210
On v3d it is missing:
https://github.com/anholt/linux/blob/for-next/drivers/gpu/drm/v3d/v3d_drv.c#L205

Is there a plan to add this in future versions?

@anholt
Copy link
Owner

anholt commented Sep 12, 2019

v3d is not a display driver, and thus doesn't expose the dumb ioctls. For pi4, you do display on the vc4 drm node, and use that node with Mesa so that the kmsro opens up the v3d drm node and moves buffers between the two.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants