diff options
author | Linux Build Service Account <lnxbuild@localhost> | 2021-04-24 13:42:19 -0700 |
---|---|---|
committer | Linux Build Service Account <lnxbuild@localhost> | 2021-04-24 13:42:19 -0700 |
commit | 72bb67aa9098b8d158be0a4df94679794d477759 (patch) | |
tree | fd9dd3a450ce90aa5b0f3b7dc5c9020908338fd3 | |
parent | 5ed4047791d280a9bc2d80c3f70103399d949ab4 (diff) | |
parent | b3ca2d754b89fb723222a2609e54d5841a49dbcc (diff) |
Merge b3ca2d754b89fb723222a2609e54d5841a49dbcc on remote branch
Change-Id: I48af765d5a1a31adf3bc92b5bea2da460377bf5c
-rw-r--r-- | config/display-product.mk | 4 | ||||
-rw-r--r-- | sdm/include/core/layer_stack.h | 4 | ||||
-rw-r--r-- | sdm/libs/hwc2/hwc_display.cpp | 4 |
3 files changed, 8 insertions, 4 deletions
diff --git a/config/display-product.mk b/config/display-product.mk index 9f96ac41..1cf7fac7 100644 --- a/config/display-product.mk +++ b/config/display-product.mk @@ -102,6 +102,7 @@ PRODUCT_PROPERTY_OVERRIDES += \ vendor.display.disable_decimation=1 \ vendor.display.enable_null_display=0 \ vendor.display.disable_excl_rect=0 \ + vendor.display.disable_excl_rect_partial_fb=1 \ vendor.display.comp_mask=0 \ vendor.display.enable_default_color_mode=1 \ vendor.display.enable_optimize_refresh=1 \ @@ -127,9 +128,6 @@ PRODUCT_DEFAULT_PROPERTY_OVERRIDES += ro.surface_flinger.force_hwc_copy_for_virt PRODUCT_DEFAULT_PROPERTY_OVERRIDES += ro.surface_flinger.max_frame_buffer_acquired_buffers=3 PRODUCT_DEFAULT_PROPERTY_OVERRIDES += ro.surface_flinger.max_virtual_display_dimension=4096 -ifeq ($(TARGET_BOARD_PLATFORM),$(TRINKET)) -PRODUCT_PROPERTY_OVERRIDES += vendor.display.disable_excl_rect_partial_fb=1 -endif ifneq (,$(filter userdebug eng, $(TARGET_BUILD_VARIANT))) # Recovery is enabled, logging is enabled diff --git a/sdm/include/core/layer_stack.h b/sdm/include/core/layer_stack.h index b49c425c..81ecfd6d 100644 --- a/sdm/include/core/layer_stack.h +++ b/sdm/include/core/layer_stack.h @@ -1,5 +1,5 @@ /* -* Copyright (c) 2014 - 2019, The Linux Foundation. All rights reserved. +* Copyright (c) 2014 - 2019, 2021 The Linux Foundation. All rights reserved. * * Redistribution and use in source and binary forms, with or without modification, are permitted * provided that the following conditions are met: @@ -277,6 +277,8 @@ struct LayerStackFlags { uint32_t config_changed : 1; //!< This flag indicates Display config must be validated. uint32_t mask_present : 1; //!< Set if layer stack has mask layers. + + uint32_t scaling_rgb_layer_present : 1; //!< Set if scaling rgb layer is present }; uint32_t flags = 0; //!< For initialization purpose only. diff --git a/sdm/libs/hwc2/hwc_display.cpp b/sdm/libs/hwc2/hwc_display.cpp index 894d9224..937c0a78 100644 --- a/sdm/libs/hwc2/hwc_display.cpp +++ b/sdm/libs/hwc2/hwc_display.cpp @@ -709,6 +709,10 @@ void HWCDisplay::BuildLayerStack() { is_secure = true; } + if (IS_RGB_FORMAT(layer->input_buffer.format) && hwc_layer->IsScalingPresent()) { + layer_stack_.flags.scaling_rgb_layer_present = true; + } + if (hwc_layer->IsSingleBuffered() && !(hwc_layer->IsRotationPresent() || hwc_layer->IsScalingPresent())) { layer->flags.single_buffer = true; |