summaryrefslogtreecommitdiff
authorStark Li <stark.li@amlogic.com>2017-04-11 06:34:15 (GMT)
committer Stark Li <stark.li@amlogic.com>2017-04-11 06:34:28 (GMT)
commiteef639ac65abd3fe09f836ec453d666a59f2ea17 (patch)
treec77621b25ff2541947007b54e53700cf9f9277cc
parent660aa9d2da64e265693ead517c45991bd8ab6896 (diff)
downloadhwcomposer-eef639ac65abd3fe09f836ec453d666a59f2ea17.zip
hwcomposer-eef639ac65abd3fe09f836ec453d666a59f2ea17.tar.gz
hwcomposer-eef639ac65abd3fe09f836ec453d666a59f2ea17.tar.bz2
PD#140059: fix ge2d process 2 different size layer performance problems.
Change-Id: If679ce5f00f748bda1d0c45d275c07e819f48875
Diffstat
-rw-r--r--hwc2/common/devices/PhysicalDevice.cpp6
1 files changed, 6 insertions, 0 deletions
diff --git a/hwc2/common/devices/PhysicalDevice.cpp b/hwc2/common/devices/PhysicalDevice.cpp
index 04bf089..2dab0d4 100644
--- a/hwc2/common/devices/PhysicalDevice.cpp
+++ b/hwc2/common/devices/PhysicalDevice.cpp
@@ -1013,6 +1013,12 @@ bool PhysicalDevice::layersStateCheck(int32_t renderMode,
}
}
#endif
+ if (HWC2_TWO_LAYERS == layerNum
+ && (!Utils::compareSize(sourceCrop[0], sourceCrop[1])
+ || !Utils::compareSize(displayFrame[0], displayFrame[1]))) {
+ DTRACE("when 2 layer's size is difference, ge2d compose can not process!");
+ return false;
+ }
}
#endif