summaryrefslogtreecommitdiff
path: root/hwc3/impl
diff options
context:
space:
mode:
authorLong Ling <longling@google.com>2022-03-01 04:46:25 +0000
committerAndroid (Google) Code Review <android-gerrit@google.com>2022-03-01 04:46:25 +0000
commit0f7f59df363e5fedfcb7e8f96914da10a3f4e85f (patch)
tree3bfea3d2b97e6c9881d69f0c63b67725fec201e2 /hwc3/impl
parent35f4247980a160118b1ae849fa5ac65f55393088 (diff)
parentdd102650f92ee345c48cf104551dcdcf2998dd73 (diff)
downloadcommon-0f7f59df363e5fedfcb7e8f96914da10a3f4e85f.tar.gz
Merge "hwc3: support SDR dimming in linear or gamma space" into tm-dev
Diffstat (limited to 'hwc3/impl')
-rw-r--r--hwc3/impl/HalImpl.cpp7
-rw-r--r--hwc3/impl/HalImpl.h3
2 files changed, 7 insertions, 3 deletions
diff --git a/hwc3/impl/HalImpl.cpp b/hwc3/impl/HalImpl.cpp
index 8da3c0e..e2be900 100644
--- a/hwc3/impl/HalImpl.cpp
+++ b/hwc3/impl/HalImpl.cpp
@@ -953,7 +953,8 @@ int32_t HalImpl::validateDisplay(int64_t display, std::vector<int64_t>* outChang
uint32_t* outDisplayRequestMask,
std::vector<int64_t>* outRequestedLayers,
std::vector<int32_t>* outRequestMasks,
- ClientTargetProperty* outClientTargetProperty) {
+ ClientTargetProperty* outClientTargetProperty,
+ DimmingStage* outDimmingStage) {
ExynosDisplay* halDisplay;
RET_IF_ERR(getHalDisplay(display, halDisplay));
@@ -982,7 +983,9 @@ int32_t HalImpl::validateDisplay(int64_t display, std::vector<int64_t>* outChang
h2a::translate(hwcRequestedLayers, *outRequestedLayers);
hwc_client_target_property hwcProperty;
- if (!halDisplay->getClientTargetProperty(&hwcProperty)) {
+ HwcDimmingStage hwcDimmingStage;
+ if (!halDisplay->getClientTargetProperty(&hwcProperty, &hwcDimmingStage)) {
+ h2a::translate(hwcDimmingStage, *outDimmingStage);
h2a::translate(hwcProperty, *outClientTargetProperty);
} // else ignore this error
diff --git a/hwc3/impl/HalImpl.h b/hwc3/impl/HalImpl.h
index f48b930..f772ca4 100644
--- a/hwc3/impl/HalImpl.h
+++ b/hwc3/impl/HalImpl.h
@@ -146,7 +146,8 @@ class HalImpl : public IComposerHal {
uint32_t* outDisplayRequestMask,
std::vector<int64_t>* outRequestedLayers,
std::vector<int32_t>* outRequestMasks,
- ClientTargetProperty* outClientTargetProperty) override;
+ ClientTargetProperty* outClientTargetProperty,
+ DimmingStage* outDimmingStage) override;
int32_t setExpectedPresentTime(
int64_t display,
const std::optional<ClockMonotonicTimestamp> expectedPresentTime) override;