From patchwork Mon Jan 4 19:18:59 2016
Content-Type: text/plain; charset="utf-8"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
X-Patchwork-Submitter: Philipp Zabel
X-Patchwork-Id: 7950551
Return-Path:
X-Original-To: patchwork-linux-mediatek@patchwork.kernel.org
Delivered-To: patchwork-parsemail@patchwork2.web.kernel.org
Received: from mail.kernel.org (mail.kernel.org [198.145.29.136])
by patchwork2.web.kernel.org (Postfix) with ESMTP id 83EF0BEEE5
for ;
Mon, 4 Jan 2016 19:19:36 +0000 (UTC)
Received: from mail.kernel.org (localhost [127.0.0.1])
by mail.kernel.org (Postfix) with ESMTP id 99AD92034E
for ;
Mon, 4 Jan 2016 19:19:35 +0000 (UTC)
Received: from bombadil.infradead.org (bombadil.infradead.org
[198.137.202.9])
(using TLSv1.2 with cipher AES128-GCM-SHA256 (128/128 bits))
(No client certificate requested)
by mail.kernel.org (Postfix) with ESMTPS id BC94C202FF
for ;
Mon, 4 Jan 2016 19:19:34 +0000 (UTC)
Received: from localhost ([127.0.0.1] helo=bombadil.infradead.org)
by bombadil.infradead.org with esmtp (Exim 4.80.1 #2 (Red Hat Linux))
id 1aGAfG-0007IG-DJ; Mon, 04 Jan 2016 19:19:34 +0000
Received: from metis.ext.pengutronix.de
([2001:67c:670:201:290:27ff:fe1d:cc33])
by bombadil.infradead.org with esmtps (Exim 4.80.1 #2 (Red Hat
Linux)) id 1aGAfC-00078T-8x for linux-mediatek@lists.infradead.org;
Mon, 04 Jan 2016 19:19:32 +0000
Received: from dude.hi.4.pengutronix.de ([10.1.0.7]
helo=dude.pengutronix.de.)
by metis.ext.pengutronix.de with esmtp (Exim 4.80)
(envelope-from )
id 1aGAej-0003Mr-8h; Mon, 04 Jan 2016 20:19:01 +0100
From: Philipp Zabel
To: alsa-devel@alsa-project.org
Subject: [RFC v2 5/6] drm/mediatek: hdmi: issue notifications
Date: Mon, 4 Jan 2016 20:18:59 +0100
Message-Id: <1451935139-24814-1-git-send-email-p.zabel@pengutronix.de>
X-Mailer: git-send-email 2.6.2
In-Reply-To: <1451934551-21333-1-git-send-email-p.zabel@pengutronix.de>
References: <1451934551-21333-1-git-send-email-p.zabel@pengutronix.de>
X-SA-Exim-Connect-IP: 10.1.0.7
X-SA-Exim-Mail-From: p.zabel@pengutronix.de
X-SA-Exim-Scanned: No (on metis.ext.pengutronix.de);
SAEximRunCond expanded to false
X-PTX-Original-Recipient: linux-mediatek@lists.infradead.org
X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3
X-CRM114-CacheID: sfid-20160104_111930_700003_EA97E4CB
X-CRM114-Status: GOOD ( 10.79 )
X-Spam-Score: -1.9 (-)
X-BeenThere: linux-mediatek@lists.infradead.org
X-Mailman-Version: 2.1.20
Precedence: list
List-Id:
List-Unsubscribe: ,
List-Archive:
List-Post:
List-Help:
List-Subscribe: ,
Cc: Jean-Francois Moine , Koro Chen ,
Lars-Peter Clausen ,
Russell King - ARM Linux ,
Philipp Zabel ,
Arnaud Pouliquen ,
Liam Girdwood , Jyri Sarha ,
Cawa Cheng , Mark Brown ,
linux-mediatek@lists.infradead.org, kernel@pengutronix.de,
Matthias Brugger
MIME-Version: 1.0
Sender: "Linux-mediatek"
Errors-To:
linux-mediatek-bounces+patchwork-linux-mediatek=patchwork.kernel.org@lists.infradead.org
X-Spam-Status: No, score=-4.2 required=5.0 tests=BAYES_00, RCVD_IN_DNSWL_MED,
RP_MATCHES_RCVD, UNPARSEABLE_RELAY autolearn=unavailable version=3.3.1
X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on mail.kernel.org
X-Virus-Scanned: ClamAV using ClamSMTP
Issue hot-plug detection, EDID update, and ELD update notifications
from the CEC and HDMI drivers.
Signed-off-by: Philipp Zabel
---
drivers/gpu/drm/mediatek/mtk_cec.c | 5 +++++
drivers/gpu/drm/mediatek/mtk_drm_hdmi_drv.c | 3 +++
2 files changed, 8 insertions(+)
diff --git a/drivers/gpu/drm/mediatek/mtk_cec.c b/drivers/gpu/drm/mediatek/mtk_cec.c
index cba3647..7c4ee7a 100644
--- a/drivers/gpu/drm/mediatek/mtk_cec.c
+++ b/drivers/gpu/drm/mediatek/mtk_cec.c
@@ -13,6 +13,7 @@
*/
#include
#include
+#include
#include
#include
#include
@@ -160,6 +161,10 @@ static irqreturn_t mtk_cec_htplg_isr_thread(int irq, void *arg)
if (cec->hpd != hpd) {
dev_info(dev, "hotplug event!,cur hpd = %d, hpd = %d\n",
cec->hpd, hpd);
+ if (hpd)
+ hdmi_event_connect(cec->hdmi_dev);
+ else
+ hdmi_event_disconnect(cec->hdmi_dev);
cec->hpd = hpd;
if (cec->hpd_event)
cec->hpd_event(hpd, cec->hdmi_dev);
diff --git a/drivers/gpu/drm/mediatek/mtk_drm_hdmi_drv.c b/drivers/gpu/drm/mediatek/mtk_drm_hdmi_drv.c
index 1a07ef3..06544ee 100644
--- a/drivers/gpu/drm/mediatek/mtk_drm_hdmi_drv.c
+++ b/drivers/gpu/drm/mediatek/mtk_drm_hdmi_drv.c
@@ -17,6 +17,7 @@
#include
#include
#include
+#include
#include
#include
#include
@@ -122,9 +123,11 @@ static int mtk_hdmi_conn_get_modes(struct drm_connector *conn)
hdmi->dvi_mode = !drm_detect_hdmi_monitor(edid);
drm_mode_connector_update_edid_property(conn, edid);
+ hdmi_event_new_edid(hdmi->dev, edid, sizeof(*edid));
ret = drm_add_edid_modes(conn, edid);
drm_edid_to_eld(conn, edid);
+ hdmi_event_new_eld(hdmi->dev, conn->eld);
kfree(edid);
return ret;
}