summaryrefslogtreecommitdiff
path: root/hwc3
diff options
context:
space:
mode:
authorAlec Mouri <alecmouri@google.com>2022-02-24 01:48:53 +0000
committerAndroid (Google) Code Review <android-gerrit@google.com>2022-02-24 01:48:53 +0000
commit3cc984ea8dd1334b68156b6704e809f02ce241d0 (patch)
tree7699843929e913079fda1f2f287f5b4868d54d4a /hwc3
parent21e656d2438b04d538b7cd20e1b02ea9f8242094 (diff)
parent86d9463ab7383b080994481887a1359ae27b4523 (diff)
Merge "Composer reports dimming ratio for client composition instead of nits" into tm-dev
Diffstat (limited to 'hwc3')
-rw-r--r--hwc3/ComposerClient.cpp4
-rw-r--r--hwc3/ComposerCommandEngine.cpp10
-rw-r--r--hwc3/ComposerServiceWriter.h12
-rw-r--r--hwc3/impl/HalImpl.cpp5
-rw-r--r--hwc3/impl/HalImpl.h3
-rw-r--r--hwc3/include/IComposerHal.h5
6 files changed, 16 insertions, 23 deletions
diff --git a/hwc3/ComposerClient.cpp b/hwc3/ComposerClient.cpp
index 49d0e80..8638d08 100644
--- a/hwc3/ComposerClient.cpp
+++ b/hwc3/ComposerClient.cpp
@@ -553,10 +553,8 @@ void ComposerClient::destroyResources() {
std::vector<int64_t> requestedLayers;
std::vector<int32_t> requestMasks;
ClientTargetProperty clientTargetProperty;
- float clientWhitePointNits;
mHal->validateDisplay(display, &changedLayers, &compositionTypes, &displayRequestMask,
- &requestedLayers, &requestMasks, &clientTargetProperty,
- &clientWhitePointNits);
+ &requestedLayers, &requestMasks, &clientTargetProperty);
mHal->acceptDisplayChanges(display);
ndk::ScopedFileDescriptor presentFence;
diff --git a/hwc3/ComposerCommandEngine.cpp b/hwc3/ComposerCommandEngine.cpp
index 01fef69..a856f9e 100644
--- a/hwc3/ComposerCommandEngine.cpp
+++ b/hwc3/ComposerCommandEngine.cpp
@@ -130,17 +130,17 @@ int32_t ComposerCommandEngine::executeValidateDisplayInternal(int64_t display) {
uint32_t displayRequestMask = 0x0;
std::vector<int64_t> requestedLayers;
std::vector<int32_t> requestMasks;
- float clientTargetWhitePointNits;
ClientTargetProperty clientTargetProperty{common::PixelFormat::RGBA_8888,
common::Dataspace::UNKNOWN};
- auto err = mHal->validateDisplay(display, &changedLayers, &compositionTypes,
- &displayRequestMask, &requestedLayers, &requestMasks,
- &clientTargetProperty, &clientTargetWhitePointNits);
+ auto err =
+ mHal->validateDisplay(display, &changedLayers, &compositionTypes, &displayRequestMask,
+ &requestedLayers, &requestMasks, &clientTargetProperty);
mResources->setDisplayMustValidateState(display, false);
if (!err) {
mWriter->setChangedCompositionTypes(display, changedLayers, compositionTypes);
mWriter->setDisplayRequests(display, displayRequestMask, requestedLayers, requestMasks);
- mWriter->setClientTargetProperty(display, clientTargetProperty, clientTargetWhitePointNits);
+ static constexpr float kBrightness = 1.f;
+ mWriter->setClientTargetProperty(display, clientTargetProperty, kBrightness);
} else {
LOG(ERROR) << __func__ << ": err " << err;
mWriter->setError(mCommandIndex, err);
diff --git a/hwc3/ComposerServiceWriter.h b/hwc3/ComposerServiceWriter.h
index e2197e1..ee1607b 100644
--- a/hwc3/ComposerServiceWriter.h
+++ b/hwc3/ComposerServiceWriter.h
@@ -108,12 +108,12 @@ public:
}
void setClientTargetProperty(int64_t display, const ClientTargetProperty& clientTargetProperty,
- float whitePointNits) {
- ClientTargetPropertyWithNits clientTargetPropertyWithNits;
- clientTargetPropertyWithNits.display = display;
- clientTargetPropertyWithNits.clientTargetProperty = clientTargetProperty;
- clientTargetPropertyWithNits.whitePointNits = whitePointNits;
- mCommandsResults.emplace_back(std::move(clientTargetPropertyWithNits));
+ float brightness) {
+ ClientTargetPropertyWithBrightness clientTargetPropertyWithBrightness;
+ clientTargetPropertyWithBrightness.display = display;
+ clientTargetPropertyWithBrightness.clientTargetProperty = clientTargetProperty;
+ clientTargetPropertyWithBrightness.brightness = brightness;
+ mCommandsResults.emplace_back(std::move(clientTargetPropertyWithBrightness));
}
std::vector<CommandResultPayload> getPendingCommandResults() {
diff --git a/hwc3/impl/HalImpl.cpp b/hwc3/impl/HalImpl.cpp
index eb82a70..011fd43 100644
--- a/hwc3/impl/HalImpl.cpp
+++ b/hwc3/impl/HalImpl.cpp
@@ -953,8 +953,7 @@ 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,
- float* outClientTargetWhitePointNits) {
+ ClientTargetProperty* outClientTargetProperty) {
ExynosDisplay* halDisplay;
RET_IF_ERR(getHalDisplay(display, halDisplay));
@@ -977,8 +976,6 @@ int32_t HalImpl::validateDisplay(int64_t display, std::vector<int64_t>* outChang
RET_IF_ERR(halDisplay->getDisplayRequests(&displayReqs, &reqsCount,
hwcRequestedLayers.data(), outRequestMasks->data()));
- RET_IF_ERR(halDisplay->getClientTargetWhitePointNits(outClientTargetWhitePointNits));
-
h2a::translate(hwcChangedLayers, *outChangedLayers);
h2a::translate(hwcCompositionTypes, *outCompositionTypes);
*outDisplayRequestMask = displayReqs;
diff --git a/hwc3/impl/HalImpl.h b/hwc3/impl/HalImpl.h
index d60d7d0..8ccd399 100644
--- a/hwc3/impl/HalImpl.h
+++ b/hwc3/impl/HalImpl.h
@@ -143,8 +143,7 @@ class HalImpl : public IComposerHal {
uint32_t* outDisplayRequestMask,
std::vector<int64_t>* outRequestedLayers,
std::vector<int32_t>* outRequestMasks,
- ClientTargetProperty* outClientTargetProperty,
- float* outClientTargetWhitePointNits) override;
+ ClientTargetProperty* outClientTargetProperty) override;
int32_t setExpectedPresentTime(
int64_t display,
const std::optional<ClockMonotonicTimestamp> expectedPresentTime) override;
diff --git a/hwc3/include/IComposerHal.h b/hwc3/include/IComposerHal.h
index 00bfdee..b49bd0c 100644
--- a/hwc3/include/IComposerHal.h
+++ b/hwc3/include/IComposerHal.h
@@ -34,7 +34,7 @@
#include <aidl/android/hardware/graphics/composer3/ChangedCompositionTypes.h>
#include <aidl/android/hardware/graphics/composer3/ClientTarget.h>
#include <aidl/android/hardware/graphics/composer3/ClientTargetProperty.h>
-#include <aidl/android/hardware/graphics/composer3/ClientTargetPropertyWithNits.h>
+#include <aidl/android/hardware/graphics/composer3/ClientTargetPropertyWithBrightness.h>
#include <aidl/android/hardware/graphics/composer3/Color.h>
#include <aidl/android/hardware/graphics/composer3/ColorMode.h>
#include <aidl/android/hardware/graphics/composer3/CommandError.h>
@@ -210,8 +210,7 @@ class IComposerHal {
uint32_t* outDisplayRequestMask,
std::vector<int64_t>* outRequestedLayers,
std::vector<int32_t>* outRequestMasks,
- ClientTargetProperty* outClientTargetProperty,
- float* outClientTargetWhitePointNits) = 0;
+ ClientTargetProperty* outClientTargetProperty) = 0;
virtual int32_t setExpectedPresentTime(
int64_t display, const std::optional<ClockMonotonicTimestamp> expectedPresentTime) = 0;
virtual int32_t setIdleTimerEnabled(int64_t display, int32_t timeout) = 0;