This patch adds LVDS support on stm32mp255. The LVDS is used on STM32MP2 as a display interface. LVDS PLL clock is binded to the LTDC input clock. Signed-off-by: Raphael Gallais-Pou <raphael.gallais-pou@xxxxxxxxxxx> --- Changes in v3: - Change the compatible to show SoC specificity Changes in v2: - Move patch to stm32mp255.dtsi after internal discussions --- arch/arm64/boot/dts/st/stm32mp255.dtsi | 17 +++++++++++++++++ drivers/gpu/drm/stm/lvds.c | 2 +- 2 files changed, 18 insertions(+), 1 deletion(-) diff --git a/arch/arm64/boot/dts/st/stm32mp255.dtsi b/arch/arm64/boot/dts/st/stm32mp255.dtsi index e6fa596211f5..68f60da32126 100644 --- a/arch/arm64/boot/dts/st/stm32mp255.dtsi +++ b/arch/arm64/boot/dts/st/stm32mp255.dtsi @@ -7,3 +7,20 @@ / { }; + +<dc { + clocks = <&rcc CK_BUS_LTDC>, <&rcc CK_KER_LTDC>, <&lvds 0>; + clock-names = "bus", "lcd", "lvds"; +}; + +&rifsc { + lvds: lvds@48060000 { + #clock-cells = <0>; + compatible = "st,stm32mp25-lvds"; + reg = <0x48060000 0x2000>; + clocks = <&rcc CK_BUS_LVDS>, <&rcc CK_KER_LVDSPHY>; + clock-names = "pclk", "ref"; + resets = <&rcc LVDS_R>; + status = "disabled"; + }; +}; diff --git a/drivers/gpu/drm/stm/lvds.c b/drivers/gpu/drm/stm/lvds.c index beb8b7e437a0..5808db1a5cdf 100644 --- a/drivers/gpu/drm/stm/lvds.c +++ b/drivers/gpu/drm/stm/lvds.c @@ -1198,7 +1198,7 @@ static int lvds_remove(struct platform_device *pdev) static const struct of_device_id lvds_dt_ids[] = { { - .compatible = "st,stm32-lvds", + .compatible = "st,stm32mp25-lvds", .data = NULL }, { /* sentinel */ } -- 2.25.1