From: Ye Li <ye...@nxp.com>

If M33 handshake is successful, TPM and DSI panel MUX setting is
done by M33, no need to set them.
If handshake is failed or M33 is not booted, continue the TPM
and DSI panel MUX setting

Reviewed-by: Peng Fan <peng....@nxp.com>
Signed-off-by: Ye Li <ye...@nxp.com>
Signed-off-by: Biwen Li <biwen...@nxp.com>
Signed-off-by: Peng Fan <peng....@nxp.com>
---
 board/freescale/imx8ulp_evk/imx8ulp_evk.c | 10 +++++++++-
 1 file changed, 9 insertions(+), 1 deletion(-)

diff --git a/board/freescale/imx8ulp_evk/imx8ulp_evk.c 
b/board/freescale/imx8ulp_evk/imx8ulp_evk.c
index 1502e4dbb6..b61a4cfbe8 100644
--- a/board/freescale/imx8ulp_evk/imx8ulp_evk.c
+++ b/board/freescale/imx8ulp_evk/imx8ulp_evk.c
@@ -101,10 +101,18 @@ void mipi_dsi_panel_backlight(void)
 
 int board_init(void)
 {
+       int sync = -ENODEV;
+
        if (IS_ENABLED(CONFIG_FEC_MXC))
                setup_fec();
 
-       if (IS_ENABLED(CONFIG_DM_VIDEO)) {
+       if (m33_image_booted()) {
+               sync = m33_image_handshake(1000);
+               printf("M33 Sync: %s\n", sync ? "Timeout" : "OK");
+       }
+
+       /* When sync with M33 is failed, use local driver to set for video */
+       if (sync != 0 && IS_ENABLED(CONFIG_DM_VIDEO)) {
                mipi_dsi_mux_panel();
                mipi_dsi_panel_backlight();
        }
-- 
2.30.0

Reply via email to