Supporting multiple desktops with gbm + dri

Louai Al-Khanji louai.khanji at gmail.com
Sat Dec 21 06:19:37 PST 2013


Hello everyone

Apologies if this is the wrong list to post in. Please point me in the
correct direction if it is.

Lately I have been toying around with gbm + dri, and I'm wondering how to
support multiple desktops/screens properly. I had hoped that I could create
one gbm surface that covers all screens and render to it (using egl in my
case), after which I would lock the surface front buffer
(gbm_lock_surface_front_buffer) and for each screen call drmModeAddFB and
drmModeSetCrtc, providing appropriate (x,y) coordinates to drmModeSetCrtc
according to the position. of the screen. Unfortunately, drmModeSetCrtc
seems to fail every time (no space left on device) on my machine unless I
provide (0,0) as the x and y coordinates. If I provide (0,0) as the
coordinates I correctly get the top left corner of the buffer on each
screen as expected.

Is this by design? If so, is it the expectation that one gbm surface is
created separately for each screen? If so, are there any recommendation as
to how to render one scene effectively across multiple screens?

Thanks in advance.
-- 
- Louai Al-Khanji
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freedesktop.org/archives/dri-devel/attachments/20131221/7084735d/attachment-0001.html>


More information about the dri-devel mailing list