Caching the has_audio in struct drm_dp_mst_port seems odd, and oddly
placed. Defer audio handling to drivers, and use the info from the
connector display info. i915 was the only one using it anyway.

Signed-off-by: Jani Nikula <jani.nik...@intel.com>
---
 drivers/gpu/drm/display/drm_dp_mst_topology.c        | 2 +-
 drivers/gpu/drm/i915/display/intel_display_debugfs.c | 4 ++--
 drivers/gpu/drm/i915/display/intel_dp_mst.c          | 2 +-
 include/drm/display/drm_dp_mst_helper.h              | 5 -----
 4 files changed, 4 insertions(+), 9 deletions(-)

diff --git a/drivers/gpu/drm/display/drm_dp_mst_topology.c 
b/drivers/gpu/drm/display/drm_dp_mst_topology.c
index 38dab76ae69e..a2b8732db0c8 100644
--- a/drivers/gpu/drm/display/drm_dp_mst_topology.c
+++ b/drivers/gpu/drm/display/drm_dp_mst_topology.c
@@ -4170,7 +4170,7 @@ struct edid *drm_dp_mst_get_edid(struct drm_connector 
*connector, struct drm_dp_
        else {
                edid = drm_get_edid(connector, &port->aux.ddc);
        }
-       port->has_audio = drm_detect_monitor_audio(edid);
+
        drm_dp_mst_topology_put_port(port);
        return edid;
 }
diff --git a/drivers/gpu/drm/i915/display/intel_display_debugfs.c 
b/drivers/gpu/drm/i915/display/intel_display_debugfs.c
index e72288662f02..77caed2552d0 100644
--- a/drivers/gpu/drm/i915/display/intel_display_debugfs.c
+++ b/drivers/gpu/drm/i915/display/intel_display_debugfs.c
@@ -244,9 +244,9 @@ static void intel_dp_info(struct seq_file *m,
 }
 
 static void intel_dp_mst_info(struct seq_file *m,
-                             struct intel_connector *intel_connector)
+                             struct intel_connector *connector)
 {
-       bool has_audio = intel_connector->port->has_audio;
+       bool has_audio = connector->base.display_info.has_audio;
 
        seq_printf(m, "\taudio support: %s\n", str_yes_no(has_audio));
 }
diff --git a/drivers/gpu/drm/i915/display/intel_dp_mst.c 
b/drivers/gpu/drm/i915/display/intel_dp_mst.c
index 2c49d9ab86a2..506118a13866 100644
--- a/drivers/gpu/drm/i915/display/intel_dp_mst.c
+++ b/drivers/gpu/drm/i915/display/intel_dp_mst.c
@@ -298,7 +298,7 @@ static bool intel_dp_mst_has_audio(const struct 
drm_connector_state *conn_state)
                to_intel_connector(conn_state->connector);
 
        if (intel_conn_state->force_audio == HDMI_AUDIO_AUTO)
-               return connector->port->has_audio;
+               return connector->base.display_info.has_audio;
        else
                return intel_conn_state->force_audio == HDMI_AUDIO_ON;
 }
diff --git a/include/drm/display/drm_dp_mst_helper.h 
b/include/drm/display/drm_dp_mst_helper.h
index 32c764fb9cb5..5be96a158ab2 100644
--- a/include/drm/display/drm_dp_mst_helper.h
+++ b/include/drm/display/drm_dp_mst_helper.h
@@ -139,11 +139,6 @@ struct drm_dp_mst_port {
         * that the EDID for all connectors is read immediately.
         */
        struct edid *cached_edid;
-       /**
-        * @has_audio: Tracks whether the sink connector to this port is
-        * audio-capable.
-        */
-       bool has_audio;
 
        /**
         * @fec_capable: bool indicating if FEC can be supported up to that
-- 
2.39.2

Reply via email to