Commit 02a715c3 authored by Ville Syrjälä's avatar Ville Syrjälä

drm/i915: Pass encoder to intel_ddi_enable_pipe_clock()

Since intel_ddi_enable_pipe_clock() was pushed down into the
encoder hooks we can pass on the encoder instead of having
to use intel_ddi_get_crtc_encoder().
Signed-off-by: default avatarVille Syrjälä <ville.syrjala@linux.intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20200417134720.16654-1-ville.syrjala@linux.intel.comReviewed-by: default avatarChris Wilson <chris@chris-wilson.co.uk>
Acked-by: default avatarJani Nikula <jani.nikula@intel.com>
parent 6b7fc6a3
...@@ -294,7 +294,7 @@ static void hsw_pre_enable_crt(struct intel_atomic_state *state, ...@@ -294,7 +294,7 @@ static void hsw_pre_enable_crt(struct intel_atomic_state *state,
hsw_fdi_link_train(encoder, crtc_state); hsw_fdi_link_train(encoder, crtc_state);
intel_ddi_enable_pipe_clock(crtc_state); intel_ddi_enable_pipe_clock(encoder, crtc_state);
} }
static void hsw_enable_crt(struct intel_atomic_state *state, static void hsw_enable_crt(struct intel_atomic_state *state,
......
...@@ -1986,11 +1986,11 @@ static void intel_ddi_get_power_domains(struct intel_encoder *encoder, ...@@ -1986,11 +1986,11 @@ static void intel_ddi_get_power_domains(struct intel_encoder *encoder,
intel_dsc_power_domain(crtc_state)); intel_dsc_power_domain(crtc_state));
} }
void intel_ddi_enable_pipe_clock(const struct intel_crtc_state *crtc_state) void intel_ddi_enable_pipe_clock(struct intel_encoder *encoder,
const struct intel_crtc_state *crtc_state)
{ {
struct intel_crtc *crtc = to_intel_crtc(crtc_state->uapi.crtc); struct intel_crtc *crtc = to_intel_crtc(crtc_state->uapi.crtc);
struct drm_i915_private *dev_priv = to_i915(crtc->base.dev); struct drm_i915_private *dev_priv = to_i915(crtc->base.dev);
struct intel_encoder *encoder = intel_ddi_get_crtc_encoder(crtc);
enum port port = encoder->port; enum port port = encoder->port;
enum transcoder cpu_transcoder = crtc_state->cpu_transcoder; enum transcoder cpu_transcoder = crtc_state->cpu_transcoder;
...@@ -3158,7 +3158,7 @@ static void tgl_ddi_pre_enable_dp(struct intel_atomic_state *state, ...@@ -3158,7 +3158,7 @@ static void tgl_ddi_pre_enable_dp(struct intel_atomic_state *state,
* 7.a Configure Transcoder Clock Select to direct the Port clock to the * 7.a Configure Transcoder Clock Select to direct the Port clock to the
* Transcoder. * Transcoder.
*/ */
intel_ddi_enable_pipe_clock(crtc_state); intel_ddi_enable_pipe_clock(encoder, crtc_state);
/* /*
* 7.b Configure TRANS_DDI_FUNC_CTL DDI Select, DDI Mode Select & MST * 7.b Configure TRANS_DDI_FUNC_CTL DDI Select, DDI Mode Select & MST
...@@ -3296,7 +3296,7 @@ static void hsw_ddi_pre_enable_dp(struct intel_atomic_state *state, ...@@ -3296,7 +3296,7 @@ static void hsw_ddi_pre_enable_dp(struct intel_atomic_state *state,
intel_ddi_enable_fec(encoder, crtc_state); intel_ddi_enable_fec(encoder, crtc_state);
if (!is_mst) if (!is_mst)
intel_ddi_enable_pipe_clock(crtc_state); intel_ddi_enable_pipe_clock(encoder, crtc_state);
intel_dsc_enable(encoder, crtc_state); intel_dsc_enable(encoder, crtc_state);
} }
...@@ -3357,7 +3357,7 @@ static void intel_ddi_pre_enable_hdmi(struct intel_atomic_state *state, ...@@ -3357,7 +3357,7 @@ static void intel_ddi_pre_enable_hdmi(struct intel_atomic_state *state,
if (IS_GEN9_BC(dev_priv)) if (IS_GEN9_BC(dev_priv))
skl_ddi_set_iboost(encoder, level, INTEL_OUTPUT_HDMI); skl_ddi_set_iboost(encoder, level, INTEL_OUTPUT_HDMI);
intel_ddi_enable_pipe_clock(crtc_state); intel_ddi_enable_pipe_clock(encoder, crtc_state);
intel_dig_port->set_infoframes(encoder, intel_dig_port->set_infoframes(encoder,
crtc_state->has_infoframe, crtc_state->has_infoframe,
......
...@@ -27,7 +27,8 @@ void intel_ddi_init(struct drm_i915_private *dev_priv, enum port port); ...@@ -27,7 +27,8 @@ void intel_ddi_init(struct drm_i915_private *dev_priv, enum port port);
bool intel_ddi_get_hw_state(struct intel_encoder *encoder, enum pipe *pipe); bool intel_ddi_get_hw_state(struct intel_encoder *encoder, enum pipe *pipe);
void intel_ddi_enable_transcoder_func(const struct intel_crtc_state *crtc_state); void intel_ddi_enable_transcoder_func(const struct intel_crtc_state *crtc_state);
void intel_ddi_disable_transcoder_func(const struct intel_crtc_state *crtc_state); void intel_ddi_disable_transcoder_func(const struct intel_crtc_state *crtc_state);
void intel_ddi_enable_pipe_clock(const struct intel_crtc_state *crtc_state); void intel_ddi_enable_pipe_clock(struct intel_encoder *encoder,
const struct intel_crtc_state *crtc_state);
void intel_ddi_disable_pipe_clock(const struct intel_crtc_state *crtc_state); void intel_ddi_disable_pipe_clock(const struct intel_crtc_state *crtc_state);
void intel_ddi_set_dp_msa(const struct intel_crtc_state *crtc_state, void intel_ddi_set_dp_msa(const struct intel_crtc_state *crtc_state,
const struct drm_connector_state *conn_state); const struct drm_connector_state *conn_state);
......
...@@ -491,7 +491,7 @@ static void intel_mst_pre_enable_dp(struct intel_atomic_state *state, ...@@ -491,7 +491,7 @@ static void intel_mst_pre_enable_dp(struct intel_atomic_state *state,
* here for the following ones. * here for the following ones.
*/ */
if (INTEL_GEN(dev_priv) < 12 || !first_mst_stream) if (INTEL_GEN(dev_priv) < 12 || !first_mst_stream)
intel_ddi_enable_pipe_clock(pipe_config); intel_ddi_enable_pipe_clock(encoder, pipe_config);
intel_ddi_set_dp_msa(pipe_config, conn_state); intel_ddi_set_dp_msa(pipe_config, conn_state);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment