summaryrefslogtreecommitdiffstats
path: root/sdm/libs/core/strategy.cpp
diff options
context:
space:
mode:
authorArun Kumar K.R <akumarkr@codeaurora.org>2014-12-23 18:22:05 -0800
committerArun Kumar K.R <akumarkr@codeaurora.org>2015-06-16 09:53:58 -0700
commit3d92cafbc4dbdb266a487759766255fe8333ab9b (patch)
treefa3a6e501f1b992178da0fd377c87de9a544e736 /sdm/libs/core/strategy.cpp
parent0a9681d65bb52ba49476e5efe6985262924b6073 (diff)
downloadhardware_qcom_display-3d92cafbc4dbdb266a487759766255fe8333ab9b.tar.gz
hardware_qcom_display-3d92cafbc4dbdb266a487759766255fe8333ab9b.tar.bz2
hardware_qcom_display-3d92cafbc4dbdb266a487759766255fe8333ab9b.zip
sdm: Add support for hybrid composition
- Add interface for hybrid composition where some part of layer is composed by blit engine and rest by SDE. - Use BlitEngine interface for the blit composition - Allocate blit target buffers in Commit and use Reconfig to re-validate the Hybrid composition - Add C2D as a BlitEngine to get layers composed on the blit target. Change-Id: I849da73055920ab13c1a260c9511478457e6894b
Diffstat (limited to 'sdm/libs/core/strategy.cpp')
-rw-r--r--sdm/libs/core/strategy.cpp5
1 files changed, 3 insertions, 2 deletions
diff --git a/sdm/libs/core/strategy.cpp b/sdm/libs/core/strategy.cpp
index 183384ec6..f009d3afa 100644
--- a/sdm/libs/core/strategy.cpp
+++ b/sdm/libs/core/strategy.cpp
@@ -128,16 +128,17 @@ DisplayError Strategy::GetNextStrategy(StrategyConstraints *constraints) {
return kErrorUndefined;
}
- // Mark all layers for GPU composition. Find GPU target buffer and store its index for
+ // Mark all application layers for GPU composition. Find GPU target buffer and store its index for
// programming the hardware.
LayerStack *layer_stack = hw_layers_info_->stack;
uint32_t &hw_layer_count = hw_layers_info_->count;
hw_layer_count = 0;
+
for (uint32_t i = 0; i < layer_stack->layer_count; i++) {
LayerComposition &composition = layer_stack->layers[i].composition;
if (composition == kCompositionGPUTarget) {
hw_layers_info_->index[hw_layer_count++] = i;
- } else {
+ } else if (composition != kCompositionBlitTarget) {
composition = kCompositionGPU;
}
}