[Intel-gfx] Question on Linux graphics driver architecture

ZHANG Zhaolong zhangzl2013 at 126.com
Thu Apr 18 11:53:35 CEST 2013


Hi all,

Please forgive me if I post my questions to the wrong place, but I don't know
where else to post.

I am new to graphic programming. I found that the Linux graphic architecture
is very complicated. Luckily I found an "Intel Graphics Stack" on 01.org. There
are 8 components in the 2013Q1 stack. Do all these eight components contain
Intel specific codes?

Take GM965 for an example, I found out that:
  - kernel-3.8.2 has i965 codes for its DRM driver;
  - mesa-9.1 has i965 codes for its DRI driver to support OpenGL API;
  - xf86-video-intel-2.21.3 is a 2D acceleration driver for X Window;
  - libdrm-2.4.42 has intel specific code too, it is used by Mesa;
  - vaapi-intel-driver-1.0.20 is no doubt an intel product to support libva;

And what about the other three:
  - Cairo-1.12.14
  - Libva-1.1.1
  - Xserver-1.13.2.902 ?

Do they have i960 specific code too? Or are they listed here just for compatibily
infomation?

I think these eight components can be divided into three types:
  - 2D acceleration: xf86-video-intel. This part is always required;
  - 3D acceleration: kernel DRM, mesa, libdrm. This part is optional if 3D accele-
                   ration is not needed;
  - video acceleration: vaapi-intel-driver, libva. This part is optional if video
                   acceleration is not needed.
Am I right?

The last question is what is the roll of Cairo in this Graphics Stack?

Thanks.

Best regards.
--
ZHANG Zhaolong



More information about the Intel-gfx mailing list