summaryrefslogtreecommitdiffstats
path: root/meta-ivi/recipes-graphics/mesa/mesa/README.gallium
blob: 6bc77877993e7d154c35027d4ebc0a2db9555944 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
these files
  revert-363b53f00069af718f64cf047f19ad5681a8bf6d.patch
  revert-c46c551c56f78c6bf9e63524c89478695fc4f525.patch
are the reverts of following commit of mesa:
  363b53f00069af718f64cf047f19ad5681a8bf6d
  c46c551c56f78c6bf9e63524c89478695fc4f525

the reason of two patches is described at
 http://lists.freedesktop.org/archives/mesa-dev/2014-November/070204.html


[Mesa-dev] [PATCH 0/2] Disable the EGL state tracker for Linux/DRI builds

Marek Olšák maraeo at gmail.com 
Tue Nov 4 14:42:43 PST 2014

Hi everybody,

I'm about to address this long-standing issue: The EGL state tracker is
redundant. It duplicates what st/dri does and it also duplicates what
the common loader egl_dri2 does, which is used by all classic drivers
and even works better with gallium drivers.

Let's compare EGL extensions for both backends:

st/egl:
EGL version string: 1.4 (Gallium)
EGL client APIs: OpenGL OpenGL_ES OpenGL_ES2 OpenVG
EGL extensions string:
    EGL_WL_bind_wayland_display EGL_KHR_image_base EGL_KHR_image_pixmap
    EGL_KHR_image EGL_KHR_reusable_sync EGL_KHR_fence_sync
    EGL_KHR_surfaceless_context EGL_NOK_swap_region
    EGL_NV_post_sub_buffer

egl_dri2:
EGL version string: 1.4 (DRI2)
EGL client APIs: OpenGL OpenGL_ES OpenGL_ES2 OpenGL_ES3
EGL extensions string:
    EGL_MESA_drm_image EGL_MESA_configless_context EGL_KHR_image_base
    EGL_KHR_image_pixmap EGL_KHR_image EGL_KHR_gl_texture_2D_image
    EGL_KHR_gl_texture_cubemap_image EGL_KHR_gl_renderbuffer_image
    EGL_KHR_surfaceless_context EGL_KHR_create_context
    EGL_NOK_swap_region EGL_NOK_texture_from_pixmap
    EGL_CHROMIUM_sync_control EGL_EXT_image_dma_buf_import
    EGL_NV_post_sub_buffer

egl_dri2 also supports MSAA on the window framebuffer (through st/dri).
It's really obvious which one is better.

I'm aware of 2 features that we will lose:
- swrast on Wayland - I'm not sure about this. Perhaps kms-swrast has
addressed this already.
- OpenVG - It has never taken off. If people want this on Linux, it should
use egl_dri2 and st/dri, like OpenGL does.

This series removes st/egl and st/gbm support from the autoconf build
(the latter depends on the former and is probably just as redundant).
The next step is to remove all Linux-specific backends from st/egl.
Windows, Android, and other platform backends will be kept intact,
therefore st/egl won't be removed completely.

Please comment.

Thanks,

Marek