Kristian Høgsberg
3a82c8c562
egl_dri2: Enable KHR_gl_texture_2D_image
...
Forgot to set the enabled bit when I implemented the extension.
2010-04-14 16:22:48 -04:00
Chia-I Wu
d18d0fdcd8
egl_dri2: Flush before context switch and swap buffers.
...
DRI does not define any callback to flush the current context. GLX
loader simply calls glFlush. Follow the GLX loader here.
2010-04-06 19:54:06 +08:00
Kristian Høgsberg
4007342584
egl_dri2: Factor out DRI2 protocol bits from initialize.
2010-03-03 10:47:49 -05:00
Kristian Høgsberg
557c20b309
egl_dri2: Implement EGL_KHR_gl_renderbuffer_image
2010-02-26 14:52:14 -05:00
Kristian Høgsberg
f4e7d1b1e5
egl_dri2: Implement EGL_KHR_image and EGL_KHR_image_pixmap
2010-02-24 14:28:42 -05:00
Kristian Høgsberg
32f2fd1c5d
Replace _mesa_malloc, _mesa_calloc and _mesa_free with plain libc versions
2010-02-19 12:03:01 -05:00
Kristian Høgsberg
c19dab7c59
egl_dri2: Only allocate config if we're going to keep it
...
Small optimization.
2010-02-09 21:24:15 -05:00
Kristian Høgsberg
c3c1a7e1d9
egl_dri2: Initialize config attributes with visual id and class from X
2010-02-09 21:24:15 -05:00
Kristian Høgsberg
360faf80ca
egl_dri2: Allow pbuffer and pixmap surfaces for all configs
2010-02-09 21:24:14 -05:00
Kristian Høgsberg
bba5a98dfd
egl_dri2: Implement eglBindTexImage()
2010-02-09 15:55:25 -05:00
Kristian Høgsberg
8c593d3ea9
egl_dri2: Use a helper function for looking up and binding extensions
2010-02-09 15:55:24 -05:00
Kristian Høgsberg
538539d879
egl_dri2: Fix initialization with EGL_DEFAULT_DISPLAY
2010-02-09 09:51:05 -05:00
Kristian Høgsberg
077bc2fda2
egl_dri2: Use pkg-config cflags and libs from configure output
...
Running pkg-config in Makefiles is bad form, since it doesn't respect the
PKG_CONFIG_PATH value set at ./configure time.
2010-02-05 13:55:45 -05:00
Kristian Høgsberg
832f2d3c39
egl_dri2: Log both driver and core extensions
2010-02-05 12:01:28 -05:00
Kristian Høgsberg
9c94faeff1
egl_dri2: Audit and fix errors paths
2010-02-05 12:01:28 -05:00
Kristian Høgsberg
f27b4fadca
egl_dri2: Just cast the pointer difference to an int
2010-02-05 12:01:27 -05:00
Chia-I Wu
5f08eff2a7
egl: Remove egl_xdri.
...
egl_xdri steals code from src/glx/x11/. This makes it broken from time
to time when there is a bigger change to the GLX code. As egl_dri2 has
been merged, which also functions as a DRI2 driver loader, remove
egl_xdri for good.
2010-02-05 12:48:49 +08:00
Chia-I Wu
a35e63382e
egl_dri2: Use _EGL_DRIVER_STANDARD_TYPECASTS.
...
It saves the driver from defining the boring typecasts itself.
2010-02-05 11:45:01 +08:00
Chia-I Wu
fc5ca85a63
egl_dri2: Do not destroy linked resources.
...
A linked resource is stil owned by the display.
2010-02-05 11:45:01 +08:00
Chia-I Wu
7e7c1ba40b
egl_dri2: Fix a snprintf warning.
...
The subtraction between two pointers has type unsigned int (only on
x86-64?), while the format string expects an int.
2010-02-05 11:44:49 +08:00
Chia-I Wu
8d411c9a12
egl_dri2: Add a debug print for DRI2 extensions.
2010-02-05 11:44:16 +08:00
Kristian Høgsberg
c6e830c393
egl: Implement eglCopyBuffers for DRI2, make pixmap and pbuffers actually work
2010-02-04 21:50:23 -05:00
Kristian Høgsberg
42fa009e64
egl: Add driver for EGL on X with DRI2
2010-02-04 15:03:45 -05:00
Chia-I Wu
9a3de505dc
egl: Convert drivers to use typecast macros.
...
Use macros to define the standard typecasts. This saves lots of
typings.
2010-02-04 14:36:48 +08:00
Chia-I Wu
216925ccd1
egl: Initialize display configs with the display.
...
This changes _eglInitConfig to take the display as its argument.
2010-01-31 14:46:14 +08:00
Chia-I Wu
d69242be55
egl: Initialize display resources with their display.
...
Change _eglInitSurface, _eglInitContext, and _eglInitImage to take an
_EGLDisplay instead of an _EGLDriver. This is a more natural form, and
plus, the display encodes information such as the extensions supported
that might be required for attribute list parsing.
2010-01-31 14:46:14 +08:00
Chia-I Wu
00e1790f32
egl: Rename Binding to CurrentContext in _EGLSurface.
...
A context can be bound to a surface just like it can be bound to a
thread. CurrentContext is a more consistent name.
2010-01-30 22:57:18 +08:00
Chia-I Wu
94cb321b5d
egl: Clean up header inclusions.
...
Mainly to remove eglcurrent.h and egldisplay.h from eglglobals.h.
2010-01-30 22:55:49 +08:00
Chia-I Wu
6baa2c8d02
egl: Migrate drivers to use _eglBindContext.
...
_eglMakeCurrent is a big hammer that is not easy to use. Migrate
drivers to use _eglBindContext and un-export _eglMakeCurrent.
2010-01-28 17:28:48 +08:00
Chia-I Wu
17330479b3
egl: eglMakeCurrent should accept an uninitialized display.
...
When no context or surface are given, the display is allowed to be
uninitialized. Most drivers cannot handle an uninitialized display.
But they are updated to at least throw a fatal message.
2010-01-28 17:28:47 +08:00
Chia-I Wu
a1717970e7
egl: Remove _eglGetCurrentSurface and _eglGetCurrentDisplay.
...
They have little use in drivers since drivers need to work for multiple
current contexts.
2010-01-26 18:46:05 +08:00
Chia-I Wu
0d2d40451d
egl/xdri: Update with glxclient.h change.
...
__glXFindDisplay is no longer static since
7a9329ba99 .
2010-01-26 10:48:16 +08:00
Chia-I Wu
4aed0944f4
egl: Native types are renamed in EGL 1.3.
...
Rename Native*Type to EGLNative*Type.
2010-01-25 11:59:12 +08:00
Chia-I Wu
28c3e57c83
egl: Install drivers to ${libdir}/egl.
...
Install EGL drivers to EGL_DRIVER_INSTALL_DIR, which is default to
${libdir}/egl.
2010-01-23 20:30:11 +08:00
Chia-I Wu
324fdf7364
egl: Remove the demo driver.
...
The demo driver has outdated. It is suggested to look at any of the
drivers that is functioning.
2010-01-22 15:10:09 +08:00
Chia-I Wu
18b63b55d5
egl_xdri: Add support for DRISW.
...
Try DRISW if both DRI2 and DRI fail. It can also be forced by setting
EGL_SOFTWARE. When DRISW is used, single-buffered modes are ignored.
2010-01-22 15:03:45 +08:00
Chia-I Wu
caa75a7ce0
egl_xdri: Flush commands on context switch and buffer swap.
...
The corresponding DRI functions does not flush for us.
2010-01-22 14:54:41 +08:00
Chia-I Wu
3c9bf648ac
egl_xdri: Report only OpenGL support.
...
It reported OpenGL ES support because some demos did not set
EGL_RENDERABLE_TYPE correctly. The demos are fixed.
2010-01-22 14:54:40 +08:00
Chia-I Wu
fe0e35aba8
egl_xdri: Do not reinitialize in __glXInitialize.
...
__glXInitialize should return the same GLX display for the same X
display. This issue is triggered by
a35f6bb207 .
2010-01-22 14:54:40 +08:00
Chia-I Wu
0e54f9c529
egl_glx: Report only OpenGL support.
...
It reported OpenGL ES support because some demos did not set
EGL_RENDERABLE_TYPE correctly. The demos are fixed.
2010-01-22 14:24:46 +08:00
Chia-I Wu
2279fa3c06
egl: Update driver Makefiles.
...
Update to use the new Makefile.template.
2010-01-22 13:29:23 +08:00
Chia-I Wu
e63272050f
egl: Add Makefile.template for EGL drivers.
2010-01-22 12:02:00 +08:00
Chia-I Wu
3e6139d158
egl: Add _EGLDriver as the first argument to GetProcAddress.
...
The rest of the driver API has it as the first argument. It should be
there so that a driver has access to itself.
2010-01-12 17:53:57 +08:00
Chia-I Wu
31d2786239
egl_xdri: Fix build breakage.
...
driScreen->swapBuffers takes 3 more arguments since
daf7fe69f7 .
2010-01-12 17:51:08 +08:00
Kristian Høgsberg
d61f07318c
Remove leftover __DRI{screen,drawable,context}Private references
...
As part of the DRI driver interface rewrite I merged __DRIscreenPrivate
and __DRIscreen, and likewise for __DRIdrawablePrivate and
__DRIcontextPrivate. I left typedefs in place though, to avoid renaming
all the *Private use internal to the driver. That was probably a
mistake, and it turns out a one-line find+sed combo can do the mass
rename. Better late than never.
2010-01-04 11:48:00 -05:00
Chia-I Wu
60cf250d47
egl_glx: Add support for eglWaitClient and eglWaitNative.
...
Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
2009-10-22 09:33:27 -06:00
Chia-I Wu
7ffe64a7ae
egl_glx: Clean up eglGetProcAddress.
...
Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
2009-10-22 09:33:27 -06:00
Chia-I Wu
a206436577
egl_glx: Clean up context functions.
...
This lifts the requirement that a context must be direct.
Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
2009-10-22 09:33:27 -06:00
Chia-I Wu
c407c70244
egl_glx: Clean up surface functions.
...
Separete Drawable and GLXDrawable. Add support for pbuffer and pixmap
surfaces on GLX <= 1.3. Remove surface binding code that will never
work.
Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
2009-10-22 09:33:27 -06:00
Chia-I Wu
78c3a351bc
egl_glx: Clean up the initialization code.
...
Proper detection of GLX extensions. Convert fbconfigs or visuals in a
more unified way and validate the resulting configs.
Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
2009-10-22 09:33:27 -06:00