diff --git a/drivers/amlogic/media/vin/tvin/hdmirx/hdmi_rx_drv.h b/drivers/amlogic/media/vin/tvin/hdmirx/hdmi_rx_drv.h index a54535ec22f7..ddb30d4f2f73 100644 --- a/drivers/amlogic/media/vin/tvin/hdmirx/hdmi_rx_drv.h +++ b/drivers/amlogic/media/vin/tvin/hdmirx/hdmi_rx_drv.h @@ -41,7 +41,7 @@ * * */ -#define RX_VER1 "ver.2018/05/30" +#define RX_VER1 "ver.2018/06/07" diff --git a/drivers/amlogic/media/vin/tvin/hdmirx/hdmi_rx_hw.c b/drivers/amlogic/media/vin/tvin/hdmirx/hdmi_rx_hw.c index db3f72209da3..b58f3bd9601d 100644 --- a/drivers/amlogic/media/vin/tvin/hdmirx/hdmi_rx_hw.c +++ b/drivers/amlogic/media/vin/tvin/hdmirx/hdmi_rx_hw.c @@ -2134,6 +2134,42 @@ bool is_wr_only_reg(uint32_t addr) void rx_debug_load22key(void) { + int ret = 0; + int wait_kill_done_cnt = 0; + + ret = rx_sec_set_duk(); + rx_pr("22 = %d\n", ret); + if (ret == 1) { + rx_pr("load 2.2 key\n"); + sm_pause = 1; + rx_set_hpd(0); + hdcp22_on = 1; + hdcp22_kill_esm = 1; + while (wait_kill_done_cnt++ < 10) { + if (!hdcp22_kill_esm) + break; + msleep(20); + } + hdcp22_kill_esm = 0; + extcon_set_state_sync(rx.rx_excton_rx22, + EXTCON_DISP_HDMI, 0); + hdmirx_wr_dwc(DWC_HDCP22_CONTROL, 0x0); + hdmirx_hdcp22_esm_rst(); + mdelay(110); + rx_is_hdcp22_support(); + hdmirx_wr_dwc(DWC_HDCP22_CONTROL, + 0x1000); + rx_hdcp22_wr_top(TOP_SKP_CNTL_STAT, 0x1); + hdcp22_clk_en(1); + extcon_set_state_sync(rx.rx_excton_rx22, + EXTCON_DISP_HDMI, 1); + mdelay(100); + hdmirx_hw_config(); + hpd_to_esm = 1; + /* mdelay(900); */ + rx_set_hpd(1); + sm_pause = 0; + } } void rx_debug_loadkey(void) diff --git a/drivers/amlogic/media/vin/tvin/hdmirx/hdmi_rx_wrapper.c b/drivers/amlogic/media/vin/tvin/hdmirx/hdmi_rx_wrapper.c index 33cf22de9b9b..43753257ee6c 100644 --- a/drivers/amlogic/media/vin/tvin/hdmirx/hdmi_rx_wrapper.c +++ b/drivers/amlogic/media/vin/tvin/hdmirx/hdmi_rx_wrapper.c @@ -1257,8 +1257,9 @@ bool is_unnormal_format(uint8_t wait_cnt) } } if ((ret == false) && (wait_cnt != sig_stable_max)) - rx_pr("unnormal_format wait cnt = %d\n", - wait_cnt-sig_stable_max); + if (log_level & VIDEO_LOG) + rx_pr("unnormal_format wait cnt = %d\n", + wait_cnt-sig_stable_max); #else if ((rx.pre.sw_vic == HDMI_UNSUPPORT) || (rx.pre.sw_vic == HDMI_UNKNOWN)) {