hwc: mdpcomp: Add surfaceDamage calculation with SrcSplit.

Use surfaceDamage in calculating the final dirtyRect in
case of generating the ROI for SourceSplit

Change-Id: Ibe2347c49e07ec40a3369f6970371437b81874cd
diff --git a/msm8994/libhwcomposer/hwc_mdpcomp.cpp b/msm8994/libhwcomposer/hwc_mdpcomp.cpp
index 0ebebc3..44ec4c6 100644
--- a/msm8994/libhwcomposer/hwc_mdpcomp.cpp
+++ b/msm8994/libhwcomposer/hwc_mdpcomp.cpp
@@ -2684,22 +2684,13 @@
         if(!isYuvBuffer((private_handle_t *)layer->handle) && layer->transform)
             return;
 
-        if ((mCachedFrame.hnd[index] != layer->handle) ||
+        if (layerUpdating(layer) ||
                 isYuvBuffer((private_handle_t *)layer->handle)) {
-            hwc_rect_t dst = layer->displayFrame;
-            hwc_rect_t updatingRect = dst;
-
-#ifdef QCOM_BSP
-            if(!needsScaling(layer) && !layer->transform)
-            {
-                hwc_rect_t src = integerizeSourceCrop(layer->sourceCropf);
-                int x_off = dst.left - src.left;
-                int y_off = dst.top - src.top;
-                updatingRect = moveRect(layer->dirtyRect, x_off, y_off);
+            hwc_rect_t dirtyRect = (struct hwc_rect){0, 0, 0, 0};
+            if (!needsScaling(layer) && !layer->transform) {
+                dirtyRect = calculateDirtyRect(layer, fullFrame);
             }
-#endif
-
-            roi = getUnion(roi, updatingRect);
+            roi = getUnion(roi, dirtyRect);
         }
     }