Skip to main content
Associate II
November 26, 2025
Solved

Clarification on LVDS display interface

  • November 26, 2025
  • 2 replies
  • 127 views

Hi im working on stm32mp257f-ev1 and the "edt,etml0700z9ndha" display,

Im unable to decode the logic why the back-light enable gpio only gets high when there is a display connected in the lvds port, what logic is used to detect the lvds display connection.

Since i only see the display logs during boot only when there is a display connected, i need clarification regarding this from which driver this logic is implemented, and in the compatible string "edt,etml0700z9ndha" this is used but i found no driver with this compatible list.

If in case i want to use the RVT101HVLNWCA0 what driver should i use 
and can i get a sample device tree for this display

	panel_lvds: panel-lvds {
		compatible = "edt,etml0700z9ndha", "panel-lvds";
		enable-gpios = <&gpiog 15 GPIO_ACTIVE_HIGH>;
		backlight = <&panel_lvds_backlight>;
		power-supply = <&scmi_v3v3>;
		default-on;
		status = "okay";

		width-mm = <156>;
		height-mm = <92>;
		data-mapping = "vesa-24";

		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: panel-lvds-backlight {
		compatible = "gpio-backlight";
		gpios = <&gpioi 5 GPIO_ACTIVE_HIGH>;
		default-on;
		default-brightness-level = <1>;
		status = "okay";
	};

 

Best answer by Olivier GALLIEN

Hi @sanjaysb ,

Sorry to come late in this thread.

This is answer I could get from expert : 

In U-Boot, we have a mechanism for detecting the presence of the panel (by querying the touchscreen ID via I2C). When a panel is detected in U-Boot, U-Boot disables the other display nodes (notably the HDMI link) and starts the kernel with the device tree it has modified. In U-Boot, the code related to autodetection is here:

https://github.com/STMicroelectronics/u-boot/blob/v2023.10-stm32mp/board/st/stm32mp2/stm32mp2.c 

Hope it help 

Olivier

 

2 replies

Olivier GALLIEN
Olivier GALLIENBest answer
Technical Moderator
January 16, 2026

Hi @sanjaysb ,

Sorry to come late in this thread.

This is answer I could get from expert : 

In U-Boot, we have a mechanism for detecting the presence of the panel (by querying the touchscreen ID via I2C). When a panel is detected in U-Boot, U-Boot disables the other display nodes (notably the HDMI link) and starts the kernel with the device tree it has modified. In U-Boot, the code related to autodetection is here:

https://github.com/STMicroelectronics/u-boot/blob/v2023.10-stm32mp/board/st/stm32mp2/stm32mp2.c 

Hope it help 

Olivier

 

Olivier GALLIEN In order to give better visibility on the answered topics, please click on 'Accept as Solution' on the reply which solved your issue or answered your question.
sanjaysbAuthor
Associate II
January 16, 2026

Hi @Olivier GALLIEN 

 

Thanks for the reply, i hope the only purpose of that hardcoded detection is to use lvds as default display interface when multiple display connectors are being used.