summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAdrian Salido-Moreno <adrianm@codeaurora.org>2015-04-28 15:53:31 -0700
committerDavid Keitel <dkeitel@codeaurora.org>2016-03-23 20:40:52 -0700
commit9df13699a8a3a3155eb666d0bc85108312766286 (patch)
tree2a97634ec44bcd9a7ee81c91f8042b46760b4af7
parent65a9c296806c42cdbebcf20185a8628acf48e5f9 (diff)
msm: mdss: pipe: fix solid fill image programming
When programming pipe in solid fill, the image properties should be programmed to make sure that scaling blocks are bypassed. In order to do this we need to program out resolution to same size as source. Change-Id: If0a9182ca738e753f99a5b5e9cc20bc76b75238a Signed-off-by: Adrian Salido-Moreno <adrianm@codeaurora.org>
-rw-r--r--drivers/video/fbdev/msm/mdss_mdp_pipe.c11
1 files changed, 11 insertions, 0 deletions
diff --git a/drivers/video/fbdev/msm/mdss_mdp_pipe.c b/drivers/video/fbdev/msm/mdss_mdp_pipe.c
index 7411788565df..f1f4f9f2ce8f 100644
--- a/drivers/video/fbdev/msm/mdss_mdp_pipe.c
+++ b/drivers/video/fbdev/msm/mdss_mdp_pipe.c
@@ -1635,6 +1635,17 @@ static int mdss_mdp_image_setup(struct mdss_mdp_pipe *pipe,
}
img_size = (height << 16) | width;
+ /*
+ * in solid fill, there is no src rectangle, but hardware needs to
+ * be programmed same as dst to avoid issues in scaling blocks
+ */
+ if (data == NULL) {
+ src_size = dst_size;
+ img_size = dst_size;
+ src_xy = 0;
+ decimation = 0;
+ }
+
if (IS_MDSS_MAJOR_MINOR_SAME(mdata->mdp_rev, MDSS_MDP_HW_REV_103) &&
pipe->bwc_mode) {
/* check source dimensions change */