diff options
author | 2019-04-12 20:23:20 +0000 | |
---|---|---|
committer | 2019-04-12 20:23:20 +0000 | |
commit | 1688f5246f156e815bd7b07ba7d5c39cc821e8d6 (patch) | |
tree | 57ba631a6c2016451a2a74bde9b2f77356bb8d8f /services/surfaceflinger/SurfaceFlinger.cpp | |
parent | 81890b23e4728726ed7f11b23dae2554d586555d (diff) | |
parent | 796beb0013a17e0fbaa9f6b15526b85576e31130 (diff) |
Merge "SurfaceFlinger: fix Sf/App offsets provided in getDisplayConfigs()" into qt-dev
Diffstat (limited to 'services/surfaceflinger/SurfaceFlinger.cpp')
-rw-r--r-- | services/surfaceflinger/SurfaceFlinger.cpp | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/services/surfaceflinger/SurfaceFlinger.cpp b/services/surfaceflinger/SurfaceFlinger.cpp index 53c615f929..606355549e 100644 --- a/services/surfaceflinger/SurfaceFlinger.cpp +++ b/services/surfaceflinger/SurfaceFlinger.cpp @@ -860,7 +860,9 @@ status_t SurfaceFlinger::getDisplayConfigs(const sp<IBinder>& displayToken, info.xdpi = xdpi; info.ydpi = ydpi; info.fps = 1e9 / hwConfig->getVsyncPeriod(); - info.appVsyncOffset = mPhaseOffsets->getCurrentAppOffset(); + const auto refreshRateType = mRefreshRateConfigs.getRefreshRateType(hwConfig->getId()); + const auto offset = mPhaseOffsets->getOffsetsForRefreshRate(refreshRateType); + info.appVsyncOffset = offset.late.app; // This is how far in advance a buffer must be queued for // presentation at a given time. If you want a buffer to appear @@ -874,8 +876,7 @@ status_t SurfaceFlinger::getDisplayConfigs(const sp<IBinder>& displayToken, // // We add an additional 1ms to allow for processing time and // differences between the ideal and actual refresh rate. - info.presentationDeadline = - hwConfig->getVsyncPeriod() - mPhaseOffsets->getCurrentSfOffset() + 1000000; + info.presentationDeadline = hwConfig->getVsyncPeriod() - offset.late.sf + 1000000; // All non-virtual displays are currently considered secure. info.secure = true; |