From 1923b697e4b07b1213ae1664364bb5b4bde524e6 Mon Sep 17 00:00:00 2001 From: yicheng shen Date: Thu, 10 Jan 2019 05:38:29 -0500 Subject: [PATCH] hdmirx: fix read edid panic issue [1/1] PD#SWPL-4088 Problem: There will be kernel panic when read edid via hdmirx driver interface Solution: modify the rd_top interface Verify: TL1 android P Change-Id: Ifb595cc66a2e792bc5153d726258deb7ba4e741c Signed-off-by: yicheng shen --- drivers/amlogic/media/vin/tvin/hdmirx/hdmi_rx_drv.h | 2 +- drivers/amlogic/media/vin/tvin/hdmirx/hdmi_rx_hw.c | 2 +- drivers/amlogic/media/vin/tvin/hdmirx/hdmi_rx_hw.h | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) 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 456a0e9add30..c6af5437f35e 100644 --- a/drivers/amlogic/media/vin/tvin/hdmirx/hdmi_rx_drv.h +++ b/drivers/amlogic/media/vin/tvin/hdmirx/hdmi_rx_drv.h @@ -46,7 +46,7 @@ * * */ -#define RX_VER2 "ver.2019/01/10" +#define RX_VER2 "ver.2019/01/16" /*print type*/ #define LOG_EN 0x01 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 d41f8062ce59..22ad2d64912a 100644 --- a/drivers/amlogic/media/vin/tvin/hdmirx/hdmi_rx_hw.c +++ b/drivers/amlogic/media/vin/tvin/hdmirx/hdmi_rx_hw.c @@ -477,7 +477,7 @@ void wr_reg(enum map_addr_module_e module, * returns unsigned char bytes read from the addr */ unsigned char rd_reg_b(enum map_addr_module_e module, - unsigned char reg_addr) + unsigned int reg_addr) { unsigned char val = 0; 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 49cd59be9dc6..0bab5a24fcb7 100644 --- a/drivers/amlogic/media/vin/tvin/hdmirx/hdmi_rx_hw.h +++ b/drivers/amlogic/media/vin/tvin/hdmirx/hdmi_rx_hw.h @@ -1117,7 +1117,7 @@ extern void wr_reg(enum map_addr_module_e module, unsigned int reg_addr, unsigned int val); extern unsigned char rd_reg_b(enum map_addr_module_e module, - unsigned char reg_addr); + unsigned int reg_addr); extern void wr_reg_b(enum map_addr_module_e module, unsigned int reg_addr, unsigned char val); extern void hdmirx_wr_top(unsigned int addr, unsigned int data);