summaryrefslogtreecommitdiffstats
path: root/sdm
diff options
context:
space:
mode:
authorNaseer Ahmed <naseer@codeaurora.org>2018-05-23 13:57:29 -0400
committerNaseer Ahmed <naseer@codeaurora.org>2018-05-23 14:14:34 -0400
commit7330f814480c157439a5f35a6f3f78a99d332e56 (patch)
tree7a0cba803eb9baddf83ee7d5c0524316e79cf056 /sdm
parent51f914f1c58615e9cd3c5bfaa94642c186b38bc6 (diff)
downloadandroid_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.cpp6
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();
}