From dc28b3706b61ba1326658d96400fe55faf3dcb3e Mon Sep 17 00:00:00 2001 From: Alec Mouri Date: Thu, 18 Apr 2019 21:17:13 -0700 Subject: Support repurposing idle timer to work with kernel timer. Idle timer would instead enable/disable hw vsyncs in accordance with inactivity. Bug: 130684082 Test: systrace Change-Id: I289600fc41b7ded863c9486cf6c2ab6155b06550 --- services/surfaceflinger/SurfaceFlinger.cpp | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'services/surfaceflinger/SurfaceFlinger.cpp') diff --git a/services/surfaceflinger/SurfaceFlinger.cpp b/services/surfaceflinger/SurfaceFlinger.cpp index 661c889ac2..897f7b4e64 100644 --- a/services/surfaceflinger/SurfaceFlinger.cpp +++ b/services/surfaceflinger/SurfaceFlinger.cpp @@ -704,6 +704,10 @@ void SurfaceFlinger::init() { Mutex::Autolock lock(mStateLock); setRefreshRateTo(type, event); }); + mScheduler->setGetVsyncPeriodCallback([this] { + Mutex::Autolock lock(mStateLock); + return getVsyncPeriod(); + }); mRefreshRateConfigs.populate(getHwComposer().getConfigs(*display->getId())); mRefreshRateStats.setConfigMode(getHwComposer().getActiveConfigIndex(*display->getId())); -- cgit v1.2.3-59-g8ed1b