summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSree Sesha Aravind Vadrevu <svadrevu@codeaurora.org>2013-04-25 17:36:45 -0700
committerDavid Keitel <dkeitel@codeaurora.org>2016-03-23 20:16:43 -0700
commit621d4e38824b7e5fa37b84437b4f58108bda5114 (patch)
tree31d7028c39e2dec0e4dd7e92537a0d4df3501c21
parenta72e0bcc4a0ceb1f96e20c02b3e85327c18e7958 (diff)
msm: mdss: disable cropping for bandwidth compression
cropping on the pipe shouldn't happen for Bandwidth compression. Also, interlaced formats should have w,h as multiple of 4 to avoid odd sizes after division. Change-Id: I688898e9917bcea0b193c78ed3ccd0f7e5b6acfd Signed-off-by: Sree Sesha Aravind Vadrevu <svadrevu@codeaurora.org>
-rw-r--r--drivers/video/fbdev/msm/mdss_mdp_overlay.c15
1 files changed, 15 insertions, 0 deletions
diff --git a/drivers/video/fbdev/msm/mdss_mdp_overlay.c b/drivers/video/fbdev/msm/mdss_mdp_overlay.c
index af47d0faa8dc..fed13e63381b 100644
--- a/drivers/video/fbdev/msm/mdss_mdp_overlay.c
+++ b/drivers/video/fbdev/msm/mdss_mdp_overlay.c
@@ -179,6 +179,14 @@ static int mdss_mdp_overlay_req_check(struct msm_fb_data_type *mfd,
req->src_rect.h, req->dst_rect.h);
return -EINVAL;
}
+
+ if (req->flags & MDP_BWC_EN) {
+ if ((req->src.width != req->src_rect.w) ||
+ (req->src.height != req->src_rect.h)) {
+ pr_err("BWC: unequal src img and rect w,h\n");
+ return -EINVAL;
+ }
+ }
}
if (fmt->is_yuv) {
@@ -189,6 +197,13 @@ static int mdss_mdp_overlay_req_check(struct msm_fb_data_type *mfd,
}
}
+ if (req->flags & MDP_DEINTERLACE) {
+ if ((req->src.width % 4 != 0) || (req->src.height % 4 != 0)) {
+ pr_err("interlaced fmt w,h need to be even post div\n");
+ return -EINVAL;
+ }
+ }
+
return 0;
}