[Intel-gfx] [PATCH 04/13] drm/i915/tc: Check for DP-alt, legacy sinks before taking PHY ownership

Souza, Jose jose.souza at intel.com
Fri Sep 24 00:30:07 UTC 2021


On Tue, 2021-09-21 at 03:23 +0300, Imre Deak wrote:
> On ADL-P the PHY ready/complete flag is always set even in TBT-alt mode.
> To avoid taking the PHY ownership and the following spurious "PHY sudden
> disconnect" messages on this platform when connecting the PHY in TBT
> mode, check if there is any DP-alt or legacy sink connected before
> taking the ownership.
> 
> Cc: José Roberto de Souza <jose.souza at intel.com>
> Signed-off-by: Imre Deak <imre.deak at intel.com>
> ---
>  drivers/gpu/drm/i915/display/intel_tc.c | 7 +++++++
>  1 file changed, 7 insertions(+)
> 
> diff --git a/drivers/gpu/drm/i915/display/intel_tc.c b/drivers/gpu/drm/i915/display/intel_tc.c
> index 0d3555437b0b1..1f76c11d70834 100644
> --- a/drivers/gpu/drm/i915/display/intel_tc.c
> +++ b/drivers/gpu/drm/i915/display/intel_tc.c
> @@ -432,6 +432,13 @@ static void icl_tc_phy_connect(struct intel_digital_port *dig_port,
>  		goto out_set_tbt_alt_mode;
>  	}
>  
> +	if (!(tc_port_live_status_mask(dig_port) &
> +	      (BIT(TC_PORT_DP_ALT) | BIT(TC_PORT_LEGACY)))) {
> +		drm_dbg_kms(&i915->drm, "Port %s: nothing is connected\n",
> +			    dig_port->tc_port_name);

Misleading log, it could have actual TBT connected and it would print nothing is connected.

Could you also add a comment in tc_phy_status_complete() about the TBT behavior on adl-p?

Fixing the above:
Reviewed-by: José Roberto de Souza <jose.souza at intel.com>

> +		goto out_set_tbt_alt_mode;
> +	}
> +
>  	if (!tc_phy_take_ownership(dig_port, true) &&
>  	    !drm_WARN_ON(&i915->drm, dig_port->tc_legacy_port))
>  		goto out_set_tbt_alt_mode;



More information about the Intel-gfx mailing list