summaryrefslogtreecommitdiff
path: root/ips
diff options
context:
space:
mode:
authormahongpe <hongpeng.ma@intel.com>2014-01-27 03:06:51 +0800
committerbuildslave <sys_buildbot@intel.com>2014-02-27 03:25:59 +0000
commit4875ce1f5e96f315688d74166de4b5bf656d25b8 (patch)
treeb56df98ad476aaa811875182ead01474ae802ccb /ips
parent10e89b1bb0d08ad3d037691125908641a914b58e (diff)
downloadhwcomposer-4875ce1f5e96f315688d74166de4b5bf656d25b8.tar.gz
reset z order status of sprit plane when it is disabled
BZ:157091 Refine z-order status of sprit plane when it is disabled, wrong status will lead to screen flickers. Change-Id: Ibf18a29f53affa3c4bd5f915e3b597b90c12aad0 Signed-off-by: mahongpe <hongpeng.ma@intel.com>
Diffstat (limited to 'ips')
-rw-r--r--ips/tangier/TngSpritePlane.cpp10
1 files changed, 8 insertions, 2 deletions
diff --git a/ips/tangier/TngSpritePlane.cpp b/ips/tangier/TngSpritePlane.cpp
index 7f86cf7..5e7880c 100644
--- a/ips/tangier/TngSpritePlane.cpp
+++ b/ips/tangier/TngSpritePlane.cpp
@@ -38,7 +38,6 @@ TngSpritePlane::TngSpritePlane(int index, int disp)
: SpritePlaneBase(index, disp)
{
CTRACE();
-
memset(&mContext, 0, sizeof(mContext));
}
@@ -148,6 +147,14 @@ bool TngSpritePlane::enablePlane(bool enabled)
return false;
}
+ Hwcomposer& hwc = Hwcomposer::getInstance();
+ DisplayPlaneManager *pm = hwc.getPlaneManager();
+ void *config = pm->getZOrderConfig();
+ if (config != NULL) {
+ struct intel_dc_plane_zorder *zorder = (struct intel_dc_plane_zorder *)config;
+ zorder->abovePrimary = 0;
+ }
+
return true;
}
@@ -183,6 +190,5 @@ void TngSpritePlane::setZOrderConfig(ZOrderConfig& zorderConfig,
(struct intel_dc_plane_zorder *)nativeConfig;
zorder->abovePrimary = mAbovePrimary ? 1 : 0;
}
-
} // namespace intel
} // namespace android