cancel
Showing results for 
Search instead for 
Did you mean: 

Custom SOM : STM32MP1 - DSI Not Working

NPal.2
Senior

Hi all,

I have been trying to get DSI interface on a custom board using STM32MP1.

The device tree exactly done as given here : LInk.

I do have DK2 kit , which i probe I am able to see the signals at DSI PHY even if display is not connected.

In case of my board , I am unable to get it up. See the device tree attached for more details.

The reference design is taken from DK2.

The probing of driver i believe fails silently since neither I do any failure logs related to DSI in kernel boot logs.

modetest -M : Also does not give positive result. I can see encoder field is empty and unpopulated.

Any leads are appreciated.

1 ACCEPTED SOLUTION

Accepted Solutions

Hello @NPal.2​ ,

Sorry for the delay.

You said "The probing of driver i believe fails silently since neither I do any failure logs related to DSI in kernel boot logs."

But in reality an error happens during the boot of your board.

[  OK  ] Created slice system-weston.slice.
[  OK  ] Listening on Load/Save RF …itch Status /dev/rfkill Watch.
         Starting Load/Save Screen …of backlight:5a000000.dsi.0...
[FAILED] Failed to start Load/Save …s of backlight:5a000000.dsi.0.
See 'systemctl status systemd-backlight…ht:5a000000.dsi.0.service' for details.

This error prevents the DSI to be probed correctly.

By looking at your DTB, I can see that you specify the backlight property:

				backlight = <0x57>;

and that you defined a node panel-backlight:

	panel-backlight {
		compatible = "gpio-backlight";
		gpios = <0x63 0x08 0x00>;
		default-on;
		status = "okay";
		phandle = <0x57>;
	};

If you look at the example provided by ST, the panel-backlight is only defined on EV1 board and not the DK2 board.

The explanation can be found in UM2534 page 24: https://www.st.com/resource/en/user_manual/dm00591354-discovery-kits-with-stm32mp157-mpus-stmicroelectronics.pdf

1. Not used. In the default configuration, backlight control is done by the LCD driver.

By default, on the DK2 board, this is the LCD driver that controls the backlight.

Since you defined a "panel-backlight" node in top of that, I think this is what creates the error during the boot.

Please can you fix this and try again?

If you still have an error, please provide me the log of the command:

systemctl status system-systemd\x2dbacklight.slice

Regards,

Kevin

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.

View solution in original post

5 REPLIES 5
NPal.2
Senior

Device tree file with changes

Hello @NPal.2​ ,

I can see that you are using a different panel, a panasonic and since your are on a custom board, your reset gpio is different.

    panel@0 {
    
		compatible = "panasonic,vvx10f034n00";
		reg = <0>;
		reset-gpios = <&gpiob 12 GPIO_ACTIVE_LOW>;

Nothing that seems to matter to your problem.

To help you, please can I have:

  • The complete boot log
  • The complete traces of modetest -M
  • and the complete DTB file or at least the file that describes the port ltdc -> ltdc_ep0

What is the behavior of your screen please?

Does the screen displays the splash screen of U-Boot, but stay black during Linux? Or is it something else?

Regards,

Kevin

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.

HI @Kevin HUBER​ : Thanks for the response.

I am here with attaching the zip file containing boot log , trace output for modetest -M and complete dtb.

The screen has no output and stays blank , there is not clock coming out of DSI pin.

During the u-boot I can see the power coming to screen , but post that it stays blank through out.

We did have an observation when we used the device tree for the stm32mp157c-ev1.dts with changes to support for 512mb RAM , the system boots and we can see the dsi working there.

Hello @NPal.2​ ,

Sorry for the delay.

You said "The probing of driver i believe fails silently since neither I do any failure logs related to DSI in kernel boot logs."

But in reality an error happens during the boot of your board.

[  OK  ] Created slice system-weston.slice.
[  OK  ] Listening on Load/Save RF …itch Status /dev/rfkill Watch.
         Starting Load/Save Screen …of backlight:5a000000.dsi.0...
[FAILED] Failed to start Load/Save …s of backlight:5a000000.dsi.0.
See 'systemctl status systemd-backlight…ht:5a000000.dsi.0.service' for details.

This error prevents the DSI to be probed correctly.

By looking at your DTB, I can see that you specify the backlight property:

				backlight = <0x57>;

and that you defined a node panel-backlight:

	panel-backlight {
		compatible = "gpio-backlight";
		gpios = <0x63 0x08 0x00>;
		default-on;
		status = "okay";
		phandle = <0x57>;
	};

If you look at the example provided by ST, the panel-backlight is only defined on EV1 board and not the DK2 board.

The explanation can be found in UM2534 page 24: https://www.st.com/resource/en/user_manual/dm00591354-discovery-kits-with-stm32mp157-mpus-stmicroelectronics.pdf

1. Not used. In the default configuration, backlight control is done by the LCD driver.

By default, on the DK2 board, this is the LCD driver that controls the backlight.

Since you defined a "panel-backlight" node in top of that, I think this is what creates the error during the boot.

Please can you fix this and try again?

If you still have an error, please provide me the log of the command:

systemctl status system-systemd\x2dbacklight.slice

Regards,

Kevin

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.

@Kevin HUBER​ : Thanks you for the inputs. This helps a lot.