diff options
author | Naseer Ahmed <naseer@codeaurora.org> | 2018-05-23 13:57:29 -0400 |
---|---|---|
committer | Naseer Ahmed <naseer@codeaurora.org> | 2018-05-23 14:14:34 -0400 |
commit | 7330f814480c157439a5f35a6f3f78a99d332e56 (patch) | |
tree | 7a0cba803eb9baddf83ee7d5c0524316e79cf056 /sdm | |
parent | 51f914f1c58615e9cd3c5bfaa94642c186b38bc6 (diff) | |
download | android_hardware_qcom_sdm710_display-7330f814480c157439a5f35a6f3f78a99d332e56.tar.gz android_hardware_qcom_sdm710_display-7330f814480c157439a5f35a6f3f78a99d332e56.tar.bz2 android_hardware_qcom_sdm710_display-7330f814480c157439a5f35a6f3f78a99d332e56.zip |
hwc: Mark only the scRGB layer as skip
Since the color mode is now being used as the working color
space, scRGB layers can be marked as skip and the entire
composition no longer needs to fall back to GPU.
CRs-Fixed: 2247597
Bug: 80082357
Change-Id: Ic32ab3495037a0dcb2f2f3b427bd55e37e17d0cd
Diffstat (limited to 'sdm')
-rw-r--r-- | sdm/libs/hwc2/hwc_display.cpp | 6 |
1 files changed, 2 insertions, 4 deletions
diff --git a/sdm/libs/hwc2/hwc_display.cpp b/sdm/libs/hwc2/hwc_display.cpp index 66a0d79a..1a36623c 100644 --- a/sdm/libs/hwc2/hwc_display.cpp +++ b/sdm/libs/hwc2/hwc_display.cpp @@ -452,8 +452,6 @@ void HWCDisplay::BuildLayerStack() { uint32_t color_mode_count = 0; display_intf_->GetColorModeCount(&color_mode_count); - bool extended_range = false; - // Add one layer for fb target // TODO(user): Add blit target layers for (auto hwc_layer : layer_set_) { @@ -476,7 +474,7 @@ void HWCDisplay::BuildLayerStack() { auto range = hwc_layer->GetLayerDataspace() & HAL_DATASPACE_RANGE_MASK; if (range == HAL_DATASPACE_RANGE_EXTENDED) { - extended_range = true; + layer->flags.skip = true; } // set default composition as GPU for SDM @@ -607,7 +605,7 @@ void HWCDisplay::BuildLayerStack() { // fall back frame composition to GPU when client target is 10bit // TODO(user): clarify the behaviour from Client(SF) and SDM Extn - // when handling 10bit FBT, as it would affect blending - if (Is10BitFormat(sdm_client_target->input_buffer.format) || extended_range) { + if (Is10BitFormat(sdm_client_target->input_buffer.format)) { // Must fall back to client composition MarkLayersForClientComposition(); } |