@@ -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";
+ };
+};
@@ -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 */ }
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@foss.st.com> --- 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(-)