]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
arm64: dts: st: enable display support on stm32mp257f-dk board
authorRaphael Gallais-Pou <raphael.gallais-pou@foss.st.com>
Wed, 25 Mar 2026 14:41:49 +0000 (15:41 +0100)
committerAlexandre Torgue <alexandre.torgue@foss.st.com>
Wed, 25 Mar 2026 16:37:49 +0000 (17:37 +0100)
Enable the following IPs on stm32mp257f-dk in order to get display:
   * LTDC
   * LVDS
   * WSVGA LVDS panel (1024x600)
   * Panel LVDS backlight as GPIO backlight
   * ILI2511 i2c touchscreen

Signed-off-by: Raphael Gallais-Pou <raphael.gallais-pou@foss.st.com>
Link: https://lore.kernel.org/r/20260210-display-v2-9-0592bd514958@foss.st.com
Signed-off-by: Alexandre Torgue <alexandre.torgue@foss.st.com>
arch/arm64/boot/dts/st/stm32mp257f-dk.dts

index 3298cc57857946369e73e9fab05b1004dc7c9b8a..8daf3dfd513393a34a4486ff3e6ba4df3a9b770f 100644 (file)
                };
        };
 
+       panel_lvds: display {
+               compatible = "edt,etml0700z9ndha", "panel-lvds";
+               enable-gpios = <&gpioi 4 GPIO_ACTIVE_HIGH>;
+               backlight = <&panel_lvds_backlight>;
+               power-supply = <&scmi_v3v3>;
+               width-mm = <156>;
+               height-mm = <92>;
+               data-mapping = "vesa-24";
+               status = "okay";
+
+               panel-timing {
+                       clock-frequency = <54000000>;
+                       hactive = <1024>;
+                       vactive = <600>;
+                       hfront-porch = <150>;
+                       hback-porch = <150>;
+                       hsync-len = <21>;
+                       vfront-porch = <24>;
+                       vback-porch = <24>;
+                       vsync-len = <21>;
+               };
+
+               port {
+                       lvds_panel_in: endpoint {
+                               remote-endpoint = <&lvds_out0>;
+                       };
+               };
+       };
+
+       panel_lvds_backlight: backlight {
+               compatible = "gpio-backlight";
+               gpios = <&gpioi 4 GPIO_ACTIVE_HIGH>;
+               default-on;
+               status = "okay";
+       };
+
        reserved-memory {
                #address-cells = <2>;
                #size-cells = <2>;
        /* spare dmas for other usage */
        /delete-property/dmas;
        /delete-property/dma-names;
+
+       ili2511: ili2511@41 {
+               compatible = "ilitek,ili251x";
+               reg = <0x41>;
+               interrupt-parent = <&gpioi>;
+               interrupts = <6 IRQ_TYPE_EDGE_FALLING>;
+               reset-gpios = <&gpioi 0 GPIO_ACTIVE_LOW>;
+               status = "okay";
+       };
 };
 
 &i2c8 {
        /delete-property/dma-names;
 };
 
+&ltdc {
+       status = "okay";
+       port {
+               ltdc_ep0_out: endpoint {
+                       remote-endpoint = <&lvds_in>;
+               };
+       };
+};
+
+&lvds {
+       status = "okay";
+       ports {
+               #address-cells = <1>;
+               #size-cells = <0>;
+
+               port@0 {
+                       reg = <0>;
+                       lvds_in: endpoint {
+                               remote-endpoint = <&ltdc_ep0_out>;
+                       };
+               };
+
+               port@1 {
+                       reg = <1>;
+                       lvds_out0: endpoint {
+                               remote-endpoint = <&lvds_panel_in>;
+                       };
+               };
+       };
+};
+
 &scmi_regu {
        scmi_vddio1: regulator@0 {
                regulator-min-microvolt = <1800000>;