summaryrefslogtreecommitdiff
path: root/src/egl/main/egldriver.h
diff options
context:
space:
mode:
authorKristian Høgsberg <krh@bitplanet.net>2010-05-13 16:06:29 -0400
committerKristian Høgsberg <krh@bitplanet.net>2010-05-13 16:14:07 -0400
commit681fd73f1e95d43425b946a250b241bfdb0ce1c8 (patch)
treef0cfdd275af6b83be85c8eedbfd4bc04cac28c9f /src/egl/main/egldriver.h
parent7413d9ae9ff3e21f517aea97d7a1a211867bdc68 (diff)
egl: Allow a prioritized list of default drivers
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.
Diffstat (limited to 'src/egl/main/egldriver.h')
-rw-r--r--src/egl/main/egldriver.h4
1 files changed, 4 insertions, 0 deletions
diff --git a/src/egl/main/egldriver.h b/src/egl/main/egldriver.h
index 28b79562f80..8b34c43b924 100644
--- a/src/egl/main/egldriver.h
+++ b/src/egl/main/egldriver.h
@@ -84,6 +84,10 @@ extern void
_eglUnloadDrivers(void);
+extern _EGLDriver *
+_eglLoadDefaultDriver(EGLDisplay dpy, EGLint *major, EGLint *minor);
+
+
PUBLIC void
_eglInitDriverFallbacks(_EGLDriver *drv);