U-boot splash screen dual LVDS Apalis imx8

Hi @floji !

Sorry for the delay.

Maybe this is something that your specific display needs?

If you could get a Toradex Capacitive 10.1" LVDS display, it would be good because you could do a “sanity check” with the patches as-is and then try to understand what are the differences between this one and your display.

IIRC, the following hunk (from the 2nd patch) is LVDS-specific. So I think you need to check how you must “fine-tune” it to make sense for the display you are using.

diff --git a/drivers/video/nxp/imx/imx8_lvds.c b/drivers/video/nxp/imx/imx8_lvds.c
index 829b419d415..18696cde764 100644
--- a/drivers/video/nxp/imx/imx8_lvds.c
+++ b/drivers/video/nxp/imx/imx8_lvds.c
@@ -181,9 +181,8 @@ void imx8_ldb_configure(struct udevice *dev)
                mode =
                        IMX_LVDS_SET_FIELD(LVDS_CTRL_CH0_MODE, LVDS_CTRL_CH0_MODE__DI0) |
                        IMX_LVDS_SET_FIELD(LVDS_CTRL_CH0_DATA_WIDTH, LVDS_CTRL_CH0_DATA_WIDTH__24BIT) |
-                       IMX_LVDS_SET_FIELD(LVDS_CTRL_CH0_BIT_MAP, LVDS_CTRL_CH0_BIT_MAP__JEIDA) |
-                       IMX_LVDS_SET_FIELD(LVDS_CTRL_CH0_10BIT_ENABLE, LVDS_CTRL_CH0_10BIT_ENABLE__10BIT) |
-                       IMX_LVDS_SET_FIELD(LVDS_CTRL_DI0_DATA_WIDTH, LVDS_CTRL_DI0_DATA_WIDTH__USE_30BIT);
+                       IMX_LVDS_SET_FIELD(LVDS_CTRL_CH0_10BIT_ENABLE, LVDS_CTRL_CH0_10BIT_ENABLE__USE_DATA_WIDTH ) |
+                       IMX_LVDS_SET_FIELD(LVDS_CTRL_DI0_DATA_WIDTH, LVDS_CTRL_DI0_DATA_WIDTH__USE_24BIT);

                regmap_write(priv->gpr, LDB_PHY_OFFSET + LVDS_CTRL, mode);

Since your display works on Linux, you can try to check what Linux is doing on its side to make your display work…

Best regards,