mbox series

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

Message ID AM0PR06MB40049562E295DD62302C8DB7ACBF0@AM0PR06MB4004.eurprd06.prod.outlook.com (mailing list archive)
Headers show
Series drm: dw-hdmi: update CEC phys addr, EDID and ELD on HPD event | expand

Message

Jonas Karlman Sept. 1, 2019, 4:13 p.m. UTC
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(-)