From: Jon Mayo Date: Wed, 6 Apr 2011 20:20:15 +0000 (-0700) Subject: video: tegra: reset hdcp failure count on hotplug X-Git-Tag: firefly_0821_release~9833^2~17^2 X-Git-Url: http://demsky.eecs.uci.edu/git/?a=commitdiff_plain;h=98ed9cb6c4bc11a844edfb5d993568cbf77fe737;p=firefly-linux-kernel-4.4.55.git video: tegra: reset hdcp failure count on hotplug use tegra_nvhdcp_on/tegra_nvhdcp_off in hotplug handler to clean up state machine. Change-Id: I62fe503f0628ad4b49d5d7d66fe1702122179877 Signed-off-by: Erik Gilling --- diff --git a/drivers/video/tegra/dc/nvhdcp.c b/drivers/video/tegra/dc/nvhdcp.c index 2229c6b93ad3..faa15c6081fc 100644 --- a/drivers/video/tegra/dc/nvhdcp.c +++ b/drivers/video/tegra/dc/nvhdcp.c @@ -1016,20 +1016,6 @@ err: return; } -void tegra_nvhdcp_set_plug(struct tegra_nvhdcp *nvhdcp, bool hpd) -{ - nvhdcp_debug("hdmi hotplug detected (hpd = %d)\n", hpd); - - nvhdcp_set_plugged(nvhdcp, hpd); - - if (hpd) { - nvhdcp->fail_count = 0; - queue_work(nvhdcp->downstream_wq, &nvhdcp->work); - } else { - flush_workqueue(nvhdcp->downstream_wq); - } -} - static int tegra_nvhdcp_on(struct tegra_nvhdcp *nvhdcp) { nvhdcp->state = STATE_UNAUTHENTICATED; @@ -1050,6 +1036,18 @@ static int tegra_nvhdcp_off(struct tegra_nvhdcp *nvhdcp) return 0; } +void tegra_nvhdcp_set_plug(struct tegra_nvhdcp *nvhdcp, bool hpd) +{ + nvhdcp_debug("hdmi hotplug detected (hpd = %d)\n", hpd); + + if (hpd) { + nvhdcp_set_plugged(nvhdcp, true); + tegra_nvhdcp_on(nvhdcp); + } else { + tegra_nvhdcp_off(nvhdcp); + } +} + int tegra_nvhdcp_set_policy(struct tegra_nvhdcp *nvhdcp, int pol) { if (pol == TEGRA_NVHDCP_POLICY_ALWAYS_ON) {