summaryrefslogtreecommitdiff
path: root/drivers
diff options
context:
space:
mode:
authorLiu Ying <victor.liu@nxp.com>2019-12-02 20:14:36 +0800
committerLiu Ying <victor.liu@nxp.com>2019-12-17 14:24:01 +0800
commit12e0ac1ee438fd34ce2563fa1d64ae1996e1e1a8 (patch)
treec100a23ff0ed6d0b3284ea9231c62d5b8fc627e8 /drivers
parent5b4a3f24de0403b33db1316f7e442d3b55e21821 (diff)
MLK-23116-14 drm/imx: dpu: plane: Remove uv_prefetch_start flag
The calling to helpers dprc_gasket_shadow_enable/disable() has already controlled the primary(Y plane) and auxiliary(UV plane) PRGs for their important SHADOW_EN bits. Also, it turns out we don't need to wait FrameGen frame counter moving when only the auxiliary PRG starts to function. So, we may remove the uv_prefetch_start flag. Reviewed-by: Sandor Yu <Sandor.yu@nxp.com> Signed-off-by: Liu Ying <victor.liu@nxp.com> (cherry picked from commit c439d72ab7b1491a0576da0f6dd8eaf315858395) (cherry picked from commit 330356c943f85708c880110e81004f60375695be)
Diffstat (limited to 'drivers')
-rw-r--r--drivers/gpu/drm/imx/dpu/dpu-plane.c12
1 files changed, 3 insertions, 9 deletions
diff --git a/drivers/gpu/drm/imx/dpu/dpu-plane.c b/drivers/gpu/drm/imx/dpu/dpu-plane.c
index 7619c7646fc8..f2e6eaa22981 100644
--- a/drivers/gpu/drm/imx/dpu/dpu-plane.c
+++ b/drivers/gpu/drm/imx/dpu/dpu-plane.c
@@ -527,7 +527,7 @@ static void dpu_plane_atomic_update(struct drm_plane *plane,
unsigned int mt_w = 0, mt_h = 0; /* w/h in a micro-tile */
int bpp, lb_id;
bool need_fetcheco, need_hscaler = false, need_vscaler = false;
- bool prefetch_start, uv_prefetch_start;
+ bool prefetch_start;
bool crtc_use_pc = dpstate->left_src_w || dpstate->right_src_w;
bool update_aux_source = false;
bool use_prefetch;
@@ -547,7 +547,6 @@ static void dpu_plane_atomic_update(struct drm_plane *plane,
again:
need_fetcheco = false;
prefetch_start = false;
- uv_prefetch_start = false;
source = update_aux_source ? dpstate->aux_source : dpstate->source;
blend = update_aux_source ? dpstate->aux_blend : dpstate->blend;
@@ -689,11 +688,6 @@ again:
if (fe_id == ID_NONE)
return;
- if (use_prefetch &&
- (fe->ops->get_stream_id(fe) == DPU_PLANE_SRC_DISABLED ||
- need_modeset))
- uv_prefetch_start = true;
-
fetchdecode_pixengcfg_dynamic_src_sel(fu,
(fd_dynamic_src_sel_t)fe_id);
fe->ops->set_burstlength(fe, src_x, mt_w, bpp, uv_baseaddr,
@@ -781,7 +775,7 @@ again:
src_w, src_h, src_x, src_y,
fb->pitches[0], fb->format->format,
fb->modifier, baseaddr, uv_baseaddr,
- prefetch_start, uv_prefetch_start,
+ prefetch_start, false,
fb_is_interlaced);
if (need_modeset)
@@ -794,7 +788,7 @@ again:
dprc_reg_update(dprc);
- if (prefetch_start || uv_prefetch_start) {
+ if (prefetch_start) {
dprc_first_frame_handle(dprc);
if (!need_modeset)