diff options
author | 2015-11-02 13:00:03 -0800 | |
---|---|---|
committer | 2016-02-29 08:24:14 -0800 | |
commit | 9e56aa0fdb5f7121b9b975c6c16db103ea4d2fe9 (patch) | |
tree | 3c91c52815a2a0bb851b0280e8be70a49a638208 /services/surfaceflinger/EventControlThread.cpp | |
parent | fc4e202b33d33b5e11181f09a2229d3ef7ae925a (diff) |
Switch SurfaceFlinger to HWC 2.0
Enables SurfaceFlinger to speak to version 2.0 of the Hardware Composer
HAL instead of version 1.x (also removing support for the framebuffer
HAL). By default, however, this functionality is disabled. In order to
enable it, USE_HWC2 must be set to true in Android.mk.
Change-Id: I4589e02ac2165236b10ff2f7cb772f87e0d3daab
Diffstat (limited to 'services/surfaceflinger/EventControlThread.cpp')
-rw-r--r-- | services/surfaceflinger/EventControlThread.cpp | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/services/surfaceflinger/EventControlThread.cpp b/services/surfaceflinger/EventControlThread.cpp index 65040913fa..ee6e886d12 100644 --- a/services/surfaceflinger/EventControlThread.cpp +++ b/services/surfaceflinger/EventControlThread.cpp @@ -35,8 +35,12 @@ bool EventControlThread::threadLoop() { bool vsyncEnabled = mVsyncEnabled; +#ifdef USE_HWC2 + mFlinger->setVsyncEnabled(HWC_DISPLAY_PRIMARY, mVsyncEnabled); +#else mFlinger->eventControl(HWC_DISPLAY_PRIMARY, SurfaceFlinger::EVENT_VSYNC, mVsyncEnabled); +#endif while (true) { status_t err = mCond.wait(mMutex); @@ -47,8 +51,12 @@ bool EventControlThread::threadLoop() { } if (vsyncEnabled != mVsyncEnabled) { +#ifdef USE_HWC2 + mFlinger->setVsyncEnabled(HWC_DISPLAY_PRIMARY, mVsyncEnabled); +#else mFlinger->eventControl(HWC_DISPLAY_PRIMARY, SurfaceFlinger::EVENT_VSYNC, mVsyncEnabled); +#endif vsyncEnabled = mVsyncEnabled; } } |