From 8045da2f802e42ee467856e665ea2e495b122934 Mon Sep 17 00:00:00 2001 From: "yujun.zhang" Date: Thu, 23 Oct 2025 11:44:00 +0800 Subject: [PATCH] drm: turn off deprecated mif interlace config [1/1] PD#SWPL-235308 Problem: Interlace config of osd mif is not used anymore. Solution: Force turning off mif interlace config when initializing OSD registers. Verify: T7C, S7D Test: DRM-OSD-81 Change-Id: I7b4852b8553dd2984cc1889fcf6990c8e92e8994 Signed-off-by: yujun.zhang --- drivers/drm/vpu-hw/meson_vpu_osd_mif.c | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/drivers/drm/vpu-hw/meson_vpu_osd_mif.c b/drivers/drm/vpu-hw/meson_vpu_osd_mif.c index 5b7ce95bf..18d8f9105 100644 --- a/drivers/drm/vpu-hw/meson_vpu_osd_mif.c +++ b/drivers/drm/vpu-hw/meson_vpu_osd_mif.c @@ -1496,9 +1496,6 @@ static void osd_set_state(struct meson_vpu_block *vblk, if (!osd->gfcd_global_alpha_policy) osd_global_alpha_set(vblk, reg_ops, reg, global_alpha); - osd_scan_mode_config(vblk, reg_ops, reg, pipe->subs[crtc_index]->mode.flags & - DRM_MODE_FLAG_INTERLACE); - if (mvos->osd_dimm.dimm_ctrl) osd_set_dimm_ctrl(vblk, reg_ops, reg, mvos->osd_dimm.dimm_value); @@ -1675,6 +1672,11 @@ static void osd_register_init(struct meson_vpu_block *vblk, return; } + /* + * force turning off deprecated mif interlace config + */ + osd_scan_mode_config(vblk, reg_ops, reg, 1); + reg_ops->rdma_write_reg(reg->viu_osd_fifo_ctrl_stat, (1 << 31) | /*BURST_LEN_SEL[2]*/ (0 << 30) | /*no swap*/