summaryrefslogtreecommitdiff
path: root/sdm/libs/hwc2/hwc_layers.cpp
diff options
context:
space:
mode:
authorqctecmdr <qctecmdr@localhost>2020-03-12 01:52:07 -0700
committerGerrit - the friendly Code Review server <code-review@localhost>2020-03-12 01:52:07 -0700
commit479bedb4d2cfe644574af1c1756278e4d50f2a95 (patch)
treeae251444f2b2db28cbbebb1b345720f4207fb6b6 /sdm/libs/hwc2/hwc_layers.cpp
parent1dfe60003fea36848fb8c958150ed1317102985a (diff)
parent014230acf09af1d09879bdfb32f2a1f71b35b2c6 (diff)
Merge "hwc2: Update video flag prior to its usage."
Diffstat (limited to 'sdm/libs/hwc2/hwc_layers.cpp')
-rw-r--r--sdm/libs/hwc2/hwc_layers.cpp7
1 files changed, 4 insertions, 3 deletions
diff --git a/sdm/libs/hwc2/hwc_layers.cpp b/sdm/libs/hwc2/hwc_layers.cpp
index 1613f19a..54674f8c 100644
--- a/sdm/libs/hwc2/hwc_layers.cpp
+++ b/sdm/libs/hwc2/hwc_layers.cpp
@@ -270,12 +270,11 @@ HWC2::Error HWCLayer::SetLayerBuffer(buffer_handle_t buffer, int32_t acquire_fen
layer_buffer->unaligned_width = UINT32(handle->unaligned_width);
layer_buffer->unaligned_height = UINT32(handle->unaligned_height);
+ layer_buffer->flags.video = (handle->buffer_type == BUFFER_TYPE_VIDEO) ? true : false;
if (SetMetaData(const_cast<private_handle_t *>(handle), layer_) != kErrorNone) {
return HWC2::Error::BadLayer;
}
- layer_buffer->flags.video = (handle->buffer_type == BUFFER_TYPE_VIDEO) ? true : false;
-
// TZ Protected Buffer - L1
bool secure = (handle->flags & private_handle_t::PRIV_FLAGS_SECURE_BUFFER);
bool secure_camera = secure && (handle->flags & private_handle_t::PRIV_FLAGS_CAMERA_WRITE);
@@ -913,7 +912,9 @@ void HWCLayer::ValidateAndSetCSC(const private_handle_t *handle) {
use_color_metadata = true;
}
- if (use_color_metadata) {
+ // Since client has set PerFrameMetadata, dataspace will be valid
+ // so we can skip reading from ColorMetaData.
+ if (use_color_metadata && !per_frame_hdr_metadata_) {
ColorMetaData old_meta_data = layer_buffer->color_metadata;
if (sdm::SetCSC(handle, &layer_buffer->color_metadata) == kErrorNone) {
if ((layer_buffer->color_metadata.colorPrimaries != old_meta_data.colorPrimaries) ||