diff --git a/drivers/amlogic/media/vin/tvin/hdmirx/hdmi_rx_drv.c b/drivers/amlogic/media/vin/tvin/hdmirx/hdmi_rx_drv.c index 47ff362bce4e..da115d9c29f1 100644 --- a/drivers/amlogic/media/vin/tvin/hdmirx/hdmi_rx_drv.c +++ b/drivers/amlogic/media/vin/tvin/hdmirx/hdmi_rx_drv.c @@ -1691,7 +1691,7 @@ static void rx_phy_suspend(void) if (hdmi_cec_en != 0) { if (suspend_pddq_sel == 2) { /* set rxsense pulse */ - rx_phy_rxsense_pulse(10, 10); + rx_phy_rxsense_pulse(10, 10, 0); } } /* phy powerdown */ @@ -1707,7 +1707,7 @@ static void rx_phy_resume(void) * rxsense pulse and phy_int shottern than * 50ms, SDA may be pulled low 800ms on MTK box */ - rx_phy_rxsense_pulse(20, 50); + rx_phy_rxsense_pulse(20, 50, 1); } } hdmirx_phy_init(); 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 7dc3559ae33e..99dc5aa72fc4 100644 --- a/drivers/amlogic/media/vin/tvin/hdmirx/hdmi_rx_drv.h +++ b/drivers/amlogic/media/vin/tvin/hdmirx/hdmi_rx_drv.h @@ -34,7 +34,7 @@ #include "hdmi_rx_edid.h" -#define RX_VER0 "ver.2018-11-30" +#define RX_VER0 "ver.2018-12-13" /* * * 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 8c6f8cba032e..cdffc709f450 100644 --- a/drivers/amlogic/media/vin/tvin/hdmirx/hdmi_rx_hw.c +++ b/drivers/amlogic/media/vin/tvin/hdmirx/hdmi_rx_hw.c @@ -3561,12 +3561,12 @@ unsigned int aml_phy_tmds_valid(void) } } -void rx_phy_rxsense_pulse(unsigned int t1, unsigned int t2) +void rx_phy_rxsense_pulse(unsigned int t1, unsigned int t2, bool en) { /* set rxsense pulse */ - hdmirx_phy_pddq(1); + hdmirx_phy_pddq(!en); mdelay(t1); - hdmirx_phy_pddq(0); + hdmirx_phy_pddq(en); mdelay(t2); } diff --git a/drivers/amlogic/media/vin/tvin/hdmirx/hdmi_rx_hw.h b/drivers/amlogic/media/vin/tvin/hdmirx/hdmi_rx_hw.h index aeee4dbb8691..eb4e549069fa 100644 --- a/drivers/amlogic/media/vin/tvin/hdmirx/hdmi_rx_hw.h +++ b/drivers/amlogic/media/vin/tvin/hdmirx/hdmi_rx_hw.h @@ -1204,7 +1204,7 @@ extern void rx_force_rxsense_cfg(uint8_t level); extern void rx_force_hpd_rxsense_cfg(uint8_t level); extern void rx_audio_bandgap_rst(void); extern void rx_audio_bandgap_rst(void); -extern void rx_phy_rxsense_pulse(unsigned int t1, unsigned int t2); +extern void rx_phy_rxsense_pulse(unsigned int t1, unsigned int t2, bool en); extern void rx_phy_power_on(unsigned int onoff);