summaryrefslogtreecommitdiff
path: root/drivers
diff options
context:
space:
mode:
authorErik Gilling <konkers@android.com>2010-10-18 15:22:05 -0700
committerErik Gilling <konkers@android.com>2010-10-18 15:40:05 -0700
commit3a44a94cab6dcec5451089a77442091832933a64 (patch)
treef5b5dd26730870e2ea5d387d916f65e8596c4a29 /drivers
parent45659f705d48e8f40614fd25bb1f622fb1d494a9 (diff)
video: tegra: disable display on hotunplug
Also tighents up the hotplug detect timing Change-Id: I2d48c38250b5aaef2d30895fe44806e7d133a823 Signed-off-by: Erik Gilling <konkers@android.com>
Diffstat (limited to 'drivers')
-rw-r--r--drivers/video/tegra/dc/hdmi.c8
1 files changed, 5 insertions, 3 deletions
diff --git a/drivers/video/tegra/dc/hdmi.c b/drivers/video/tegra/dc/hdmi.c
index 3487e54c74cf..9a2af8bfa324 100644
--- a/drivers/video/tegra/dc/hdmi.c
+++ b/drivers/video/tegra/dc/hdmi.c
@@ -457,8 +457,8 @@ static void tegra_dc_hdmi_detect_worker(struct work_struct *work)
container_of(to_delayed_work(work), struct tegra_dc_hdmi_data, work);
struct tegra_dc *dc = hdmi->dc;
- if (tegra_dc_hdmi_hpd(dc))
- tegra_dc_hdmi_detect(dc);
+ if (!tegra_dc_hdmi_detect(dc))
+ tegra_dc_disable(dc);
}
static irqreturn_t tegra_dc_hdmi_irq(int irq, void *ptr)
@@ -467,7 +467,9 @@ static irqreturn_t tegra_dc_hdmi_irq(int irq, void *ptr)
struct tegra_dc_hdmi_data *hdmi = tegra_dc_get_outdata(dc);
if (tegra_dc_hdmi_hpd(dc))
- schedule_delayed_work(&hdmi->work, msecs_to_jiffies(2000));
+ schedule_delayed_work(&hdmi->work, msecs_to_jiffies(100));
+ else
+ schedule_delayed_work(&hdmi->work, msecs_to_jiffies(0));
return IRQ_HANDLED;
}