From nobody Thu Apr 2 20:22:14 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 57FE12D2390 for ; Thu, 26 Mar 2026 13:12:43 +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=1774530765; cv=none; b=Qa7NJgOkdvF3RP0H1HxDLBGtFWVDYQpbLM7/jFNLAbF/gXh5Yoj2Xq3iKxHk0VmoR5kl0AuvwRAvuWfuiIKyqH+zXtGIEhCZ/U6YAhkYHZmrFJzcgeWLFR5YC8yZThprOyKZBsKF4mUw9gVlNDna3s45+Un+p2vLf7PW/yP/l3U= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1774530765; c=relaxed/simple; bh=rXG4UaTkhdBDUrBbY+IrNeY5w5J0q/UWD4rfx+BbDqY=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=CT7pKyD3DlswFvQSFkPLOrMDaC0NawT1YMmsCXaBLsSpOMBzuqYEUjsA5wytbjn9wzKo/l6as0JIEI3MHG3T/4lkV+C9C7A0sLuhW2eNToOkc6E5VMjdLQC7WTeyXfr5GISB942WqrV3Y7YxfCb6NlzVcWlX+XuQXB+b49gNB2E= 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=WEoLRpMR; 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="WEoLRpMR" 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 5EDD19A9; Thu, 26 Mar 2026 14:11:15 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=ideasonboard.com; s=mail; t=1774530676; bh=rXG4UaTkhdBDUrBbY+IrNeY5w5J0q/UWD4rfx+BbDqY=; h=From:Date:Subject:References:In-Reply-To:To:Cc:From; b=WEoLRpMRVOmAlS2S4q28co3eC91JwYqgVFSFcvjH/c1FJReRD0/ocUBevrEBjQO3Q 3EB1TdB2Y66zkaR+u5cPH2Ixlh3H/r4/As4my1pxR1QRrmoQt4yVS0BpHIbKr+uSNR AbjprNfdkcdOwxlHEQuz9V1etcGpsYKqb1ubsOHI= From: Tomi Valkeinen Date: Thu, 26 Mar 2026 15:12:11 +0200 Subject: [PATCH 1/8] 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: <20260326-tc358762-fixes-v1-1-65f479227af5@ideasonboard.com> References: <20260326-tc358762-fixes-v1-0-65f479227af5@ideasonboard.com> In-Reply-To: <20260326-tc358762-fixes-v1-0-65f479227af5@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, Tomi Valkeinen X-Mailer: b4 0.15-dev-c25d1 X-Developer-Signature: v=1; a=openpgp-sha256; l=2518; i=tomi.valkeinen@ideasonboard.com; h=from:subject:message-id; bh=rXG4UaTkhdBDUrBbY+IrNeY5w5J0q/UWD4rfx+BbDqY=; b=owEBbQKS/ZANAwAIAfo9qoy8lh71AcsmYgBpxTC9rtx0SrhmfdwgN+Vll0deoIYDIFaTyUfmr xcmPNK1CHuJAjMEAAEIAB0WIQTEOAw+ll79gQef86f6PaqMvJYe9QUCacUwvQAKCRD6PaqMvJYe 9dvRD/9PN/6p3aU2QCxzt8gec148EDgD/hdvjYlSDkrQ8Dgdj/ZqCHsc60HInEy0uxo/BqMMB9b mhO/QX9tJFX5QCUD6xLva2SscERRUyg3/Q6UYbt/Tsd5cBXbNIMrFMtl74S1o9vzs++leRt+Xv1 TKOpwPgZsdo4PxvfaqJwYLa++27ccrFbzXIk3ed5LOl/irIFXY1enQaZy172hss7U4e0YU+uGJ3 A/WpYJMVdkn438E8A9kb1adSige4Vb6sNsxqcnqHAdIicxeNHk1V21IkLLdnlEEYYdxbGqDGbl5 +vbLiqq7pnqDfNBrUSZgdafD7lsQCxC+crvCd3lG6wrfwkjLUPh/1ouS0/4rBoL0V0bpbWoxeKZ Lg3upY0LQqb/Ly6NcEgrzNWUVcxbI6dmA44kvDBjROkqGcz6NJZyRbcvHVfZuuvP/q9JVJlatnv NhF6Q28TMfFCyekRXmM6QQPzuZvCgSvm4+h88NghNakleSJIN+CDynBr1LO6sCem5oLD51nd78M AhRCa7X0W2lwh8v/khqZDz0MkFM3KJ08GZkPunr/Ic4iWfIh9oY2mMZyFALhPlqZGqRG3HKhgN8 6ydRGZExdftochLnggrMdRK+ighQIXF3YgWJqJDx+vx0aCL9LUFhGc7r2y0H8dygiI/ReHRtT+b 5ZtEHwVMtnnzLLw== 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 98df3e667d4a..833fd9913c75 100644 --- a/drivers/gpu/drm/bridge/tc358762.c +++ b/drivers/gpu/drm/bridge/tc358762.c @@ -29,17 +29,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 */ @@ -60,14 +65,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; @@ -118,7 +117,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); @@ -141,8 +140,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 Thu Apr 2 20:22:14 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 97C482D73B6 for ; Thu, 26 Mar 2026 13:12:47 +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=1774530769; cv=none; b=efndkW9tRDBSDWrgvudjWWazjaoTHqGmdMk8mIRs5ESg+eC8fMDeg+2ZfZX7eM9HDHIBbPtGQdATe7ArE9nKY8mwWRXBeNpGN/+Lry8U66jS/OGVlI1A7t1SUQFfoNsaroRBPTMkR0rJAokqesz8yKubNg5ybzu0ELIyvwgux2Y= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1774530769; c=relaxed/simple; bh=tUPCwk9RutYoAa7a2LRuYv47/hgSBZUcX/gp3JO4ClU=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=MuMLf0TmX/7UmUURUmmqeFMs9+okzmtLy3H9YiSTG4A2BpKH3pPQCl0Wl+NKq1ayjGRQ55EVVk4/R8OEeE0DiLvaapnLj05PLgvc7HcyUBg9Wlf6kbsCE7ciBqQJc3pC0y2oqgrZ9gfHufZtnWsaHsWW7WFbS1eekc8JnJp8OWE= 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=rIOtZ7nc; 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="rIOtZ7nc" 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 449B7F90; Thu, 26 Mar 2026 14:11:16 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=ideasonboard.com; s=mail; t=1774530677; bh=tUPCwk9RutYoAa7a2LRuYv47/hgSBZUcX/gp3JO4ClU=; h=From:Date:Subject:References:In-Reply-To:To:Cc:From; b=rIOtZ7ncy2jaGHRCmRsojaTeemahdkei8hJJY19hXSh4vZTUCkPV5wcbB1q/aL/r2 gWp+TN/PLrqA5nZNQINqpYQ03078ST1+buMeF42BVprIfngtog+szNdH8RTeWU79yf GE54ApjbK1dRWY6c+n5lGzEQRva5kk7Jvnw28R6w= From: Tomi Valkeinen Date: Thu, 26 Mar 2026 15:12:12 +0200 Subject: [PATCH 2/8] drm/bridge: tc358762: Improce 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: <20260326-tc358762-fixes-v1-2-65f479227af5@ideasonboard.com> References: <20260326-tc358762-fixes-v1-0-65f479227af5@ideasonboard.com> In-Reply-To: <20260326-tc358762-fixes-v1-0-65f479227af5@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, Tomi Valkeinen X-Mailer: b4 0.15-dev-c25d1 X-Developer-Signature: v=1; a=openpgp-sha256; l=1553; i=tomi.valkeinen@ideasonboard.com; h=from:subject:message-id; bh=tUPCwk9RutYoAa7a2LRuYv47/hgSBZUcX/gp3JO4ClU=; b=owEBbQKS/ZANAwAIAfo9qoy8lh71AcsmYgBpxTC+5mjMXG7TQmsu2XeOQrs66sS3wTGs9EMX5 bf492wODN+JAjMEAAEIAB0WIQTEOAw+ll79gQef86f6PaqMvJYe9QUCacUwvgAKCRD6PaqMvJYe 9VR6D/4tcafSrYbh2vvwRbtUnxUgkqGWDL8TzzOLdur/DXn3p/btWzHobbrKQ7NVxpBHu1Kqhov iXAfsiWhR9I9yk9U/OMVcIyz0MsT3FdVOu606lx+LbjwQycS7V5YnkhJz8f+bt43wKJmWRJLsv6 EtRlfgQ1RoXAKOLkbt844Mg3CaUvOeeTobc7s58Ur9iQfx5e/8iAh/Odg/V5WGYiyK55jkDufJG idb8g0f5Rm5GXUIHr5VKMHz5SHxv3QJquUIVuIhoDL6ntEnPojve83tXL5H96lYKt9PvZwLJi9q 6G1So2dQrTCh9bDoRW9BA6P+5jBXiTrhG1LlWOREXHtosU4psfBKeyxxSS+IpySU5+r1dgD5XNR 59x11K1Rtnvhx7bKG9q3QufHoLDRNNSGHvA4+KiikJMJLiXiBedS+aDaQtWZk8irINmpfTC0Uxw VaXvpQPeudqz6hU0TF/judCzkhtxSqyjTd6XPUYcGvvizzQf/dRH6aSlkykE1u3ZUlanVWQGdzY gLpAx8WsyAgTweuIEHDv+WU7pTKuyZP/+BUdS2URJBpkhTb+PODZcvcCF+2qvCBHAfOtwsY/bxs 5jSxl7wbfcWaTcdj86G5MixdYJXjaka9bHCWuFirSuAowmLAhATestyAgfeZ2+rke4lrSpJZn5a CrZr8Zqw5jHRGQA== 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 | 19 ++++++++++++++++++- 1 file changed, 18 insertions(+), 1 deletion(-) diff --git a/drivers/gpu/drm/bridge/tc358762.c b/drivers/gpu/drm/bridge/tc3= 58762.c index 833fd9913c75..9a0b1f0c18f0 100644 --- a/drivers/gpu/drm/bridge/tc358762.c +++ b/drivers/gpu/drm/bridge/tc358762.c @@ -64,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 @@ -137,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 Thu Apr 2 20:22:14 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 96AF02D7393 for ; Thu, 26 Mar 2026 13:12:47 +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=1774530769; cv=none; b=Z8jG+xlxfpm0/PEDym/Hx0VkHzrkcGubzUpvz/mjQ4fh2SjW4n8vmmney14QYgjO125N+HuQWoxIo+64Bar/3wE8tH2w0LVXVJKzniulXSl4vWMT/vTFfxr8noh/L8VjSQbIGrQH49YKk5FuJu4OhnxbtMkEzSSNkqmyaQSkYy4= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1774530769; c=relaxed/simple; bh=NuaGyo7S8VZSSZ/guEUo9cbKkXUB0xNZ7DHe3gckBAc=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=P6EvAqHfDhvPBhDnL5ycz0iaPzfdsLnp43TTLk+FkU31Ra66uoMX6xtTK0tEUBpPSO88e9Jxu0HrMMJ5UsJh0aYBKhvEOJkf8+00kFqklyA30eN/QAoMWA7O7T3zSh8w8yR31oBebT1teffjH+O4Mqu2F/Jx+zpT8DmX+E3XyfY= 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=fHoYXJvE; 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="fHoYXJvE" 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 2B60FFCC; Thu, 26 Mar 2026 14:11:17 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=ideasonboard.com; s=mail; t=1774530677; bh=NuaGyo7S8VZSSZ/guEUo9cbKkXUB0xNZ7DHe3gckBAc=; h=From:Date:Subject:References:In-Reply-To:To:Cc:From; b=fHoYXJvEb8gGDT4mtgpih4oe27DD98EcYvz2p1OTYd2+xf+Y9XwMK9GU/lqDDwk4t 079c0k8xreV5Upyt0NgT6DWWfmszcqVXw6Ore4MD+4fdcSW06ZY3qidIbWu3a8Xf9P Oi/G+OHHLGsDG0G4HuldnVx7FCIw6GKaiKroxG3g= From: Tomi Valkeinen Date: Thu, 26 Mar 2026 15:12:13 +0200 Subject: [PATCH 3/8] 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: <20260326-tc358762-fixes-v1-3-65f479227af5@ideasonboard.com> References: <20260326-tc358762-fixes-v1-0-65f479227af5@ideasonboard.com> In-Reply-To: <20260326-tc358762-fixes-v1-0-65f479227af5@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, Tomi Valkeinen X-Mailer: b4 0.15-dev-c25d1 X-Developer-Signature: v=1; a=openpgp-sha256; l=3005; i=tomi.valkeinen@ideasonboard.com; h=from:subject:message-id; bh=NuaGyo7S8VZSSZ/guEUo9cbKkXUB0xNZ7DHe3gckBAc=; b=owEBbQKS/ZANAwAIAfo9qoy8lh71AcsmYgBpxTC+7EXthr6nogJ/8h3UgTK/FdRvKlHrk46Ij wbUxm8/HsWJAjMEAAEIAB0WIQTEOAw+ll79gQef86f6PaqMvJYe9QUCacUwvgAKCRD6PaqMvJYe 9cXBD/4wpVZZRxCPL+kar3NTGg3ZTSrIQNty//qFhwviGELmIykhiSO9nYT1LLlvOL7AACB48kb +FQf+4WyFKxHl+f6n9iQh+9nPSUpMWLjIk/sFR/QldkYBRccM9qA+qwLjjzv2fNk85+hjf67nBC cD9XXPJ+xpheH405LA78gWj0BVrnyC7VEFuNTaU9aEteaL7/U1aYrLISxkUyvWmI2h9XxWDyBYL jy0fRnbvWm4MnHp8Q8A+CoexsBOIa3/tvM+4NYZl43DcwHJKc4EfAJmTEgTU4GZ1sko8uAQm5KW 3r/NZoMJRzcTwRMV5CuXOcB/gxmL/qa8ivbdNezb1Mxq8Z2NkH0tpqNGOOcEv+ElMFd2fjgwy9f eMKkrqNDWbzk0PMcszOAbI8SYV60PxbQuUuC8+s3wgCOPXV9IAl49cOs3Goyy9sYZGvdMfo/wDi fVBUmY4QPOcllYUUvqYyxmWcwrR2ZuAmao1gPP5qFWh1vEpjJ1BvioSJHWqM3eLDQ4GQ/D//J0p 7Mb60/eukQy2GPMi0flDRGreAlWk3VN5IXFNKrz/BBJPkc66XrSv90G/bCVXTqHu5lzetzT5+xU KlNa9D/ZKIg1YuW3lwjQLkWpxuvxArVxNKEGIfeJ8L4BPSdtQUBb04OsO/99eZxiOpOWOSKaCnt BmB9lV1yIC9Bkng== 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 9a0b1f0c18f0..cbedffb7a705 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 Thu Apr 2 20:22:14 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 2F8D22DAFA1 for ; Thu, 26 Mar 2026 13:12:51 +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=1774530772; cv=none; b=cRJsZI1VB0qlWxwsFBGZ0NVNptxkpdXfw2lHqCdbhOWlxQge2fiYtZzRBCID3v/2Q2Zi3heOmJGLs9V5yHoja/yQRulRojJ2E/VglCb05Z/rKsFJ0Pbj30mDgiji4sCCKUrtpLaHtSHIeUoCwNDhKIQXXj2spUy+41tu7QYA/Ak= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1774530772; c=relaxed/simple; bh=kXEBX6aktrNXxxPjgSs66smVTLORZLIDKgjSxczFR7U=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=mr8sxL1IKZISPJQozSdD9lK/k8U6mk3Bu6FCp3TFOSMEqhu1W+VAIIpFuFu3NUlHOAJtdkaNoBN3KD3isv/tEkO4wexSiP/zrOHqNiVch3LmYSaDLt7QBHYUMJz8cskf5V739UHgFV07aqK1IUji/A8n9AdKMFpVlXjtoRSbhwM= 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=FP/yjNnI; 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="FP/yjNnI" 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 104C311EB; Thu, 26 Mar 2026 14:11:18 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=ideasonboard.com; s=mail; t=1774530678; bh=kXEBX6aktrNXxxPjgSs66smVTLORZLIDKgjSxczFR7U=; h=From:Date:Subject:References:In-Reply-To:To:Cc:From; b=FP/yjNnIId7im5sRcaVRX8Dl9SSVRKdgh7HE44/vivKb0VaNpSasQVBTxlfUR76DE T7PXF48MzutPA76CDTMiwem3agXRspn5sSVsLliEu0x6HKqmsf9XI0qwjboqiT9y9n uZZiAXLrIaTMJCy3yXsDwljXanEqZYiKDkIwfmaQ= From: Tomi Valkeinen Date: Thu, 26 Mar 2026 15:12:14 +0200 Subject: [PATCH 4/8] 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: <20260326-tc358762-fixes-v1-4-65f479227af5@ideasonboard.com> References: <20260326-tc358762-fixes-v1-0-65f479227af5@ideasonboard.com> In-Reply-To: <20260326-tc358762-fixes-v1-0-65f479227af5@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, Tomi Valkeinen X-Mailer: b4 0.15-dev-c25d1 X-Developer-Signature: v=1; a=openpgp-sha256; l=1636; i=tomi.valkeinen@ideasonboard.com; h=from:subject:message-id; bh=kXEBX6aktrNXxxPjgSs66smVTLORZLIDKgjSxczFR7U=; b=owEBbQKS/ZANAwAIAfo9qoy8lh71AcsmYgBpxTC+J1M7nueUSN4j2rkrjp7d4olSoCPFzpwWW tBGuOfDN5mJAjMEAAEIAB0WIQTEOAw+ll79gQef86f6PaqMvJYe9QUCacUwvgAKCRD6PaqMvJYe 9ZaPD/4tG6GPM8QNhA8dzVZwTvfGn8qB5VTALEaSmyKjVw1lvYt+9p0Og4tlAMk2OeM8XNPe/e+ nIOWl+VxG/IlkTBFgGdaE+w3+S/YxO7HHpANPcnMBUd2KmqGVsS+Pr9GU5qpQT6InVFb8eP9OTh K2+0jqdbxVGP280KRI1tlUom+SMIfqt33yxe1qWWeHh0VIr39CZw8MH1KsPbFmJYwGbvI3+ELq5 32/bXy/vju+j3fgh1LXtOr7OPMous9OMFSqNZMa4FhDgrHFuGzDVh51gvZiAZ/YarxEJIzT+xv7 2A87irhcFnZB6OjcOtLKeP3lNDNya0o+eUygSFSezBIVHHW2iF/VMKNh08WFo/VGaJCX0AGhxkQ EjZZMfP6NVGzvFeGTEU3gJHcECLamkg+1gEHXo1u8eUXrZDQHwxeeRLPtp/g7c7IPiMIrbRvUlt 53brmlDV0tT3YtWJwg52KXmPf6mXzGgQ+9ZuLjPma4p9b+jXgV+z+g9Vdombk54BZBHc7VVbbGo bkNgZToNjAuMUtHC+alT7Oaxw6dygyGsi0uaQ55vzz5OOfk3jX0TPdG9ULf7MXTor99x5IMjVIf te8kZwTwl6rEhYTixEPrTCVLEejxRsMGB4egyIT62DM9lhy2jj2ZJmTEtJIjxH/1Ze7wFNcjAjk w8bBtFylUEslm0A== 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 cbedffb7a705..053579591dba 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 Thu Apr 2 20:22:14 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 4A5DE30CD82 for ; Thu, 26 Mar 2026 13:12:51 +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=1774530772; cv=none; b=lg0m4wGoH5pugubyD+QY1sfvQwsYaAdcnEQSBSq0fM/Z+Q7qXdFlBmmvH4NWVScI0zrJcRCHfoQptdN/+XCixYiZjQXb5FoHd1MNfe5ZdvHRHfllYpqijD9LhhSMBHzLtTLM4BFzCI5/X1YnhCR9xgYlFagPu7hIDjtv/lpkBXk= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1774530772; c=relaxed/simple; bh=kFnbSJwDmqy+xWISydA91OjEdmhsMcyE+vmToOTjfuc=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=KfXi6OQqH7hIdj6Hf//b40tbBaTQlVqv3y6UsW18Ma/Ur1gvl6m6s+5h3KbhSu2np7f708TUgs/zu1lDj5YLzc4JRalB8kQ0Wa73RSjl5+4Dgii66PSKukrxAcdMjo3d6OYiXpvzXDdsdQGyouwNrNPyTA2tV7W+i/5/nUU/RbI= 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=BWzjjEov; 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="BWzjjEov" 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 ECAC013BE; Thu, 26 Mar 2026 14:11:18 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=ideasonboard.com; s=mail; t=1774530679; bh=kFnbSJwDmqy+xWISydA91OjEdmhsMcyE+vmToOTjfuc=; h=From:Date:Subject:References:In-Reply-To:To:Cc:From; b=BWzjjEovoZE9PUe3vRt0Ew9bOkiBSNuqUp2IJ1LfhVI6qpOdq+c8S0XlwJo8YJeji 39glNxDrLAmaFX8bBGTBtttnNQEvMFgrf5LP6eF4G80stMRjtwadB1Rkwd30SzhW1u ahwqOlQa2/PpI6El/hUg99axzCHJhF6OpBTk2imY= From: Tomi Valkeinen Date: Thu, 26 Mar 2026 15:12:15 +0200 Subject: [PATCH 5/8] 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: <20260326-tc358762-fixes-v1-5-65f479227af5@ideasonboard.com> References: <20260326-tc358762-fixes-v1-0-65f479227af5@ideasonboard.com> In-Reply-To: <20260326-tc358762-fixes-v1-0-65f479227af5@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, Tomi Valkeinen X-Mailer: b4 0.15-dev-c25d1 X-Developer-Signature: v=1; a=openpgp-sha256; l=808; i=tomi.valkeinen@ideasonboard.com; h=from:subject:message-id; bh=kFnbSJwDmqy+xWISydA91OjEdmhsMcyE+vmToOTjfuc=; b=kA0DAAgB+j2qjLyWHvUByyZiAGnFML/Ie9ZIFvGvvJ4SL0vk+3L15CrZWsm30/zENx6IN8zni YkCMwQAAQgAHRYhBMQ4DD6WXv2BB5/zp/o9qoy8lh71BQJpxTC/AAoJEPo9qoy8lh71F2oP/RgL Qvf3Jw09BtFPYySgkku4YQXyTkxG1vdg7qMUlTXXxzM1Nuf9oH+xafVLGl4oSkOWbbhRpMHUd3N vgDUoO/6palF/L8+GBv4/CIL3b+BzdUj1uKDZ159OuQTqlZUJFmPL+LgEdmoPuImTMPIO+/DYEa ccwMDEVviYtCWxvDoCkZ+GCPR3YqIjP9PrxHAlQotXFkTl1RE649iM7WG6EkYohSURMGPJbHpyJ UzDaPBVAXqfpOwddL+7pi0p6tRb1YAIkG9EZx5eU8Ic1YPSf3tpSiGDN19dEWZzfmvRO9lj/fJ/ 6Gk/CK6KQnOCZuk/21Fa4M8//u/EQ56ZGz7Ht6euFp9P2t4076RqYCI6nluAP+NzticB8c9T/2p W88B7cFwLfkavQDLqK/9TFArXvf7s4OKj0Z5mPt5rZCTVtPRkeTAKhErUDAs4mrBaOHx+qkNItA 0zuPGJxDC375N4lBzqAGj3l37O3+l0pU71pHdKFFUJU6KMpaEGBMrssWbAiGg6hM8yMr8ql3Nv6 jBhRZaW/XEqKI1SwUqRIkhJXp0SY5HJKQonFcjYh4ZItuzfhEHnnEjl0r7hRFccALOMq26ortr+ zvXvBJXEQHWvCqdeNnHz0dZe8DR7PIhMDPfbawdN8G3c/DqJsPk7DLIuKV3sTwb4yplGVnxuRxg RghEg X-Developer-Key: i=tomi.valkeinen@ideasonboard.com; a=openpgp; fpr=C4380C3E965EFD81079FF3A7FA3DAA8CBC961EF5 Drop write to SPICMR. It's unclear why the write is there, and it's mostly just writing zeroes to already zero fields (reset defaults). 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 053579591dba..52e2f3a73721 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 Thu Apr 2 20:22:14 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 D00033624B0 for ; Thu, 26 Mar 2026 13:12:53 +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=1774530775; cv=none; b=kPTuZrNilQLU//wLuzAVbdNH/UVQS7O/WWcJ/XkK6TRyq50vscbhowo8ejw1+h+B8HImPfZye+fIUTW1wBULbPlfmQtU/0aQkE2IUH0CeEtZUfKm1xYB6MHucpNDBfiihqZ0sMKuCjd7FDbbaBjQ6ac1eK7B62PfSZQNtNMp+2E= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1774530775; c=relaxed/simple; bh=nEYzezcIAjmSLC9VcRjnoTGH7YY5s81VvSuJLMxj3K4=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=mHPP9HIp4RM5b5cvZSZmaCvOTHAXTjuXWuCjwrLjHOyNTj5tiYOurZI3oNwoBlTuslc5JXZgmafEUgxpEcg1TGs6Okk4gIVUOxiCeLy5jF0uvilkAEfJNt+k86/5gTBqWuFeS9hTsvxC+bHPgjzdpCmm5/A1oTMXEL16H/gkC8I= 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=qFpIHdO2; 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="qFpIHdO2" 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 D339B1587; Thu, 26 Mar 2026 14:11:19 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=ideasonboard.com; s=mail; t=1774530680; bh=nEYzezcIAjmSLC9VcRjnoTGH7YY5s81VvSuJLMxj3K4=; h=From:Date:Subject:References:In-Reply-To:To:Cc:From; b=qFpIHdO2FN8LO2EpDiBtSydK9u7q/gri2kfJOpClQCrd78TVAY1N8P6hKpJWmS63B KZFkz5sL0eOvF+Iwmqqkv8ddo6dDaFRZDguAphSZAZNY45zYb6VgVP5yOkP1fMdqmA 0yjRk2iJnN+zuo0t+NH3cr2PTYK5EPJ2OESIViMY= From: Tomi Valkeinen Date: Thu, 26 Mar 2026 15:12:16 +0200 Subject: [PATCH 6/8] 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: <20260326-tc358762-fixes-v1-6-65f479227af5@ideasonboard.com> References: <20260326-tc358762-fixes-v1-0-65f479227af5@ideasonboard.com> In-Reply-To: <20260326-tc358762-fixes-v1-0-65f479227af5@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, Tomi Valkeinen X-Mailer: b4 0.15-dev-c25d1 X-Developer-Signature: v=1; a=openpgp-sha256; l=1676; i=tomi.valkeinen@ideasonboard.com; h=from:subject:message-id; bh=nEYzezcIAjmSLC9VcRjnoTGH7YY5s81VvSuJLMxj3K4=; b=owEBbQKS/ZANAwAIAfo9qoy8lh71AcsmYgBpxTC/7eRjZhjkofu4vCvPe311boTXRVtawW2Dc UkmejPV0l+JAjMEAAEIAB0WIQTEOAw+ll79gQef86f6PaqMvJYe9QUCacUwvwAKCRD6PaqMvJYe 9amCEACE4G4ZZC/IvhSV8l9AenmbB4VVX5Vd+detQdiAKdLt99tvXuzpn7AosMesw6g8EuOnZQC mJltN9U1U6MQTlXzn8yBOjHrB5RQVvS2nCLJeIKrkChuEeVtWbhKDRSTH3M0FGxRAv6NlERcBPV M+mSb14yU/Bhx7FpwwBe8lF0vh4sQIvka7qVQwaNBdufXjqoC7RxQb2tJCLQSya4VF0/LnxLwrL AZiULT9F4gqleKZ0dzmobDmt9jRrzlZ+ij5co6Kp/gyjM8a0kRn2eC3cQ/+OUm+NFjNV0u/WFn9 B3lu+DKPNL88fdtxfw3DjKksFk6d4xcNFQ/bXmaNhdIufAX8DgkRw/kBhZkooVzidWkJtPMnRf4 Efi5TAUUKht7s9BWRVOCuSQQutt8OTn6Tt6egfYcPpmzZ3Apdnwvv4ojG3I/oFiFBIudB/Psd3A DgtFydjYD26r41fIGRLyafFy3zTCmdOa0+MQ+33pcMW7iszSwtM1OspApE7DOJJuGmaVJ0MGRBD OurxbUQnv7+hd2LerFo9vG26IzypSbl2zG6CMWCTPktfj47dtRHXveThzVN49Kn2/6CPd4d7Gqe 4n8/2aDAwWlBI64fbhc9tv2bQCBS9FaUjiwIAoqEmh6ZMHW29gTdJAS/MNRZDwakYpZBF+Y7Om0 ISL2BI6VAIU8L3w== 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 52e2f3a73721..cc1c5ff42cbd 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 Thu Apr 2 20:22:14 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 E2D823793A2 for ; Thu, 26 Mar 2026 13:12:53 +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=1774530775; cv=none; b=QzybtNEbeWhtdfVRxScAZLx8U52yUW/fPTUlpTgmiquNEsoYyb4VnngcIgYhO/f4CDaKzlWGaGeqbwNHEvCvJU/qOmUqA9UHanhZSPt0O6H7d62LjSWWWOKLZDVd9xUeb+mppNI/oA+RAkZDRW4ae6ML30U0KPGlzRkolPEhe1w= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1774530775; c=relaxed/simple; bh=eaeDuhTwVtvOUYbWOU6Pi8XJP6K+PPcBl3PTwjkGBnM=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=Uyju9ZdOwAQ4h5IPnHnl2P4zAwxuRJjkOqwrjB+BzwuGzzRDxyHuoZhQ8DnedtW8Yet0IA3yJO8dGB6zp4n4ik6NOONkLIBP3b+47KqyvefBIgFj9dlXTil1aLJUf2J0jLm0ojryMaFuGlXFjkqQQuDRO8zoo07hFMWQb3buAWE= 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=bZeC6dvS; 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="bZeC6dvS" 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 B84D2185B; Thu, 26 Mar 2026 14:11:20 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=ideasonboard.com; s=mail; t=1774530681; bh=eaeDuhTwVtvOUYbWOU6Pi8XJP6K+PPcBl3PTwjkGBnM=; h=From:Date:Subject:References:In-Reply-To:To:Cc:From; b=bZeC6dvSpBf7WYfA0U2JNVKccRUMwd7qlToQgCu6IM7FIELNCdPiKSW1bB+xqTBUh ErQCXIV9+dh2CjgLzSnawF+ZZfUptDCjwlrUQDLLV5uRgEAIwYHvdSUlknx4vrUr3E ORAM3MdPOOA1A3QzXa91pBNTUInjmgqJ5IG9Vmno= From: Tomi Valkeinen Date: Thu, 26 Mar 2026 15:12:17 +0200 Subject: [PATCH 7/8] 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: <20260326-tc358762-fixes-v1-7-65f479227af5@ideasonboard.com> References: <20260326-tc358762-fixes-v1-0-65f479227af5@ideasonboard.com> In-Reply-To: <20260326-tc358762-fixes-v1-0-65f479227af5@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, Tomi Valkeinen X-Mailer: b4 0.15-dev-c25d1 X-Developer-Signature: v=1; a=openpgp-sha256; l=1121; i=tomi.valkeinen@ideasonboard.com; h=from:subject:message-id; bh=eaeDuhTwVtvOUYbWOU6Pi8XJP6K+PPcBl3PTwjkGBnM=; b=owEBbQKS/ZANAwAIAfo9qoy8lh71AcsmYgBpxTC/a5+FpltJDJIFQ/mz47j7GGXzPvheOeBjr BzZTwkNURWJAjMEAAEIAB0WIQTEOAw+ll79gQef86f6PaqMvJYe9QUCacUwvwAKCRD6PaqMvJYe 9Xg2D/9INuMguMaxsYOmY8c4Q1FHDT8g/2FxDHQjQm5SjhfT0e89sbsOlr3TvyBLwB5wVo3jtGZ oQIGDqxTKCM1NRTscNKHgLlV3OW+EktwRgQAjZ/l7DTWThh8iJvxIP0HqkhMxhFPc7X/cmXZKEU HS+94+19Fnw9KQVX1aCqosAxd5+KLlrXQaKtqO3lvIK82hH0nwZ3hM/NbQBzeq4Mxv/CTKZa8Wa dxheopBr1/avKAlCfDf9WLMdsy9/rV5ItgcsyA4eHEGE2EEh1NMfr0hGWOrX9TvDYG4ADJMR4e1 GmsTRmySTb7aGUCBpMtnmD2915MfxjxFna5z176PpTzsGBijBhi2lR0JmMZW3FveVOaJu1ZPIfe EfjL5O5StwoW4s19U00RYKb6jrsZhsQxdWnqIHR0J2NoTHJuOIOZvKdfeKcoTEn8Qt2EJgHcqqv v5VFl+GLGCgGgtP+ngcWZyVWHUs9vNbO3jhho9uCgWGy+3UQkUr9Fx0jX/oUnQMYzgGlnZ9eNlG 5Y+DtTyKV5j9ettI7eB7///L7Zi85fHpU8T+gXnmg/48/MEbrvYsLqzjBZIiEq01ELkLsYt3pHt z/23VxOsULSPG0Lbc/jMLcCm68vuonx/JzqdFmK6w8Yf4HjFfIfVj7tiB5GUnTtzJepfxzned4f 3+X/5Hzll/P/MIg== 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 cc1c5ff42cbd..9fb921b3fa0d 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 Thu Apr 2 20:22:14 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 883BB3C1974 for ; Thu, 26 Mar 2026 13:12:56 +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=1774530777; cv=none; b=kfrcqHMef+l87aMnWK1W3CVIZkTCIqCRMjlU9hi8UedBFffJvDTetjXviUWIgsxY9RRy0sfyjwzwRJLXWcO/FxUtdb4Z4YC+pHRk9lUaiyKfqtTzp4AF2cFq2KSNqOZ4mBNKgyraiCOm+YaX5tWJEtPtG2kAidT/+mLOogKGrS8= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1774530777; c=relaxed/simple; bh=CEhiQIL8VfHlSJLkWU0JS+13Zp7vGR3INiXFC9yCxII=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=pqxH5d5VEXc4X9TKw9RxsLO080CpRsO9nDx3YktfHZIhAMf71fqlL1dSnJOjQNEp20gSSHlrT7Owp/j7D51/MtYLUNvIx4/eFA281cNrmyxKKjSfStSr1binh3rwn9176M9xzey++Ngs3bXf8cBxKR1MkB2KTXuau+hLmY/MJa8= 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=Y3r4+MDD; 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="Y3r4+MDD" 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 9BD7E1A4A; Thu, 26 Mar 2026 14:11:21 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=ideasonboard.com; s=mail; t=1774530682; bh=CEhiQIL8VfHlSJLkWU0JS+13Zp7vGR3INiXFC9yCxII=; h=From:Date:Subject:References:In-Reply-To:To:Cc:From; b=Y3r4+MDDYcU7nDEQ3AAVXZwgLQdnXzxfEjTmMIMm3yoZl8L9m4V6yb4Ux5iMNdSlx MTLR6cBUY6ziEflYRwWxFTVj9qu26M6hWnpKr179hTx13k7rhab2U34ii+dnuTWQHz 6MI4Udf9I/iGONH6cCPjjdNUT6h4NXyBqMB2bVQg= From: Tomi Valkeinen Date: Thu, 26 Mar 2026 15:12:18 +0200 Subject: [PATCH 8/8] drm/bridge: tc358762: Support VTG (but don't enable it) 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: <20260326-tc358762-fixes-v1-8-65f479227af5@ideasonboard.com> References: <20260326-tc358762-fixes-v1-0-65f479227af5@ideasonboard.com> In-Reply-To: <20260326-tc358762-fixes-v1-0-65f479227af5@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, Tomi Valkeinen X-Mailer: b4 0.15-dev-c25d1 X-Developer-Signature: v=1; a=openpgp-sha256; l=2771; i=tomi.valkeinen@ideasonboard.com; h=from:subject:message-id; bh=CEhiQIL8VfHlSJLkWU0JS+13Zp7vGR3INiXFC9yCxII=; b=owEBbQKS/ZANAwAIAfo9qoy8lh71AcsmYgBpxTDAp/5V3TOo8dVEuTSGITzETWuHx74kruOya DeSicWHTqmJAjMEAAEIAB0WIQTEOAw+ll79gQef86f6PaqMvJYe9QUCacUwwAAKCRD6PaqMvJYe 9epeD/99OGuOfWgoUK9+KOv4nY9oiH8Q4+KVIdVDXd2g2GJil0U+Ed58xQFefGS5ypXZszQHAb0 4rTOHMT9WTbQ+Gq0F6yXdgUWanfCpDtGwagDQKl7oLaP5tCWyntMp9CFpkMM/ozlx/0I5yuYIi5 sq/Vhxh1WHUeD64OyrFU/0D/w9aLLnMAAu0zbkGRDPdWHSJfGxLXsciWf5mU8cWId8QJXAj0jL2 PZczo8hL//O9z9ODM5T75QYyz8i/UfFg/6W9hTEXAhQMotkMVjKcxXxRJHJTACN3E9ZUOLpOg+4 PBeg9bjzILCbRv8V/f31AeLgouL9hAqH6FNApaSSsPBV1s8QjbtXoy5FazC02Z21AK37UuvUaPB zXJD06ZG7/FUqVtczVgDasmfAEOr8ijOUUBCWcw8Br/ykJkuyOwEIYQBdwAeyjDrU1T5utxeSsu Ez6RxKUcTruGgMqzSxvKCK3SKsuHXovLsRdN3096XAT0b3I3b1BzbkKh7qs1/CEaVoTdEvQg7dr F6h4H585pCItkoDsPNfZbUUohpzqeFvMnAlURXfzSH3NkeL8ikSC0ULYCsCWs6PAc7qBGSh0QXK uf1K8+2S86d5pMSTRIhWP3g2wWVmgtaKq0/RTtrNVuW2twuIVdatSWjGHu76fybrX5+F8cfKXin jxb/HgBC1tLb4Ag== 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. Add the scaffolding for VTG mode, by adding "use_vtg" field, and configuring the timings if that is set. For now "use_vtg" is always off, so this is mostly for testing/debugging purposes, or basis for future work. Signed-off-by: Tomi Valkeinen --- drivers/gpu/drm/bridge/tc358762.c | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) diff --git a/drivers/gpu/drm/bridge/tc358762.c b/drivers/gpu/drm/bridge/tc3= 58762.c index 9fb921b3fa0d..ab1dd36468f4 100644 --- a/drivers/gpu/drm/bridge/tc358762.c +++ b/drivers/gpu/drm/bridge/tc358762.c @@ -18,6 +18,7 @@ #include =20 #include