> Subject: [PATCH] drm/i915: Fix i915_display_info output when connectors are
> not active
> 
> From: Ville Syrjälä <[email protected]>
> 
> 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 <[email protected]>

> Signed-off-by: Ville Syrjälä <[email protected]>
> ---
>  .../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

Reply via email to