diff options
author | backer@chromium.org <backer@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2013-01-14 14:12:53 +0000 |
---|---|---|
committer | backer@chromium.org <backer@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2013-01-14 14:12:53 +0000 |
commit | 83f48ae3523f8306f832bb968277e3ddb23ff512 (patch) | |
tree | 6eec57cd0453581a3a4a243524fafccbc3877578 /third_party | |
parent | ced4dc8d1d00a981ac00f3803cc1c7a70a0420c2 (diff) | |
download | chromium_src-83f48ae3523f8306f832bb968277e3ddb23ff512.zip chromium_src-83f48ae3523f8306f832bb968277e3ddb23ff512.tar.gz chromium_src-83f48ae3523f8306f832bb968277e3ddb23ff512.tar.bz2 |
CrOS: Plumb through vsync info to compositor on EGL stacks
Uses EGL_CHROMIUM_sync_control (a subset of GLX_OML_sync_control) to calculate refresh rate and when refreshes occur. This CL factors out common code from the GLX_OML_sync_control implementation.
BUG=none
TEST=by hand on stumpy, daisy, and desktop
Review URL: https://codereview.chromium.org/11865021
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@176668 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'third_party')
-rw-r--r-- | third_party/khronos/EGL/eglext.h | 11 | ||||
-rw-r--r-- | third_party/khronos/README.chromium | 2 |
2 files changed, 13 insertions, 0 deletions
diff --git a/third_party/khronos/EGL/eglext.h b/third_party/khronos/EGL/eglext.h index 93a7365..8053647 100644 --- a/third_party/khronos/EGL/eglext.h +++ b/third_party/khronos/EGL/eglext.h @@ -470,6 +470,17 @@ EGLAPI EGLint EGLAPIENTRY eglWaitSyncKHR(EGLDisplay dpy, EGLSyncKHR sync, EGLint typedef EGLint (EGLAPIENTRYP PFNEGLWAITSYNCKHRPROC)(EGLDisplay dpy, EGLSyncKHR sync, EGLint flags); #endif +#if KHRONOS_SUPPORT_INT64 /* EGLSyncControlCHROMIUM requires 64-bit uint support */ +#ifndef EGL_CHROMIUM_sync_control +#define EGL_CHROMIUM_sync_control 1 +typedef khronos_uint64_t EGLuint64CHROMIUM; +#ifdef EGL_EGLEXT_PROTOTYPES +EGLAPI EGLBoolean EGLAPIENTRY eglGetSyncValuesCHROMIUM(EGLDisplay dpy, EGLSurface surface, EGLuint64CHROMIUM *ust, EGLuint64CHROMIUM *msc, EGLuint64CHROMIUM *sbc); +#endif /* EGL_EGLEXT_PROTOTYPES */ +typedef EGLBoolean (EGLAPIENTRYP PFNEGLGETSYNCVALUESCHROMIUMPROC)(EGLDisplay dpy, EGLSurface surface, EGLuint64CHROMIUM *ust, EGLuint64CHROMIUM *msc, EGLuint64CHROMIUM *sbc); +#endif +#endif + #ifdef __cplusplus } #endif diff --git a/third_party/khronos/README.chromium b/third_party/khronos/README.chromium index 36caefa..285f1d6 100644 --- a/third_party/khronos/README.chromium +++ b/third_party/khronos/README.chromium @@ -42,3 +42,5 @@ EGL/eglplatform.h - Added EGLNative*Type for Mac. DEPS - Added DEPS file to prevent inclusion of external dependencies. +EGL/eglext.h + - Added EGL_CHROMIUM_sync_control |