Splashscreen off between u-boot and kernel STM32MP1
Hi,
I am using an STM32MP157_SOM interfaced with an LCD-OLinuXino-7TS screen. I have activated the splash screen for U-Boot and psplash in the kernel. The U-Boot splash screen works correctly. However, after the 'Starting kernel...' message, the screen goes black until the psplash is launched (17 seconds with the splash screen). I have included parts of the DTS for U-Boot and the kernel. Is there a way to keep the U-Boot screen displayed until the psplash launches?
LCD power enable and backlight stay enabled.
u-boot dts :
backlight: backlight {
compatible = "gpio-backlight";
gpios = <&gpiod 13 GPIO_ACTIVE_LOW>;
default-on;
status = "okay";
power-supply = <&vdd>;
};
panel-rgb@0 {
compatible = "simple-panel";
backlight = <&backlight>;
reset-gpios = <&gpioa 14 GPIO_ACTIVE_HIGH>;
enable-gpios = <&gpiof 13 GPIO_ACTIVE_HIGH>;
status = "okay";
port {
lcd_panel_in: endpoint {
remote-endpoint = <&lcd_display_out>;
};
};
display-timings {
timing@0 {
clock-frequency = <33300000>;//OK
hsync-len = <20>;
hback-porch = <26>;
hactive = <800>;
hfront-porch = <210>;
hsync-active = <0>;
vsync-active = <0>;
vsync-len = <10>;
vback-porch = <13>;
vactive = <480>;
vfront-porch = <22>;
de-active = <1>;
pixelclk-active = <0>;
};
};
pinctrl-names = "default", "sleep";
pinctrl-0 = <<dc_pins_b>;
pinctrl-1 = <<dc_sleep_pins_b>;
status = "okay";
port {
lcd_display_out: endpoint {
remote-endpoint = <&lcd_panel_in>;
};
};
};
kernel dts :
display_bl: display-bl {
compatible = "pwm-backlight";
status = "okay";
pwms = <&pwm4 1 500000 PWM_POLARITY_INVERTED>;
brightness-levels = <0 10 20 30 40 50 60 70 80 90 100>;
default-brightness-level = <50>;
power-supply = <&vdd>;
};
panel {
compatible = "olimex,lcd-olinuxino-7";
status = "okay";
backlight = <&display_bl>;
reset-gpios = <&gpioa 14 GPIO_ACTIVE_HIGH>;
enable-gpios = <&gpiof 13 GPIO_ACTIVE_HIGH>;
port {
lcd_panel_in: endpoint {
remote-endpoint = <&lcd_display_out>;
};
};
};
pinctrl-names = "default", "sleep";
pinctrl-0 = <<dc_pins_b>;
pinctrl-1 = <<dc_sleep_pins_b>;
status = "okay";
port {
lcd_display_out: endpoint {
remote-endpoint = <&lcd_panel_in>;
};
};
};
