MLK-17126-1: hdp api: workaround for imx8qm HDMI DDC R/W issue
authorSandor Yu <Sandor.yu@nxp.com>
Fri, 8 Dec 2017 06:54:26 +0000 (14:54 +0800)
committerNitin Garg <nitin.garg@nxp.com>
Tue, 20 Mar 2018 19:50:38 +0000 (14:50 -0500)
HDMI DDC R/W function is not supported by imx8qm HDMI FW.
Skip the function for imx8qm before the issue is fixed in FW.

Signed-off-by: Sandor Yu <Sandor.yu@nxp.com>
drivers/mxc/hdp/API_HDMITX.c

index b1f3a78..9d1f63d 100644 (file)
@@ -52,6 +52,7 @@
 #include "address.h"
 #include "source_car.h"
 #include "source_vif.h"
+#include <soc/imx8/soc.h>
 
 CDN_API_STATUS CDN_API_HDMITX_DDC_READ(state_struct *state,
                                       HDMITX_TRANS_DATA *data_in,
@@ -159,7 +160,11 @@ CDN_API_HDMITX_Set_Mode_blocking(state_struct *state,
        data_in.len = 1;
        data_in.slave = 0x54;
        data_in.offset = 0x20;  /* TMDS config */
-       ret = CDN_API_HDMITX_DDC_WRITE_blocking(state, &data_in, &data_out);
+       /* Workaround for imx8qm DDC R/W failed issue */
+       if (!cpu_is_imx8qm()) {
+               ret = CDN_API_HDMITX_DDC_WRITE_blocking(state, &data_in, &data_out);
+               pr_info("CDN_API_HDMITX_DDC_WRITE_blocking ret = %d\n", ret);
+       }
 
        ret = CDN_API_General_Read_Register_blocking(
                                state, ADDR_SOURCE_MHL_HD + (HDTX_CONTROLLER << 2), &resp);