summaryrefslogtreecommitdiff
path: root/src/egl/main/eglconfig.c
AgeCommit message (Collapse)Author
2010-12-06egl: _eglFilterArray should not allocate.Chia-I Wu
Otherwise, when it is called from within a driver, the caller cannot free the returned data (on Windows).
2010-10-23egl: Minor changes to the _EGLConfig interface.Chia-I Wu
Mainly to rename _eglAddConfig to _eglLinkConfig, along with a few clean ups.
2010-10-14egl: Access config attributes directly.Chia-I Wu
Replace SET_CONFIG_ATTRIB/GET_CONFIG_ATTRIB by direct dereferences.
2010-10-14egl: Use attribute names as the _EGLConfig member names.Chia-I Wu
This makes _EGLConfig more accessible and scales better when new attributes are added.
2010-08-20egl: Fix context API check and be verbose.Chia-I Wu
The API of the context was not checked against EGL_RENDERABLE_TYPE when there was no attribute list. Move the check to _eglInitContext, and be verbose about common mistakes (EGL_RENDERABLE_TYPE not set, EGL_CONTEXT_CLIENT_VERSION not set, or eglBindAPI not called).
2010-07-31egl: Add checks for EGL_MESA_screen_surface.Chia-I Wu
This allows Mesa EGL to be compiled with eglext.h that does not define EGL_MESA_screen_surface.
2010-06-30egl: Store configs in a dynamic array.Chia-I Wu
2010-05-14egl: Implement EGL_NOK_texture_from_pixmapKristian Høgsberg
This extension allows a color buffer to be used for both rendering and texturing. EGL allows the use of color buffers of pbuffer drawables for texturing, this extension extends this to allow the use of color buffers of pixmaps too.
2010-05-14egl: Only allow valid config attributes in _eglParseConfigAttribList()Kristian Høgsberg
Passing 0x3030, 0 in the chooser list didn't get caught.
2010-05-13egl: Allow a prioritized list of default driversKristian Høgsberg
When there is no user driver or any matching display drivers we fall back to the default driver. This patch lets us have a list of default drivers instead of just one. The drivers are loaded in turn and we attempt to initialize the display. If it fails we unload the driver and move on to the next one. Compared to the display driver mechanism, this avoids loading a number of drivers and then only using one. Also, we call Initialize to see if the driver will work instead of relying on Probe. To know for sure that a driver will work, Probe really have to do a full Initialize, so we will just use Initialize directly.
2010-02-23egl: Remove unused _EGL_SKIP_HANDLE_CHECK.Chia-I Wu
It was added to skip checking EGLDisplay, EGLSurface, and etc. It is never defined and the spec does not allow the checks to be skipped. Remove it for good.
2010-02-19egl: Silence warnings when compiled with -pedantic.Chia-I Wu
Just follow gcc's advices here.
2010-02-05egl: Add debug messages to config validation and matching.Chia-I Wu
It might be desirable find out which attribute went wrong.
2010-01-31egl: Surface type validaction should depend on extensions supported.Chia-I Wu
EGL_SCREEN_BIT_MESA is a valid bit only when EGL_MESA_screen_surface is supported.
2010-01-31egl: Initialize display configs with the display.Chia-I Wu
This changes _eglInitConfig to take the display as its argument.
2010-01-30egl: Clean up header inclusions.Chia-I Wu
Mainly to remove eglcurrent.h and egldisplay.h from eglglobals.h.
2010-01-28egl: Remove unnecessary headers.Vinson Lee
2010-01-25egl: Update headers.Chia-I Wu
Update to the current versions found at http://www.khronos.org/registry/egl/. There is one modification in khrplatform.h for GCC visibility.
2010-01-12egl: EGL_SCREEN_BIT_MESA is a valid bit.Chia-I Wu
Update _eglValidateConfig so that it passes the test. Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
2009-10-15egl: Fix eglCheckConfigHandle.Chia-I Wu
A stupid bug by me made the check void. Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
2009-09-29egl: Rework config lookup.Chia-I Wu
Make it similiar to how contexts and surfaces are looked up. It should be slightly faster, and work better with multiple displays. Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
2009-09-29egl: Rework configuration management.Chia-I Wu
This mainly implements the algorithms for configuration selection and sorting, described in the spec. User errors should also be correctly detected and reported. Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
2009-09-29egl: Introduce config keys.Chia-I Wu
Config keys are almost config attributes. A valid config attribute is a valid config key, but a valid config key may not be a valid config attribute. This commit does not distinguish the differences. Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
2009-08-18egl: Overhaul driver API.Chia-I Wu
The motivation is so that drivers do not need to look up and check for bad display, context, and etc. It also becomes unnecessary for drivers to call the link functions. This commit makes eglapi.[ch] do the lookup and check. As a result, the driver API is overhauled, and almost all sources and drivers need update. The updates are mainly find and replace with human brains. Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
2009-07-31egl: Silence warnings on x86-64.Chia-Wu
Casting an unsigned int to or from a pointer directly gives warnings on x86-64. Add wrappers to silence the warnings. Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
2009-02-19egl: if a surface type isn't defined let's default to EGL_WINDOW_BITAlan Hourihane
2008-06-28egl: fix default value of EGL_SURFACE_TYPE, added some sanity check assertionsBrian Paul
2008-06-27egl: These changes allow an eglBindAPI(EGL_OPENGL_ES_API) to succeed, and to ↵Robert Ellison
work correctly with GLES1 and GLES2. - egl_xdri.c just sets the EGL_OPENGL_ES_BIT as well as the EGL_OPENGL_BIT in ClientAPIsMask - eglconfig.c allows the renderable type to include EGL_OPENGL_ES2_BIT as well as EGL_OPENGL_ES_BIT. - egl_xlib.c sets the EGL_NATIVE_RENDERABLE attribute to EGL_FALSE for all softpipe configurations. (Otherwise, an eglChooseConfig() that looks for particular values of EGL_NATIVE_RENDERABLE will fail.)
2008-06-20egl: added null ptr checkBrian Paul
2008-06-04egl: in _eglAddConfig() just save a pointer to the config; don't copy the configBrian Paul
This allows subclassing by drivers.
2008-05-27Move some config-related utility functions into new eglconfigutil.c file.Brian Paul
2008-05-27minor overhaul/re-org of driver selection/loading codeBrian Paul
2008-05-27added _eglGet*Handle() functionsBrian Paul
These are the inverse of the _eglLookup*() functions. Returns the public handle for a private surface/config/display/etc. Removes glapi.c's direct access of private fields.
2008-05-27assorted changes to compile with new EGL 1.4 headers (untested)Brian Paul
2006-01-30some initial EGL 1.2 workBrian Paul
2005-12-10implement config sorting for eglChooseConfig()Brian Paul
2005-11-27Redo _eglInitSurface() so it can be used with all surface types.Brian Paul
Redo _eglInitContext() to do error checking, attribute list parsing, etc.
2005-11-24change error test in _eglParseConfigAttribs()Brian Paul
2005-11-24init attribs to EGL_DONT_CARE in _eglParseConfigAttribs()Brian Paul
2005-11-23use _eglLog()Brian Paul
2005-05-17remove glmode stuffBrian Paul
2005-05-17more work on _eglConfigToContextModesRec()Brian Paul
2005-05-17Fix several internal problems with generating the list of configs.Jon Smirl
2005-05-16restore _eglSetConfigAttrib (for now), added prototype ↵Brian Paul
_eglConfigToContextModesRec()
2005-05-16make _eglSetConfigAtrib() a static function, and rename itBrian Paul
2005-05-15A few egl patches needed for glitz, mainly config BITSJon Smirl
2005-05-13First attempt at getting egl support up on dumb framebuffer.Jon Smirl
Seems to be mostly working. Not all of egl API is implemented.
2005-05-04sync with latest EGL_MESA_screen_surface spec (EGLScreenMESA handles)Brian Paul
2005-04-22initial EGL codeBrian Paul