| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
| |
Turn _EGLSurface and _EGLContext into _EGLResource so that they can be
managed uniformly.
|
|
|
|
|
|
| |
Resources are objects managed by a display. They can be linked to or
unlinked from a display. It is also possible to check if a resource is
valid.
|
|
|
|
|
| |
Move functions to where they should be. There should be no real change
here.
|
|
|
|
|
| |
Move functions to where they should be. There should be no real change
here.
|
|
|
|
|
| |
Install EGL drivers to EGL_DRIVER_INSTALL_DIR, which is default to
${libdir}/egl.
|
|
|
|
|
|
| |
With the addition egl_x11_swrast, egl_softpipe is sort of deprecated.
The new driver serves the same purpose as egl_softpipe does. It is
based on egl_g3d and provides more features.
|
|
|
|
|
| |
Signed-off-by: Alan Coopersmith <[email protected]>
Signed-off-by: Brian Paul <[email protected]>
|
|
|
|
|
|
| |
In current design, multiple drivers will probe the same display and the
best driver is determined. The cache can be used by the drivers to
store and share the probed data.
|
|
|
|
|
| |
Make drv->Probe return a score so that the matching can be done by
finding the driver with the highest score.
|
|
|
|
|
| |
The macro is used to determine if dlfcn.h or dirent.h is available.
POSIX is a better name than X in such case.
|
|
|
|
| |
Remove _eglPreloadDriver, _eglLookupDriver, and _eglSplitDisplayString.
|
|
|
|
|
| |
Replace the use of _eglPreloadDriver by _eglPreloadDrivers. The latter
supports EGL_DISPLAY which have a better chance to "just work".
|
|
|
|
|
|
| |
It can be used to load the user driver specified by EGL_DRIVER, or a set
of drivers specified by EGL_DISPLAY, or the default driver, and in that
order.
|
|
|
|
|
|
|
|
|
|
|
| |
Sun cc 5.9 and later (__SUNPRO_C >= 0x590) support __attribute__ calls
for aligned, always_inline, noinline, pure, const, and malloc.
This commit includes updates to files that were regenerated by gl_XML.py
after adding the __SUNPRO_C checks to it
Signed-off-by: Alan Coopersmith <[email protected]>
Signed-off-by: Brian Paul <[email protected]>
|
|
|
|
|
| |
The rest of the driver API has it as the first argument. It should be
there so that a driver has access to itself.
|
|
|
|
|
|
| |
Update _eglValidateConfig so that it passes the test.
Signed-off-by: Chia-I Wu <[email protected]>
|
|
|
|
|
|
|
| |
This allows libEGL to be built as a static library and removes libX11
from the dependencies.
Signed-off-by: Chia-I Wu <[email protected]>
|
|
|
|
|
|
| |
Mark EGL API and driver functions as PUBLIC.
Signed-off-by: Chia-I Wu <[email protected]>
|
|
|
|
| |
Signed-off-by: Chia-I Wu <[email protected]>
|
|
|
|
|
|
|
| |
This adds error checking to the synchronization primitives. And
eglWaitGL is now implemented by eglWaitClient.
Signed-off-by: Chia-I Wu <[email protected]>
|
|
|
|
|
|
|
| |
This adds error checking to eglSwapInterval and clamps the swap
interval.
Signed-off-by: Chia-I Wu <[email protected]>
|
|
|
|
| |
Signed-off-by: Chia-I Wu <[email protected]>
|
|
|
|
|
|
| |
Mention that opaque handles are looked up and checked.
Signed-off-by: Chia-I Wu <[email protected]>
|
|
|
|
| |
Signed-off-by: Chia-I Wu <[email protected]>
|
|
|
|
|
|
| |
This is just a cosmetic change.
Signed-off-by: Chia-I Wu <[email protected]>
|
|
|
|
|
|
| |
Remove an extraneous semicolon.
Signed-off-by: Chia-I Wu <[email protected]>
|
|
|
|
|
|
| |
A stupid bug by me made the check void.
Signed-off-by: Chia-I Wu <[email protected]>
|
|
|
|
|
|
|
| |
Add _eglSetLogger and _eglSetLogLevel to allow drivers to change the
message logger or report level.
Signed-off-by: Chia-I Wu <[email protected]>
|
|
|
|
|
|
|
| |
As a result, EGL_NONE is no longer a valid client API. And it is
possible that no config supports the current bound API.
Signed-off-by: Chia-I Wu <[email protected]>
|
|
|
|
| |
Signed-off-by: Chia-I Wu <[email protected]>
|
|
|
|
|
|
|
| |
eglGetProcAddress may not be used to query core (non-extension)
functions.
Signed-off-by: Chia-I Wu <[email protected]>
|
|
|
|
|
|
|
|
| |
This allows an EGL driver to be compiled together with libEGL.so. It
eliminates the need to specify a driver, or support module loading on
new platforms.
Signed-off-by: Chia-I Wu <[email protected]>
|
|
|
|
| |
Signed-off-by: Chia-I Wu <[email protected]>
|
|
|
|
|
|
|
|
| |
_eglConfigFromContextModesRec is used to convert a __GLcontextModes to a
_EGLConfig. Note that the config is not validated. An invalid mode
is likely to give an invalid config.
Signed-off-by: Chia-I Wu <[email protected]>
|
|
|
|
|
|
|
| |
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 <[email protected]>
|
|
|
|
|
|
|
|
| |
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 <[email protected]>
|
|
|
|
|
|
|
|
|
|
| |
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 <[email protected]>
|
|
|
|
|
|
| |
It is not used anymore.
Signed-off-by: Chia-I Wu <[email protected]>
|
|
|
|
|
|
|
|
| |
The real difference is that the driver suffix is now appended. This
also fixes an annoying bug that EGL_DRIVER could not specify the path to
a driver because a suffix was always appended.
Signed-off-by: Chia-I Wu <[email protected]>
|
|
|
|
|
|
|
|
|
|
|
|
| |
libX11 is used to determine the screen number, which is in turned used
to determine the DRI driver. However, the sysfs interface for
determining the DRI driver is gone, and no working driver depends on
this mechanism.
Display string parsing is moved to a new function,
_eglSplitDisplayString.
Signed-off-by: Chia-I Wu <[email protected]>
|
|
|
|
|
|
| |
The display may be NULL when checking a handle.
Signed-off-by: Chia-I Wu <[email protected]>
|
|
|
|
| |
Signed-off-by: Chia-I Wu <[email protected]>
|
|
|
|
|
|
|
| |
Handle checking was done using hash tables. Now that they are gone, we
have to loop over the lists.
Signed-off-by: Chia-I Wu <[email protected]>
|
|
|
|
|
|
| |
progs/egl/demo3.c is also changed since it uses an internal function.
Signed-off-by: Chia-I Wu <[email protected]>
|
|
|
|
|
|
|
| |
The hash table was used to map a display to a handle. It is simpler to
cast directly.
Signed-off-by: Chia-I Wu <[email protected]>
|
|
|
|
|
|
|
| |
The hash table was used to map a surface to a handle. It is simpler to
cast directly.
Signed-off-by: Chia-I Wu <[email protected]>
|
|
|
|
|
|
|
| |
Move drv->API.Terminate call to eglTerminate. Remove
_eglReleaseDisplayResource as drivers are doing it.
Signed-off-by: Chia-I Wu <[email protected]>
|
|
|
|
|
|
|
| |
Move some fields of _EGLDriver to _EGLDisplay. It also becomes
unnecessary to pass _EGLDisplay to drivers when _eglMain is called.
Signed-off-by: Chia-I Wu <[email protected]>
|
|
|
|
|
|
|
|
|
| |
Driver is chosen and preloaded when eglGetDisplay is called. Later when
eglInitialize is called, the same driver is matched to initialize the
display. Also, add new, but unused, hooks to EGLDriver to allow a
driver to probe a display or unload itself.
Signed-off-by: Chia-I Wu <[email protected]>
|
|
|
|
|
|
|
|
|
|
|
|
| |
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 <[email protected]>
|