Hi Rob,
Thanks for your answer and your example (https://github.com/robclark/kmscube/blob/master/kmscube.c). I understood standalone KMS without x11 (as written by you @ http://lists.freedesktop.org/archives/dri-devel/2012-September/027348.html ).
But, looking at Linux Graphics stack (http://en.wikipedia.org/wiki/File:Linux_Graphics_Stack_2013.svg), I am confused. Does libGL calls always directly calls libDRM and never to x-server?
If so, then how simple gl example ‘drawf.c’ (http://www.glprogramming.com/red/chapter08.html) using glBitmap() work well when x11 server running?
Also, when switching between multiple windows, x server running in backgroung, why drm_mode_addfb (DRM_IOCTL_MODE_ADDFB) getting called many times? (as I think, fb might have already created for multiple windows.)
Thanks for your patience, Rob.
Akash Hajari.
On 1/14/14, Rob Clark robdclark@gmail.com wrote:
On Tue, Jan 14, 2014 at 5:15 AM, Akash Hajari akashhajari@gmail.com wrote:
Hi, I am new to DRM & KMS and I had seen your pdf named "why & how to use kms as your user space display api if choice". I have to understand initial mode setting flow of x server. So is it located in /xorg-server/hw/xfree86/modes/ or some where else?
currently it is in each different DDX driver (for example, xf86-video-intel, xf86-video-modesetting, etc)
Perhaps either tests/modetest/modetest.c (in libdrm tree) or kmscube (https://github.com/robclark/kmscube/blob/master/kmscube.c) might be a simpler stand-alone example to look at (the former does only modeset, the later does modeset + gl)
And, I don't know use control node. What's use of /dev/dri/control node?
I don't think it is really used for much yet.. but mostly people just use drmOpen() in libdrm and it figures out what device file to open.
BR, -R
Akash Hajari.
dri-devel mailing list dri-devel@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/dri-devel