Commit 95067dc6 authored by Ville Syrjälä's avatar Ville Syrjälä
Browse files

drm/i915: Introduce g4x_hdmi_compute_config()



Start pulling some of the more platform specific things out from
intel_hdmi_compute_config(). has_pch_encoder is clearly one
such thing.

Signed-off-by: default avatarVille Syrjälä <ville.syrjala@linux.intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20221107194604.15227-2-ville.syrjala@linux.intel.com


Reviewed-by: default avatarJani Nikula <jani.nikula@intel.com>
parent 9c1f06d9
Loading
Loading
Loading
Loading
+13 −1
Original line number Diff line number Diff line
@@ -79,6 +79,18 @@ static bool intel_hdmi_get_hw_state(struct intel_encoder *encoder,
	return ret;
}

static int g4x_hdmi_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))
		crtc_state->has_pch_encoder = true;

	return intel_hdmi_compute_config(encoder, crtc_state, conn_state);
}

static void intel_hdmi_get_config(struct intel_encoder *encoder,
				  struct intel_crtc_state *pipe_config)
{
@@ -544,7 +556,7 @@ void g4x_hdmi_init(struct drm_i915_private *dev_priv,
			 "HDMI %c", port_name(port));

	intel_encoder->hotplug = intel_hdmi_hotplug;
	intel_encoder->compute_config = intel_hdmi_compute_config;
	intel_encoder->compute_config = g4x_hdmi_compute_config;
	if (HAS_PCH_SPLIT(dev_priv)) {
		intel_encoder->disable = pch_disable_hdmi;
		intel_encoder->post_disable = pch_post_disable_hdmi;
+0 −3
Original line number Diff line number Diff line
@@ -2258,9 +2258,6 @@ int intel_hdmi_compute_config(struct intel_encoder *encoder,
	if (adjusted_mode->flags & DRM_MODE_FLAG_DBLCLK)
		pipe_config->pixel_multiplier = 2;

	if (HAS_PCH_SPLIT(dev_priv) && !HAS_DDI(dev_priv))
		pipe_config->has_pch_encoder = true;

	pipe_config->has_audio =
		intel_hdmi_has_audio(encoder, pipe_config, conn_state);