diff options
author | Portisch <hugo.portisch@yahoo.de> | 2019-10-22 08:46:08 +0200 |
---|---|---|
committer | Dongjin Kim <tobetter@gmail.com> | 2020-05-03 21:05:35 +0900 |
commit | 47fb8f9a084e8244f49c7934ec6f5e1e7f000b62 (patch) | |
tree | 7907569c19801e9cfb6b0ca3974f3e5a4b878c71 | |
parent | c23dee237cdd697af7f5e0c263a277d860a0525d (diff) | |
download | u-boot-odroid-c1-47fb8f9a084e8244f49c7934ec6f5e1e7f000b62.tar.gz |
BACKPORT: g12a/b: CEC_OC_ACTIVE_SOURCE: ignore phy address if broadcast
Change-Id: Ib4937aa2b02d25824faaff7770d515884632686c
-rw-r--r-- | arch/arm/cpu/armv8/g12a/firmware/scp_task/hdmi_cec_arc.c | 4 | ||||
-rw-r--r-- | arch/arm/cpu/armv8/g12b/firmware/scp_task/hdmi_cec_arc.c | 4 |
2 files changed, 4 insertions, 4 deletions
diff --git a/arch/arm/cpu/armv8/g12a/firmware/scp_task/hdmi_cec_arc.c b/arch/arm/cpu/armv8/g12a/firmware/scp_task/hdmi_cec_arc.c index 498436a717..d3c7ba52aa 100644 --- a/arch/arm/cpu/armv8/g12a/firmware/scp_task/hdmi_cec_arc.c +++ b/arch/arm/cpu/armv8/g12a/firmware/scp_task/hdmi_cec_arc.c @@ -614,7 +614,7 @@ static unsigned int cec_handle_message(void) dest = cec_msg.buf[cec_msg.rx_read_pos].msg[0] & 0xf; if (((hdmi_cec_func_config >> CEC_FUNC_MASK) & 0x1) && ((hdmi_cec_func_config >> AUTO_POWER_ON_MASK) & 0x1) && - (dest == CEC_TV_ADDR)) { + (source == CEC_TV_ADDR)) { /* request active source needed */ phy_addr = 0xffff; cec_msg.cec_power = 0x1; @@ -630,7 +630,7 @@ static unsigned int cec_handle_message(void) (cec_msg.buf[cec_msg.rx_read_pos].msg[3] << 0); if (((hdmi_cec_func_config >> CEC_FUNC_MASK) & 0x1) && ((hdmi_cec_func_config >> AUTO_POWER_ON_MASK) & 0x1) && - (dest == CEC_TV_ADDR && check_addr(phy_addr))) { + (source == CEC_TV_ADDR && (dest == CEC_BROADCAST_ADDR || check_addr(phy_addr)))) { cec_msg.cec_power = 0x1; wake = (phy_addr << 0) | (source << 16); diff --git a/arch/arm/cpu/armv8/g12b/firmware/scp_task/hdmi_cec_arc.c b/arch/arm/cpu/armv8/g12b/firmware/scp_task/hdmi_cec_arc.c index 498436a717..d3c7ba52aa 100644 --- a/arch/arm/cpu/armv8/g12b/firmware/scp_task/hdmi_cec_arc.c +++ b/arch/arm/cpu/armv8/g12b/firmware/scp_task/hdmi_cec_arc.c @@ -614,7 +614,7 @@ static unsigned int cec_handle_message(void) dest = cec_msg.buf[cec_msg.rx_read_pos].msg[0] & 0xf; if (((hdmi_cec_func_config >> CEC_FUNC_MASK) & 0x1) && ((hdmi_cec_func_config >> AUTO_POWER_ON_MASK) & 0x1) && - (dest == CEC_TV_ADDR)) { + (source == CEC_TV_ADDR)) { /* request active source needed */ phy_addr = 0xffff; cec_msg.cec_power = 0x1; @@ -630,7 +630,7 @@ static unsigned int cec_handle_message(void) (cec_msg.buf[cec_msg.rx_read_pos].msg[3] << 0); if (((hdmi_cec_func_config >> CEC_FUNC_MASK) & 0x1) && ((hdmi_cec_func_config >> AUTO_POWER_ON_MASK) & 0x1) && - (dest == CEC_TV_ADDR && check_addr(phy_addr))) { + (source == CEC_TV_ADDR && (dest == CEC_BROADCAST_ADDR || check_addr(phy_addr)))) { cec_msg.cec_power = 0x1; wake = (phy_addr << 0) | (source << 16); |