Re: [Linux-stm32] [PATCH 09/12] arm64: dts: st: add lvds support on stm32mp255
From: Raphael Gallais-Pou <raphael.gallais-pou@foss.st.com>
Date: 2025-07-25 14:55:11
Also in:
dri-devel, linux-devicetree, lkml
On 7/25/25 13:13, Clement LE GOFFIC wrote:
On 7/25/25 13:08, Clement LE GOFFIC wrote:quoted
Hi Raphael, On 7/25/25 12:04, Raphael Gallais-Pou wrote:quoted
The LVDS is used on STM32MP2 as a display interface. Add the LVDS node. Signed-off-by: Raphael Gallais-Pou <raphael.gallais-pou@foss.st.com> --- arch/arm64/boot/dts/st/stm32mp255.dtsi | 12 ++++++++++++ 1 file changed, 12 insertions(+)diff --git a/arch/arm64/boot/dts/st/stm32mp255.dtsi b/arch/arm64/boot/dts/st/stm32mp255.dtsi index f689b47c5010033120146cf1954d6624c0270045..a4d965f785fa42c4597494010855aec7e1b9fdd1 100644--- a/arch/arm64/boot/dts/st/stm32mp255.dtsi +++ b/arch/arm64/boot/dts/st/stm32mp255.dtsi@@ -6,6 +6,18 @@#include "stm32mp253.dtsi" &rifsc { + lvds: lvds@48060000 { + compatible = "st,stm32mp25-lvds";For the compatible you now need one comaptible per SoC. It means your compatible should look like : "st,stm32mp251-lvds". This way, if on the 253 or 255 there is an issue you are able to easily add match data in the driver with compatible "st,stm32mp253-lvds" or "st,stm32mp255-lvds". A prior discussion on this subject has been raised on my V1 of HDP involving Krzysztof and Alexandre : https://lore.kernel.org/all/418a80a9-8c08-4dd1- bf49-1bd7378321aa@kernel.org/Woops, this comment should target the add of the ltdc compatible as I see that lvds one already exists and can't be changed. Though the main idea is here.
Indeed, the compatible is wrong. After carefully reading the thread you point to, I suggest the following: * Rename the new LTDC compatible to "st,stm32mp251-ltdc" * Add another compatible for the LVDS. So it would have "st,stm32mp255-lvds", and falls back to "st,stm32mp25-lvds". Like so the LVDS driver would not have to be modified. Alex, Krzysztof, does that seem good to you ? Best regards, Raphaël
quoted
quoted
+ #clock-cells = <0>; + reg = <0x48060000 0x2000>; + clocks = <&rcc CK_BUS_LVDS>, <&rcc CK_KER_LVDSPHY>; + clock-names = "pclk", "ref"; + resets = <&rcc LVDS_R>; + access-controllers = <&rifsc 84>; + power-domains = <&CLUSTER_PD>; + status = "disabled"; + }; + vdec: vdec@480d0000 { compatible = "st,stm32mp25-vdec"; reg = <0x480d0000 0x3c8>;Best regards, Clément