From 824179b35edd3dc931abdc526fb3af708b7ffdcd Mon Sep 17 00:00:00 2001 From: Algea Cao Date: Thu, 28 Dec 2017 16:32:30 +0800 Subject: [PATCH] drm/bridge/synopsys: Report hdmi HPD to userspace for cec When hdmi HPD is occurred, call cec_notifier_repo_cec_hpd. Change-Id: If2047121c8ccf55e9a49fa4c3c4ec2187248a593 Signed-off-by: Algea Cao --- drivers/gpu/drm/bridge/synopsys/dw-hdmi.c | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/drivers/gpu/drm/bridge/synopsys/dw-hdmi.c b/drivers/gpu/drm/bridge/synopsys/dw-hdmi.c index 37d91976af8f..d7cc7b7c634a 100644 --- a/drivers/gpu/drm/bridge/synopsys/dw-hdmi.c +++ b/drivers/gpu/drm/bridge/synopsys/dw-hdmi.c @@ -319,8 +319,18 @@ static void repo_hpd_event(struct work_struct *p_work) { struct dw_hdmi *hdmi = container_of(p_work, struct dw_hdmi, work.work); - if (hdmi->bridge.dev) - drm_helper_hpd_irq_event(hdmi->bridge.dev); + if (hdmi->bridge.dev) { + bool change; + + change = drm_helper_hpd_irq_event(hdmi->bridge.dev); + +#ifdef CONFIG_CEC_NOTIFIER + if (change) + cec_notifier_repo_cec_hpd(hdmi->cec_notifier, + hdmi->hpd_state, + ktime_get()); +#endif + } #ifdef CONFIG_SWITCH if (hdmi->hpd_state)