diff options
Diffstat (limited to 'drivers/video')
-rw-r--r-- | drivers/video/tegra/dc/hdmi.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/drivers/video/tegra/dc/hdmi.c b/drivers/video/tegra/dc/hdmi.c index 225d48ab15ee..e5e6fff7eb46 100644 --- a/drivers/video/tegra/dc/hdmi.c +++ b/drivers/video/tegra/dc/hdmi.c @@ -1430,6 +1430,10 @@ static bool tegra_dc_hdmi_detect(struct tegra_dc *dc) err = tegra_edid_get_monspecs(hdmi->edid, &specs); } if (err < 0) { + /* + * this check is basically senseless now due to us always + * providing at least one fallback mode through modedb + */ if (dc->out->n_modes) tegra_dc_enable(dc); else { @@ -1458,6 +1462,9 @@ static bool tegra_dc_hdmi_detect(struct tegra_dc *dc) return true; fail: + /* disable upon boot disconnected as well as upon later disconnect */ + if (dc->enabled) + tegra_dc_disable(dc); hdmi->eld_retrieved = false; #ifdef CONFIG_SWITCH switch_set_state(&hdmi->hpd_switch, 0); |