coreboot/src/drivers
Xin Ji c2496bc62e drivers/analogix/anx7625: Add a retry mechanism to decode EDID
Anx7625 reads EDID through AUX channel with I2C Over Aux operation,
reading 16-byte chunk a time. Sometimes, panel(CSOT MNB601LS1-3)
does not returns EDID raw data in time or returns OK without providing
data.

Root cause:
The measured difference between two adjacent UI signals of the AUX
signal is 36ns (518 - 482ns), it meets the VESA DP1.2/1.3 spec < 0.08UI
(48ns) requirement. However, this value exceeds the VESA DP1.1a spec
supported by the panel: max < 0.04UI (24ns) requirement, which exceeds
the tolerance value of the panel and leads to EDID communication
failure.

To address this issue, determined by tests, so that the issue did not
reproduce in over 200 tests

Test result:
Verified on 12pcs panels(8pcs issue panels, 4pcs new panels), 10pcs
tested 300 cycles, 2pcs tested 400 cycles, issue cannot be reproduced.

BUG=b:415946451
TEST=Tested on corsola over 200 times
BRANCH=corsola

Change-Id: I2d4f6b65b8f663ea9b9459e0343897a1223d631a
Signed-off-by: Xin Ji <xji@analogix.corp-partner.google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/87961
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Yidi Lin <yidilin@google.com>
Reviewed-by: Yu-Ping Wu <yupingso@google.com>
2025-06-07 09:50:32 +00:00
..
acpi/thermal_zone tree: Remove unused <string.h> 2024-05-29 10:34:08 +00:00
amd drivers/amd/opensil/memmap.c: Factor out common memmap code to driver 2025-02-21 14:11:43 +00:00
ams drivers: Add SPDX license headers to Kconfig files 2024-02-18 01:59:32 +00:00
analogix/anx7625 drivers/analogix/anx7625: Add a retry mechanism to decode EDID 2025-06-07 09:50:32 +00:00
asmedia drivers/asmedia/asm1061: Align = only with tabs and not spaces 2025-02-10 15:14:32 +00:00
aspeed drivers/aspeed/common: Add AST2600 support 2024-09-26 15:09:17 +00:00
broadcom driver/acpi to /driver/gfx: Rename Makefiles from .inc to .mk 2024-01-24 10:03:39 +00:00
camera drivers: Add SPDX license headers to Kconfig files 2024-02-18 01:59:32 +00:00
crb drivers/crb: Always generate TPM ACPI Tables 2025-02-25 09:03:46 +00:00
efi drivers/efi/fw_info: Select necessary UDK binding as needed 2025-04-23 14:17:53 +00:00
elog elog: Handle elog in later boot phase 2025-06-05 13:36:36 +00:00
emulation/qemu drivers/qemu/bochs: Use arch-independent data port 2025-02-14 17:10:10 +00:00
generic tree: Remove unused <string.h> 2024-05-29 10:34:08 +00:00
genesyslogic tree: Drop duplicated <device/{path,resource}.h> 2024-04-12 04:24:20 +00:00
gfx/generic drivers/gfx/generic: Don't set DOD constraints when generating device address 2024-06-13 11:46:53 +00:00
i2c drivers/i2c/generic: Add option to generate proper PowerResource _STA 2025-03-11 21:40:57 +00:00
intel {commonlib, drivers}: Track firmware splash screen rendering completion 2025-05-25 14:35:09 +00:00
ipmi drivers/ipmi/ocp: Add missing include 2024-12-05 04:47:02 +00:00
lenovo drivers: Add SPDX license headers to Kconfig files 2024-02-18 01:59:32 +00:00
maxim driver/intel to /driver/ocp: Rename Makefiles from .inc to .mk 2024-01-24 10:04:10 +00:00
mipi drivers/mipi: Add support for CSOT_PNA957QT1_1 panel 2025-01-29 18:26:50 +00:00
mrc_cache drivers/mrc_cache: Measure MRC cache as runtime data 2025-05-10 22:50:41 +00:00
net drivers/net/r8168.c: Add option to program MAC address to ERI registers 2025-04-29 22:17:48 +00:00
nxp/uwb tree: Remove unused <string.h> 2024-05-29 10:34:08 +00:00
ocp drivers/ocp/ewl: Remove space after a cast 2024-10-09 17:27:37 +00:00
option drivers/option/cfr: Select EFI variable store when edk2 payload used 2025-04-23 14:17:59 +00:00
parade driver/parade to /driver/wwan: Rename Makefiles from .inc to .mk 2024-01-24 10:04:33 +00:00
pc80 drivers/pc80/pc/keyboard.c: Add function to change a command byte bit 2025-01-22 20:45:37 +00:00
pcie drivers: Add SPDX license headers to Kconfig files 2024-02-18 01:59:32 +00:00
ricoh/rce822 drivers: Add SPDX license headers to Kconfig files 2024-02-18 01:59:32 +00:00
secunet/dmi drivers: Add SPDX license headers to Kconfig files 2024-02-18 01:59:32 +00:00
siemens/nc_fpga drivers: Add SPDX license headers to Kconfig files 2024-02-18 01:59:32 +00:00
sil/3114 drivers: Add SPDX license headers to Kconfig files 2024-02-18 01:59:32 +00:00
smbus console/i2c_smbus: Allow to send data w/o register offset 2024-07-11 00:06:22 +00:00
smmstore drivers/smmstore: Support 64-bit MMIO addresses 2025-05-08 22:28:16 +00:00
sof tree: Drop duplicated <device/{path,resource}.h> 2024-04-12 04:24:20 +00:00
soundwire drivers/soundwire/alc1320: use common struct to set soundwire ADDR_ 2025-04-11 03:47:37 +00:00
spi drivers/spi/winbond.c: Add W25Q64JV signature 2025-05-21 17:18:29 +00:00
ti driver/parade to /driver/wwan: Rename Makefiles from .inc to .mk 2024-01-24 10:04:33 +00:00
tpm drivers/tpm: Remove unused 2nd argument in FUNC method 2024-10-02 11:50:52 +00:00
uart drivers/uart: Replace 'unsigned long int' by 'unsigned long' 2025-01-08 03:09:36 +00:00
usb drivers/usb/intel_bluetooth: Hook RTD3 up to the option API 2025-04-30 16:00:11 +00:00
vpd drivers/vpd: Add vpd_get_feature_level() API 2024-03-05 10:17:00 +00:00
wifi/generic soc/intel/cnvi: Add HotPlugSupportInD3 Property 2025-04-18 15:00:01 +00:00
wwan/fm drivers: Add SPDX license headers to Kconfig files 2024-02-18 01:59:32 +00:00