Commit 68a2ebb5 authored by Thierry Reding's avatar Thierry Reding
Browse files

drm/tegra: sor: Avoid timeouts on unplug events



When the SOR is disabled in DP mode as part of an unplug event, do not
attempt to power the DP link down. Powering down the link requires the
DPAUX to transmit AUX messages which only works if there's a connected
sink.

Signed-off-by: default avatarThierry Reding <treding@nvidia.com>
parent d278e4a9
Loading
Loading
Loading
Loading
+10 −3
Original line number Diff line number Diff line
@@ -2663,9 +2663,16 @@ static void tegra_sor_dp_disable(struct drm_encoder *encoder)
	if (output->panel)
		drm_panel_disable(output->panel);

	/*
	 * Do not attempt to power down a DP link if we're not connected since
	 * the AUX transactions would just be timing out.
	 */
	if (output->connector.status != connector_status_disconnected) {
		err = drm_dp_link_power_down(sor->aux, &sor->link);
		if (err < 0)
		dev_err(sor->dev, "failed to power down link: %d\n", err);
			dev_err(sor->dev, "failed to power down link: %d\n",
				err);
	}

	err = tegra_sor_detach(sor);
	if (err < 0)