drm/i915/dp: stop caching has_audio in struct intel_dp
authorJani Nikula <jani.nikula@intel.com>
Tue, 30 May 2023 09:08:15 +0000 (12:08 +0300)
committerJani Nikula <jani.nikula@intel.com>
Fri, 2 Jun 2023 10:21:31 +0000 (13:21 +0300)
Use the information stored in display info.

Reviewed-by: Ankit Nautiyal <ankit.k.nautiyal@intel.com>
Signed-off-by: Jani Nikula <jani.nikula@intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/695bbe8b5ebee6e492f95a1c818da15691752dc8.1685437500.git.jani.nikula@intel.com
drivers/gpu/drm/i915/display/intel_display_debugfs.c
drivers/gpu/drm/i915/display/intel_display_types.h
drivers/gpu/drm/i915/display/intel_dp.c

index 77caed2..1416b82 100644 (file)
@@ -237,7 +237,7 @@ static void intel_dp_info(struct seq_file *m,
 
        seq_printf(m, "\tDPCD rev: %x\n", intel_dp->dpcd[DP_DPCD_REV]);
        seq_printf(m, "\taudio support: %s\n",
-                  str_yes_no(intel_dp->has_audio));
+                  str_yes_no(intel_connector->base.display_info.has_audio));
 
        drm_dp_downstream_debug(m, intel_dp->dpcd, intel_dp->downstream_ports,
                                edid ? edid->data : NULL, &intel_dp->aux);
index 2d8297f..94a59fe 100644 (file)
@@ -1708,7 +1708,6 @@ struct intel_dp {
        u8 sink_count;
        bool link_trained;
        bool has_hdmi_sink;
-       bool has_audio;
        bool reset_link_params;
        bool use_max_params;
        u8 dpcd[DP_RECEIVER_CAP_SIZE];
index 4bec8cd..aa1445a 100644 (file)
@@ -2159,6 +2159,7 @@ static bool intel_dp_has_audio(struct intel_encoder *encoder,
 {
        struct drm_i915_private *i915 = to_i915(encoder->base.dev);
        struct intel_dp *intel_dp = enc_to_intel_dp(encoder);
+       struct intel_connector *connector = intel_dp->attached_connector;
        const struct intel_digital_connector_state *intel_conn_state =
                to_intel_digital_connector_state(conn_state);
 
@@ -2166,7 +2167,7 @@ static bool intel_dp_has_audio(struct intel_encoder *encoder,
                return false;
 
        if (intel_conn_state->force_audio == HDMI_AUDIO_AUTO)
-               return intel_dp->has_audio;
+               return connector->base.display_info.has_audio;
        else
                return intel_conn_state->force_audio == HDMI_AUDIO_ON;
 }
@@ -4813,7 +4814,6 @@ intel_dp_set_edid(struct intel_dp *intel_dp)
        edid = drm_edid_raw(drm_edid);
        if (edid && edid->input & DRM_EDID_INPUT_DIGITAL) {
                intel_dp->has_hdmi_sink = drm_detect_hdmi_monitor(edid);
-               intel_dp->has_audio = drm_detect_monitor_audio(edid);
        }
 
        drm_dp_cec_set_edid(&intel_dp->aux, edid);
@@ -4829,7 +4829,6 @@ intel_dp_unset_edid(struct intel_dp *intel_dp)
        connector->detect_edid = NULL;
 
        intel_dp->has_hdmi_sink = false;
-       intel_dp->has_audio = false;
 
        intel_dp->dfp.max_bpc = 0;
        intel_dp->dfp.max_dotclock = 0;