From 72524ce86000323b40f67693ebcc8eba1246c0ac Mon Sep 17 00:00:00 2001 From: Oleg Petsjonkin Date: Wed, 19 Jul 2023 10:33:47 +0000 Subject: [PATCH] NBMController should load DDC data on creation HBMController loads DDC in constructor, NBMController sholud do the same (otherwise there will be no lux throttling data before onDisplayChange event) Please note, Clampers already handing it properly see where BrightnessClampersController is constructed. Bug: b/277877297 Test: hardcode DisplayDeviceConfig.mLuxThrotllingData, use adb shell dumpsys display to verify that NBMController.mBrightnessLimits is set (cherry picked from https://googleplex-android-review.googlesource.com/q/commit:1f04a112250e19ef2499322d7fa2195dd74483b3) Merged-In: I16a31665d963ab0917c4f7be173134b37e0613e7 Change-Id: I16a31665d963ab0917c4f7be173134b37e0613e7 --- .../com/android/server/display/BrightnessRangeController.java | 3 ++- .../com/android/server/display/DisplayPowerController.java | 2 +- .../com/android/server/display/DisplayPowerController2.java | 2 +- 3 files changed, 4 insertions(+), 3 deletions(-) diff --git a/services/core/java/com/android/server/display/BrightnessRangeController.java b/services/core/java/com/android/server/display/BrightnessRangeController.java index 47cde15174509..00564963fac32 100644 --- a/services/core/java/com/android/server/display/BrightnessRangeController.java +++ b/services/core/java/com/android/server/display/BrightnessRangeController.java @@ -33,9 +33,10 @@ class BrightnessRangeController { private final Runnable mModeChangeCallback; BrightnessRangeController(HighBrightnessModeController hbmController, - Runnable modeChangeCallback) { + Runnable modeChangeCallback, DisplayDeviceConfig displayDeviceConfig) { mHbmController = hbmController; mModeChangeCallback = modeChangeCallback; + mNormalBrightnessModeController.resetNbmData(displayDeviceConfig.getLuxThrottlingData()); } diff --git a/services/core/java/com/android/server/display/DisplayPowerController.java b/services/core/java/com/android/server/display/DisplayPowerController.java index f6e074f41743a..92f6d45fae665 100644 --- a/services/core/java/com/android/server/display/DisplayPowerController.java +++ b/services/core/java/com/android/server/display/DisplayPowerController.java @@ -666,7 +666,7 @@ final class DisplayPowerController implements AutomaticBrightnessController.Call HighBrightnessModeController hbmController = createHbmControllerLocked(modeChangeCallback); mBrightnessRangeController = new BrightnessRangeController(hbmController, - modeChangeCallback); + modeChangeCallback, mDisplayDeviceConfig); mBrightnessThrottler = createBrightnessThrottlerLocked(); diff --git a/services/core/java/com/android/server/display/DisplayPowerController2.java b/services/core/java/com/android/server/display/DisplayPowerController2.java index 2e8c3420c3175..e26be68510998 100644 --- a/services/core/java/com/android/server/display/DisplayPowerController2.java +++ b/services/core/java/com/android/server/display/DisplayPowerController2.java @@ -544,7 +544,7 @@ final class DisplayPowerController2 implements AutomaticBrightnessController.Cal mBrightnessThrottler = createBrightnessThrottlerLocked(); mBrightnessRangeController = new BrightnessRangeController(hbmController, - modeChangeCallback); + modeChangeCallback, mDisplayDeviceConfig); mDisplayBrightnessController = new DisplayBrightnessController(context, null,