[PATCH] drm/i915: Fix i915_display_info output when connectors are not active

Kandpal, Suraj suraj.kandpal at intel.com
Mon Apr 1 03:33:14 UTC 2024


> Subject: [PATCH] drm/i915: Fix i915_display_info output when connectors are
> not active
> 
> From: Ville Syrjälä <ville.syrjala at linux.intel.com>
> 
> Currently intel_connector_info(), which prints the per-connector output for
> i915_display_info, just bails out early if the connector doesn't have a current
> encoder. That leads to very confusing output where some of your connected
> (and properly detected) outputs appear to have no enumerated modes.
> 
> Get rid of the encoder stuff and just rely on the connector itself so that the
> output is always consistent.
> 
LGTM,
Reviewed-by: Suraj Kandpal <suraj.kandpal at intel.com>

> Signed-off-by: Ville Syrjälä <ville.syrjala at linux.intel.com>
> ---
>  .../gpu/drm/i915/display/intel_display_debugfs.c   | 14 +++-----------
>  1 file changed, 3 insertions(+), 11 deletions(-)
> 
> diff --git a/drivers/gpu/drm/i915/display/intel_display_debugfs.c
> b/drivers/gpu/drm/i915/display/intel_display_debugfs.c
> index b99c024b0934..72efd92e5737 100644
> --- a/drivers/gpu/drm/i915/display/intel_display_debugfs.c
> +++ b/drivers/gpu/drm/i915/display/intel_display_debugfs.c
> @@ -252,9 +252,6 @@ static void intel_connector_info(struct seq_file *m,
>  				 struct drm_connector *connector)
>  {
>  	struct intel_connector *intel_connector =
> to_intel_connector(connector);
> -	const struct drm_connector_state *conn_state = connector->state;
> -	struct intel_encoder *encoder =
> -		to_intel_encoder(conn_state->best_encoder);
>  	const struct drm_display_mode *mode;
> 
>  	seq_printf(m, "[CONNECTOR:%d:%s]: status: %s\n", @@ -271,28
> +268,23 @@ static void intel_connector_info(struct seq_file *m,
>  		   drm_get_subpixel_order_name(connector-
> >display_info.subpixel_order));
>  	seq_printf(m, "\tCEA rev: %d\n", connector->display_info.cea_rev);
> 
> -	if (!encoder)
> -		return;
> -
>  	switch (connector->connector_type) {
>  	case DRM_MODE_CONNECTOR_DisplayPort:
>  	case DRM_MODE_CONNECTOR_eDP:
> -		if (encoder->type == INTEL_OUTPUT_DP_MST)
> +		if (intel_connector->mst_port)
>  			intel_dp_mst_info(m, intel_connector);
>  		else
>  			intel_dp_info(m, intel_connector);
>  		break;
>  	case DRM_MODE_CONNECTOR_HDMIA:
> -		if (encoder->type == INTEL_OUTPUT_HDMI ||
> -		    encoder->type == INTEL_OUTPUT_DDI)
> -			intel_hdmi_info(m, intel_connector);
> +		intel_hdmi_info(m, intel_connector);
>  		break;
>  	default:
>  		break;
>  	}
> 
>  	seq_puts(m, "\tHDCP version: ");
> -	if (intel_encoder_is_mst(encoder)) {
> +	if (intel_connector->mst_port) {
>  		intel_hdcp_info(m, intel_connector, true);
>  		seq_puts(m, "\tMST Hub HDCP version: ");
>  	}
> --
> 2.43.2



More information about the Intel-gfx mailing list