From nobody Fri Sep 25 23:50:54 2026 Received: from perceval.ideasonboard.com (perceval.ideasonboard.com [213.167.242.64]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id B3B3C4756C9 for ; Mon, 7 Sep 2026 11:28:26 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=213.167.242.64 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1788780508; cv=none; b=P5zq2LYPM/QI8jR21palQ0VTNYPWQlh0DRJT9Bn8Lhh/cdCwTrYAPd/5pHtlSXNufjNpUxQK7aSzaZUjNy8AA/iwSuQWfYsNqaCX92FYHsoMzHeR8JtzJvxZYERAXf73wr7rjU8h+dgaxE92K/wV8bEVfUNi9fLI3HrzmP2Im6U= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1788780508; c=relaxed/simple; bh=ByJymXy7iqh5fd0ek5s2J9GZXNnRiQFtJvcTdP3VZYk=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=N1P8a7eNZfFbXhULh+0TMDtJlcITTMsA7X3Osqm7B0y7KyqbcXnrqe1m5lxSyjByAi6+mpr2PyGqzhZfIO1WxgIfu4I173IsuoXzLApg9R+XePiOeVAEViXLL38DeGJSdIUP8C90eud4ioUPOYfXGSsguCf3dKTmM+/N+zTzFB4= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=ideasonboard.com; spf=pass smtp.mailfrom=ideasonboard.com; dkim=pass (1024-bit key) header.d=ideasonboard.com header.i=@ideasonboard.com header.b=nKV4KAZF; arc=none smtp.client-ip=213.167.242.64 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=ideasonboard.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=ideasonboard.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=ideasonboard.com header.i=@ideasonboard.com header.b="nKV4KAZF" Received: from [127.0.1.1] (91-158-153-178.elisa-laajakaista.fi [91.158.153.178]) by perceval.ideasonboard.com (Postfix) with ESMTPSA id 06E0F4B0; Mon, 7 Sep 2026 13:26:48 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=ideasonboard.com; s=mail; t=1788780409; bh=ByJymXy7iqh5fd0ek5s2J9GZXNnRiQFtJvcTdP3VZYk=; h=From:Date:Subject:References:In-Reply-To:To:Cc:From; b=nKV4KAZFSl+rfF32HfcNXUCL2QUaiiJoSEHFzSyt0e5DEdzzB5Hbo5f56LdFmJZJy R9XCQaJc4H3Il+SWEzV54WYYEwwCPoNqcksUDMqUQE/P4rIMo/knq0BbYHHpFOz/o/ tkB9VqcNmIIaH7g5pViTQtZRfMvI9094GqtDFuog= From: Tomi Valkeinen Date: Mon, 07 Sep 2026 14:27:56 +0300 Subject: [PATCH v4 01/13] drm/bridge: tc358762: Clean up register defines Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20260907-tc358762-fixes-v4-1-e3fc3ab5cd83@ideasonboard.com> References: <20260907-tc358762-fixes-v4-0-e3fc3ab5cd83@ideasonboard.com> In-Reply-To: <20260907-tc358762-fixes-v4-0-e3fc3ab5cd83@ideasonboard.com> To: Marek Vasut , Andrzej Hajda , Neil Armstrong , Robert Foss , Laurent Pinchart , Jonas Karlman , Jernej Skrabec , Maarten Lankhorst , Maxime Ripard , Thomas Zimmermann , David Airlie , Simona Vetter Cc: dri-devel@lists.freedesktop.org, linux-kernel@vger.kernel.org, Dave Stevenson , Tomi Valkeinen X-Mailer: b4 0.16.0 X-Developer-Signature: v=1; a=openpgp-sha256; l=2518; i=tomi.valkeinen@ideasonboard.com; h=from:subject:message-id; bh=ByJymXy7iqh5fd0ek5s2J9GZXNnRiQFtJvcTdP3VZYk=; b=owEBbQKS/ZANAwAIAfo9qoy8lh71AcsmYgBqnp/R45v02mRnpwiGJyKMgPs5iVEvJIBZXCiZf 5cuCf26hIKJAjMEAAEIAB0WIQTEOAw+ll79gQef86f6PaqMvJYe9QUCap6f0QAKCRD6PaqMvJYe 9W6JEACO3otQ8o6mOmdcmD8xaME8XIOSPFZCVLyZm3quWB0poee4TxvQ67x2CP5ZXA+tuJ/1TLl RmPOZ2A/eumeckaAKovEC6xUle6GtCzeIFFGQV6fdav8aNnOb0yrglLnYvAIEMcaDwix/kv1GIm 1U9DEmeg81YYG0THNdgYiuUEN8761KCVTy3C9Ss3I8Ho3FS880Thbg7c+Xaejm0hqzQjOy7/iIH LcZVdXDr+5P133coZlDYjYvOLzRDoFzd8vek+7sPWRfKJ5vIthMOShiWLK30fsgLsRyMW1C7Sqo AbsLSYs/2rY8y8zQ0i1SqXxYGeHfEHwVuuYysJtxuWmOZYujPfqWJt51uNv+S2F2jxEofj2jN48 JpmD76zgCd7fGXT609UQiy0RFpb/D8VOIjQvPzc7aEW/Z4y/Ql4q5hv9gF7GTiHWhiCe590+rf8 vvfi23pQfYZ2bjmodQdsdmg0yLiymdrYIvZRWz+aWvStnJPV2Qi2raXaApoNoiMMsb+SM8oLoCA 5vrFML1cwp+LujxwhsyqPmDY55KNSoZG2kokPnKaOttNHCE7UCLm6ouqayLfBCaXbPjTnjuRW+v 5dgQwfLK/kBs6UpQzYLxVr+n6W+2aKR0cuMlZi7p31MzHuHYoMgco6KGeKS2erafKXNVpD1PNuO khiJPRxk0D5Vpow== X-Developer-Key: i=tomi.valkeinen@ideasonboard.com; a=openpgp; fpr=C4380C3E965EFD81079FF3A7FA3DAA8CBC961EF5 Move the defines around and rename for clarity and consistency. No functional change. Signed-off-by: Tomi Valkeinen --- drivers/gpu/drm/bridge/tc358762.c | 21 ++++++++++----------- 1 file changed, 10 insertions(+), 11 deletions(-) diff --git a/drivers/gpu/drm/bridge/tc358762.c b/drivers/gpu/drm/bridge/tc3= 58762.c index 6aa93b3274dd..dc20f253c7ad 100644 --- a/drivers/gpu/drm/bridge/tc358762.c +++ b/drivers/gpu/drm/bridge/tc358762.c @@ -28,17 +28,22 @@ =20 /* PPI layer registers */ #define PPI_STARTPPI 0x0104 /* START control bit */ +#define PPI_STARTPPI_STARTPPI BIT(0) + #define PPI_LPTXTIMECNT 0x0114 /* LPTX timing signal */ #define PPI_D0S_ATMR 0x0144 #define PPI_D1S_ATMR 0x0148 #define PPI_D0S_CLRSIPOCOUNT 0x0164 /* Assertion timer for Lane 0 */ #define PPI_D1S_CLRSIPOCOUNT 0x0168 /* Assertion timer for Lane 1 */ -#define PPI_START_FUNCTION 1 =20 /* DSI layer registers */ #define DSI_STARTDSI 0x0204 /* START control bit of DSI-TX */ +#define DSI_STARTDSI_STARTDSI BIT(0) + #define DSI_LANEENABLE 0x0210 /* Enables each lane */ -#define DSI_RX_START 1 +#define DSI_LANEENABLE_CLEN BIT(0) +#define DSI_LANEENABLE_L0EN BIT(1) +#define DSI_LANEENABLE_L1EN BIT(2) =20 /* LCDC/DPI Host Registers, based on guesswork that this matches TC358764 = */ #define LCDCTRL 0x0420 /* Video Path Control */ @@ -59,14 +64,8 @@ /* System Controller Registers */ #define SYSCTRL 0x0464 =20 -/* System registers */ #define LPX_PERIOD 3 =20 -/* Lane enable PPI and DSI register bits */ -#define LANEENABLE_CLEN BIT(0) -#define LANEENABLE_L0EN BIT(1) -#define LANEENABLE_L1EN BIT(2) - struct tc358762 { struct device *dev; struct drm_bridge bridge; @@ -117,7 +116,7 @@ static int tc358762_init(struct tc358762 *ctx) u32 lcdctrl; =20 tc358762_write(ctx, DSI_LANEENABLE, - LANEENABLE_L0EN | LANEENABLE_CLEN); + DSI_LANEENABLE_L0EN | DSI_LANEENABLE_CLEN); tc358762_write(ctx, PPI_D0S_CLRSIPOCOUNT, 5); tc358762_write(ctx, PPI_D1S_CLRSIPOCOUNT, 5); tc358762_write(ctx, PPI_D0S_ATMR, 0); @@ -140,8 +139,8 @@ static int tc358762_init(struct tc358762 *ctx) tc358762_write(ctx, SYSCTRL, 0x040f); msleep(100); =20 - tc358762_write(ctx, PPI_STARTPPI, PPI_START_FUNCTION); - tc358762_write(ctx, DSI_STARTDSI, DSI_RX_START); + tc358762_write(ctx, PPI_STARTPPI, PPI_STARTPPI_STARTPPI); + tc358762_write(ctx, DSI_STARTDSI, DSI_STARTDSI_STARTDSI); =20 msleep(100); =20 --=20 2.43.0 From nobody Fri Sep 25 23:50:54 2026 Received: from perceval.ideasonboard.com (perceval.ideasonboard.com [213.167.242.64]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 65EB0477E2B for ; Mon, 7 Sep 2026 11:28:29 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=213.167.242.64 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1788780511; cv=none; b=V0Whh+ZibLV1fRMj0WnU6GSi2KRx44f21rbrCmb0DNp6yWhLWr2K4ih+I1huz1g6hhn4CAy7MdTv01ML2tvXONAkbPy7F/y0R7E3tEfiI+vqh6c3vonSqI4Dg/8+2SnI+LYoTiDxq4kuSKcTwh/NRdaigFyoUXtkMHV0CmxRmuQ= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1788780511; c=relaxed/simple; bh=nimBzwK8X0eTgWDSpsHRmSDTtL6PqLdjOLgBI2Bu8ns=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=BvqgJAyyMa7w/7xz438j9iLVrlNEESR4ohJCoE8mFh/gJJUN/c5LZ1+hetYXsv+vtJeOp9guFAgSDkKWnZBSKO9uCszkrSQef1whXGx9yH21hfVVUkEtd+Jnc9RhKXBor/xgl9yzhDKLHeUOBTHbiBasOd5SHQoEO3MXvHmPaQs= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=ideasonboard.com; spf=pass smtp.mailfrom=ideasonboard.com; dkim=pass (1024-bit key) header.d=ideasonboard.com header.i=@ideasonboard.com header.b=AESFJRn2; arc=none smtp.client-ip=213.167.242.64 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=ideasonboard.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=ideasonboard.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=ideasonboard.com header.i=@ideasonboard.com header.b="AESFJRn2" Received: from [127.0.1.1] (91-158-153-178.elisa-laajakaista.fi [91.158.153.178]) by perceval.ideasonboard.com (Postfix) with ESMTPSA id ED8CBC45; Mon, 7 Sep 2026 13:26:49 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=ideasonboard.com; s=mail; t=1788780410; bh=nimBzwK8X0eTgWDSpsHRmSDTtL6PqLdjOLgBI2Bu8ns=; h=From:Date:Subject:References:In-Reply-To:To:Cc:From; b=AESFJRn2WkP5omAnx1k8cmmMIdxrE3k3zVLzo8UNX6OliCgfsG/bD/6NUJawn84qB aTRvPFKL6T3s2UujU7Q3QeHYLSFgXyqMgZW4vBY2lYgvcJuZiNnbahezkAeDJ4RuHu Jm4EYNdg+TdJDtTU5EvaBuaX4qVC8TkBgRT6ntPw= From: Tomi Valkeinen Date: Mon, 07 Sep 2026 14:27:57 +0300 Subject: [PATCH v4 02/13] drm/bridge: tc358762: Improve SYSCTRL register defines Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20260907-tc358762-fixes-v4-2-e3fc3ab5cd83@ideasonboard.com> References: <20260907-tc358762-fixes-v4-0-e3fc3ab5cd83@ideasonboard.com> In-Reply-To: <20260907-tc358762-fixes-v4-0-e3fc3ab5cd83@ideasonboard.com> To: Marek Vasut , Andrzej Hajda , Neil Armstrong , Robert Foss , Laurent Pinchart , Jonas Karlman , Jernej Skrabec , Maarten Lankhorst , Maxime Ripard , Thomas Zimmermann , David Airlie , Simona Vetter Cc: dri-devel@lists.freedesktop.org, linux-kernel@vger.kernel.org, Dave Stevenson , Tomi Valkeinen X-Mailer: b4 0.16.0 X-Developer-Signature: v=1; a=openpgp-sha256; l=1738; i=tomi.valkeinen@ideasonboard.com; h=from:subject:message-id; bh=nimBzwK8X0eTgWDSpsHRmSDTtL6PqLdjOLgBI2Bu8ns=; b=owEBbQKS/ZANAwAIAfo9qoy8lh71AcsmYgBqnp/RrrdUdFYarVd4ED8bHoJcNUFhwkgk8U9WW rJ/Kha/m52JAjMEAAEIAB0WIQTEOAw+ll79gQef86f6PaqMvJYe9QUCap6f0QAKCRD6PaqMvJYe 9aE9EACYuVN8HDKfwEGdusNHy1rurP2Fsxq3/UMXfFYG3o0Ned/cXK3ZUkEgTaMlxqTEnMH72k0 buKgP8sm5/6ReELIbTMj5BpVR7bRFxaZzCX0yKZQCGLR5vQ+sXMSQvR3wXQzw6ufb5Y7QQce/Cq md72LIDF2mGl+KpiJ7ADYgA4nPrdp10DJNz+Mgvr2ulCEG6DGgKACm/qurcvn5Qf5k8R0Gk9xiw 2QSTQlcZ+Jz3ATSj/Uwt3DAmFRWcjhKD5z7SJQtTz9YYQ27OLccy7CTj/gGG7+5aBIr6J/b+23N kO8wRZQMqhbkC2xy9foA3Pznf/UgZselZLYIk15vP1liKjXRLnKweqju/8DbxaQMGeqUcgt/78b 2T2cpbGV+FaDElEe2LSMuiYwK4wapoLjyTxDZVZNLnPykFJbv4/ULY3QcBVphs+WBSjvmORs4eC 7eakC57JZkW86COwVUh5Jf5qpqNERx8hphHAtuXx0Q//D+qLmtkKaPokrC0h3etTDba8Cl7RDGj KWoyAExOutb2N1Je9qeEEUuMnPIeCWH0FZuxqcaqd66czGXvAlcpCN9rX3Q5R37MAV4WQcMaX/m +mCYHYJgcAii0kLukniLeBdCmf7ZsR/UwnBtTY+MWqOSO/+NmjyXDb/Px/TvFL5BOpH/CeIVuGl dxbVBMNdvnvYACg== X-Developer-Key: i=tomi.valkeinen@ideasonboard.com; a=openpgp; fpr=C4380C3E965EFD81079FF3A7FA3DAA8CBC961EF5 Define SYSCTRL fields. No functional changes. Signed-off-by: Tomi Valkeinen --- drivers/gpu/drm/bridge/tc358762.c | 20 +++++++++++++++++++- 1 file changed, 19 insertions(+), 1 deletion(-) diff --git a/drivers/gpu/drm/bridge/tc358762.c b/drivers/gpu/drm/bridge/tc3= 58762.c index dc20f253c7ad..5630cead7cd8 100644 --- a/drivers/gpu/drm/bridge/tc358762.c +++ b/drivers/gpu/drm/bridge/tc358762.c @@ -10,6 +10,7 @@ * Eric Anholt */ =20 +#include #include #include #include @@ -63,6 +64,19 @@ =20 /* System Controller Registers */ #define SYSCTRL 0x0464 +#define SYSCTRL_DPIDATA_IO_MASK GENMASK_U32(1, 0) +#define SYSCTRL_DPIDATA_IO_1MA 0 +#define SYSCTRL_DPIDATA_IO_2MA 1 +#define SYSCTRL_DPIDATA_IO_3MA 2 +#define SYSCTRL_DPIDATA_IO_4MA 3 +#define SYSCTRL_DPISTB_IO_MASK GENMASK_U32(3, 2) +#define SYSCTRL_DPISTB_IO_1MA 0 +#define SYSCTRL_DPISTB_IO_2MA 1 +#define SYSCTRL_DPISTB_IO_3MA 2 +#define SYSCTRL_DPISTB_IO_4MA 3 +#define SYSCTRL_PCLKDIV_MASK GENMASK_U32(11, 8) +#define SYSCTRL_PCLKDIV_DIV_2 2 +#define SYSCTRL_PCLKDIV_DIV_3 4 =20 #define LPX_PERIOD 3 =20 @@ -136,7 +150,11 @@ static int tc358762_init(struct tc358762 *ctx) =20 tc358762_write(ctx, LCDCTRL, lcdctrl); =20 - tc358762_write(ctx, SYSCTRL, 0x040f); + tc358762_write(ctx, SYSCTRL, + FIELD_PREP(SYSCTRL_DPIDATA_IO_MASK, SYSCTRL_DPIDATA_IO_4MA) | + FIELD_PREP(SYSCTRL_DPISTB_IO_MASK, SYSCTRL_DPISTB_IO_4MA) | + FIELD_PREP(SYSCTRL_PCLKDIV_MASK, SYSCTRL_PCLKDIV_DIV_3)); + msleep(100); =20 tc358762_write(ctx, PPI_STARTPPI, PPI_STARTPPI_STARTPPI); --=20 2.43.0 From nobody Fri Sep 25 23:50:54 2026 Received: from perceval.ideasonboard.com (perceval.ideasonboard.com [213.167.242.64]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 9CAD6478E5F for ; Mon, 7 Sep 2026 11:28:30 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=213.167.242.64 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1788780512; cv=none; b=qaFK2N1tujJC0yAOVuW8rUXkFpDCOu1yEaxt6hya5EhS40LsxuXIIidGCOgwwZsLF/Vy+9B8LIz4HYAlIh4kJ6GdaWICpKKWnDe8bo8SSH3omEMLJp3ygPxYZ4OjHWMPkDSXFhQTcCmZv3NN+WBHYg+g/UVHWpgx9QcbFY1C7HY= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1788780512; c=relaxed/simple; bh=/zUZOuY4dD2SaTqPRCbXni1NC8QJPYbJvXVdgiO3Eug=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=RFyg8LIOdS+boSvpgyDYd3pfAe+Ok//XpNWnMF7u2VGK0j1qWJ2NTXwXRi3WkU2zIrx4yWa6UKxqz3dB4aJ8AepSj1lGK02WornUiVjp2b6+tHnU9x3DK+oJLRZQ1CzUfwER2Bts/SYs2UYBU2DR5WdlyT4IXJlFBQ8uQOzPfRA= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=ideasonboard.com; spf=pass smtp.mailfrom=ideasonboard.com; dkim=pass (1024-bit key) header.d=ideasonboard.com header.i=@ideasonboard.com header.b=YKKO3la/; arc=none smtp.client-ip=213.167.242.64 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=ideasonboard.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=ideasonboard.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=ideasonboard.com header.i=@ideasonboard.com header.b="YKKO3la/" Received: from [127.0.1.1] (91-158-153-178.elisa-laajakaista.fi [91.158.153.178]) by perceval.ideasonboard.com (Postfix) with ESMTPSA id E01EEE4E; Mon, 7 Sep 2026 13:26:50 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=ideasonboard.com; s=mail; t=1788780411; bh=/zUZOuY4dD2SaTqPRCbXni1NC8QJPYbJvXVdgiO3Eug=; h=From:Date:Subject:References:In-Reply-To:To:Cc:From; b=YKKO3la/g2ZFdq9DBNKpv0as7t0twGm2YqAck2C6bioUYBHsWeUozWFAvedYiRi5W X7mhjeUrlBy1H+mVZzfhlLU5KrX3wTb5QpDowgqY4FlV8pOlSwGT+h6sGZnBpqyPY6 08DgVbHGaeIFkA+gfLCR+m5BfJz9/e0MdPDXmtMs= From: Tomi Valkeinen Date: Mon, 07 Sep 2026 14:27:58 +0300 Subject: [PATCH v4 03/13] drm/bridge: tc358762: Improve LCDCTRL defines Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20260907-tc358762-fixes-v4-3-e3fc3ab5cd83@ideasonboard.com> References: <20260907-tc358762-fixes-v4-0-e3fc3ab5cd83@ideasonboard.com> In-Reply-To: <20260907-tc358762-fixes-v4-0-e3fc3ab5cd83@ideasonboard.com> To: Marek Vasut , Andrzej Hajda , Neil Armstrong , Robert Foss , Laurent Pinchart , Jonas Karlman , Jernej Skrabec , Maarten Lankhorst , Maxime Ripard , Thomas Zimmermann , David Airlie , Simona Vetter Cc: dri-devel@lists.freedesktop.org, linux-kernel@vger.kernel.org, Dave Stevenson , Tomi Valkeinen X-Mailer: b4 0.16.0 X-Developer-Signature: v=1; a=openpgp-sha256; l=3005; i=tomi.valkeinen@ideasonboard.com; h=from:subject:message-id; bh=/zUZOuY4dD2SaTqPRCbXni1NC8QJPYbJvXVdgiO3Eug=; b=owEBbQKS/ZANAwAIAfo9qoy8lh71AcsmYgBqnp/SjKoz/+Fg5L2o/pNMagg1rVyF7f6jHC95M rN9XQNlxoKJAjMEAAEIAB0WIQTEOAw+ll79gQef86f6PaqMvJYe9QUCap6f0gAKCRD6PaqMvJYe 9bUwD/9hQM4kjr5Hq46WkQgNlNmVdukFILA3cJM3ddfv6FBxJVXWb5DFujT/ubaVoaymr3ugAEd //C5rcRkWGDne3WUE+S4p8uRZ5Rt5BjhwBaDWIXjC8dfCOy1MgsoYrQS594tiFjse1Qqf97BiHo jQ3nc6x6SrgFwLXQ1rgk2ezRrg/AqQqxkdvf1ri5/6EQNjWIeQDj4Za/ekBeVm4z5eWTUQcfH+C RjXY0TIf8sOQGkZIFp+ZIFbISJZj8CQc6iIqey2+Sr4Edo2FNJwXbsfCm1909TmvXKG+PmFaLWQ gglqNJK6TPwcGi4cXFbUrvxMtE3vnFD567rO7VS61H1BMsaFy3pU76Kft5ROS4EFbyfRjH+ahel 2d5aGvoiUL9nO68NqpMh++A9Hwb2Er4rclaGSW/DbfShDiYt13lFXxYQoWf9hvIdWIQ28P9k3ER iU/NRlI/En3fb0b/qERtajVf+YJeChW5jR0dA/x2rrozY+Ztb6Wq2uCDiUUjO+PaC6iTCGkuEP/ AK/npIj6ATyLY1aovRZQjmxeJutPmkOql5FEjXY05wMua8QMysW6qKKt/ZoZYNA8f0h9p3341WP 6anzzXyfcoPNVfm9FiiBdgsTgzt3Vo0ZbaHTaTQXexcGweSsgI8VSp06s9O449RSUKS5lZBT8VE lXtioP+PaxU4+FQ== X-Developer-Key: i=tomi.valkeinen@ideasonboard.com; a=openpgp; fpr=C4380C3E965EFD81079FF3A7FA3DAA8CBC961EF5 LCDCTRL fields are quite wrong in the driver. Fix the field defines. A few notes about the wrong fields: LCDCTRL_VSDELAY(1) actually sets LCDCTRL_DCLK_POL LCDCTRL_UNK6 | LCDCTRL_VTGEN actually set LCDCTRL_PXLFORM_RGB888 LCDCTRL_RGB888 actually sets LCDCTRL_DPI_EN The total still resulted in a working display even if the defines were quite wrong. Signed-off-by: Tomi Valkeinen --- drivers/gpu/drm/bridge/tc358762.c | 33 ++++++++++++++++++++------------- 1 file changed, 20 insertions(+), 13 deletions(-) diff --git a/drivers/gpu/drm/bridge/tc358762.c b/drivers/gpu/drm/bridge/tc3= 58762.c index 5630cead7cd8..fcd741f5765d 100644 --- a/drivers/gpu/drm/bridge/tc358762.c +++ b/drivers/gpu/drm/bridge/tc358762.c @@ -46,17 +46,22 @@ #define DSI_LANEENABLE_L0EN BIT(1) #define DSI_LANEENABLE_L1EN BIT(2) =20 -/* LCDC/DPI Host Registers, based on guesswork that this matches TC358764 = */ +/* LCDC/DPI Registers */ #define LCDCTRL 0x0420 /* Video Path Control */ #define LCDCTRL_MSF BIT(0) /* Magic square in RGB666 */ -#define LCDCTRL_VTGEN BIT(4)/* Use chip clock for timing */ -#define LCDCTRL_UNK6 BIT(6) /* Unknown */ -#define LCDCTRL_EVTMODE BIT(5) /* Event mode */ -#define LCDCTRL_RGB888 BIT(8) /* RGB888 mode */ -#define LCDCTRL_HSPOL BIT(17) /* Polarity of HSYNC signal */ -#define LCDCTRL_DEPOL BIT(18) /* Polarity of DE signal */ -#define LCDCTRL_VSPOL BIT(19) /* Polarity of VSYNC signal */ -#define LCDCTRL_VSDELAY(v) (((v) & 0xfff) << 20) /* VSYNC delay */ +#define LCDCTRL_VTGEN BIT(1) /* Use chip clock for timing */ +#define LCDCTRL_PXLFORM GENMASK_U32(6, 4) +#define LCDCTRL_PXLFORM_RGB666 0 /* x:R:G:B 6:8:8:8 */ +#define LCDCTRL_PXLFORM_RGB666_24 1 /* x:R:x:G:x:B 2:6:2:6:2:6 */ +#define LCDCTRL_PXLFORM_RGB565 2 /* x:R:G:B 8:5:6:5 */ +#define LCDCTRL_PXLFORM_RGB565_1 3 /* x:R:x:G:x:B 3:5:2:6:3:5 */ +#define LCDCTRL_PXLFORM_RGB565_2 4 /* x:R:x:G:x:B:x 2:5:3:6:2:5:1 */ +#define LCDCTRL_PXLFORM_RGB888 5 /* R:G:B 8:8:8 */ +#define LCDCTRL_DPI_EN BIT(8) +#define LCDCTRL_HSYNC_POL BIT(17) /* Polarity of HSYNC signal */ +#define LCDCTRL_DE_POL BIT(18) /* Polarity of DE signal */ +#define LCDCTRL_VSYNC_POL BIT(19) /* Polarity of VSYNC signal */ +#define LCDCTRL_DCLK_POL BIT(20) /* Polarity of pixel clock */ =20 /* SPI Master Registers */ #define SPICMR 0x0450 @@ -139,14 +144,16 @@ static int tc358762_init(struct tc358762 *ctx) =20 tc358762_write(ctx, SPICMR, 0x00); =20 - lcdctrl =3D LCDCTRL_VSDELAY(1) | LCDCTRL_RGB888 | - LCDCTRL_UNK6 | LCDCTRL_VTGEN; + lcdctrl =3D FIELD_PREP(LCDCTRL_PXLFORM, LCDCTRL_PXLFORM_RGB888) | + LCDCTRL_DPI_EN; + + lcdctrl |=3D LCDCTRL_DCLK_POL; =20 if (ctx->mode.flags & DRM_MODE_FLAG_NHSYNC) - lcdctrl |=3D LCDCTRL_HSPOL; + lcdctrl |=3D LCDCTRL_HSYNC_POL; =20 if (ctx->mode.flags & DRM_MODE_FLAG_NVSYNC) - lcdctrl |=3D LCDCTRL_VSPOL; + lcdctrl |=3D LCDCTRL_VSYNC_POL; =20 tc358762_write(ctx, LCDCTRL, lcdctrl); =20 --=20 2.43.0 From nobody Fri Sep 25 23:50:54 2026 Received: from perceval.ideasonboard.com (perceval.ideasonboard.com [213.167.242.64]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 94DA947A875 for ; Mon, 7 Sep 2026 11:28:33 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=213.167.242.64 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1788780515; cv=none; b=t3QbyHDwFp7DjtAmAoIIg2Y9jgVx5BUu1/8ksVfj9ROkXoMS0xKsnOYJeiS5GLrqZMqiCayhRjQNPTRYU1LgcgLdY3wZ72GTKnd7Lgt8AHVZQGMh0jbuQlAVG2mxhiNkQQdUdcL5lvhUrTlwNW3lPT+uEeZZsuxPNhvXFg28Pus= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1788780515; c=relaxed/simple; bh=R3FaNQrlNb86xfalGaX8Aw8wDMwPPadvb26T0rMm/AI=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=Jj39x92A8F6A6mIpfUAB7jSuNEj7ihBDgjm5X63YHtJ1hn3dBWwHMZ1CoWfGryfRuI71mT4v7qtxolxWw0MFCWyiY+zN+mybk50pVLbnpzFgsQHgDLSuBiW3zShctfSzSZoYlCYflzHTYimJPRUnYI9m70MAqrUc+RGwL3W6FxI= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=ideasonboard.com; spf=pass smtp.mailfrom=ideasonboard.com; dkim=pass (1024-bit key) header.d=ideasonboard.com header.i=@ideasonboard.com header.b=uQPL3XjT; arc=none smtp.client-ip=213.167.242.64 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=ideasonboard.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=ideasonboard.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=ideasonboard.com header.i=@ideasonboard.com header.b="uQPL3XjT" Received: from [127.0.1.1] (91-158-153-178.elisa-laajakaista.fi [91.158.153.178]) by perceval.ideasonboard.com (Postfix) with ESMTPSA id D3741104A; Mon, 7 Sep 2026 13:26:51 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=ideasonboard.com; s=mail; t=1788780412; bh=R3FaNQrlNb86xfalGaX8Aw8wDMwPPadvb26T0rMm/AI=; h=From:Date:Subject:References:In-Reply-To:To:Cc:From; b=uQPL3XjTQpqPIV6uKyJwv6pHSTDhbscPdhh+MCu7owy/NKVeHdkg7tWT6GrJyenV3 C/rico9EU1+gJQw3mRbMdZ6rmRk56XYfEMdeyoix9BZAmkYmSxr43U3NZVYnZgd3B2 LIsWn0g1QYFabYNtn9NM5GdjFho9jYvTdzoFCi1A= From: Tomi Valkeinen Date: Mon, 07 Sep 2026 14:27:59 +0300 Subject: [PATCH v4 04/13] drm/bridge: tc358762: Configure SYSCTRL first Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20260907-tc358762-fixes-v4-4-e3fc3ab5cd83@ideasonboard.com> References: <20260907-tc358762-fixes-v4-0-e3fc3ab5cd83@ideasonboard.com> In-Reply-To: <20260907-tc358762-fixes-v4-0-e3fc3ab5cd83@ideasonboard.com> To: Marek Vasut , Andrzej Hajda , Neil Armstrong , Robert Foss , Laurent Pinchart , Jonas Karlman , Jernej Skrabec , Maarten Lankhorst , Maxime Ripard , Thomas Zimmermann , David Airlie , Simona Vetter Cc: dri-devel@lists.freedesktop.org, linux-kernel@vger.kernel.org, Dave Stevenson , Tomi Valkeinen X-Mailer: b4 0.16.0 X-Developer-Signature: v=1; a=openpgp-sha256; l=1636; i=tomi.valkeinen@ideasonboard.com; h=from:subject:message-id; bh=R3FaNQrlNb86xfalGaX8Aw8wDMwPPadvb26T0rMm/AI=; b=owEBbQKS/ZANAwAIAfo9qoy8lh71AcsmYgBqnp/SS1/qBvMsSFVmdKQChMYxG3RdU3MK9glCP r9nSmbMOheJAjMEAAEIAB0WIQTEOAw+ll79gQef86f6PaqMvJYe9QUCap6f0gAKCRD6PaqMvJYe 9c4VD/4s0qpc/X1zfHeiNyvXpNa6mynQnLMjs2OneAJVzZ2WTZiLJYppykYUHq4CQKmG17Ycuk5 Qay7REzz1BX3/nkwUiUfsMOG+llzDYasNlTQAsGiK7RkyfFo4NoivXzhf2R0nB8IHULNemeys5z hR9f65XgXsd0UjuEDA5LhH43hVIHJjfSeEyfJb7ZDzZzZwM73MErAKZNuCMYg2LOYxvr2bMjGYL i9Iq4cevHBCZ2V5ph1bQBpIuvgvnXy01pvKAH3xtYivRr5Rt6NUOIU02REqG6aIg9wIl9ZU6qRP wsZNKvPiyspo7xKftZTFzvKGvSfvtRaAOSi9H1VjBZelpfjSC+Zqr/rhmeW+mn5Sl3mR1l4J02Z bvU+MBMHVtPv3z70dEctkpI7cQvNJ27aLzTMdWgAIYP3+5skFlNGrnSC4kf7S8w7/9Odvuz06Xi 62DtMqNG2gr0byaFNuE8UqqiapSpI3FBZeJ/VTNrs0K7seUR+Z9pKJxURy5zBEaCPp1Vw5lHPx6 +f+gLpwR4RcdTPOOi0Sc6SJKhp6Qg8WSBc/48ifZEDNTUFkDYd8EFoAYin/o6QOf4BmZ/KGiQDW j9OgWqqTTlV6GxK47I4HG7XIOgctqr1papBbDkeCmR/LL5/4fRw+1winpg1kEtpWjAkrXMWYRFh RVHI3YhbyylHYRg== X-Developer-Key: i=tomi.valkeinen@ideasonboard.com; a=openpgp; fpr=C4380C3E965EFD81079FF3A7FA3DAA8CBC961EF5 SYSCTRL affects the DPI output and the clock tree, but we configure it late, when the DPI output is already enabled and clocks are running. Move the SYSCTRL configuration to the beginning, before anything is enabled. Signed-off-by: Tomi Valkeinen --- drivers/gpu/drm/bridge/tc358762.c | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/drivers/gpu/drm/bridge/tc358762.c b/drivers/gpu/drm/bridge/tc3= 58762.c index fcd741f5765d..eb6e6ad5b6a1 100644 --- a/drivers/gpu/drm/bridge/tc358762.c +++ b/drivers/gpu/drm/bridge/tc358762.c @@ -134,6 +134,13 @@ static int tc358762_init(struct tc358762 *ctx) { u32 lcdctrl; =20 + tc358762_write(ctx, SYSCTRL, + FIELD_PREP(SYSCTRL_DPIDATA_IO_MASK, SYSCTRL_DPIDATA_IO_4MA) | + FIELD_PREP(SYSCTRL_DPISTB_IO_MASK, SYSCTRL_DPISTB_IO_4MA) | + FIELD_PREP(SYSCTRL_PCLKDIV_MASK, SYSCTRL_PCLKDIV_DIV_3)); + + msleep(100); + tc358762_write(ctx, DSI_LANEENABLE, DSI_LANEENABLE_L0EN | DSI_LANEENABLE_CLEN); tc358762_write(ctx, PPI_D0S_CLRSIPOCOUNT, 5); @@ -157,13 +164,6 @@ static int tc358762_init(struct tc358762 *ctx) =20 tc358762_write(ctx, LCDCTRL, lcdctrl); =20 - tc358762_write(ctx, SYSCTRL, - FIELD_PREP(SYSCTRL_DPIDATA_IO_MASK, SYSCTRL_DPIDATA_IO_4MA) | - FIELD_PREP(SYSCTRL_DPISTB_IO_MASK, SYSCTRL_DPISTB_IO_4MA) | - FIELD_PREP(SYSCTRL_PCLKDIV_MASK, SYSCTRL_PCLKDIV_DIV_3)); - - msleep(100); - tc358762_write(ctx, PPI_STARTPPI, PPI_STARTPPI_STARTPPI); tc358762_write(ctx, DSI_STARTDSI, DSI_STARTDSI_STARTDSI); =20 --=20 2.43.0 From nobody Fri Sep 25 23:50:54 2026 Received: from perceval.ideasonboard.com (perceval.ideasonboard.com [213.167.242.64]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 496EB47987C for ; Mon, 7 Sep 2026 11:28:34 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=213.167.242.64 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1788780516; cv=none; b=rAGui9ZsyA7y0yXa7ciVaXHwNghitUYBhTHIW8wYlsyg5nFBkWx0JQ3NcCrIU2mSVIKBNSvQa33vPW8Qw0H55ejqegoE5qSpnk7U6BaujbTAjnbjKFkXSY3YbwwBWtYDiEmMEX0MmVD5lyD4hpeUcnQpdey4dCage4yDJ96zfQ4= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1788780516; c=relaxed/simple; bh=tJtSvBmty0vDHrhUjR4oca9+PN80lAHWJGGp+xTQogI=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=IzmuZdUo3l672g3MBpy+Ye46ReABwnP5uDpzpS3IvWva/gwZceXfq0vJox3XcGWKP2y9KzEXAfQTaJh0kBjgbChyCvp4RDoALZuoto0zJXRQHT5TNtjaGo8DdNz5Fk3MmEm7GJPEFf27L9BKvPbRuh5+x3JSbY4WuyOsEBT3FB4= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=ideasonboard.com; spf=pass smtp.mailfrom=ideasonboard.com; dkim=pass (1024-bit key) header.d=ideasonboard.com header.i=@ideasonboard.com header.b=nUXpOVZz; arc=none smtp.client-ip=213.167.242.64 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=ideasonboard.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=ideasonboard.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=ideasonboard.com header.i=@ideasonboard.com header.b="nUXpOVZz" Received: from [127.0.1.1] (91-158-153-178.elisa-laajakaista.fi [91.158.153.178]) by perceval.ideasonboard.com (Postfix) with ESMTPSA id CB640104C; Mon, 7 Sep 2026 13:26:52 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=ideasonboard.com; s=mail; t=1788780413; bh=tJtSvBmty0vDHrhUjR4oca9+PN80lAHWJGGp+xTQogI=; h=From:Date:Subject:References:In-Reply-To:To:Cc:From; b=nUXpOVZzRLo9QELs2taTxXRVmkqLVGLcFEHPZ2iGn6xYvc9160SbkeP5ZoUzxrpBt H98WBD0nwkTMuaGhLdDD2zE8cks/05GD5GAyBVaWhXgmKOn+bVcVw+ji8a6MVr2J8q 8kOXuXV0BiTbxA36fHK5KRNjzqHER44zLVOv1pXE= From: Tomi Valkeinen Date: Mon, 07 Sep 2026 14:28:00 +0300 Subject: [PATCH v4 05/13] drm/bridge: tc358762: Drop SPICMR write Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20260907-tc358762-fixes-v4-5-e3fc3ab5cd83@ideasonboard.com> References: <20260907-tc358762-fixes-v4-0-e3fc3ab5cd83@ideasonboard.com> In-Reply-To: <20260907-tc358762-fixes-v4-0-e3fc3ab5cd83@ideasonboard.com> To: Marek Vasut , Andrzej Hajda , Neil Armstrong , Robert Foss , Laurent Pinchart , Jonas Karlman , Jernej Skrabec , Maarten Lankhorst , Maxime Ripard , Thomas Zimmermann , David Airlie , Simona Vetter Cc: dri-devel@lists.freedesktop.org, linux-kernel@vger.kernel.org, Dave Stevenson , Tomi Valkeinen , Andreas Kemnade X-Mailer: b4 0.16.0 X-Developer-Signature: v=1; a=openpgp-sha256; l=959; i=tomi.valkeinen@ideasonboard.com; h=from:subject:message-id; bh=tJtSvBmty0vDHrhUjR4oca9+PN80lAHWJGGp+xTQogI=; b=owEBbQKS/ZANAwAIAfo9qoy8lh71AcsmYgBqnp/TvJviboSk6SV6p9mT+wYJATPOuk0zut80q YAQQbE1BdGJAjMEAAEIAB0WIQTEOAw+ll79gQef86f6PaqMvJYe9QUCap6f0wAKCRD6PaqMvJYe 9TjZEACKpi5xBTDdF8Q10+pGZZIMgKW98/a05Shb0OZqBCJsjjas80Lad2yrihqYJqv7iNNpci3 5wqLfZ/e6mFI33PmzThh8gl/kOTCaGb7qq+yCanfTiNbWQ8zwNwjAGGFqIWMl726PvGbhJLb33w ejPpW6CONMOdfLirtotV+//zAj/SSwJxP3dQidlluMUGBk4BVqE6yjmhHuMRrsKwT1mlU4JCrjP aUnHffrhHVjvvHoWGS9rc3qtsRNQJC75l+ynlUlx0zYD66WiK9wjg+e7WGmCchlgvwPNZIjv85r +reMmtuMTa8DNU/BlD8cWmTcDFlunSK8gF03rHADNXuhcSyUKtfT6I4aikhhpsn3hpgZUIQdW55 zRY1C4QwDekjbwNFYcifWIu3GRMWeqtvBEvdo1QwyeJYi1lUrgvAeOD9QqexfSYZZEHonez+day emeFIvVzkjuSLOxbDTyHHqcaSqWUyfRYztKWnRRn+6b09D962ATt/cxbJKx7LQRWBJqVe4WLFYP /AwwW2dBujyCmKCxfeGd9wRL0FeFi7XWehfshq5yYYOVPECXMZz5CzYYBHZ3l0vqcDGaDROsai9 s4H4Gd0/ulIhFOMYtcykS/aAuFEVzBobSLnlGtu9iRubyf7TvCK1UpqWUxe0CAXJnFzd7sIyHXQ K2bxP9b1pw7qroA== X-Developer-Key: i=tomi.valkeinen@ideasonboard.com; a=openpgp; fpr=C4380C3E965EFD81079FF3A7FA3DAA8CBC961EF5 Drop write to SPICMR. It's unclear why the write is there, as SPI is not supported in the driver, and it's mostly just writing zeroes to already zero fields (reset defaults). None of the zero bits written disable anything wrt. SPI. Reviewed-by: Andreas Kemnade Signed-off-by: Tomi Valkeinen --- drivers/gpu/drm/bridge/tc358762.c | 2 -- 1 file changed, 2 deletions(-) diff --git a/drivers/gpu/drm/bridge/tc358762.c b/drivers/gpu/drm/bridge/tc3= 58762.c index eb6e6ad5b6a1..ee72978cd8d8 100644 --- a/drivers/gpu/drm/bridge/tc358762.c +++ b/drivers/gpu/drm/bridge/tc358762.c @@ -149,8 +149,6 @@ static int tc358762_init(struct tc358762 *ctx) tc358762_write(ctx, PPI_D1S_ATMR, 0); tc358762_write(ctx, PPI_LPTXTIMECNT, LPX_PERIOD); =20 - tc358762_write(ctx, SPICMR, 0x00); - lcdctrl =3D FIELD_PREP(LCDCTRL_PXLFORM, LCDCTRL_PXLFORM_RGB888) | LCDCTRL_DPI_EN; =20 --=20 2.43.0 From nobody Fri Sep 25 23:50:54 2026 Received: from perceval.ideasonboard.com (perceval.ideasonboard.com [213.167.242.64]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 3D6084772B9 for ; Mon, 7 Sep 2026 11:28:37 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=213.167.242.64 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1788780519; cv=none; b=rBJao1Eumwm7lIzJFOjcEgVAmWPUYffQVT+0VloJEXZM3T+quWCAh2TLz0oF16BSqeKK3TelWzebZRrMpVqyWG/g8sQ2e1Jy6jKW2ERDzDUuKpIvYVzh6iUL24YQBzfXoy93/gpcsGcsyqTQianW9+iTa8GFnbDjXQZMlGutJIA= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1788780519; c=relaxed/simple; bh=igMHHRbxifyA6frngcNP7cTPZU8BglT1TaSpdHFR7B8=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=UWhcm0Xhc+ZF9Os6amPpcAhl71cPIQRN48NOj+l/i/el8fhJvckbMU74qFTSW2O6/9UlHiTPLYq6Ig8UaagUhuRAPIYI8FBqFl8WMoxV6kqHo5U91tLndDNhiOCG2GDK6roJ5DV82dl+iGmFpIGeCmereHDm2h36oDQmXODBhi4= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=ideasonboard.com; spf=pass smtp.mailfrom=ideasonboard.com; dkim=pass (1024-bit key) header.d=ideasonboard.com header.i=@ideasonboard.com header.b=OJQAKe4w; arc=none smtp.client-ip=213.167.242.64 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=ideasonboard.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=ideasonboard.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=ideasonboard.com header.i=@ideasonboard.com header.b="OJQAKe4w" Received: from [127.0.1.1] (91-158-153-178.elisa-laajakaista.fi [91.158.153.178]) by perceval.ideasonboard.com (Postfix) with ESMTPSA id C7FF614A1; Mon, 7 Sep 2026 13:26:53 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=ideasonboard.com; s=mail; t=1788780414; bh=igMHHRbxifyA6frngcNP7cTPZU8BglT1TaSpdHFR7B8=; h=From:Date:Subject:References:In-Reply-To:To:Cc:From; b=OJQAKe4wOcAGOki7jaktG7VjUjbYKleLfwQD8VgmE9QI2tlSJ0L04ZMYC6Bh8zU5b ng89L1NU/mdNxQOE2CkS9JkmqheOkr4Of899TqJc12VqU/JAReZE1I2Trgz3F6bRon MD524c6lZQeuDAopmetEv9AI9PV/FFvM83Wapu4w= From: Tomi Valkeinen Date: Mon, 07 Sep 2026 14:28:01 +0300 Subject: [PATCH v4 06/13] drm/bridge: tc358762: Improve DPI enable handling Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20260907-tc358762-fixes-v4-6-e3fc3ab5cd83@ideasonboard.com> References: <20260907-tc358762-fixes-v4-0-e3fc3ab5cd83@ideasonboard.com> In-Reply-To: <20260907-tc358762-fixes-v4-0-e3fc3ab5cd83@ideasonboard.com> To: Marek Vasut , Andrzej Hajda , Neil Armstrong , Robert Foss , Laurent Pinchart , Jonas Karlman , Jernej Skrabec , Maarten Lankhorst , Maxime Ripard , Thomas Zimmermann , David Airlie , Simona Vetter Cc: dri-devel@lists.freedesktop.org, linux-kernel@vger.kernel.org, Dave Stevenson , Tomi Valkeinen X-Mailer: b4 0.16.0 X-Developer-Signature: v=1; a=openpgp-sha256; l=1676; i=tomi.valkeinen@ideasonboard.com; h=from:subject:message-id; bh=igMHHRbxifyA6frngcNP7cTPZU8BglT1TaSpdHFR7B8=; b=owEBbQKS/ZANAwAIAfo9qoy8lh71AcsmYgBqnp/T+47orYLUJLgcYn5Z/aE59PpVZfyFa5NJY Rq5wCvBazSJAjMEAAEIAB0WIQTEOAw+ll79gQef86f6PaqMvJYe9QUCap6f0wAKCRD6PaqMvJYe 9TnhD/9kSNcxq2OABtsyD+a7Vq2n9lqb7t+IFB2CHkPVnn19OF00wHRac2Maip9aL/Fi9b2wpLs m9wfjh7QqorREZtYxX1iNa+TLserTHiA8KtPK02mcEgqu+JdosNKAKHXMVH5VnaxDlUjGRvW9iZ 26SIWdstRGxgk13RWoMY8b2JccWPo5hzbCWERH4B6q00PzxPxGahDUWRfS8JgvjMmx3MGzzZdAF Z9SitO28oti6k7peuECmdnyNOammWscY7zVq6wbRDVQ0rltux0rvZCRB7YM4sDlB+U6HmAL1LsY CkcrU3W700M5y0Q+8OOcu3ZPY4NZxsRw2GhQGVKPHSRZXfUJPsri/FlNMRuKG4a2JfZBwzifRIx 07nWQjAmfUtVlVhvNR+l2hpQCjku13SigR7IZync946wLv/gXt/+Lgx2UCDSrUOaahMl1s0dzWg G688ys+Lop4m0C6PpTcHgC3sQvU0JXKiI0qUG2znDFfpcd3wPOPNULhlUyRfZ9HaeQIq9Fi2J5U H95PoU1gaG1ug4Ts01km2Y1Cj/MQSWK6cxZfgwianKTFIU736f+lOxLcMzxxpbNMD4njjyxTc7Q BKMT8UjhFBeBIFbTdksQwSeoEDlKZiqoEibrUcnw9ivaOVkDhNCfMRluhgjnRsfMCo2ROcDqw7t OwF3Ww3q3MTHZWA== X-Developer-Key: i=tomi.valkeinen@ideasonboard.com; a=openpgp; fpr=C4380C3E965EFD81079FF3A7FA3DAA8CBC961EF5 The HW reset defaults has DPIENABLE bit as set. In the current driver we configure and enable various things while DPIENABLE is set. This results in a temporary DPI output with wrong timings, which may cause artifacts on the panel. Fix this by clearing DPIEANBLE as the first thing when we start to enable the display. DPIENABLE is set later with the rest of the LCDCTRL configuration, and at that time we have done all the other configurations. Also, for symmetry and possibly improving the DPI output at disable time, explicitly disable DPIENABLE when disabling the bridge. Signed-off-by: Tomi Valkeinen --- drivers/gpu/drm/bridge/tc358762.c | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/drivers/gpu/drm/bridge/tc358762.c b/drivers/gpu/drm/bridge/tc3= 58762.c index ee72978cd8d8..7654d4039a9d 100644 --- a/drivers/gpu/drm/bridge/tc358762.c +++ b/drivers/gpu/drm/bridge/tc358762.c @@ -134,6 +134,12 @@ static int tc358762_init(struct tc358762 *ctx) { u32 lcdctrl; =20 + /* + * DPIENABLE has reset default of 1. Make sure we don't output on + * DPI until we have finished the coniguration. + */ + tc358762_write(ctx, LCDCTRL, 0); + tc358762_write(ctx, SYSCTRL, FIELD_PREP(SYSCTRL_DPIDATA_IO_MASK, SYSCTRL_DPIDATA_IO_4MA) | FIELD_PREP(SYSCTRL_DPISTB_IO_MASK, SYSCTRL_DPISTB_IO_4MA) | @@ -185,6 +191,9 @@ static void tc358762_post_disable(struct drm_bridge *br= idge, =20 ctx->pre_enabled =3D false; =20 + /* Turn off the DPI output */ + tc358762_write(ctx, LCDCTRL, 0); + if (ctx->reset_gpio) gpiod_set_value_cansleep(ctx->reset_gpio, 0); =20 --=20 2.43.0 From nobody Fri Sep 25 23:50:54 2026 Received: from perceval.ideasonboard.com (perceval.ideasonboard.com [213.167.242.64]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 4B4F4479877 for ; Mon, 7 Sep 2026 11:28:38 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=213.167.242.64 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1788780520; cv=none; b=m99BgVn/JtYOcOmMur+T9Qg/CTS4HP3xxHpBmQEeX0dQ7AJ9mwbYTsyFfZz32wb3OB1G9Uh2kjz9wcuMZNK+QwXIDQilIWHh6JHX7mCmmpXBB6sMwZji6CfJN0iw+6kJgR4tdh8K8IsY37ksWGfSMbD8YZHHRlZXCXMz3BhP6PI= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1788780520; c=relaxed/simple; bh=ghKBuVKjv8XfNhFOzxwGtXKqZd5n7UMCAy87A0RUjWk=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=K4HLAMk6fLzn8tkNeN95K+j0f283jB99hcvtHVHCLI9bx2WlDe7WHCvVYHgUMphK7waCBtlwuJD3dYop/hHxkpvnRwE5DbPdNaR3qd3PiTcr1JAnCWOJNHZehJgMhYGQOV0ay+03gqLkNhbNJ+S3N7MvVfph6gjrh8QtWlSq5+k= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=ideasonboard.com; spf=pass smtp.mailfrom=ideasonboard.com; dkim=pass (1024-bit key) header.d=ideasonboard.com header.i=@ideasonboard.com header.b=L9AoVcDj; arc=none smtp.client-ip=213.167.242.64 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=ideasonboard.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=ideasonboard.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=ideasonboard.com header.i=@ideasonboard.com header.b="L9AoVcDj" Received: from [127.0.1.1] (91-158-153-178.elisa-laajakaista.fi [91.158.153.178]) by perceval.ideasonboard.com (Postfix) with ESMTPSA id BA118153F; Mon, 7 Sep 2026 13:26:54 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=ideasonboard.com; s=mail; t=1788780415; bh=ghKBuVKjv8XfNhFOzxwGtXKqZd5n7UMCAy87A0RUjWk=; h=From:Date:Subject:References:In-Reply-To:To:Cc:From; b=L9AoVcDjkm+guO+3YqLswhaTsFtQ6gR/vnG/9DuWIwFoxorA2nuNQkOzS25V1h4kP 0IIxPBm7HCV9ne4ic6vnHelsMDhk1Zkq5OO5WuWO06oq64ghSqc43F/lXviGXejvst WTkg1FnOpRCsAG7hQuRhWZrXKCBYD4f2XpoNxc+4= From: Tomi Valkeinen Date: Mon, 07 Sep 2026 14:28:02 +0300 Subject: [PATCH v4 07/13] drm/bridge: tc358762: Update comment about the number of lanes Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20260907-tc358762-fixes-v4-7-e3fc3ab5cd83@ideasonboard.com> References: <20260907-tc358762-fixes-v4-0-e3fc3ab5cd83@ideasonboard.com> In-Reply-To: <20260907-tc358762-fixes-v4-0-e3fc3ab5cd83@ideasonboard.com> To: Marek Vasut , Andrzej Hajda , Neil Armstrong , Robert Foss , Laurent Pinchart , Jonas Karlman , Jernej Skrabec , Maarten Lankhorst , Maxime Ripard , Thomas Zimmermann , David Airlie , Simona Vetter Cc: dri-devel@lists.freedesktop.org, linux-kernel@vger.kernel.org, Dave Stevenson , Tomi Valkeinen X-Mailer: b4 0.16.0 X-Developer-Signature: v=1; a=openpgp-sha256; l=1121; i=tomi.valkeinen@ideasonboard.com; h=from:subject:message-id; bh=ghKBuVKjv8XfNhFOzxwGtXKqZd5n7UMCAy87A0RUjWk=; b=owEBbQKS/ZANAwAIAfo9qoy8lh71AcsmYgBqnp/Trwjm9PJw2in8vzivJeTm6tFMRM4bm0q0I LQ9vNvXUfeJAjMEAAEIAB0WIQTEOAw+ll79gQef86f6PaqMvJYe9QUCap6f0wAKCRD6PaqMvJYe 9WXZEACiS69bcpXIRCNv3oebq2YokwcoR+16a5zuWgy0TnkLCY+JTb77tZnO50uHV6rk3EKvs2Y QMD49zdiJUJlmzTm7RHX60yD2FcxRG7/QskX+ot4UAXCE9ONxoJ1TmC+TpCz0OOQAzYGXdYlcX8 pt6mLOTY+IPcburEgkCSHcz3/3E0Xd+BTnJf4srEQcjt9NgTeVcVP+xHf0MT5ODYXSdmIRaBWhK 6Qspmu1AYT37kNT+dfwTyYO6+s4PrvZC3JDC1LhpbZoBDKSiDh9Jng/rVaxnxMc2eK4VYI+t3Q2 SYIWs0LzGcjCLe5uiXajT5JOJW80aayecFgvJZ+9RWB0Uf3HQlaNNAudz6e8JHoSw6707QvLAWP 1xJHsFCecA+5ak6uaYvhsIRiUCPjmXuiOIj+zesSyZ5wMTiQd3zdvxXcsxm4SGPwEh7aDhVQoJv kFUlURWTc3xKDtqPKPpRuoV3Ctu/FmIcrLDv//WunkI+C+1PRH4sEe78z+50vryJmHdUrOdqIWm 8p/6xDff+z9DMZkGDd1By9MFwKEznnxL8l/iCWeaAgdisJ3YLHlbDL/EQUtzFDvDIuQb5SCZXFY 2E5e3+ijcsNQkX/gSC4v7uwVvIYJTIka4S3QhJcg9B2HnLJLl+YKVWRfB/B2waQSr7jJJzVk/sV e75wEhQSSN/rQ+A== X-Developer-Key: i=tomi.valkeinen@ideasonboard.com; a=openpgp; fpr=C4380C3E965EFD81079FF3A7FA3DAA8CBC961EF5 Update comment about the number of lanes. Signed-off-by: Tomi Valkeinen --- drivers/gpu/drm/bridge/tc358762.c | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/drivers/gpu/drm/bridge/tc358762.c b/drivers/gpu/drm/bridge/tc3= 58762.c index 7654d4039a9d..34f2bfd9977c 100644 --- a/drivers/gpu/drm/bridge/tc358762.c +++ b/drivers/gpu/drm/bridge/tc358762.c @@ -305,7 +305,14 @@ static int tc358762_probe(struct mipi_dsi_device *dsi) ctx->dev =3D dev; ctx->pre_enabled =3D false; =20 - /* TODO: Find out how to get dual-lane mode working */ + /* + * When using DSI clk for pixel clock (only mode supported in the driver), + * the pclk is derived directly from the DSI byteclk via simple divider, + * which is either 2 or 3. + * The required divider can be calculated with bitspp / 8 / nlanes. Thus, + * for RGB888, only nlanes =3D 1 works as nlanes =3D 2 would require divi= der + * of 1.5. + */ dsi->lanes =3D 1; dsi->format =3D MIPI_DSI_FMT_RGB888; dsi->mode_flags =3D MIPI_DSI_MODE_VIDEO | MIPI_DSI_MODE_VIDEO_SYNC_PULSE | --=20 2.43.0 From nobody Fri Sep 25 23:50:54 2026 Received: from perceval.ideasonboard.com (perceval.ideasonboard.com [213.167.242.64]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id D7FAB478847 for ; Mon, 7 Sep 2026 11:28:40 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=213.167.242.64 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1788780522; cv=none; b=CEKUjpxo8JIsdZVOWYrDWiGbhf1TNsgO443WTXXSASBHz07PdLhNvtll8LoBCNCuFRp7mSMA9+IYbQSTL4sdPt3O5a/j/xBHdbuKPpOaQ6k90r/6iimuc7LXDl3x3jYA5bqzBqRAKk7VCx1qPJ2odBV7YKAdYgbrViZCXJVNYxU= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1788780522; c=relaxed/simple; bh=1Uecn7x6YA7Ongo44LRbcp26WhmtFnehgnKpHJpp28Y=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=s0nj/uaQJfj1ap/11jZURFAA865cAlV5/tlCL2Q/JETU/obFYEx8yBC2JEZ6EYVHWrdXWsJeHICi46LbtLcIx5A92PN5ymgi3iIvTX9FZ5CeAO6rHsnVFGUbfVTYtF/XdCn4cdvMHADpIuDMZ2fFACDuKy5tt+ggzpbp1IgZTRk= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=ideasonboard.com; spf=pass smtp.mailfrom=ideasonboard.com; dkim=pass (1024-bit key) header.d=ideasonboard.com header.i=@ideasonboard.com header.b=whr/abnM; arc=none smtp.client-ip=213.167.242.64 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=ideasonboard.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=ideasonboard.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=ideasonboard.com header.i=@ideasonboard.com header.b="whr/abnM" Received: from [127.0.1.1] (91-158-153-178.elisa-laajakaista.fi [91.158.153.178]) by perceval.ideasonboard.com (Postfix) with ESMTPSA id B11CC157F; Mon, 7 Sep 2026 13:26:55 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=ideasonboard.com; s=mail; t=1788780416; bh=1Uecn7x6YA7Ongo44LRbcp26WhmtFnehgnKpHJpp28Y=; h=From:Date:Subject:References:In-Reply-To:To:Cc:From; b=whr/abnMdORYLQaXMiX2K18JB25/YnaIX1qM5+4k/ic8gcJCAFJQxhOk4wy1+PvDV TpGNQvwp5u2Lwug21mjFZal2aUBfSfv6TltCq9vcB9GApwo+/I8Zc2BKG6KQyUz4Xm LRQxaoJcJFaPuP8SoTtUvka1fkfM4wG211xosnZk= From: Tomi Valkeinen Date: Mon, 07 Sep 2026 14:28:03 +0300 Subject: [PATCH v4 08/13] drm/bridge: tc358762: Support VTG Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20260907-tc358762-fixes-v4-8-e3fc3ab5cd83@ideasonboard.com> References: <20260907-tc358762-fixes-v4-0-e3fc3ab5cd83@ideasonboard.com> In-Reply-To: <20260907-tc358762-fixes-v4-0-e3fc3ab5cd83@ideasonboard.com> To: Marek Vasut , Andrzej Hajda , Neil Armstrong , Robert Foss , Laurent Pinchart , Jonas Karlman , Jernej Skrabec , Maarten Lankhorst , Maxime Ripard , Thomas Zimmermann , David Airlie , Simona Vetter Cc: dri-devel@lists.freedesktop.org, linux-kernel@vger.kernel.org, Dave Stevenson , Tomi Valkeinen , Andreas Kemnade X-Mailer: b4 0.16.0 X-Developer-Signature: v=1; a=openpgp-sha256; l=3465; i=tomi.valkeinen@ideasonboard.com; h=from:subject:message-id; bh=1Uecn7x6YA7Ongo44LRbcp26WhmtFnehgnKpHJpp28Y=; b=owEBbQKS/ZANAwAIAfo9qoy8lh71AcsmYgBqnp/UFyupikbOyZA07F+YrKzgr4yoQoLR/R+f5 8PdpCyneayJAjMEAAEIAB0WIQTEOAw+ll79gQef86f6PaqMvJYe9QUCap6f1AAKCRD6PaqMvJYe 9aVAD/0ftAubH68Fyjusg1gMLmkT1c0Oj8dUGbYSeeRoA/tzqhuAo3PGBvI8glIpQwyL5kbRDY8 oOf1/bss/vwATKsWki0WhNb5trbubUBhEvmwNlLkNjqnE8fNVZMI4I2djOGd1EuAcNOLPZ6Y/+A PE+nHdfXHBtLU0zfgWUbvxncBfk5/GFx7LDiD/x4dWQZ3P9aGjLgXhOCn152DHjymwcoJ5Kb7e4 mBT8u/QqQzWRXJIMgvoPBLfyH3zF9uMd7PmNAWZa9DgywfqynSMIWS5KHaivjxn9ZjgWRggtz9r 9TSkPxkx8DAHGXZw4g5LJLeLQb67HN8lXoBL9foWzJQ3iFt6t/ZmRETTriTtur6KXJOcZkBhJqb 1bsVhsRkjZ1xoRcwK8nLnpcquLwTaPrNeZmGyHERBUAUcvDP7WxAdXDhDoiNjQsYvzUkiAMCIL7 HL8QZxFN/BuKgqFr0ns/niiU9i0xVpRbfgFo26i5ktjItGJiCZqcItYHNweVtNKuH5gRjnXZYcv xc+5/yXb/hWpa8q2LiwJ3mvQIh1cBNxn/37d6scK6cEKErX+LYb8JCHKFnHyUISoB+5JLn6HI/k kzcW5kn/CEAfiwHiGUy72XF+taBe1vn5qEL2vSULyDo9VIaUYLZEf27r2Wy9TE4iF2KLTUsXMLy yZeeC4QzUsj/pMA== X-Developer-Key: i=tomi.valkeinen@ideasonboard.com; a=openpgp; fpr=C4380C3E965EFD81079FF3A7FA3DAA8CBC961EF5 TC358762 can generate the DPI output's timings in two ways, either Video Timings Generator (VTG) on or off: - VTG off: Duplicate the timings coming from the DSI. This requires DSI pulse mode. - VTG on: Sync frame on DSI VSync Start, but the exact output timings are defined in TC358762 registers. This can be used with DSI event/burst mode. We are currently using VTG off in the driver. I observe that the hsync signal, on my HW setup, is not 100% stable with VTG off, and it seems to lengthen by a single clock every now and then. However, it then stabilizes later. To me the DSI input looks solid, but that is more challenging to measure exactly. So I have not found the root cause for this. Turning VTG on removes that instability. As I dont' see any downsides with enabling VTG (and it would allow extending the driver to use event/burst mode in the future), let's always enable the VTG. Reviewed-by: Andreas Kemnade Signed-off-by: Tomi Valkeinen --- drivers/gpu/drm/bridge/tc358762.c | 33 +++++++++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) diff --git a/drivers/gpu/drm/bridge/tc358762.c b/drivers/gpu/drm/bridge/tc3= 58762.c index 34f2bfd9977c..797866265b41 100644 --- a/drivers/gpu/drm/bridge/tc358762.c +++ b/drivers/gpu/drm/bridge/tc358762.c @@ -18,6 +18,7 @@ #include =20 #include