summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLiu Ying <victor.liu@nxp.com>2018-11-30 13:23:06 +0800
committerBryan O'Donoghue <bryan.odonoghue@linaro.org>2019-05-01 17:43:30 +0100
commit16fadfab28f751344049b854c8b9d795daa86916 (patch)
tree1bd5553ccec0ad3de76d61565dc6e9a3ef48ad63
parentffb84287d4dcbc7dcaf51c89ad54d6294bfe0774 (diff)
MLK-20506 gpu: imx: imx8_dprc: Set CROP_ULC_X/Y to be zero for linear fb
Nonzero CROP_ULC_X/Y are only valid for tile framebuffer cropping. Thus, we should set them to be zero for linear framebuffer, otherwise, an on-the-fly switch from tile framebuffer(with cropping enabled) to linear framebuffer would cause hardware malfunction. Signed-off-by: Liu Ying <victor.liu@nxp.com> (cherry picked from commit 4fc67aed944526545e6ee44d582b013a6327c8d1)
-rw-r--r--drivers/gpu/imx/imx8_dprc.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/drivers/gpu/imx/imx8_dprc.c b/drivers/gpu/imx/imx8_dprc.c
index 267159c7277d..166c214c0154 100644
--- a/drivers/gpu/imx/imx8_dprc.c
+++ b/drivers/gpu/imx/imx8_dprc.c
@@ -477,6 +477,9 @@ void dprc_configure(struct dprc *dprc, unsigned int stream_id,
FRAME_PIX_X_ULC_CTRL);
dprc_write(dprc, CROP_ULC_Y(round_down(y_offset, mt_h)),
FRAME_PIX_Y_ULC_CTRL);
+ } else {
+ dprc_write(dprc, CROP_ULC_X(0), FRAME_PIX_X_ULC_CTRL);
+ dprc_write(dprc, CROP_ULC_Y(0), FRAME_PIX_Y_ULC_CTRL);
}
val = dprc_read(dprc, RTRAM_CTRL0);