diff options
author | Android Build Coastguard Worker <android-build-coastguard-worker@google.com> | 2022-06-03 18:11:27 +0000 |
---|---|---|
committer | Android Build Coastguard Worker <android-build-coastguard-worker@google.com> | 2022-06-03 18:11:27 +0000 |
commit | dd82b6e993b95fc6aeb5193a4be77756ba5cfe59 (patch) | |
tree | ff84bb76a2ae6308e501535f73387eb43220fb14 | |
parent | e3b26d3738c9462df91da060cbdc81c19cf2baed (diff) | |
parent | e8ad90586d15ed1380f41d6706d02a1b8ed34f05 (diff) | |
download | gs101-dd82b6e993b95fc6aeb5193a4be77756ba5cfe59.tar.gz |
Snap for 8680342 from e8ad90586d15ed1380f41d6706d02a1b8ed34f05 to mainline-go-documentsui-release
Change-Id: I3c3d8c8b133732060ffa5f13a62fa03822fa18e8
-rw-r--r-- | libhwc2.1/libmaindisplay/ExynosPrimaryDisplayModule.cpp | 24 | ||||
-rw-r--r-- | libhwc2.1/libmaindisplay/ExynosPrimaryDisplayModule.h | 2 |
2 files changed, 23 insertions, 3 deletions
diff --git a/libhwc2.1/libmaindisplay/ExynosPrimaryDisplayModule.cpp b/libhwc2.1/libmaindisplay/ExynosPrimaryDisplayModule.cpp index 74e8246..a6ec3c1 100644 --- a/libhwc2.1/libmaindisplay/ExynosPrimaryDisplayModule.cpp +++ b/libhwc2.1/libmaindisplay/ExynosPrimaryDisplayModule.cpp @@ -1021,7 +1021,7 @@ void ExynosPrimaryDisplayModule::setLbeState(LbeState state) { mBrightnessController->processEnhancedHbm(enhanced_hbm); if (mCurrentLbeState != state) { mCurrentLbeState = state; - mDevice->invalidate(); + mDevice->onRefresh(); } ALOGI("Lbe state %hhd", mCurrentLbeState); } @@ -1049,7 +1049,7 @@ void ExynosPrimaryDisplayModule::setLbeAmbientLight(int value) { if (mAtcLuxMapIndex != index) { mAtcLuxMapIndex = index; - mDevice->invalidate(); + mDevice->onRefresh(); } mCurrentLux = value; } @@ -1058,6 +1058,24 @@ LbeState ExynosPrimaryDisplayModule::getLbeState() { return mCurrentLbeState; } +PanelCalibrationStatus ExynosPrimaryDisplayModule::getPanelCalibrationStatus() { + auto displayColorInterface = getDisplayColorInterface(); + if (displayColorInterface == nullptr) { + return PanelCalibrationStatus::UNCALIBRATED; + } + + auto displayType = getBuiltInDisplayType(); + auto calibrationInfo = displayColorInterface->GetCalibrationInfo(displayType); + + if (calibrationInfo.factory_cal_loaded) { + return PanelCalibrationStatus::ORIGINAL; + } else if (calibrationInfo.golden_cal_loaded) { + return PanelCalibrationStatus::GOLDEN; + } else { + return PanelCalibrationStatus::UNCALIBRATED; + } +} + int32_t ExynosPrimaryDisplayModule::setAtcStDimming(uint32_t value) { Mutex::Autolock lock(mAtcStMutex); int32_t strength = mAtcStrength.value.get(); @@ -1116,7 +1134,7 @@ void ExynosPrimaryDisplayModule::checkAtcAnimation() { ALOGI("atc enable is off (pending off=false)"); } - mDevice->invalidate(); + mDevice->onRefresh(); } int32_t ExynosPrimaryDisplayModule::setPowerMode(int32_t mode) { diff --git a/libhwc2.1/libmaindisplay/ExynosPrimaryDisplayModule.h b/libhwc2.1/libmaindisplay/ExynosPrimaryDisplayModule.h index 8489f28..ada69f6 100644 --- a/libhwc2.1/libmaindisplay/ExynosPrimaryDisplayModule.h +++ b/libhwc2.1/libmaindisplay/ExynosPrimaryDisplayModule.h @@ -134,6 +134,8 @@ class ExynosPrimaryDisplayModule : public ExynosPrimaryDisplay { virtual void setLbeAmbientLight(int value); virtual LbeState getLbeState(); + virtual PanelCalibrationStatus getPanelCalibrationStatus(); + class DisplaySceneInfo { public: struct LayerMappingInfo { |