summaryrefslogtreecommitdiff
authorXiaoliang Wang <xiaoliang.wang@amlogic.com>2018-10-30 03:46:18 (GMT)
committer Gerrit Code Review <gituser@droid04>2018-10-30 03:46:18 (GMT)
commit1347c6a394290dcab8b0c96bcc5e96f7966ac24f (patch)
tree07f87825328832f01bb5618bd401c88b50198849
parent66e1de527b6ab92baca109dcdcc9349724952add (diff)
parent01336da93f2a0341b0a781274e22f83b90d2f149 (diff)
downloadcommon-1347c6a394290dcab8b0c96bcc5e96f7966ac24f.zip
common-1347c6a394290dcab8b0c96bcc5e96f7966ac24f.tar.gz
common-1347c6a394290dcab8b0c96bcc5e96f7966ac24f.tar.bz2
Merge "hdmitx: repeater need to update edid [1/1]" into p-amlogic
Diffstat
-rw-r--r--drivers/amlogic/media/vout/hdmitx/hdmi_tx_20/hdmi_tx_edid.c9
1 files changed, 5 insertions, 4 deletions
diff --git a/drivers/amlogic/media/vout/hdmitx/hdmi_tx_20/hdmi_tx_edid.c b/drivers/amlogic/media/vout/hdmitx/hdmi_tx_20/hdmi_tx_edid.c
index 79a5ab6..706d62c 100644
--- a/drivers/amlogic/media/vout/hdmitx/hdmi_tx_20/hdmi_tx_edid.c
+++ b/drivers/amlogic/media/vout/hdmitx/hdmi_tx_20/hdmi_tx_edid.c
@@ -1128,11 +1128,12 @@ MODULE_PARM_DESC(rptx_edid_aud, "\n receive_edid\n");
module_param(rptx_edid_aud, charp, 0444);
/* ----------------------------------------------------------- */
-int Edid_ParsingCEADataBlockCollection(struct hdmitx_info *info,
+int Edid_ParsingCEADataBlockCollection(struct hdmitx_dev *hdmitx_device,
unsigned char *buff)
{
unsigned char AddrTag, D, Addr, Data;
int temp_addr, i, len, pos;
+ struct hdmitx_info *info = &(hdmitx_device->hdmi_info);
/* Byte number offset d where Detailed Timing data begins */
D = buff[2];
@@ -1150,7 +1151,8 @@ int Edid_ParsingCEADataBlockCollection(struct hdmitx_info *info,
case AUDIO_TAG:
len = (Data & 0x1f) + 1;
- rx_set_receiver_edid(&buff[AddrTag], len);
+ if (hdmitx_device->basic_audio)
+ rx_set_receiver_edid(&buff[AddrTag], len);
for (pos = 0, i = 0; i < len; i++)
pos += sprintf(rptx_edid_buf+pos, "%02x",
buff[AddrTag + i]);
@@ -1946,8 +1948,7 @@ int hdmitx_edid_parse(struct hdmitx_dev *hdmitx_device)
&hdmitx_device->hdmi_info,
EDID_buf[i * 128 + 3]);
ret_val = Edid_ParsingCEADataBlockCollection(
- &hdmitx_device->hdmi_info,
- &EDID_buf[i * 128]);
+ hdmitx_device, &EDID_buf[i * 128]);
Edid_ParseCEADetailedTimingDescriptors(
&hdmitx_device->hdmi_info, 5,
EDID_buf[i * 128 + 2],