Merge "Call overlay_set even if there are no change in params"
diff --git a/liboverlay/overlayMdp.cpp b/liboverlay/overlayMdp.cpp
index 006e05d..268480d 100644
--- a/liboverlay/overlayMdp.cpp
+++ b/liboverlay/overlayMdp.cpp
@@ -64,14 +64,11 @@
void MdpCtrl::reset() {
utils::memset0(mOVInfo);
- utils::memset0(mLkgo);
mOVInfo.id = MSMFB_NEW_REQUEST;
- mLkgo.id = MSMFB_NEW_REQUEST;
mOrientation = utils::OVERLAY_TRANSFORM_0;
mDownscale = 0;
mDpy = 0;
#ifdef USES_POST_PROCESSING
- mPPChanged = false;
memset(&mParams, 0, sizeof(struct compute_params));
mParams.params.conv_params.order = hsic_order_hsc_i;
mParams.params.conv_params.interface = interface_rec601;
@@ -210,21 +207,15 @@
doDownscale();
- if(this->ovChanged()) {
- if(!mdp_wrapper::setOverlay(mFd.getFD(), mOVInfo)) {
- ALOGE("MdpCtrl failed to setOverlay, restoring last known "
- "good ov info");
- mdp_wrapper::dump("== Bad OVInfo is: ", mOVInfo);
- mdp_wrapper::dump("== Last good known OVInfo is: ", mLkgo);
- this->restore();
+ if(!mdp_wrapper::setOverlay(mFd.getFD(), mOVInfo)) {
+ ALOGE("MdpCtrl failed to setOverlay");
+ mdp_wrapper::dump("== Bad OVInfo is: ", mOVInfo);
#ifdef USES_QSEED_SCALAR
- if(Overlay::getScalar()) {
- Overlay::getScalar()->configAbort(mDpy);
- }
-#endif
- return false;
+ if(Overlay::getScalar()) {
+ Overlay::getScalar()->configAbort(mDpy);
}
- this->save();
+#endif
+ return false;
}
#ifdef USES_QSEED_SCALAR
@@ -392,7 +383,6 @@
if (needUpdate) {
display_pp_compute_params(&mParams, &mOVInfo.overlay_pp_cfg);
- mPPChanged = true;
}
#endif
return true;
diff --git a/liboverlay/overlayMdp.h b/liboverlay/overlayMdp.h
index 3cb6a41..8074724 100644
--- a/liboverlay/overlayMdp.h
+++ b/liboverlay/overlayMdp.h
@@ -116,17 +116,8 @@
int getUserData() const;
/* sets user_data[0] */
void setUserData(int v);
- /* return true if current overlay is different
- * than last known good overlay */
- bool ovChanged() const;
- /* save mOVInfo to be last known good ov*/
- void save();
- /* restore last known good ov to be the current */
- void restore();
utils::eTransform mOrientation; //Holds requested orientation
- /* last good known ov info */
- mdp_overlay mLkgo;
/* Actual overlay mdp structure */
mdp_overlay mOVInfo;
/* FD for the mdp fbnum */
@@ -137,8 +128,6 @@
#ifdef USES_POST_PROCESSING
/* PP Compute Params */
struct compute_params mParams;
- /* indicate if PP params have been changed */
- bool mPPChanged;
#endif
};
@@ -265,37 +254,6 @@
}
}
-inline bool MdpCtrl::ovChanged() const {
-#ifdef USES_POST_PROCESSING
- // Some pp params are stored as pointer address,
- // so can't compare their content directly.
- if (mPPChanged) {
- return true;
- }
-#endif
- // 0 means same
- if(0 == ::memcmp(&mOVInfo, &mLkgo, sizeof (mdp_overlay))) {
- return false;
- }
- return true;
-}
-
-inline void MdpCtrl::save() {
- if(static_cast<ssize_t>(mOVInfo.id) == MSMFB_NEW_REQUEST) {
- ALOGE("MdpCtrl current ov has id -1, will not save");
- return;
- }
- mLkgo = mOVInfo;
-}
-
-inline void MdpCtrl::restore() {
- if(static_cast<ssize_t>(mLkgo.id) == MSMFB_NEW_REQUEST) {
- ALOGE("MdpCtrl Lkgo ov has id -1, will not restore");
- return;
- }
- mOVInfo = mLkgo;
-}
-
inline overlay::utils::Whf MdpCtrl::getSrcWhf() const {
return utils::Whf( mOVInfo.src.width,
mOVInfo.src.height,