[PATCH 0/2] Fix I2C-Over-AUX handling

Wayne Lin Wayne.Lin at amd.com
Thu Apr 24 03:07:32 UTC 2025


These two patches are trying to fix how we handle I2C-Over_AUX
transactions when sink side can only complte partial data at one time.

We encounter EDID reading error with specific monitor and cause mode
list can only be lower resolutions. After analysis, the monitor will
reply I2C_ACK|AUX_ACK followed by a byte indicating the read data length
fewer than the requested one. Under this case, we should update the
request length and request again. Code we have today doesn't handle
such case.

Meanwhile, how we handle Write_Status_Update_Request for I2C write over
AUX transactions seems wrong as well. The request format should be address
only transaction without length and data, and we don't really send it out.
Further more, it should be constrained for I2C write case only. Not
for I2C read request.

1st patch to fix the I2C write problem and 2nd one to fix the I2C read.

---
Wayne Lin (2):
  drm/dp: Correct Write_Status_Update_Request handling
  drm/dp: Add handling for partially read under I2-readC-over-AUX

 drivers/gpu/drm/display/drm_dp_helper.c | 28 +++++++++++++++++++++----
 1 file changed, 24 insertions(+), 4 deletions(-)

-- 
2.43.0



More information about the dri-devel mailing list