author | Stark 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) |
commit | eef639ac65abd3fe09f836ec453d666a59f2ea17 (patch) | |
tree | c77621b25ff2541947007b54e53700cf9f9277cc | |
parent | 660aa9d2da64e265693ead517c45991bd8ab6896 (diff) | |
download | hwcomposer-eef639ac65abd3fe09f836ec453d666a59f2ea17.zip hwcomposer-eef639ac65abd3fe09f836ec453d666a59f2ea17.tar.gz hwcomposer-eef639ac65abd3fe09f836ec453d666a59f2ea17.tar.bz2 |
PD#140059: fix ge2d process 2 different size layer performance problems.
Change-Id: If679ce5f00f748bda1d0c45d275c07e819f48875
-rw-r--r-- | hwc2/common/devices/PhysicalDevice.cpp | 6 |
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 |