rk3036 hdmi: use irq to trigger hdmi mode change
authorhjc <hjc@rock-chips.com>
Sat, 12 Jul 2014 07:46:17 +0000 (15:46 +0800)
committerhjc <hjc@rock-chips.com>
Sat, 12 Jul 2014 08:06:49 +0000 (16:06 +0800)
drivers/video/rockchip/hdmi/chips/rk616/rk616_hdmi.c
drivers/video/rockchip/hdmi/chips/rk616/rk616_hdmi_hw.c

index c58dec98908da9d5ef995ed1f016e8d5d8f2842e..6f15b43b865fc6a436cef14056e5edc9532dd2f2 100755 (executable)
@@ -249,7 +249,6 @@ static void __maybe_unused rk616_irq_work_func(struct work_struct *work)
        dev_info(hdmi_drv->dev, "func: %s, enable_irq\n", __func__);
        enable_irq(hdmi_drv->irq);
 }
-#if 0
 static irqreturn_t rk616_hdmi_irq(int irq, void *dev_id)
 {
        struct work_struct *rk616_irq_work_struct;
@@ -271,7 +270,7 @@ static irqreturn_t rk616_hdmi_irq(int irq, void *dev_id)
        }
        return IRQ_HANDLED;
 }
-#endif
+
 static int rk616_hdmi_drv_init(struct hdmi *hdmi_drv)
 {
        int ret = 0;
@@ -398,7 +397,6 @@ static int rk616_hdmi_probe(struct platform_device *pdev)
                hdmi_drv->irq = 0;
        } else {
                /* request the IRQ */
-               #if 0
                ret = devm_request_irq(hdmi_drv->dev, hdmi_drv->irq,
                                       rk616_hdmi_irq, 0,
                                       dev_name(hdmi_drv->dev), hdmi_drv);
@@ -407,7 +405,6 @@ static int rk616_hdmi_probe(struct platform_device *pdev)
                                ret);
                        goto err2;
                }
-               #endif
        }
 #else
        if (gpio_is_valid(hdmi_dev->rk616_drv->pdata->hdmi_irq)) {
index fcc35e1a27f714f62e135971102527dbc343056d..ebbe334ea938e35a793d99f7cf0d8169b49d1624 100755 (executable)
@@ -631,7 +631,7 @@ static void rk616_hdmi_reset(struct hdmi *hdmi_drv)
 #ifdef SOC_CONFIG_RK3036
        hdmi_readl(hdmi_dev, HDMI_STATUS,&val);//enable hpg
        val |= m_MASK_INT_HOTPLUG;
-       hdmi_writel(hdmi_dev, HDMI_STATUS,val);
+       //hdmi_writel(hdmi_dev, HDMI_STATUS,val);
 #else
        hdmi_writel(hdmi_dev, INTERRUPT_MASK1, m_INT_HOTPLUG);  
 #endif