drm/msm/sde: add exclusion rect support

Add exclusion rect support for DRM planes. The hardware avoids fetching
data for the excluded region for pipe. This feature is supported from
SDE 4.0 for both linear and UBWC RGB formats. The programming changes
for exclusion rect related to multirect will be done as part of
multirect changes.

Change-Id: Id07ca491d6913fc04589eca47a1019d0b124adbe
Signed-off-by: Veera Sundaram Sankaran <veeras@codeaurora.org>
diff --git a/drivers/gpu/drm/msm/sde/sde_kms.h b/drivers/gpu/drm/msm/sde/sde_kms.h
index e2ed7d2..558c47a 100644
--- a/drivers/gpu/drm/msm/sde/sde_kms.h
+++ b/drivers/gpu/drm/msm/sde/sde_kms.h
@@ -360,6 +360,15 @@
 void sde_kms_info_stop(struct sde_kms_info *info);
 
 /**
+ * sde_kms_rect_intersect() - find the intersecting region between two rects
+ * @res: Intersecting region between the two rectangles
+ * @rect1: first rectangle coordinates
+ * @rect2: second rectangle coordinates
+ */
+void sde_kms_rect_intersect(struct sde_rect *res,
+		const struct sde_rect *rect1, const struct sde_rect *rect2);
+
+/**
  * Vblank enable/disable functions
  */
 int sde_enable_vblank(struct msm_kms *kms, struct drm_crtc *crtc);