[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20240622110929.3115714-8-a-bhatia1@ti.com>
Date: Sat, 22 Jun 2024 16:39:25 +0530
From: Aradhya Bhatia <a-bhatia1@...com>
To: Dmitry Baryshkov <dmitry.baryshkov@...aro.org>,
Tomi Valkeinen
<tomi.valkeinen@...asonboard.com>,
Andrzej Hajda <andrzej.hajda@...el.com>,
Neil Armstrong <neil.armstrong@...aro.org>,
Robert Foss <rfoss@...nel.org>,
Laurent Pinchart <Laurent.pinchart@...asonboard.com>,
Jonas Karlman
<jonas@...boo.se>,
Jernej Skrabec <jernej.skrabec@...il.com>,
Maarten
Lankhorst <maarten.lankhorst@...ux.intel.com>,
Maxime Ripard
<mripard@...nel.org>, Jyri Sarha <jyri.sarha@....fi>,
Thomas Zimmermann
<tzimmermann@...e.de>,
David Airlie <airlied@...il.com>, Daniel Vetter
<daniel@...ll.ch>
CC: DRI Development List <dri-devel@...ts.freedesktop.org>,
Linux Kernel List
<linux-kernel@...r.kernel.org>,
Dominik Haller <d.haller@...tec.de>, Sam
Ravnborg <sam@...nborg.org>,
Thierry Reding <treding@...dia.com>,
Kieran
Bingham <kieran.bingham+renesas@...asonboard.com>,
Nishanth Menon
<nm@...com>, Vignesh Raghavendra <vigneshr@...com>,
Praneeth Bajjuri
<praneeth@...com>, Udit Kumar <u-kumar1@...com>,
Devarsh Thakkar
<devarsht@...com>,
Jayesh Choudhary <j-choudhary@...com>, Jai Luthra
<j-luthra@...com>,
Aradhya Bhatia <a-bhatia1@...com>
Subject: [PATCH v4 07/11] drm/bridge: cdns-dsi: Reset the DCS write FIFO
If any normal DCS write command has already been transmitted prior to
transmitting any Zero-Parameter DCS command, then it is necessary to
clear the TX FIFO by resetting it. Otherwise, the FIFO points to another
location, and the DCS command transmits unnecessary data causing the
panel to not work[0].
Allow the DCS Write FIFO in the cdns-dsi controller to reset as a rule,
before any DCS packet is transmitted to the DSI peripheral.
[0]: Section 12.6.5.7.5.2: "Command Mode Settings" in TDA4VM Technical
Reference Manual: https://www.ti.com/lit/zip/spruil1
Signed-off-by: Aradhya Bhatia <a-bhatia1@...com>
---
drivers/gpu/drm/bridge/cadence/cdns-dsi-core.c | 3 +++
1 file changed, 3 insertions(+)
diff --git a/drivers/gpu/drm/bridge/cadence/cdns-dsi-core.c b/drivers/gpu/drm/bridge/cadence/cdns-dsi-core.c
index 126e4bccd868..cad0c1478ef0 100644
--- a/drivers/gpu/drm/bridge/cadence/cdns-dsi-core.c
+++ b/drivers/gpu/drm/bridge/cadence/cdns-dsi-core.c
@@ -1018,6 +1018,9 @@ static ssize_t cdns_dsi_transfer(struct mipi_dsi_host *host,
cdns_dsi_init_link(dsi);
+ /* Reset the DCS Write FIFO */
+ writel(0x00, dsi->regs + DIRECT_CMD_FIFO_RST);
+
ret = mipi_dsi_create_packet(&packet, msg);
if (ret)
goto out;
--
2.34.1
Powered by blists - more mailing lists