drm/i915/dp: add g4x_dp_compute_config()
authorJani Nikula <jani.nikula@intel.com>
Wed, 11 Dec 2024 12:54:30 +0000 (14:54 +0200)
committerJani Nikula <jani.nikula@intel.com>
Wed, 11 Dec 2024 17:06:04 +0000 (19:06 +0200)
Add g4x_dp_compute_config() instead of using intel_dp_compute_config()
directly, in order to slightly reduce the clutter in the latter wrt
->has_pch_encoder.

Cc: Ville Syrjala <ville.syrjala@linux.intel.com>
Reviewed-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20241211125431.680227-1-jani.nikula@intel.com
Signed-off-by: Jani Nikula <jani.nikula@intel.com>
drivers/gpu/drm/i915/display/g4x_dp.c
drivers/gpu/drm/i915/display/intel_dp.c

index 4fbec065d53ebae73d8559ae65aadbb176273a24..9ac894a7411f3c01078e0e1fda4f76216efe8a27 100644 (file)
@@ -1223,6 +1223,18 @@ static bool ilk_digital_port_connected(struct intel_encoder *encoder)
        return intel_de_read(display, DEISR) & bit;
 }
 
+static int g4x_dp_compute_config(struct intel_encoder *encoder,
+                                struct intel_crtc_state *crtc_state,
+                                struct drm_connector_state *conn_state)
+{
+       struct drm_i915_private *i915 = to_i915(encoder->base.dev);
+
+       if (HAS_PCH_SPLIT(i915) && encoder->port != PORT_A)
+               crtc_state->has_pch_encoder = true;
+
+       return intel_dp_compute_config(encoder, crtc_state, conn_state);
+}
+
 static void g4x_dp_suspend_complete(struct intel_encoder *encoder)
 {
        /*
@@ -1307,7 +1319,7 @@ bool g4x_dp_init(struct drm_i915_private *dev_priv,
        intel_encoder_link_check_init(intel_encoder, intel_dp_link_check);
 
        intel_encoder->hotplug = intel_dp_hotplug;
-       intel_encoder->compute_config = intel_dp_compute_config;
+       intel_encoder->compute_config = g4x_dp_compute_config;
        intel_encoder->get_hw_state = intel_dp_get_hw_state;
        intel_encoder->get_config = intel_dp_get_config;
        intel_encoder->sync_state = intel_dp_sync_state;
index fbe6b77d642ec0e752b128ebd03a2422299953de..adc51567ec1730e10be5f067edda315f04723160 100644 (file)
@@ -3090,9 +3090,6 @@ intel_dp_compute_config(struct intel_encoder *encoder,
        struct intel_connector *connector = intel_dp->attached_connector;
        int ret = 0, link_bpp_x16;
 
-       if (HAS_PCH_SPLIT(dev_priv) && !HAS_DDI(dev_priv) && encoder->port != PORT_A)
-               pipe_config->has_pch_encoder = true;
-
        fixed_mode = intel_panel_fixed_mode(connector, adjusted_mode);
        if (intel_dp_is_edp(intel_dp) && fixed_mode) {
                ret = intel_panel_compute_config(connector, adjusted_mode);