mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2026-05-05 01:32:47 -04:00
drm/i915/dp: add g4x_dp_compute_config()
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>
This commit is contained in:
@@ -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;
|
||||
|
||||
@@ -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);
|
||||
|
||||
Reference in New Issue
Block a user