display: slimport: prevent EDID overwritten

Information from slimport vendor:

With the wrong value set to SP_TX_AUX_CTRL_REG2, 7808 will try to
write 0x00 to a random offset of EDID in the monitor. if the monitor's
EDID is over written, we make it a bad EDID; with a bad EDID, AP will
output 640x480p only normally. But most of monitors have write protection
of EDID, 7808 is not able over write it.

This issue not able to be reproduced with a monitor with EDID write
protection.

We have to fix this bug in case the very unlucky end user has a monitor
without EDID write protection.

Issue 10062852

Change-Id: Id8eff5a77154d648c8eb5046ef1cf35f4f9a712d
Signed-off-by: yetta_wu <yetta_wu@asus.com>
This commit is contained in:
yetta_wu
2013-07-24 16:37:57 +08:00
committed by Ed Tam
parent 77f043e2e3
commit 80deff17b2

View File

@@ -2307,7 +2307,7 @@ void sp_tx_edid_read(void)
bedid_break = 0;
sp_tx_addronly_set(1);
sp_write_reg(TX_P0, SP_TX_AUX_CTRL_REG, 0x04);
sp_write_reg(TX_P0, SP_TX_AUX_CTRL_REG2, 0x01);
sp_write_reg(TX_P0, SP_TX_AUX_CTRL_REG2, 0x03);
sp_tx_wait_aux_finished();
edid_block = sp_tx_get_edid_block();