From ce80a2d1890063ff2d3b5beb6edac85a2f6c86c4 Mon Sep 17 00:00:00 2001 From: Joonyoung Shim Date: Mon, 23 Apr 2012 19:35:48 +0900 Subject: [PATCH] drm/exynos: use platform_get_irq_byname for hdmi The exynos hdmi supports two hdmi interrupts - external and internal, so use platform_get_irq_byname to distinguish their resources. Signed-off-by: Joonyoung Shim Signed-off-by: Kyungmin Park Signed-off-by: Inki Dae --- drivers/gpu/drm/exynos/exynos_hdmi.c | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/drivers/gpu/drm/exynos/exynos_hdmi.c b/drivers/gpu/drm/exynos/exynos_hdmi.c index 7365cc6..e6a5e00 100644 --- a/drivers/gpu/drm/exynos/exynos_hdmi.c +++ b/drivers/gpu/drm/exynos/exynos_hdmi.c @@ -2293,10 +2293,10 @@ static int __devinit hdmi_probe(struct platform_device *pdev) hdata->hdmiphy_port = hdmi_hdmiphy; - res = platform_get_resource(pdev, IORESOURCE_IRQ, 0); - if (res == NULL) { - DRM_ERROR("get interrupt resource failed.\n"); - ret = -ENXIO; + hdata->irq = platform_get_irq_byname(pdev, "internal_irq"); + if (hdata->irq < 0) { + DRM_ERROR("failed to get platform irq\n"); + ret = hdata->irq; goto err_hdmiphy; } @@ -2311,13 +2311,12 @@ static int __devinit hdmi_probe(struct platform_device *pdev) INIT_WORK(&hdata->hotplug_work, hdmi_hotplug_func); /* register hpd interrupt */ - ret = request_irq(res->start, hdmi_irq_handler, 0, "drm_hdmi", + ret = request_irq(hdata->irq, hdmi_irq_handler, 0, "drm_hdmi", drm_hdmi_ctx); if (ret) { DRM_ERROR("request interrupt failed.\n"); goto err_workqueue; } - hdata->irq = res->start; /* register specific callbacks to common hdmi. */ exynos_hdmi_ops_register(&hdmi_ops); -- 2.7.4