diff options
author | Erik Gilling <konkers@android.com> | 2011-04-12 17:57:10 -0700 |
---|---|---|
committer | Erik Gilling <konkers@android.com> | 2011-04-12 17:57:24 -0700 |
commit | 0b8bff5ecc4b9077207db4f0adc4a3fdfb70fdb9 (patch) | |
tree | e60b39e2a1a979695823ba7d5e591d5cf48e2102 | |
parent | 30ff24c355ab4cc4f4794f285e1486e90a771d26 (diff) | |
parent | 77a9f2d7ce63dd428ab66a1992333596d9c582e5 (diff) |
Merge branch linux-tegra-2.6.36 into android-tegra-2.6.36
Change-Id: I4305576b867fb062db791b0e18a8f0215bbc5705
-rw-r--r-- | drivers/video/tegra/dc/hdmi.c | 13 | ||||
-rw-r--r-- | drivers/video/tegra/fb.c | 3 |
2 files changed, 12 insertions, 4 deletions
diff --git a/drivers/video/tegra/dc/hdmi.c b/drivers/video/tegra/dc/hdmi.c index e390f233d43e..62fad97c6a90 100644 --- a/drivers/video/tegra/dc/hdmi.c +++ b/drivers/video/tegra/dc/hdmi.c @@ -499,10 +499,13 @@ static irqreturn_t tegra_dc_hdmi_irq(int irq, void *ptr) if (hdmi->suspended) { hdmi->hpd_pending = true; } else { + cancel_delayed_work(&hdmi->work); if (tegra_dc_hdmi_hpd(dc)) - schedule_delayed_work(&hdmi->work, msecs_to_jiffies(100)); + queue_delayed_work(system_nrt_wq, &hdmi->work, + msecs_to_jiffies(100)); else - schedule_delayed_work(&hdmi->work, msecs_to_jiffies(0)); + queue_delayed_work(system_nrt_wq, &hdmi->work, + msecs_to_jiffies(30)); } spin_unlock_irqrestore(&hdmi->suspend_lock, flags); @@ -529,9 +532,11 @@ static void tegra_dc_hdmi_resume(struct tegra_dc *dc) hdmi->suspended = false; if (hdmi->hpd_pending) { if (tegra_dc_hdmi_hpd(dc)) - schedule_delayed_work(&hdmi->work, msecs_to_jiffies(100)); + queue_delayed_work(system_nrt_wq, &hdmi->work, + msecs_to_jiffies(100)); else - schedule_delayed_work(&hdmi->work, msecs_to_jiffies(0)); + queue_delayed_work(system_nrt_wq, &hdmi->work, + msecs_to_jiffies(30)); hdmi->hpd_pending = false; } spin_unlock_irqrestore(&hdmi->suspend_lock, flags); diff --git a/drivers/video/tegra/fb.c b/drivers/video/tegra/fb.c index 1f0b967acd89..9b70114c9cd1 100644 --- a/drivers/video/tegra/fb.c +++ b/drivers/video/tegra/fb.c @@ -573,6 +573,7 @@ static int tegra_fb_ioctl(struct fb_info *info, unsigned int cmd, unsigned long if (i >= modedb.modedb_len) break; + memset(&var, 0x0, sizeof(var)); fb_videomode_to_var(&var, &modelist->mode); if (copy_to_user((void __user *)&modedb.modedb[i], @@ -657,6 +658,8 @@ void tegra_fb_update_monspecs(struct tegra_fb_info *fb_info, fb_info->info->mode = (struct fb_videomode *) fb_find_best_display(specs, &fb_info->info->modelist); + memset(&fb_info->info->var, 0x0, + sizeof(fb_info->info->var)); fb_videomode_to_var(&fb_info->info->var, fb_info->info->mode); tegra_fb_set_par(fb_info->info); } |