From cc49e88e809b8a2f2612ca4fbbbd2dc149333994 Mon Sep 17 00:00:00 2001 From: Damon Ding Date: Sun, 15 Jan 2023 18:56:19 +0800 Subject: [PATCH] drm/bridge: sii902x: add FIELD2_OFST config The reg FIELD2_OFST should be half the number of pixel/line in interlace mode. Signed-off-by: Damon Ding Change-Id: I3b0de9199768d965a945bf5db5a0902f2103e30e --- drivers/gpu/drm/bridge/sii902x.c | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/drivers/gpu/drm/bridge/sii902x.c b/drivers/gpu/drm/bridge/sii902x.c index 33a302a5432c..6245203b0deb 100644 --- a/drivers/gpu/drm/bridge/sii902x.c +++ b/drivers/gpu/drm/bridge/sii902x.c @@ -473,8 +473,13 @@ static void sii902x_set_embedded_sync(struct sii902x *sii902x) drm_display_mode_to_videomode(&sii902x->mode, &vm); data[0] = vm.hfront_porch & 0xff; data[1] = (vm.hfront_porch >> 8) & 0x03; - data[2] = 0; - data[3] = 0; + if (sii902x->mode.flags & DRM_MODE_FLAG_INTERLACE) { + data[2] = (sii902x->mode.vtotal >> 1) & 0xff; + data[3] = ((sii902x->mode.vtotal >> 1) >> 8) & 0x1f; + } else { + data[2] = 0; + data[3] = 0; + } data[4] = vm.hsync_len & 0xff; data[5] = (vm.hsync_len >> 8) & 0x03; data[6] = vm.vfront_porch;