[PATCH 0/5] drm: dw-hdmi: update CEC phys addr, EDID and ELD on HPD event

From: Jonas Karlman
Date: Sun Sep 01 2019 - 12:13:18 EST


This series change dw-hdmi to update CEC phys addr, EDID and ELD on HPD event,
this fixes lost CEC phys addr and stale EDID/ELD when HDMI cable is
unplugged/replugged or AVR is powered on/off.

Patch 1 and 2 extracts code into a dw_hdmi_connector_update_edid() helper
and moves dw_hdmi_connector_detect() to be able to call this helper.

Patch 3 moves CEC phys addr invalidation from dw_hdmi_irq() to
dw_hdmi_connector_detect() and ensure connector EDID property gets updated.
I opted to not use cec_notifier_mutex after the move, please advise.

Patch 4 and 5 ensures ELD gets updated allowing userspace to query the latest
capabilities when a AVR is powered on and EDID gets updated.
This reverts a previous change to make drm_edid_to_eld() static, please advise.

Next step after this would be to add support for signaling
SNDRV_CTL_EVENT_MASK_VALUE to userspace when ELD changes.

Regards,
Jonas

Jonas Karlman (5):
drm: dw-hdmi: extract dw_hdmi_connector_update_edid()
drm: dw-hdmi: move dw_hdmi_connector_detect()
drm: dw-hdmi: update CEC phys addr and EDID on HPD event
Revert "drm/edid: make drm_edid_to_eld() static"
drm: dw-hdmi: update ELD on HPD event

drivers/gpu/drm/bridge/synopsys/dw-hdmi.c | 57 ++++++++++++++---------
drivers/gpu/drm/drm_edid.c | 5 +-
include/drm/drm_edid.h | 1 +
3 files changed, 38 insertions(+), 25 deletions(-)

--
2.17.1