diff options
author | sharath sarangpur <ssarangpur@nvidia.com> | 2013-06-21 15:57:48 -0700 |
---|---|---|
committer | Matthew Pedro <mapedro@nvidia.com> | 2013-07-11 12:31:58 -0700 |
commit | 6edbb9b47bfe3717711f382ee17b35181302a9c0 (patch) | |
tree | 96ab886daffddc3b6ad12caadcb4ee33742ef1f1 /drivers | |
parent | 4d7ee9988ffaf7addd462285544dd4ef78bc0c7c (diff) |
video: tegra: dc: hdmi: call tegra_dc_hpd in tegra_hdmi_hotplug_signal
Call tegra_hotplug_signal to queue deferred work after a delay of 30ms and call gpio_get_value
in tegra_dc_hpd
bug 1298680
Change-Id: I7e1c15c1445116b4f6400708335590ea6e2d5d0b
Signed-off-by: sharath sarangpur <ssarangpur@nvidia.com>
Reviewed-on: http://git-master/r/241136
(cherry picked from commit a05fe127fde8c6b77aa686248c6bd8387642aa43)
Reviewed-on: http://git-master/r/247366
Tested-by: Jong Kim <jongk@nvidia.com>
Reviewed-by: Automatic_Commit_Validation_User
GVS: Gerrit_Virtual_Submit
Reviewed-by: Matthew Pedro <mapedro@nvidia.com>
Tested-by: Matthew Pedro <mapedro@nvidia.com>
Diffstat (limited to 'drivers')
-rw-r--r-- | drivers/video/tegra/dc/dc.c | 2 | ||||
-rw-r--r-- | drivers/video/tegra/dc/hdmi.c | 14 |
2 files changed, 8 insertions, 8 deletions
diff --git a/drivers/video/tegra/dc/dc.c b/drivers/video/tegra/dc/dc.c index 7145fcf2edb1..7612e4d266bf 100644 --- a/drivers/video/tegra/dc/dc.c +++ b/drivers/video/tegra/dc/dc.c @@ -750,7 +750,7 @@ bool tegra_dc_hpd(struct tegra_dc *dc) if (dc->out->hotplug_state == -1) /* force off */ return false; } - level = gpio_get_value_cansleep(dc->out->hotplug_gpio); + level = gpio_get_value(dc->out->hotplug_gpio); sense = dc->out->flags & TEGRA_DC_OUT_HOTPLUG_MASK; diff --git a/drivers/video/tegra/dc/hdmi.c b/drivers/video/tegra/dc/hdmi.c index 14eca2f7afcc..e14cda61a3d7 100644 --- a/drivers/video/tegra/dc/hdmi.c +++ b/drivers/video/tegra/dc/hdmi.c @@ -440,10 +440,16 @@ static inline void tegra_hdmi_clrsetbits(struct tegra_dc_hdmi_data *hdmi, tegra_hdmi_writel(hdmi, val, reg); } +static bool tegra_dc_hdmi_hpd(struct tegra_dc *dc) +{ + return tegra_dc_hpd(dc); +} + static inline void tegra_hdmi_hotplug_signal(struct tegra_dc_hdmi_data *hdmi) { + tegra_dc_hpd(hdmi->dc); queue_delayed_work(system_nrt_wq, &hdmi->work, - msecs_to_jiffies(100)); + msecs_to_jiffies(30)); } /* disables hotplug IRQ - this must be balanced */ @@ -808,12 +814,6 @@ static bool tegra_dc_hdmi_mode_filter(const struct tegra_dc *dc, return true; } -static bool tegra_dc_hdmi_hpd(struct tegra_dc *dc) -{ - return tegra_dc_hpd(dc); -} - - void tegra_dc_hdmi_detect_config(struct tegra_dc *dc, struct fb_monspecs *specs) { |