From 1eb2ecfe4a34d5d411dfab1516e4e3ce2200a0fd Mon Sep 17 00:00:00 2001 From: ramindani Date: Thu, 7 Dec 2023 11:16:21 -0800 Subject: [PATCH] [HWC3] AIDL change to add refreshPeriodNanos to RefreshRateChangedDebugData Test: atest VtsHalGraphicsComposer3_TargetTest and device boots BUG: 314527560 Change-Id: Iaf961ae6ad118c5cd99b07ec133023297dac7040 --- .../composer3/RefreshRateChangedDebugData.aidl | 1 + .../composer3/RefreshRateChangedDebugData.aidl | 11 +++++++++++ 2 files changed, 12 insertions(+) diff --git a/graphics/composer/aidl/aidl_api/android.hardware.graphics.composer3/current/android/hardware/graphics/composer3/RefreshRateChangedDebugData.aidl b/graphics/composer/aidl/aidl_api/android.hardware.graphics.composer3/current/android/hardware/graphics/composer3/RefreshRateChangedDebugData.aidl index 2b9801a4aa..e9305e152c 100644 --- a/graphics/composer/aidl/aidl_api/android.hardware.graphics.composer3/current/android/hardware/graphics/composer3/RefreshRateChangedDebugData.aidl +++ b/graphics/composer/aidl/aidl_api/android.hardware.graphics.composer3/current/android/hardware/graphics/composer3/RefreshRateChangedDebugData.aidl @@ -36,4 +36,5 @@ package android.hardware.graphics.composer3; parcelable RefreshRateChangedDebugData { long display; int vsyncPeriodNanos; + int refreshPeriodNanos; } diff --git a/graphics/composer/aidl/android/hardware/graphics/composer3/RefreshRateChangedDebugData.aidl b/graphics/composer/aidl/android/hardware/graphics/composer3/RefreshRateChangedDebugData.aidl index c1f78d6f5e..11c0112dfd 100644 --- a/graphics/composer/aidl/android/hardware/graphics/composer3/RefreshRateChangedDebugData.aidl +++ b/graphics/composer/aidl/android/hardware/graphics/composer3/RefreshRateChangedDebugData.aidl @@ -27,4 +27,15 @@ parcelable RefreshRateChangedDebugData { * The display vsync period in nanoseconds. */ int vsyncPeriodNanos; + + /** + * The refresh period of the display in nanoseconds. + * On VRR (Variable Refresh Rate) displays, refreshPeriodNanos can be different from the + * vsyncPeriodNanos because not every vsync cycle of the display is a refresh cycle. + * This should be set to the current refresh period. + * On non-VRR displays this value should be equal to vsyncPeriodNanos + * + * @see vsyncPeriodNanos + */ + int refreshPeriodNanos; }