[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <20241017031146.157996-1-marex@denx.de>
Date: Thu, 17 Oct 2024 05:11:20 +0200
From: Marek Vasut <marex@...x.de>
To: linux-arm-kernel@...ts.infradead.org
Cc: kernel@...electronics.com,
Marek Vasut <marex@...x.de>,
Isaac Scott <isaac.scott@...asonboard.com>,
Conor Dooley <conor+dt@...nel.org>,
Fabio Estevam <festevam@...il.com>,
Krzysztof Kozlowski <krzk+dt@...nel.org>,
Liu Ying <victor.liu@....com>,
Pengutronix Kernel Team <kernel@...gutronix.de>,
Rob Herring <robh@...nel.org>,
Sascha Hauer <s.hauer@...gutronix.de>,
Shawn Guo <shawnguo@...nel.org>,
Yannic Moog <y.moog@...tec.de>,
devicetree@...r.kernel.org,
imx@...ts.linux.dev,
linux-kernel@...r.kernel.org
Subject: [PATCH] arm64: dts: imx8mp-phyboard-pollux: Set Video PLL1 frequency to 506.8 MHz
The LVDS panel on this device uses 72.4 MHz pixel clock, set IMX8MP_VIDEO_PLL1
to 72.4 * 7 = 506.8 MHz so the LDB serializer and LCDIFv3 scanout engine can
reach accurate pixel clock of exactly 72.4 MHz.
Without this patch, the Video PLL1 frequency is the default set in imx8mp.dtsi
which is 1039.5 MHz, which divides down to inaccurate pixel clock of 74.25 MHz
which works for this particular panel by sheer chance.
Stop taking that chance and set correct accurate pixel clock frequency instead.
Fixes: 326d86e197fc ("arm64: dts: imx8mp-phyboard-pollux-rdk: add etml panel support")
Reported-by: Isaac Scott <isaac.scott@...asonboard.com>
Signed-off-by: Marek Vasut <marex@...x.de>
---
Cc: Conor Dooley <conor+dt@...nel.org>
Cc: Fabio Estevam <festevam@...il.com>
Cc: Isaac Scott <isaac.scott@...asonboard.com>
Cc: Krzysztof Kozlowski <krzk+dt@...nel.org>
Cc: Liu Ying <victor.liu@....com>
Cc: Pengutronix Kernel Team <kernel@...gutronix.de>
Cc: Rob Herring <robh@...nel.org>
Cc: Sascha Hauer <s.hauer@...gutronix.de>
Cc: Shawn Guo <shawnguo@...nel.org>
Cc: Yannic Moog <y.moog@...tec.de>
Cc: devicetree@...r.kernel.org
Cc: imx@...ts.linux.dev
Cc: linux-arm-kernel@...ts.infradead.org
Cc: linux-kernel@...r.kernel.org
---
Note: I do not have the board, but Isaac reported they tested it successfully.
TB would be nice.
---
.../dts/freescale/imx8mp-phyboard-pollux-rdk.dts | 12 ++++++++++++
1 file changed, 12 insertions(+)
diff --git a/arch/arm64/boot/dts/freescale/imx8mp-phyboard-pollux-rdk.dts b/arch/arm64/boot/dts/freescale/imx8mp-phyboard-pollux-rdk.dts
index 50debe821c421..9c102acb8052c 100644
--- a/arch/arm64/boot/dts/freescale/imx8mp-phyboard-pollux-rdk.dts
+++ b/arch/arm64/boot/dts/freescale/imx8mp-phyboard-pollux-rdk.dts
@@ -218,6 +218,18 @@ ldb_lvds_ch1: endpoint {
};
};
+&media_blk_ctrl {
+ /*
+ * The LVDS panel on this device uses 72.4 MHz pixel clock,
+ * set IMX8MP_VIDEO_PLL1 to 72.4 * 7 = 506.8 MHz so the LDB
+ * serializer and LCDIFv3 scanout engine can reach accurate
+ * pixel clock of exactly 72.4 MHz.
+ */
+ assigned-clock-rates = <500000000>, <200000000>,
+ <0>, <0>, <500000000>,
+ <506800000>;
+};
+
&snvs_pwrkey {
status = "okay";
};
--
2.45.2
Powered by blists - more mailing lists