Re: [PATCH 3/9] drm/i915: Pass intel_encoder to enc_to_*()

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Look ok to me.

Reviewed-by: Juha-Pekka Heikkila <juhapekka.heikkila@xxxxxxxxx>

On 4.12.2019 20.05, Ville Syrjala wrote:
From: Ville Syrjälä <ville.syrjala@xxxxxxxxxxxxxxx>

Lots of enc_to_foo(&encoder->base) around. Simplify by passing
in the intel_encoder instead.

@find@
identifier F =~ "^enc_to_.*";
identifier E;
@@
F(struct drm_encoder *E)
{
...
}

@@
identifier find.F;
identifier find.E;
@@
F(
- struct drm_encoder *E
+ struct intel_encoder *encoder
   )
{
<...
- E
+ &encoder->base
...>
}

@@
identifier find.F;
expression E;
@@
- F(E)
+ F(to_intel_encoder(E))

@@
expression E;
@@
- to_intel_encoder(&E->base)
+ E

Signed-off-by: Ville Syrjälä <ville.syrjala@xxxxxxxxxxxxxxx>
---
  drivers/gpu/drm/i915/display/icl_dsi.c        | 58 ++++++++---------
  drivers/gpu/drm/i915/display/intel_ddi.c      | 63 ++++++++++---------
  drivers/gpu/drm/i915/display/intel_display.c  |  4 +-
  .../drm/i915/display/intel_display_power.c    |  6 +-
  .../drm/i915/display/intel_display_types.h    | 19 +++---
  drivers/gpu/drm/i915/display/intel_dp.c       | 54 ++++++++--------
  .../drm/i915/display/intel_dp_aux_backlight.c | 15 ++---
  drivers/gpu/drm/i915/display/intel_dp_mst.c   | 24 +++----
  drivers/gpu/drm/i915/display/intel_dpio_phy.c | 18 +++---
  drivers/gpu/drm/i915/display/intel_dpll_mgr.c |  4 +-
  drivers/gpu/drm/i915/display/intel_dsi.h      |  6 +-
  .../i915/display/intel_dsi_dcs_backlight.c    |  8 +--
  drivers/gpu/drm/i915/display/intel_hdmi.c     | 49 ++++++++-------
  drivers/gpu/drm/i915/display/intel_hdmi.h     |  2 +-
  drivers/gpu/drm/i915/display/intel_hotplug.c  |  4 +-
  drivers/gpu/drm/i915/display/intel_lspcon.c   |  8 +--
  drivers/gpu/drm/i915/display/intel_pipe_crc.c |  2 +-
  drivers/gpu/drm/i915/display/intel_vdsc.c     |  4 +-
  drivers/gpu/drm/i915/display/vlv_dsi.c        | 36 +++++------
  drivers/gpu/drm/i915/display/vlv_dsi_pll.c    | 12 ++--
  drivers/gpu/drm/i915/i915_debugfs.c           | 28 ++++-----
  21 files changed, 214 insertions(+), 210 deletions(-)

diff --git a/drivers/gpu/drm/i915/display/icl_dsi.c b/drivers/gpu/drm/i915/display/icl_dsi.c
index f688207932e0..7e774cd4a56c 100644
--- a/drivers/gpu/drm/i915/display/icl_dsi.c
+++ b/drivers/gpu/drm/i915/display/icl_dsi.c
@@ -76,7 +76,7 @@ static enum transcoder dsi_port_to_transcoder(enum port port)
  static void wait_for_cmds_dispatched_to_panel(struct intel_encoder *encoder)
  {
  	struct drm_i915_private *dev_priv = to_i915(encoder->base.dev);
-	struct intel_dsi *intel_dsi = enc_to_intel_dsi(&encoder->base);
+	struct intel_dsi *intel_dsi = enc_to_intel_dsi(encoder);
  	struct mipi_dsi_device *dsi;
  	enum port port;
  	enum transcoder dsi_trans;
@@ -201,7 +201,7 @@ static int dsi_send_pkt_payld(struct intel_dsi_host *host,
  static void dsi_program_swing_and_deemphasis(struct intel_encoder *encoder)
  {
  	struct drm_i915_private *dev_priv = to_i915(encoder->base.dev);
-	struct intel_dsi *intel_dsi = enc_to_intel_dsi(&encoder->base);
+	struct intel_dsi *intel_dsi = enc_to_intel_dsi(encoder);
  	enum phy phy;
  	u32 tmp;
  	int lane;
@@ -266,7 +266,7 @@ static void configure_dual_link_mode(struct intel_encoder *encoder,
  				     const struct intel_crtc_state *pipe_config)
  {
  	struct drm_i915_private *dev_priv = to_i915(encoder->base.dev);
-	struct intel_dsi *intel_dsi = enc_to_intel_dsi(&encoder->base);
+	struct intel_dsi *intel_dsi = enc_to_intel_dsi(encoder);
  	u32 dss_ctl1;
dss_ctl1 = I915_READ(DSS_CTL1);
@@ -304,7 +304,7 @@ static void configure_dual_link_mode(struct intel_encoder *encoder,
  static void gen11_dsi_program_esc_clk_div(struct intel_encoder *encoder)
  {
  	struct drm_i915_private *dev_priv = to_i915(encoder->base.dev);
-	struct intel_dsi *intel_dsi = enc_to_intel_dsi(&encoder->base);
+	struct intel_dsi *intel_dsi = enc_to_intel_dsi(encoder);
  	enum port port;
  	u32 bpp = mipi_dsi_pixel_format_to_bpp(intel_dsi->pixel_format);
  	u32 afe_clk_khz; /* 8X Clock */
@@ -346,7 +346,7 @@ static void get_dsi_io_power_domains(struct drm_i915_private *dev_priv,
  static void gen11_dsi_enable_io_power(struct intel_encoder *encoder)
  {
  	struct drm_i915_private *dev_priv = to_i915(encoder->base.dev);
-	struct intel_dsi *intel_dsi = enc_to_intel_dsi(&encoder->base);
+	struct intel_dsi *intel_dsi = enc_to_intel_dsi(encoder);
  	enum port port;
  	u32 tmp;
@@ -362,7 +362,7 @@ static void gen11_dsi_enable_io_power(struct intel_encoder *encoder)
  static void gen11_dsi_power_up_lanes(struct intel_encoder *encoder)
  {
  	struct drm_i915_private *dev_priv = to_i915(encoder->base.dev);
-	struct intel_dsi *intel_dsi = enc_to_intel_dsi(&encoder->base);
+	struct intel_dsi *intel_dsi = enc_to_intel_dsi(encoder);
  	enum phy phy;
for_each_dsi_phy(phy, intel_dsi->phys)
@@ -373,7 +373,7 @@ static void gen11_dsi_power_up_lanes(struct intel_encoder *encoder)
  static void gen11_dsi_config_phy_lanes_sequence(struct intel_encoder *encoder)
  {
  	struct drm_i915_private *dev_priv = to_i915(encoder->base.dev);
-	struct intel_dsi *intel_dsi = enc_to_intel_dsi(&encoder->base);
+	struct intel_dsi *intel_dsi = enc_to_intel_dsi(encoder);
  	enum phy phy;
  	u32 tmp;
  	int lane;
@@ -422,7 +422,7 @@ static void gen11_dsi_config_phy_lanes_sequence(struct intel_encoder *encoder)
  static void gen11_dsi_voltage_swing_program_seq(struct intel_encoder *encoder)
  {
  	struct drm_i915_private *dev_priv = to_i915(encoder->base.dev);
-	struct intel_dsi *intel_dsi = enc_to_intel_dsi(&encoder->base);
+	struct intel_dsi *intel_dsi = enc_to_intel_dsi(encoder);
  	u32 tmp;
  	enum phy phy;
@@ -474,7 +474,7 @@ static void gen11_dsi_voltage_swing_program_seq(struct intel_encoder *encoder)
  static void gen11_dsi_enable_ddi_buffer(struct intel_encoder *encoder)
  {
  	struct drm_i915_private *dev_priv = to_i915(encoder->base.dev);
-	struct intel_dsi *intel_dsi = enc_to_intel_dsi(&encoder->base);
+	struct intel_dsi *intel_dsi = enc_to_intel_dsi(encoder);
  	u32 tmp;
  	enum port port;
@@ -493,7 +493,7 @@ static void gen11_dsi_enable_ddi_buffer(struct intel_encoder *encoder)
  static void gen11_dsi_setup_dphy_timings(struct intel_encoder *encoder)
  {
  	struct drm_i915_private *dev_priv = to_i915(encoder->base.dev);
-	struct intel_dsi *intel_dsi = enc_to_intel_dsi(&encoder->base);
+	struct intel_dsi *intel_dsi = enc_to_intel_dsi(encoder);
  	u32 tmp;
  	enum port port;
  	enum phy phy;
@@ -559,7 +559,7 @@ static void gen11_dsi_setup_dphy_timings(struct intel_encoder *encoder)
  static void gen11_dsi_gate_clocks(struct intel_encoder *encoder)
  {
  	struct drm_i915_private *dev_priv = to_i915(encoder->base.dev);
-	struct intel_dsi *intel_dsi = enc_to_intel_dsi(&encoder->base);
+	struct intel_dsi *intel_dsi = enc_to_intel_dsi(encoder);
  	u32 tmp;
  	enum phy phy;
@@ -575,7 +575,7 @@ static void gen11_dsi_gate_clocks(struct intel_encoder *encoder)
  static void gen11_dsi_ungate_clocks(struct intel_encoder *encoder)
  {
  	struct drm_i915_private *dev_priv = to_i915(encoder->base.dev);
-	struct intel_dsi *intel_dsi = enc_to_intel_dsi(&encoder->base);
+	struct intel_dsi *intel_dsi = enc_to_intel_dsi(encoder);
  	u32 tmp;
  	enum phy phy;
@@ -592,7 +592,7 @@ static void gen11_dsi_map_pll(struct intel_encoder *encoder,
  			      const struct intel_crtc_state *crtc_state)
  {
  	struct drm_i915_private *dev_priv = to_i915(encoder->base.dev);
-	struct intel_dsi *intel_dsi = enc_to_intel_dsi(&encoder->base);
+	struct intel_dsi *intel_dsi = enc_to_intel_dsi(encoder);
  	struct intel_shared_dpll *pll = crtc_state->shared_dpll;
  	enum phy phy;
  	u32 val;
@@ -624,7 +624,7 @@ gen11_dsi_configure_transcoder(struct intel_encoder *encoder,
  			       const struct intel_crtc_state *pipe_config)
  {
  	struct drm_i915_private *dev_priv = to_i915(encoder->base.dev);
-	struct intel_dsi *intel_dsi = enc_to_intel_dsi(&encoder->base);
+	struct intel_dsi *intel_dsi = enc_to_intel_dsi(encoder);
  	struct intel_crtc *intel_crtc = to_intel_crtc(pipe_config->uapi.crtc);
  	enum pipe pipe = intel_crtc->pipe;
  	u32 tmp;
@@ -769,7 +769,7 @@ gen11_dsi_set_transcoder_timings(struct intel_encoder *encoder,
  				 const struct intel_crtc_state *pipe_config)
  {
  	struct drm_i915_private *dev_priv = to_i915(encoder->base.dev);
-	struct intel_dsi *intel_dsi = enc_to_intel_dsi(&encoder->base);
+	struct intel_dsi *intel_dsi = enc_to_intel_dsi(encoder);
  	const struct drm_display_mode *adjusted_mode =
  					&pipe_config->hw.adjusted_mode;
  	enum port port;
@@ -889,7 +889,7 @@ gen11_dsi_set_transcoder_timings(struct intel_encoder *encoder,
  static void gen11_dsi_enable_transcoder(struct intel_encoder *encoder)
  {
  	struct drm_i915_private *dev_priv = to_i915(encoder->base.dev);
-	struct intel_dsi *intel_dsi = enc_to_intel_dsi(&encoder->base);
+	struct intel_dsi *intel_dsi = enc_to_intel_dsi(encoder);
  	enum port port;
  	enum transcoder dsi_trans;
  	u32 tmp;
@@ -910,7 +910,7 @@ static void gen11_dsi_enable_transcoder(struct intel_encoder *encoder)
  static void gen11_dsi_setup_timeouts(struct intel_encoder *encoder)
  {
  	struct drm_i915_private *dev_priv = to_i915(encoder->base.dev);
-	struct intel_dsi *intel_dsi = enc_to_intel_dsi(&encoder->base);
+	struct intel_dsi *intel_dsi = enc_to_intel_dsi(encoder);
  	enum port port;
  	enum transcoder dsi_trans;
  	u32 tmp, hs_tx_timeout, lp_rx_timeout, ta_timeout, divisor, mul;
@@ -991,7 +991,7 @@ gen11_dsi_enable_port_and_phy(struct intel_encoder *encoder,
  static void gen11_dsi_powerup_panel(struct intel_encoder *encoder)
  {
  	struct drm_i915_private *dev_priv = to_i915(encoder->base.dev);
-	struct intel_dsi *intel_dsi = enc_to_intel_dsi(&encoder->base);
+	struct intel_dsi *intel_dsi = enc_to_intel_dsi(encoder);
  	struct mipi_dsi_device *dsi;
  	enum port port;
  	enum transcoder dsi_trans;
@@ -1042,7 +1042,7 @@ static void gen11_dsi_pre_enable(struct intel_encoder *encoder,
  				 const struct intel_crtc_state *pipe_config,
  				 const struct drm_connector_state *conn_state)
  {
-	struct intel_dsi *intel_dsi = enc_to_intel_dsi(&encoder->base);
+	struct intel_dsi *intel_dsi = enc_to_intel_dsi(encoder);
/* step3b */
  	gen11_dsi_map_pll(encoder, pipe_config);
@@ -1067,7 +1067,7 @@ static void gen11_dsi_pre_enable(struct intel_encoder *encoder,
  static void gen11_dsi_disable_transcoder(struct intel_encoder *encoder)
  {
  	struct drm_i915_private *dev_priv = to_i915(encoder->base.dev);
-	struct intel_dsi *intel_dsi = enc_to_intel_dsi(&encoder->base);
+	struct intel_dsi *intel_dsi = enc_to_intel_dsi(encoder);
  	enum port port;
  	enum transcoder dsi_trans;
  	u32 tmp;
@@ -1089,7 +1089,7 @@ static void gen11_dsi_disable_transcoder(struct intel_encoder *encoder)
static void gen11_dsi_powerdown_panel(struct intel_encoder *encoder)
  {
-	struct intel_dsi *intel_dsi = enc_to_intel_dsi(&encoder->base);
+	struct intel_dsi *intel_dsi = enc_to_intel_dsi(encoder);
intel_dsi_vbt_exec_sequence(intel_dsi, MIPI_SEQ_DISPLAY_OFF);
  	intel_dsi_vbt_exec_sequence(intel_dsi, MIPI_SEQ_ASSERT_RESET);
@@ -1102,7 +1102,7 @@ static void gen11_dsi_powerdown_panel(struct intel_encoder *encoder)
  static void gen11_dsi_deconfigure_trancoder(struct intel_encoder *encoder)
  {
  	struct drm_i915_private *dev_priv = to_i915(encoder->base.dev);
-	struct intel_dsi *intel_dsi = enc_to_intel_dsi(&encoder->base);
+	struct intel_dsi *intel_dsi = enc_to_intel_dsi(encoder);
  	enum port port;
  	enum transcoder dsi_trans;
  	u32 tmp;
@@ -1143,7 +1143,7 @@ static void gen11_dsi_deconfigure_trancoder(struct intel_encoder *encoder)
  static void gen11_dsi_disable_port(struct intel_encoder *encoder)
  {
  	struct drm_i915_private *dev_priv = to_i915(encoder->base.dev);
-	struct intel_dsi *intel_dsi = enc_to_intel_dsi(&encoder->base);
+	struct intel_dsi *intel_dsi = enc_to_intel_dsi(encoder);
  	u32 tmp;
  	enum port port;
@@ -1165,7 +1165,7 @@ static void gen11_dsi_disable_port(struct intel_encoder *encoder)
  static void gen11_dsi_disable_io_power(struct intel_encoder *encoder)
  {
  	struct drm_i915_private *dev_priv = to_i915(encoder->base.dev);
-	struct intel_dsi *intel_dsi = enc_to_intel_dsi(&encoder->base);
+	struct intel_dsi *intel_dsi = enc_to_intel_dsi(encoder);
  	enum port port;
  	u32 tmp;
@@ -1192,7 +1192,7 @@ static void gen11_dsi_disable(struct intel_encoder *encoder,
  			      const struct intel_crtc_state *old_crtc_state,
  			      const struct drm_connector_state *old_conn_state)
  {
-	struct intel_dsi *intel_dsi = enc_to_intel_dsi(&encoder->base);
+	struct intel_dsi *intel_dsi = enc_to_intel_dsi(encoder);
/* step1: turn off backlight */
  	intel_dsi_vbt_exec_sequence(intel_dsi, MIPI_SEQ_BACKLIGHT_OFF);
@@ -1217,7 +1217,7 @@ static void gen11_dsi_disable(struct intel_encoder *encoder,
  static void gen11_dsi_get_timings(struct intel_encoder *encoder,
  				  struct intel_crtc_state *pipe_config)
  {
-	struct intel_dsi *intel_dsi = enc_to_intel_dsi(&encoder->base);
+	struct intel_dsi *intel_dsi = enc_to_intel_dsi(encoder);
  	struct drm_display_mode *adjusted_mode =
  					&pipe_config->hw.adjusted_mode;
@@ -1246,7 +1246,7 @@ static void gen11_dsi_get_config(struct intel_encoder *encoder,
  {
  	struct drm_i915_private *dev_priv = to_i915(encoder->base.dev);
  	struct intel_crtc *crtc = to_intel_crtc(pipe_config->uapi.crtc);
-	struct intel_dsi *intel_dsi = enc_to_intel_dsi(&encoder->base);
+	struct intel_dsi *intel_dsi = enc_to_intel_dsi(encoder);
/* FIXME: adapt icl_ddi_clock_get() for DSI and use that? */
  	pipe_config->port_clock =
@@ -1296,14 +1296,14 @@ static void gen11_dsi_get_power_domains(struct intel_encoder *encoder,
  					struct intel_crtc_state *crtc_state)
  {
  	get_dsi_io_power_domains(to_i915(encoder->base.dev),
-				 enc_to_intel_dsi(&encoder->base));
+				 enc_to_intel_dsi(encoder));
  }
static bool gen11_dsi_get_hw_state(struct intel_encoder *encoder,
  				   enum pipe *pipe)
  {
  	struct drm_i915_private *dev_priv = to_i915(encoder->base.dev);
-	struct intel_dsi *intel_dsi = enc_to_intel_dsi(&encoder->base);
+	struct intel_dsi *intel_dsi = enc_to_intel_dsi(encoder);
  	enum transcoder dsi_trans;
  	intel_wakeref_t wakeref;
  	enum port port;
diff --git a/drivers/gpu/drm/i915/display/intel_ddi.c b/drivers/gpu/drm/i915/display/intel_ddi.c
index e692c0b28559..52d187db320f 100644
--- a/drivers/gpu/drm/i915/display/intel_ddi.c
+++ b/drivers/gpu/drm/i915/display/intel_ddi.c
@@ -1241,9 +1241,9 @@ void hsw_fdi_link_train(struct intel_crtc *crtc,
static void intel_ddi_init_dp_buf_reg(struct intel_encoder *encoder)
  {
-	struct intel_dp *intel_dp = enc_to_intel_dp(&encoder->base);
+	struct intel_dp *intel_dp = enc_to_intel_dp(encoder);
  	struct intel_digital_port *intel_dig_port =
-		enc_to_dig_port(&encoder->base);
+		enc_to_dig_port(encoder);
intel_dp->DP = intel_dig_port->saved_port_bits |
  		DDI_BUF_CTL_ENABLE | DDI_BUF_TRANS_SELECT(0);
@@ -2221,7 +2221,7 @@ static void intel_ddi_get_power_domains(struct intel_encoder *encoder,
  	if (WARN_ON(intel_crtc_has_type(crtc_state, INTEL_OUTPUT_DP_MST)))
  		return;
- dig_port = enc_to_dig_port(&encoder->base);
+	dig_port = enc_to_dig_port(encoder);
  	intel_display_power_get(dev_priv, dig_port->ddi_io_power_domain);
/*
@@ -2291,7 +2291,7 @@ static void _skl_ddi_set_iboost(struct drm_i915_private *dev_priv,
  static void skl_ddi_set_iboost(struct intel_encoder *encoder,
  			       int level, enum intel_output_type type)
  {
-	struct intel_digital_port *intel_dig_port = enc_to_dig_port(&encoder->base);
+	struct intel_digital_port *intel_dig_port = enc_to_dig_port(encoder);
  	struct drm_i915_private *dev_priv = to_i915(encoder->base.dev);
  	enum port port = encoder->port;
  	u8 iboost;
@@ -2362,7 +2362,7 @@ static void bxt_ddi_vswing_sequence(struct intel_encoder *encoder,
  u8 intel_ddi_dp_voltage_max(struct intel_encoder *encoder)
  {
  	struct drm_i915_private *dev_priv = to_i915(encoder->base.dev);
-	struct intel_dp *intel_dp = enc_to_intel_dp(&encoder->base);
+	struct intel_dp *intel_dp = enc_to_intel_dp(encoder);
  	enum port port = encoder->port;
  	enum phy phy = intel_port_to_phy(dev_priv, port);
  	int n_entries;
@@ -2501,7 +2501,7 @@ static void cnl_ddi_vswing_sequence(struct intel_encoder *encoder,
  		width = 4;
  		rate = 0; /* Rate is always < than 6GHz for HDMI */
  	} else {
-		struct intel_dp *intel_dp = enc_to_intel_dp(&encoder->base);
+		struct intel_dp *intel_dp = enc_to_intel_dp(encoder);
width = intel_dp->lane_count;
  		rate = intel_dp->link_rate;
@@ -2627,7 +2627,7 @@ static void icl_combo_phy_ddi_vswing_sequence(struct intel_encoder *encoder,
  		width = 4;
  		/* Rate is always < than 6GHz for HDMI */
  	} else {
-		struct intel_dp *intel_dp = enc_to_intel_dp(&encoder->base);
+		struct intel_dp *intel_dp = enc_to_intel_dp(encoder);
width = intel_dp->lane_count;
  		rate = intel_dp->link_rate;
@@ -3316,7 +3316,7 @@ static void intel_ddi_enable_fec(struct intel_encoder *encoder,
  	if (!crtc_state->fec_enable)
  		return;
- intel_dp = enc_to_intel_dp(&encoder->base);
+	intel_dp = enc_to_intel_dp(encoder);
  	val = I915_READ(intel_dp->regs.dp_tp_ctl);
  	val |= DP_TP_CTL_FEC_ENABLE;
  	I915_WRITE(intel_dp->regs.dp_tp_ctl, val);
@@ -3336,7 +3336,7 @@ static void intel_ddi_disable_fec_state(struct intel_encoder *encoder,
  	if (!crtc_state->fec_enable)
  		return;
- intel_dp = enc_to_intel_dp(&encoder->base);
+	intel_dp = enc_to_intel_dp(encoder);
  	val = I915_READ(intel_dp->regs.dp_tp_ctl);
  	val &= ~DP_TP_CTL_FEC_ENABLE;
  	I915_WRITE(intel_dp->regs.dp_tp_ctl, val);
@@ -3427,10 +3427,10 @@ static void tgl_ddi_pre_enable_dp(struct intel_encoder *encoder,
  				  const struct intel_crtc_state *crtc_state,
  				  const struct drm_connector_state *conn_state)
  {
-	struct intel_dp *intel_dp = enc_to_intel_dp(&encoder->base);
+	struct intel_dp *intel_dp = enc_to_intel_dp(encoder);
  	struct drm_i915_private *dev_priv = to_i915(encoder->base.dev);
  	enum phy phy = intel_port_to_phy(dev_priv, encoder->port);
-	struct intel_digital_port *dig_port = enc_to_dig_port(&encoder->base);
+	struct intel_digital_port *dig_port = enc_to_dig_port(encoder);
  	bool is_mst = intel_crtc_has_type(crtc_state, INTEL_OUTPUT_DP_MST);
  	int level = intel_ddi_dp_level(intel_dp);
  	enum transcoder transcoder = crtc_state->cpu_transcoder;
@@ -3583,11 +3583,11 @@ static void hsw_ddi_pre_enable_dp(struct intel_encoder *encoder,
  				  const struct intel_crtc_state *crtc_state,
  				  const struct drm_connector_state *conn_state)
  {
-	struct intel_dp *intel_dp = enc_to_intel_dp(&encoder->base);
+	struct intel_dp *intel_dp = enc_to_intel_dp(encoder);
  	struct drm_i915_private *dev_priv = to_i915(encoder->base.dev);
  	enum port port = encoder->port;
  	enum phy phy = intel_port_to_phy(dev_priv, port);
-	struct intel_digital_port *dig_port = enc_to_dig_port(&encoder->base);
+	struct intel_digital_port *dig_port = enc_to_dig_port(encoder);
  	bool is_mst = intel_crtc_has_type(crtc_state, INTEL_OUTPUT_DP_MST);
  	int level = intel_ddi_dp_level(intel_dp);
@@ -3673,12 +3673,12 @@ static void intel_ddi_pre_enable_hdmi(struct intel_encoder *encoder,
  				      const struct intel_crtc_state *crtc_state,
  				      const struct drm_connector_state *conn_state)
  {
-	struct intel_digital_port *intel_dig_port = enc_to_dig_port(&encoder->base);
+	struct intel_digital_port *intel_dig_port = enc_to_dig_port(encoder);
  	struct intel_hdmi *intel_hdmi = &intel_dig_port->hdmi;
  	struct drm_i915_private *dev_priv = to_i915(encoder->base.dev);
  	enum port port = encoder->port;
  	int level = intel_ddi_hdmi_level(dev_priv, port);
-	struct intel_digital_port *dig_port = enc_to_dig_port(&encoder->base);
+	struct intel_digital_port *dig_port = enc_to_dig_port(encoder);
intel_dp_dual_mode_set_tmds_output(intel_hdmi, true);
  	intel_ddi_clk_select(encoder, crtc_state);
@@ -3745,12 +3745,12 @@ static void intel_ddi_pre_enable(struct intel_encoder *encoder,
  		intel_ddi_pre_enable_hdmi(encoder, crtc_state, conn_state);
  	} else {
  		struct intel_lspcon *lspcon =
-				enc_to_intel_lspcon(&encoder->base);
+				enc_to_intel_lspcon(encoder);
intel_ddi_pre_enable_dp(encoder, crtc_state, conn_state);
  		if (lspcon->active) {
  			struct intel_digital_port *dig_port =
-					enc_to_dig_port(&encoder->base);
+					enc_to_dig_port(encoder);
dig_port->set_infoframes(encoder,
  						 crtc_state->has_infoframe,
@@ -3775,7 +3775,7 @@ static void intel_disable_ddi_buf(struct intel_encoder *encoder,
  	}
if (intel_crtc_has_dp_encoder(crtc_state)) {
-		struct intel_dp *intel_dp = enc_to_intel_dp(&encoder->base);
+		struct intel_dp *intel_dp = enc_to_intel_dp(encoder);
val = I915_READ(intel_dp->regs.dp_tp_ctl);
  		val &= ~(DP_TP_CTL_ENABLE | DP_TP_CTL_LINK_TRAIN_MASK);
@@ -3795,7 +3795,7 @@ static void intel_ddi_post_disable_dp(struct intel_encoder *encoder,
  				      const struct drm_connector_state *old_conn_state)
  {
  	struct drm_i915_private *dev_priv = to_i915(encoder->base.dev);
-	struct intel_digital_port *dig_port = enc_to_dig_port(&encoder->base);
+	struct intel_digital_port *dig_port = enc_to_dig_port(encoder);
  	struct intel_dp *intel_dp = &dig_port->dp;
  	bool is_mst = intel_crtc_has_type(old_crtc_state,
  					  INTEL_OUTPUT_DP_MST);
@@ -3829,7 +3829,7 @@ static void intel_ddi_post_disable_hdmi(struct intel_encoder *encoder,
  					const struct drm_connector_state *old_conn_state)
  {
  	struct drm_i915_private *dev_priv = to_i915(encoder->base.dev);
-	struct intel_digital_port *dig_port = enc_to_dig_port(&encoder->base);
+	struct intel_digital_port *dig_port = enc_to_dig_port(encoder);
  	struct intel_hdmi *intel_hdmi = &dig_port->hdmi;
dig_port->set_infoframes(encoder, false,
@@ -3916,7 +3916,7 @@ static void intel_enable_ddi_dp(struct intel_encoder *encoder,
  				const struct drm_connector_state *conn_state)
  {
  	struct drm_i915_private *dev_priv = to_i915(encoder->base.dev);
-	struct intel_dp *intel_dp = enc_to_intel_dp(&encoder->base);
+	struct intel_dp *intel_dp = enc_to_intel_dp(encoder);
  	enum port port = encoder->port;
if (port == PORT_A && INTEL_GEN(dev_priv) < 9)
@@ -3957,7 +3957,7 @@ static void intel_enable_ddi_hdmi(struct intel_encoder *encoder,
  				  const struct drm_connector_state *conn_state)
  {
  	struct drm_i915_private *dev_priv = to_i915(encoder->base.dev);
-	struct intel_digital_port *dig_port = enc_to_dig_port(&encoder->base);
+	struct intel_digital_port *dig_port = enc_to_dig_port(encoder);
  	struct drm_connector *connector = conn_state->connector;
  	enum port port = encoder->port;
@@ -4034,7 +4034,7 @@ static void intel_disable_ddi_dp(struct intel_encoder *encoder,
  				 const struct intel_crtc_state *old_crtc_state,
  				 const struct drm_connector_state *old_conn_state)
  {
-	struct intel_dp *intel_dp = enc_to_intel_dp(&encoder->base);
+	struct intel_dp *intel_dp = enc_to_intel_dp(encoder);
intel_dp->link_trained = false; @@ -4082,7 +4082,7 @@ static void intel_ddi_update_pipe_dp(struct intel_encoder *encoder,
  				     const struct intel_crtc_state *crtc_state,
  				     const struct drm_connector_state *conn_state)
  {
-	struct intel_dp *intel_dp = enc_to_intel_dp(&encoder->base);
+	struct intel_dp *intel_dp = enc_to_intel_dp(encoder);
intel_ddi_set_dp_msa(crtc_state, conn_state); @@ -4146,7 +4146,8 @@ intel_ddi_update_prepare(struct intel_atomic_state *state, WARN_ON(crtc && crtc->active); - intel_tc_port_get_link(enc_to_dig_port(&encoder->base), required_lanes);
+	intel_tc_port_get_link(enc_to_dig_port(encoder),
+		               required_lanes);
  	if (crtc_state && crtc_state->hw.active)
  		intel_update_active_dpll(state, crtc, encoder);
  }
@@ -4156,7 +4157,7 @@ intel_ddi_update_complete(struct intel_atomic_state *state,
  			  struct intel_encoder *encoder,
  			  struct intel_crtc *crtc)
  {
-	intel_tc_port_put_link(enc_to_dig_port(&encoder->base));
+	intel_tc_port_put_link(enc_to_dig_port(encoder));
  }
static void
@@ -4165,7 +4166,7 @@ intel_ddi_pre_pll_enable(struct intel_encoder *encoder,
  			 const struct drm_connector_state *conn_state)
  {
  	struct drm_i915_private *dev_priv = to_i915(encoder->base.dev);
-	struct intel_digital_port *dig_port = enc_to_dig_port(&encoder->base);
+	struct intel_digital_port *dig_port = enc_to_dig_port(encoder);
  	enum phy phy = intel_port_to_phy(dev_priv, encoder->port);
  	bool is_tc_port = intel_phy_is_tc(dev_priv, phy);
@@ -4193,7 +4194,7 @@ intel_ddi_post_pll_disable(struct intel_encoder *encoder,
  			   const struct drm_connector_state *conn_state)
  {
  	struct drm_i915_private *dev_priv = to_i915(encoder->base.dev);
-	struct intel_digital_port *dig_port = enc_to_dig_port(&encoder->base);
+	struct intel_digital_port *dig_port = enc_to_dig_port(encoder);
  	enum phy phy = intel_port_to_phy(dev_priv, encoder->port);
  	bool is_tc_port = intel_phy_is_tc(dev_priv, phy);
@@ -4480,7 +4481,7 @@ static int intel_ddi_compute_config(struct intel_encoder *encoder, static void intel_ddi_encoder_destroy(struct drm_encoder *encoder)
  {
-	struct intel_digital_port *dig_port = enc_to_dig_port(encoder);
+	struct intel_digital_port *dig_port = enc_to_dig_port(to_intel_encoder(encoder));
intel_dp_encoder_flush_work(encoder); @@ -4547,7 +4548,7 @@ static int intel_hdmi_reset_link(struct intel_encoder *encoder,
  				 struct drm_modeset_acquire_ctx *ctx)
  {
  	struct drm_i915_private *dev_priv = to_i915(encoder->base.dev);
-	struct intel_hdmi *hdmi = enc_to_intel_hdmi(&encoder->base);
+	struct intel_hdmi *hdmi = enc_to_intel_hdmi(encoder);
  	struct intel_connector *connector = hdmi->attached_connector;
  	struct i2c_adapter *adapter =
  		intel_gmbus_get_adapter(dev_priv, hdmi->ddc_bus);
@@ -4619,7 +4620,7 @@ intel_ddi_hotplug(struct intel_encoder *encoder,
  		  struct intel_connector *connector,
  		  bool irq_received)
  {
-	struct intel_digital_port *dig_port = enc_to_dig_port(&encoder->base);
+	struct intel_digital_port *dig_port = enc_to_dig_port(encoder);
  	struct drm_modeset_acquire_ctx ctx;
  	enum intel_hotplug_state state;
  	int ret;
diff --git a/drivers/gpu/drm/i915/display/intel_display.c b/drivers/gpu/drm/i915/display/intel_display.c
index 99abc553a8ab..45568a7c6579 100644
--- a/drivers/gpu/drm/i915/display/intel_display.c
+++ b/drivers/gpu/drm/i915/display/intel_display.c
@@ -14505,7 +14505,7 @@ static void intel_set_dp_tp_ctl_normal(struct intel_crtc *crtc,
  		if (conn_state->crtc == &crtc->base)
  			break;
  	}
-	intel_dp = enc_to_intel_dp(&intel_attached_encoder(to_intel_connector(conn))->base);
+	intel_dp = enc_to_intel_dp(intel_attached_encoder(to_intel_connector(conn)));
  	intel_dp_stop_link_train(intel_dp);
  }
@@ -17763,7 +17763,7 @@ intel_modeset_setup_hw_state(struct drm_device *dev,
  		/* We need to sanitize only the MST primary port. */
  		if (encoder->type != INTEL_OUTPUT_DP_MST &&
  		    intel_phy_is_tc(dev_priv, phy))
-			intel_tc_port_sanitize(enc_to_dig_port(&encoder->base));
+			intel_tc_port_sanitize(enc_to_dig_port(encoder));
  	}
get_encoder_power_domains(dev_priv);
diff --git a/drivers/gpu/drm/i915/display/intel_display_power.c b/drivers/gpu/drm/i915/display/intel_display_power.c
index ce1b64f4dd44..7395cb0111a3 100644
--- a/drivers/gpu/drm/i915/display/intel_display_power.c
+++ b/drivers/gpu/drm/i915/display/intel_display_power.c
@@ -519,7 +519,7 @@ static void icl_tc_port_assert_ref_held(struct drm_i915_private *dev_priv,
  		if (encoder->type == INTEL_OUTPUT_DP_MST)
  			continue;
- dig_port = enc_to_dig_port(&encoder->base);
+		dig_port = enc_to_dig_port(encoder);
  		if (WARN_ON(!dig_port))
  			continue;
@@ -1669,8 +1669,8 @@ void chv_phy_powergate_lanes(struct intel_encoder *encoder,
  {
  	struct drm_i915_private *dev_priv = to_i915(encoder->base.dev);
  	struct i915_power_domains *power_domains = &dev_priv->power_domains;
-	enum dpio_phy phy = vlv_dport_to_phy(enc_to_dig_port(&encoder->base));
-	enum dpio_channel ch = vlv_dport_to_channel(enc_to_dig_port(&encoder->base));
+	enum dpio_phy phy = vlv_dport_to_phy(enc_to_dig_port(encoder));
+	enum dpio_channel ch = vlv_dport_to_channel(enc_to_dig_port(encoder));
mutex_lock(&power_domains->lock); diff --git a/drivers/gpu/drm/i915/display/intel_display_types.h b/drivers/gpu/drm/i915/display/intel_display_types.h
index 4d89de5a4964..79c7454ff510 100644
--- a/drivers/gpu/drm/i915/display/intel_display_types.h
+++ b/drivers/gpu/drm/i915/display/intel_display_types.h
@@ -1454,12 +1454,12 @@ static inline bool intel_encoder_is_dig_port(struct intel_encoder *encoder)
  }
static inline struct intel_digital_port *
-enc_to_dig_port(struct drm_encoder *encoder)
+enc_to_dig_port(struct intel_encoder *encoder)
  {
-	struct intel_encoder *intel_encoder = to_intel_encoder(encoder);
+	struct intel_encoder *intel_encoder = encoder;
if (intel_encoder_is_dig_port(intel_encoder))
-		return container_of(encoder, struct intel_digital_port,
+		return container_of(&encoder->base, struct intel_digital_port,
  				    base.base);
  	else
  		return NULL;
@@ -1468,16 +1468,17 @@ enc_to_dig_port(struct drm_encoder *encoder)
  static inline struct intel_digital_port *
  conn_to_dig_port(struct intel_connector *connector)
  {
-	return enc_to_dig_port(&intel_attached_encoder(connector)->base);
+	return enc_to_dig_port(intel_attached_encoder(connector));
  }
static inline struct intel_dp_mst_encoder *
-enc_to_mst(struct drm_encoder *encoder)
+enc_to_mst(struct intel_encoder *encoder)
  {
-	return container_of(encoder, struct intel_dp_mst_encoder, base.base);
+	return container_of(&encoder->base, struct intel_dp_mst_encoder,
+			    base.base);
  }
-static inline struct intel_dp *enc_to_intel_dp(struct drm_encoder *encoder)
+static inline struct intel_dp *enc_to_intel_dp(struct intel_encoder *encoder)
  {
  	return &enc_to_dig_port(encoder)->dp;
  }
@@ -1490,14 +1491,14 @@ static inline bool intel_encoder_is_dp(struct intel_encoder *encoder)
  		return true;
  	case INTEL_OUTPUT_DDI:
  		/* Skip pure HDMI/DVI DDI encoders */
-		return i915_mmio_reg_valid(enc_to_intel_dp(&encoder->base)->output_reg);
+		return i915_mmio_reg_valid(enc_to_intel_dp(encoder)->output_reg);
  	default:
  		return false;
  	}
  }
static inline struct intel_lspcon *
-enc_to_intel_lspcon(struct drm_encoder *encoder)
+enc_to_intel_lspcon(struct intel_encoder *encoder)
  {
  	return &enc_to_dig_port(encoder)->lspcon;
  }
diff --git a/drivers/gpu/drm/i915/display/intel_dp.c b/drivers/gpu/drm/i915/display/intel_dp.c
index 668b636fcfaa..93f3d232fcb5 100644
--- a/drivers/gpu/drm/i915/display/intel_dp.c
+++ b/drivers/gpu/drm/i915/display/intel_dp.c
@@ -148,7 +148,7 @@ bool intel_dp_is_edp(struct intel_dp *intel_dp)
static struct intel_dp *intel_attached_dp(struct intel_connector *connector)
  {
-	return enc_to_intel_dp(&intel_attached_encoder(connector)->base);
+	return enc_to_intel_dp(intel_attached_encoder(connector));
  }
static void intel_dp_link_down(struct intel_encoder *encoder,
@@ -834,7 +834,7 @@ static enum pipe vlv_find_free_pps(struct drm_i915_private *dev_priv)
  	 * Pick one that's not used by other ports.
  	 */
  	for_each_intel_dp(&dev_priv->drm, encoder) {
-		struct intel_dp *intel_dp = enc_to_intel_dp(&encoder->base);
+		struct intel_dp *intel_dp = enc_to_intel_dp(encoder);
if (encoder->type == INTEL_OUTPUT_EDP) {
  			WARN_ON(intel_dp->active_pipe != INVALID_PIPE &&
@@ -1031,7 +1031,7 @@ void intel_power_sequencer_reset(struct drm_i915_private *dev_priv)
  	 */
for_each_intel_dp(&dev_priv->drm, encoder) {
-		struct intel_dp *intel_dp = enc_to_intel_dp(&encoder->base);
+		struct intel_dp *intel_dp = enc_to_intel_dp(encoder);
WARN_ON(intel_dp->active_pipe != INVALID_PIPE); @@ -2165,7 +2165,7 @@ intel_dp_compute_link_config(struct intel_encoder *encoder,
  			     struct drm_connector_state *conn_state)
  {
  	struct drm_display_mode *adjusted_mode = &pipe_config->hw.adjusted_mode;
-	struct intel_dp *intel_dp = enc_to_intel_dp(&encoder->base);
+	struct intel_dp *intel_dp = enc_to_intel_dp(encoder);
  	struct link_config_limits limits;
  	int common_len;
  	int ret;
@@ -2326,8 +2326,8 @@ intel_dp_compute_config(struct intel_encoder *encoder,
  {
  	struct drm_i915_private *dev_priv = to_i915(encoder->base.dev);
  	struct drm_display_mode *adjusted_mode = &pipe_config->hw.adjusted_mode;
-	struct intel_dp *intel_dp = enc_to_intel_dp(&encoder->base);
-	struct intel_lspcon *lspcon = enc_to_intel_lspcon(&encoder->base);
+	struct intel_dp *intel_dp = enc_to_intel_dp(encoder);
+	struct intel_lspcon *lspcon = enc_to_intel_lspcon(encoder);
  	enum port port = encoder->port;
  	struct intel_crtc *intel_crtc = to_intel_crtc(pipe_config->uapi.crtc);
  	struct intel_connector *intel_connector = intel_dp->attached_connector;
@@ -2442,7 +2442,7 @@ static void intel_dp_prepare(struct intel_encoder *encoder,
  			     const struct intel_crtc_state *pipe_config)
  {
  	struct drm_i915_private *dev_priv = to_i915(encoder->base.dev);
-	struct intel_dp *intel_dp = enc_to_intel_dp(&encoder->base);
+	struct intel_dp *intel_dp = enc_to_intel_dp(encoder);
  	enum port port = encoder->port;
  	struct intel_crtc *crtc = to_intel_crtc(pipe_config->uapi.crtc);
  	const struct drm_display_mode *adjusted_mode = &pipe_config->hw.adjusted_mode;
@@ -2940,7 +2940,7 @@ static void _intel_edp_backlight_on(struct intel_dp *intel_dp)
  void intel_edp_backlight_on(const struct intel_crtc_state *crtc_state,
  			    const struct drm_connector_state *conn_state)
  {
-	struct intel_dp *intel_dp = enc_to_intel_dp(conn_state->best_encoder);
+	struct intel_dp *intel_dp = enc_to_intel_dp(to_intel_encoder(conn_state->best_encoder));
if (!intel_dp_is_edp(intel_dp))
  		return;
@@ -2978,7 +2978,7 @@ static void _intel_edp_backlight_off(struct intel_dp *intel_dp)
  /* Disable backlight PP control and backlight PWM. */
  void intel_edp_backlight_off(const struct drm_connector_state *old_conn_state)
  {
-	struct intel_dp *intel_dp = enc_to_intel_dp(old_conn_state->best_encoder);
+	struct intel_dp *intel_dp = enc_to_intel_dp(to_intel_encoder(old_conn_state->best_encoder));
if (!intel_dp_is_edp(intel_dp))
  		return;
@@ -3218,7 +3218,7 @@ static bool intel_dp_get_hw_state(struct intel_encoder *encoder,
  				  enum pipe *pipe)
  {
  	struct drm_i915_private *dev_priv = to_i915(encoder->base.dev);
-	struct intel_dp *intel_dp = enc_to_intel_dp(&encoder->base);
+	struct intel_dp *intel_dp = enc_to_intel_dp(encoder);
  	intel_wakeref_t wakeref;
  	bool ret;
@@ -3239,7 +3239,7 @@ static void intel_dp_get_config(struct intel_encoder *encoder,
  				struct intel_crtc_state *pipe_config)
  {
  	struct drm_i915_private *dev_priv = to_i915(encoder->base.dev);
-	struct intel_dp *intel_dp = enc_to_intel_dp(&encoder->base);
+	struct intel_dp *intel_dp = enc_to_intel_dp(encoder);
  	u32 tmp, flags = 0;
  	enum port port = encoder->port;
  	struct intel_crtc *crtc = to_intel_crtc(pipe_config->uapi.crtc);
@@ -3323,7 +3323,7 @@ static void intel_disable_dp(struct intel_encoder *encoder,
  			     const struct intel_crtc_state *old_crtc_state,
  			     const struct drm_connector_state *old_conn_state)
  {
-	struct intel_dp *intel_dp = enc_to_intel_dp(&encoder->base);
+	struct intel_dp *intel_dp = enc_to_intel_dp(encoder);
intel_dp->link_trained = false; @@ -3357,7 +3357,7 @@ static void g4x_post_disable_dp(struct intel_encoder *encoder,
  				const struct intel_crtc_state *old_crtc_state,
  				const struct drm_connector_state *old_conn_state)
  {
-	struct intel_dp *intel_dp = enc_to_intel_dp(&encoder->base);
+	struct intel_dp *intel_dp = enc_to_intel_dp(encoder);
  	enum port port = encoder->port;
/*
@@ -3508,7 +3508,7 @@ static void intel_enable_dp(struct intel_encoder *encoder,
  			    const struct drm_connector_state *conn_state)
  {
  	struct drm_i915_private *dev_priv = to_i915(encoder->base.dev);
-	struct intel_dp *intel_dp = enc_to_intel_dp(&encoder->base);
+	struct intel_dp *intel_dp = enc_to_intel_dp(encoder);
  	struct intel_crtc *crtc = to_intel_crtc(pipe_config->uapi.crtc);
  	u32 dp_reg = I915_READ(intel_dp->output_reg);
  	enum pipe pipe = crtc->pipe;
@@ -3568,7 +3568,7 @@ static void g4x_pre_enable_dp(struct intel_encoder *encoder,
  			      const struct intel_crtc_state *pipe_config,
  			      const struct drm_connector_state *conn_state)
  {
-	struct intel_dp *intel_dp = enc_to_intel_dp(&encoder->base);
+	struct intel_dp *intel_dp = enc_to_intel_dp(encoder);
  	enum port port = encoder->port;
intel_dp_prepare(encoder, pipe_config);
@@ -3618,7 +3618,7 @@ static void vlv_steal_power_sequencer(struct drm_i915_private *dev_priv,
  	lockdep_assert_held(&dev_priv->pps_mutex);
for_each_intel_dp(&dev_priv->drm, encoder) {
-		struct intel_dp *intel_dp = enc_to_intel_dp(&encoder->base);
+		struct intel_dp *intel_dp = enc_to_intel_dp(encoder);
WARN(intel_dp->active_pipe == pipe,
  		     "stealing pipe %c power sequencer from active [ENCODER:%d:%s]\n",
@@ -3641,7 +3641,7 @@ static void vlv_init_panel_power_sequencer(struct intel_encoder *encoder,
  					   const struct intel_crtc_state *crtc_state)
  {
  	struct drm_i915_private *dev_priv = to_i915(encoder->base.dev);
-	struct intel_dp *intel_dp = enc_to_intel_dp(&encoder->base);
+	struct intel_dp *intel_dp = enc_to_intel_dp(encoder);
  	struct intel_crtc *crtc = to_intel_crtc(crtc_state->uapi.crtc);
lockdep_assert_held(&dev_priv->pps_mutex);
@@ -4163,7 +4163,7 @@ intel_dp_link_down(struct intel_encoder *encoder,
  		   const struct intel_crtc_state *old_crtc_state)
  {
  	struct drm_i915_private *dev_priv = to_i915(encoder->base.dev);
-	struct intel_dp *intel_dp = enc_to_intel_dp(&encoder->base);
+	struct intel_dp *intel_dp = enc_to_intel_dp(encoder);
  	struct intel_crtc *crtc = to_intel_crtc(old_crtc_state->uapi.crtc);
  	enum port port = encoder->port;
  	u32 DP = intel_dp->DP;
@@ -5056,7 +5056,7 @@ int intel_dp_retrain_link(struct intel_encoder *encoder,
  			  struct drm_modeset_acquire_ctx *ctx)
  {
  	struct drm_i915_private *dev_priv = to_i915(encoder->base.dev);
-	struct intel_dp *intel_dp = enc_to_intel_dp(&encoder->base);
+	struct intel_dp *intel_dp = enc_to_intel_dp(encoder);
  	struct intel_connector *connector = intel_dp->attached_connector;
  	struct drm_connector_state *conn_state;
  	struct intel_crtc_state *crtc_state;
@@ -5496,7 +5496,7 @@ static bool intel_combo_phy_connected(struct drm_i915_private *dev_priv,
  static bool icp_digital_port_connected(struct intel_encoder *encoder)
  {
  	struct drm_i915_private *dev_priv = to_i915(encoder->base.dev);
-	struct intel_digital_port *dig_port = enc_to_dig_port(&encoder->base);
+	struct intel_digital_port *dig_port = enc_to_dig_port(encoder);
  	enum phy phy = intel_port_to_phy(dev_priv, encoder->port);
if (intel_phy_is_combo(dev_priv, phy))
@@ -5799,7 +5799,7 @@ intel_dp_connector_unregister(struct drm_connector *connector)
void intel_dp_encoder_flush_work(struct drm_encoder *encoder)
  {
-	struct intel_digital_port *intel_dig_port = enc_to_dig_port(encoder);
+	struct intel_digital_port *intel_dig_port = enc_to_dig_port(to_intel_encoder(encoder));
  	struct intel_dp *intel_dp = &intel_dig_port->dp;
intel_dp_mst_encoder_cleanup(intel_dig_port);
@@ -5828,12 +5828,12 @@ static void intel_dp_encoder_destroy(struct drm_encoder *encoder)
  	intel_dp_encoder_flush_work(encoder);
drm_encoder_cleanup(encoder);
-	kfree(enc_to_dig_port(encoder));
+	kfree(enc_to_dig_port(to_intel_encoder(encoder)));
  }
void intel_dp_encoder_suspend(struct intel_encoder *intel_encoder)
  {
-	struct intel_dp *intel_dp = enc_to_intel_dp(&intel_encoder->base);
+	struct intel_dp *intel_dp = enc_to_intel_dp(intel_encoder);
  	intel_wakeref_t wakeref;
if (!intel_dp_is_edp(intel_dp))
@@ -5864,7 +5864,7 @@ static
  int intel_dp_hdcp_write_an_aksv(struct intel_digital_port *intel_dig_port,
  				u8 *an)
  {
-	struct intel_dp *intel_dp = enc_to_intel_dp(&intel_dig_port->base.base);
+	struct intel_dp *intel_dp = enc_to_intel_dp(to_intel_encoder(&intel_dig_port->base.base));
  	static const struct drm_dp_aux_msg msg = {
  		.request = DP_AUX_NATIVE_WRITE,
  		.address = DP_AUX_HDCP_AKSV,
@@ -6474,7 +6474,7 @@ static enum pipe vlv_active_pipe(struct intel_dp *intel_dp)
  void intel_dp_encoder_reset(struct drm_encoder *encoder)
  {
  	struct drm_i915_private *dev_priv = to_i915(encoder->dev);
-	struct intel_dp *intel_dp = enc_to_intel_dp(encoder);
+	struct intel_dp *intel_dp = enc_to_intel_dp(to_intel_encoder(encoder));
  	struct intel_lspcon *lspcon = dp_to_lspcon(intel_dp);
  	intel_wakeref_t wakeref;
@@ -7620,7 +7620,7 @@ void intel_dp_mst_suspend(struct drm_i915_private *dev_priv)
  		if (encoder->type != INTEL_OUTPUT_DDI)
  			continue;
- intel_dp = enc_to_intel_dp(&encoder->base);
+		intel_dp = enc_to_intel_dp(encoder);
if (!intel_dp->can_mst)
  			continue;
@@ -7641,7 +7641,7 @@ void intel_dp_mst_resume(struct drm_i915_private *dev_priv)
  		if (encoder->type != INTEL_OUTPUT_DDI)
  			continue;
- intel_dp = enc_to_intel_dp(&encoder->base);
+		intel_dp = enc_to_intel_dp(encoder);
if (!intel_dp->can_mst)
  			continue;
diff --git a/drivers/gpu/drm/i915/display/intel_dp_aux_backlight.c b/drivers/gpu/drm/i915/display/intel_dp_aux_backlight.c
index 020422da2ae2..7c653f8c307f 100644
--- a/drivers/gpu/drm/i915/display/intel_dp_aux_backlight.c
+++ b/drivers/gpu/drm/i915/display/intel_dp_aux_backlight.c
@@ -57,7 +57,7 @@ static void set_aux_backlight_enable(struct intel_dp *intel_dp, bool enable)
   */
  static u32 intel_dp_aux_get_backlight(struct intel_connector *connector)
  {
-	struct intel_dp *intel_dp = enc_to_intel_dp(&connector->encoder->base);
+	struct intel_dp *intel_dp = enc_to_intel_dp(connector->encoder);
  	u8 read_val[2] = { 0x0 };
  	u16 level = 0;
@@ -82,7 +82,7 @@ static void
  intel_dp_aux_set_backlight(const struct drm_connector_state *conn_state, u32 level)
  {
  	struct intel_connector *connector = to_intel_connector(conn_state->connector);
-	struct intel_dp *intel_dp = enc_to_intel_dp(&connector->encoder->base);
+	struct intel_dp *intel_dp = enc_to_intel_dp(connector->encoder);
  	u8 vals[2] = { 0x0 };
vals[0] = level;
@@ -110,7 +110,7 @@ intel_dp_aux_set_backlight(const struct drm_connector_state *conn_state, u32 lev
  static bool intel_dp_aux_set_pwm_freq(struct intel_connector *connector)
  {
  	struct drm_i915_private *dev_priv = to_i915(connector->base.dev);
-	struct intel_dp *intel_dp = enc_to_intel_dp(&connector->encoder->base);
+	struct intel_dp *intel_dp = enc_to_intel_dp(connector->encoder);
  	int freq, fxp, fxp_min, fxp_max, fxp_actual, f = 1;
  	u8 pn, pn_min, pn_max;
@@ -178,7 +178,7 @@ static void intel_dp_aux_enable_backlight(const struct intel_crtc_state *crtc_st
  					  const struct drm_connector_state *conn_state)
  {
  	struct intel_connector *connector = to_intel_connector(conn_state->connector);
-	struct intel_dp *intel_dp = enc_to_intel_dp(&connector->encoder->base);
+	struct intel_dp *intel_dp = enc_to_intel_dp(connector->encoder);
  	u8 dpcd_buf, new_dpcd_buf, edp_backlight_mode;
if (drm_dp_dpcd_readb(&intel_dp->aux,
@@ -222,13 +222,14 @@ static void intel_dp_aux_enable_backlight(const struct intel_crtc_state *crtc_st
static void intel_dp_aux_disable_backlight(const struct drm_connector_state *old_conn_state)
  {
-	set_aux_backlight_enable(enc_to_intel_dp(old_conn_state->best_encoder), false);
+	set_aux_backlight_enable(enc_to_intel_dp(to_intel_encoder(old_conn_state->best_encoder)),
+				 false);
  }
static int intel_dp_aux_setup_backlight(struct intel_connector *connector,
  					enum pipe pipe)
  {
-	struct intel_dp *intel_dp = enc_to_intel_dp(&connector->encoder->base);
+	struct intel_dp *intel_dp = enc_to_intel_dp(connector->encoder);
  	struct intel_panel *panel = &connector->panel;
if (intel_dp->edp_dpcd[2] & DP_EDP_BACKLIGHT_BRIGHTNESS_BYTE_COUNT)
@@ -247,7 +248,7 @@ static int intel_dp_aux_setup_backlight(struct intel_connector *connector,
  static bool
  intel_dp_aux_display_control_capable(struct intel_connector *connector)
  {
-	struct intel_dp *intel_dp = enc_to_intel_dp(&connector->encoder->base);
+	struct intel_dp *intel_dp = enc_to_intel_dp(connector->encoder);
/* Check the eDP Display control capabilities registers to determine if
  	 * the panel can support backlight control over the aux channel
diff --git a/drivers/gpu/drm/i915/display/intel_dp_mst.c b/drivers/gpu/drm/i915/display/intel_dp_mst.c
index a1e4f4197a67..af7f6d670e07 100644
--- a/drivers/gpu/drm/i915/display/intel_dp_mst.c
+++ b/drivers/gpu/drm/i915/display/intel_dp_mst.c
@@ -43,7 +43,7 @@ static int intel_dp_mst_compute_link_config(struct intel_encoder *encoder,
  					    struct link_config_limits *limits)
  {
  	struct drm_atomic_state *state = crtc_state->uapi.state;
-	struct intel_dp_mst_encoder *intel_mst = enc_to_mst(&encoder->base);
+	struct intel_dp_mst_encoder *intel_mst = enc_to_mst(encoder);
  	struct intel_dp *intel_dp = &intel_mst->primary->dp;
  	struct intel_connector *connector =
  		to_intel_connector(conn_state->connector);
@@ -92,7 +92,7 @@ static int intel_dp_mst_compute_config(struct intel_encoder *encoder,
  				       struct drm_connector_state *conn_state)
  {
  	struct drm_i915_private *dev_priv = to_i915(encoder->base.dev);
-	struct intel_dp_mst_encoder *intel_mst = enc_to_mst(&encoder->base);
+	struct intel_dp_mst_encoder *intel_mst = enc_to_mst(encoder);
  	struct intel_dp *intel_dp = &intel_mst->primary->dp;
  	struct intel_connector *connector =
  		to_intel_connector(conn_state->connector);
@@ -195,7 +195,7 @@ intel_dp_mst_atomic_check(struct drm_connector *connector,
  			return 0;
  	}
- mgr = &enc_to_mst(old_conn_state->best_encoder)->primary->dp.mst_mgr;
+	mgr = &enc_to_mst(to_intel_encoder(old_conn_state->best_encoder))->primary->dp.mst_mgr;
  	ret = drm_dp_atomic_release_vcpi_slots(state, mgr,
  					       intel_connector->port);
@@ -206,7 +206,7 @@ static void intel_mst_disable_dp(struct intel_encoder *encoder,
  				 const struct intel_crtc_state *old_crtc_state,
  				 const struct drm_connector_state *old_conn_state)
  {
-	struct intel_dp_mst_encoder *intel_mst = enc_to_mst(&encoder->base);
+	struct intel_dp_mst_encoder *intel_mst = enc_to_mst(encoder);
  	struct intel_digital_port *intel_dig_port = intel_mst->primary;
  	struct intel_dp *intel_dp = &intel_dig_port->dp;
  	struct intel_connector *connector =
@@ -230,7 +230,7 @@ static void intel_mst_post_disable_dp(struct intel_encoder *encoder,
  				      const struct intel_crtc_state *old_crtc_state,
  				      const struct drm_connector_state *old_conn_state)
  {
-	struct intel_dp_mst_encoder *intel_mst = enc_to_mst(&encoder->base);
+	struct intel_dp_mst_encoder *intel_mst = enc_to_mst(encoder);
  	struct intel_digital_port *intel_dig_port = intel_mst->primary;
  	struct intel_dp *intel_dp = &intel_dig_port->dp;
  	struct intel_connector *connector =
@@ -267,7 +267,7 @@ static void intel_mst_pre_pll_enable_dp(struct intel_encoder *encoder,
  					const struct intel_crtc_state *pipe_config,
  					const struct drm_connector_state *conn_state)
  {
-	struct intel_dp_mst_encoder *intel_mst = enc_to_mst(&encoder->base);
+	struct intel_dp_mst_encoder *intel_mst = enc_to_mst(encoder);
  	struct intel_digital_port *intel_dig_port = intel_mst->primary;
  	struct intel_dp *intel_dp = &intel_dig_port->dp;
@@ -280,7 +280,7 @@ static void intel_mst_post_pll_disable_dp(struct intel_encoder *encoder,
  					  const struct intel_crtc_state *old_crtc_state,
  					  const struct drm_connector_state *old_conn_state)
  {
-	struct intel_dp_mst_encoder *intel_mst = enc_to_mst(&encoder->base);
+	struct intel_dp_mst_encoder *intel_mst = enc_to_mst(encoder);
  	struct intel_digital_port *intel_dig_port = intel_mst->primary;
  	struct intel_dp *intel_dp = &intel_dig_port->dp;
@@ -294,7 +294,7 @@ static void intel_mst_pre_enable_dp(struct intel_encoder *encoder,
  				    const struct intel_crtc_state *pipe_config,
  				    const struct drm_connector_state *conn_state)
  {
-	struct intel_dp_mst_encoder *intel_mst = enc_to_mst(&encoder->base);
+	struct intel_dp_mst_encoder *intel_mst = enc_to_mst(encoder);
  	struct intel_digital_port *intel_dig_port = intel_mst->primary;
  	struct intel_dp *intel_dp = &intel_dig_port->dp;
  	struct drm_i915_private *dev_priv = to_i915(encoder->base.dev);
@@ -352,7 +352,7 @@ static void intel_mst_enable_dp(struct intel_encoder *encoder,
  				const struct intel_crtc_state *pipe_config,
  				const struct drm_connector_state *conn_state)
  {
-	struct intel_dp_mst_encoder *intel_mst = enc_to_mst(&encoder->base);
+	struct intel_dp_mst_encoder *intel_mst = enc_to_mst(encoder);
  	struct intel_digital_port *intel_dig_port = intel_mst->primary;
  	struct intel_dp *intel_dp = &intel_dig_port->dp;
  	struct drm_i915_private *dev_priv = to_i915(encoder->base.dev);
@@ -373,7 +373,7 @@ static void intel_mst_enable_dp(struct intel_encoder *encoder,
  static bool intel_dp_mst_enc_get_hw_state(struct intel_encoder *encoder,
  				      enum pipe *pipe)
  {
-	struct intel_dp_mst_encoder *intel_mst = enc_to_mst(&encoder->base);
+	struct intel_dp_mst_encoder *intel_mst = enc_to_mst(encoder);
  	*pipe = intel_mst->pipe;
  	if (intel_mst->connector)
  		return true;
@@ -383,7 +383,7 @@ static bool intel_dp_mst_enc_get_hw_state(struct intel_encoder *encoder,
  static void intel_dp_mst_enc_get_config(struct intel_encoder *encoder,
  					struct intel_crtc_state *pipe_config)
  {
-	struct intel_dp_mst_encoder *intel_mst = enc_to_mst(&encoder->base);
+	struct intel_dp_mst_encoder *intel_mst = enc_to_mst(encoder);
  	struct intel_digital_port *intel_dig_port = intel_mst->primary;
intel_ddi_get_config(&intel_dig_port->base, pipe_config);
@@ -491,7 +491,7 @@ static const struct drm_connector_helper_funcs intel_dp_mst_connector_helper_fun
static void intel_dp_mst_encoder_destroy(struct drm_encoder *encoder)
  {
-	struct intel_dp_mst_encoder *intel_mst = enc_to_mst(encoder);
+	struct intel_dp_mst_encoder *intel_mst = enc_to_mst(to_intel_encoder(encoder));
drm_encoder_cleanup(encoder);
  	kfree(intel_mst);
diff --git a/drivers/gpu/drm/i915/display/intel_dpio_phy.c b/drivers/gpu/drm/i915/display/intel_dpio_phy.c
index 704f38681c4b..6fb1f7a7364e 100644
--- a/drivers/gpu/drm/i915/display/intel_dpio_phy.c
+++ b/drivers/gpu/drm/i915/display/intel_dpio_phy.c
@@ -642,7 +642,7 @@ void chv_set_phy_signal_level(struct intel_encoder *encoder,
  			      bool uniq_trans_scale)
  {
  	struct drm_i915_private *dev_priv = to_i915(encoder->base.dev);
-	struct intel_digital_port *dport = enc_to_dig_port(&encoder->base);
+	struct intel_digital_port *dport = enc_to_dig_port(encoder);
  	struct intel_crtc *intel_crtc = to_intel_crtc(encoder->base.crtc);
  	enum dpio_channel ch = vlv_dport_to_channel(dport);
  	enum pipe pipe = intel_crtc->pipe;
@@ -738,7 +738,7 @@ void chv_data_lane_soft_reset(struct intel_encoder *encoder,
  			      bool reset)
  {
  	struct drm_i915_private *dev_priv = to_i915(encoder->base.dev);
-	enum dpio_channel ch = vlv_dport_to_channel(enc_to_dig_port(&encoder->base));
+	enum dpio_channel ch = vlv_dport_to_channel(enc_to_dig_port(encoder));
  	struct intel_crtc *crtc = to_intel_crtc(crtc_state->uapi.crtc);
  	enum pipe pipe = crtc->pipe;
  	u32 val;
@@ -781,7 +781,7 @@ void chv_data_lane_soft_reset(struct intel_encoder *encoder,
  void chv_phy_pre_pll_enable(struct intel_encoder *encoder,
  			    const struct intel_crtc_state *crtc_state)
  {
-	struct intel_digital_port *dport = enc_to_dig_port(&encoder->base);
+	struct intel_digital_port *dport = enc_to_dig_port(encoder);
  	struct drm_i915_private *dev_priv = to_i915(encoder->base.dev);
  	struct intel_crtc *crtc = to_intel_crtc(crtc_state->uapi.crtc);
  	enum dpio_channel ch = vlv_dport_to_channel(dport);
@@ -861,7 +861,7 @@ void chv_phy_pre_pll_enable(struct intel_encoder *encoder,
  void chv_phy_pre_encoder_enable(struct intel_encoder *encoder,
  				const struct intel_crtc_state *crtc_state)
  {
-	struct intel_dp *intel_dp = enc_to_intel_dp(&encoder->base);
+	struct intel_dp *intel_dp = enc_to_intel_dp(encoder);
  	struct intel_digital_port *dport = dp_to_dig_port(intel_dp);
  	struct drm_i915_private *dev_priv = to_i915(encoder->base.dev);
  	struct intel_crtc *crtc = to_intel_crtc(crtc_state->uapi.crtc);
@@ -940,7 +940,7 @@ void chv_phy_pre_encoder_enable(struct intel_encoder *encoder,
void chv_phy_release_cl2_override(struct intel_encoder *encoder)
  {
-	struct intel_digital_port *dport = enc_to_dig_port(&encoder->base);
+	struct intel_digital_port *dport = enc_to_dig_port(encoder);
  	struct drm_i915_private *dev_priv = to_i915(encoder->base.dev);
if (dport->release_cl2_override) {
@@ -989,7 +989,7 @@ void vlv_set_phy_signal_level(struct intel_encoder *encoder,
  {
  	struct drm_i915_private *dev_priv = to_i915(encoder->base.dev);
  	struct intel_crtc *intel_crtc = to_intel_crtc(encoder->base.crtc);
-	struct intel_digital_port *dport = enc_to_dig_port(&encoder->base);
+	struct intel_digital_port *dport = enc_to_dig_port(encoder);
  	enum dpio_channel port = vlv_dport_to_channel(dport);
  	enum pipe pipe = intel_crtc->pipe;
@@ -1014,7 +1014,7 @@ void vlv_set_phy_signal_level(struct intel_encoder *encoder,
  void vlv_phy_pre_pll_enable(struct intel_encoder *encoder,
  			    const struct intel_crtc_state *crtc_state)
  {
-	struct intel_digital_port *dport = enc_to_dig_port(&encoder->base);
+	struct intel_digital_port *dport = enc_to_dig_port(encoder);
  	struct drm_i915_private *dev_priv = to_i915(encoder->base.dev);
  	struct intel_crtc *crtc = to_intel_crtc(crtc_state->uapi.crtc);
  	enum dpio_channel port = vlv_dport_to_channel(dport);
@@ -1043,7 +1043,7 @@ void vlv_phy_pre_pll_enable(struct intel_encoder *encoder,
  void vlv_phy_pre_encoder_enable(struct intel_encoder *encoder,
  				const struct intel_crtc_state *crtc_state)
  {
-	struct intel_dp *intel_dp = enc_to_intel_dp(&encoder->base);
+	struct intel_dp *intel_dp = enc_to_intel_dp(encoder);
  	struct intel_digital_port *dport = dp_to_dig_port(intel_dp);
  	struct drm_i915_private *dev_priv = to_i915(encoder->base.dev);
  	struct intel_crtc *crtc = to_intel_crtc(crtc_state->uapi.crtc);
@@ -1073,7 +1073,7 @@ void vlv_phy_pre_encoder_enable(struct intel_encoder *encoder,
  void vlv_phy_reset_lanes(struct intel_encoder *encoder,
  			 const struct intel_crtc_state *old_crtc_state)
  {
-	struct intel_digital_port *dport = enc_to_dig_port(&encoder->base);
+	struct intel_digital_port *dport = enc_to_dig_port(encoder);
  	struct drm_i915_private *dev_priv = to_i915(encoder->base.dev);
  	struct intel_crtc *crtc = to_intel_crtc(old_crtc_state->uapi.crtc);
  	enum dpio_channel port = vlv_dport_to_channel(dport);
diff --git a/drivers/gpu/drm/i915/display/intel_dpll_mgr.c b/drivers/gpu/drm/i915/display/intel_dpll_mgr.c
index 728a4b045de7..c75e34d87111 100644
--- a/drivers/gpu/drm/i915/display/intel_dpll_mgr.c
+++ b/drivers/gpu/drm/i915/display/intel_dpll_mgr.c
@@ -2972,8 +2972,8 @@ static void icl_update_active_dpll(struct intel_atomic_state *state,
  	enum icl_port_dpll_id port_dpll_id = ICL_PORT_DPLL_DEFAULT;
primary_port = encoder->type == INTEL_OUTPUT_DP_MST ?
-		enc_to_mst(&encoder->base)->primary :
-		enc_to_dig_port(&encoder->base);
+		enc_to_mst(encoder)->primary :
+		enc_to_dig_port(encoder);
if (primary_port &&
  	    (primary_port->tc_mode == TC_PORT_DP_ALT ||
diff --git a/drivers/gpu/drm/i915/display/intel_dsi.h b/drivers/gpu/drm/i915/display/intel_dsi.h
index b15be5814599..97b18ab69370 100644
--- a/drivers/gpu/drm/i915/display/intel_dsi.h
+++ b/drivers/gpu/drm/i915/display/intel_dsi.h
@@ -141,9 +141,9 @@ static inline struct intel_dsi_host *to_intel_dsi_host(struct mipi_dsi_host *h)
  #define for_each_dsi_phy(__phy, __phys_mask) \
  	for_each_phy_masked(__phy, __phys_mask)
-static inline struct intel_dsi *enc_to_intel_dsi(struct drm_encoder *encoder)
+static inline struct intel_dsi *enc_to_intel_dsi(struct intel_encoder *encoder)
  {
-	return container_of(encoder, struct intel_dsi, base.base);
+	return container_of(&encoder->base, struct intel_dsi, base.base);
  }
static inline bool is_vid_mode(struct intel_dsi *intel_dsi)
@@ -158,7 +158,7 @@ static inline bool is_cmd_mode(struct intel_dsi *intel_dsi)
static inline u16 intel_dsi_encoder_ports(struct intel_encoder *encoder)
  {
-	return enc_to_intel_dsi(&encoder->base)->ports;
+	return enc_to_intel_dsi(encoder)->ports;
  }
/* icl_dsi.c */
diff --git a/drivers/gpu/drm/i915/display/intel_dsi_dcs_backlight.c b/drivers/gpu/drm/i915/display/intel_dsi_dcs_backlight.c
index bb3fd8b786a2..c87838843d0b 100644
--- a/drivers/gpu/drm/i915/display/intel_dsi_dcs_backlight.c
+++ b/drivers/gpu/drm/i915/display/intel_dsi_dcs_backlight.c
@@ -46,7 +46,7 @@
  static u32 dcs_get_backlight(struct intel_connector *connector)
  {
  	struct intel_encoder *encoder = connector->encoder;
-	struct intel_dsi *intel_dsi = enc_to_intel_dsi(&encoder->base);
+	struct intel_dsi *intel_dsi = enc_to_intel_dsi(encoder);
  	struct mipi_dsi_device *dsi_device;
  	u8 data = 0;
  	enum port port;
@@ -64,7 +64,7 @@ static u32 dcs_get_backlight(struct intel_connector *connector)
static void dcs_set_backlight(const struct drm_connector_state *conn_state, u32 level)
  {
-	struct intel_dsi *intel_dsi = enc_to_intel_dsi(conn_state->best_encoder);
+	struct intel_dsi *intel_dsi = enc_to_intel_dsi(to_intel_encoder(conn_state->best_encoder));
  	struct mipi_dsi_device *dsi_device;
  	u8 data = level;
  	enum port port;
@@ -79,7 +79,7 @@ static void dcs_set_backlight(const struct drm_connector_state *conn_state, u32
static void dcs_disable_backlight(const struct drm_connector_state *conn_state)
  {
-	struct intel_dsi *intel_dsi = enc_to_intel_dsi(conn_state->best_encoder);
+	struct intel_dsi *intel_dsi = enc_to_intel_dsi(to_intel_encoder(conn_state->best_encoder));
  	struct mipi_dsi_device *dsi_device;
  	enum port port;
@@ -113,7 +113,7 @@ static void dcs_disable_backlight(const struct drm_connector_state *conn_state)
  static void dcs_enable_backlight(const struct intel_crtc_state *crtc_state,
  				 const struct drm_connector_state *conn_state)
  {
-	struct intel_dsi *intel_dsi = enc_to_intel_dsi(conn_state->best_encoder);
+	struct intel_dsi *intel_dsi = enc_to_intel_dsi(to_intel_encoder(conn_state->best_encoder));
  	struct intel_panel *panel = &to_intel_connector(conn_state->connector)->panel;
  	struct mipi_dsi_device *dsi_device;
  	enum port port;
diff --git a/drivers/gpu/drm/i915/display/intel_hdmi.c b/drivers/gpu/drm/i915/display/intel_hdmi.c
index a8deb4789f04..e179ee046687 100644
--- a/drivers/gpu/drm/i915/display/intel_hdmi.c
+++ b/drivers/gpu/drm/i915/display/intel_hdmi.c
@@ -85,16 +85,17 @@ assert_hdmi_transcoder_func_disabled(struct drm_i915_private *dev_priv,
  	     "HDMI transcoder function enabled, expecting disabled\n");
  }
-struct intel_hdmi *enc_to_intel_hdmi(struct drm_encoder *encoder)
+struct intel_hdmi *enc_to_intel_hdmi(struct intel_encoder *encoder)
  {
  	struct intel_digital_port *intel_dig_port =
-		container_of(encoder, struct intel_digital_port, base.base);
+		container_of(&encoder->base, struct intel_digital_port,
+			     base.base);
  	return &intel_dig_port->hdmi;
  }
static struct intel_hdmi *intel_attached_hdmi(struct intel_connector *connector)
  {
-	return enc_to_intel_hdmi(&intel_attached_encoder(connector)->base);
+	return enc_to_intel_hdmi(intel_attached_encoder(connector));
  }
static u32 g4x_infoframe_index(unsigned int type)
@@ -602,7 +603,7 @@ u32 intel_hdmi_infoframes_enabled(struct intel_encoder *encoder,
  				  const struct intel_crtc_state *crtc_state)
  {
  	struct drm_i915_private *dev_priv = to_i915(encoder->base.dev);
-	struct intel_digital_port *dig_port = enc_to_dig_port(&encoder->base);
+	struct intel_digital_port *dig_port = enc_to_dig_port(encoder);
  	u32 val, ret = 0;
  	int i;
@@ -646,7 +647,7 @@ static void intel_write_infoframe(struct intel_encoder *encoder,
  				  enum hdmi_infoframe_type type,
  				  const union hdmi_infoframe *frame)
  {
-	struct intel_digital_port *intel_dig_port = enc_to_dig_port(&encoder->base);
+	struct intel_digital_port *intel_dig_port = enc_to_dig_port(encoder);
  	u8 buffer[VIDEO_DIP_DATA_SIZE];
  	ssize_t len;
@@ -675,7 +676,7 @@ void intel_read_infoframe(struct intel_encoder *encoder,
  			  enum hdmi_infoframe_type type,
  			  union hdmi_infoframe *frame)
  {
-	struct intel_digital_port *intel_dig_port = enc_to_dig_port(&encoder->base);
+	struct intel_digital_port *intel_dig_port = enc_to_dig_port(encoder);
  	u8 buffer[VIDEO_DIP_DATA_SIZE];
  	int ret;
@@ -855,7 +856,7 @@ static void g4x_set_infoframes(struct intel_encoder *encoder,
  			       const struct drm_connector_state *conn_state)
  {
  	struct drm_i915_private *dev_priv = to_i915(encoder->base.dev);
-	struct intel_digital_port *intel_dig_port = enc_to_dig_port(&encoder->base);
+	struct intel_digital_port *intel_dig_port = enc_to_dig_port(encoder);
  	struct intel_hdmi *intel_hdmi = &intel_dig_port->hdmi;
  	i915_reg_t reg = VIDEO_DIP_CTL;
  	u32 val = I915_READ(reg);
@@ -1038,7 +1039,7 @@ static void ibx_set_infoframes(struct intel_encoder *encoder,
  {
  	struct drm_i915_private *dev_priv = to_i915(encoder->base.dev);
  	struct intel_crtc *intel_crtc = to_intel_crtc(crtc_state->uapi.crtc);
-	struct intel_digital_port *intel_dig_port = enc_to_dig_port(&encoder->base);
+	struct intel_digital_port *intel_dig_port = enc_to_dig_port(encoder);
  	struct intel_hdmi *intel_hdmi = &intel_dig_port->hdmi;
  	i915_reg_t reg = TVIDEO_DIP_CTL(intel_crtc->pipe);
  	u32 val = I915_READ(reg);
@@ -1097,7 +1098,7 @@ static void cpt_set_infoframes(struct intel_encoder *encoder,
  {
  	struct drm_i915_private *dev_priv = to_i915(encoder->base.dev);
  	struct intel_crtc *intel_crtc = to_intel_crtc(crtc_state->uapi.crtc);
-	struct intel_hdmi *intel_hdmi = enc_to_intel_hdmi(&encoder->base);
+	struct intel_hdmi *intel_hdmi = enc_to_intel_hdmi(encoder);
  	i915_reg_t reg = TVIDEO_DIP_CTL(intel_crtc->pipe);
  	u32 val = I915_READ(reg);
@@ -1146,7 +1147,7 @@ static void vlv_set_infoframes(struct intel_encoder *encoder,
  {
  	struct drm_i915_private *dev_priv = to_i915(encoder->base.dev);
  	struct intel_crtc *intel_crtc = to_intel_crtc(crtc_state->uapi.crtc);
-	struct intel_hdmi *intel_hdmi = enc_to_intel_hdmi(&encoder->base);
+	struct intel_hdmi *intel_hdmi = enc_to_intel_hdmi(encoder);
  	i915_reg_t reg = VLV_TVIDEO_DIP_CTL(intel_crtc->pipe);
  	u32 val = I915_READ(reg);
  	u32 port = VIDEO_DIP_PORT(encoder->port);
@@ -1737,7 +1738,7 @@ static void intel_hdmi_prepare(struct intel_encoder *encoder,
  	struct drm_device *dev = encoder->base.dev;
  	struct drm_i915_private *dev_priv = to_i915(dev);
  	struct intel_crtc *crtc = to_intel_crtc(crtc_state->uapi.crtc);
-	struct intel_hdmi *intel_hdmi = enc_to_intel_hdmi(&encoder->base);
+	struct intel_hdmi *intel_hdmi = enc_to_intel_hdmi(encoder);
  	const struct drm_display_mode *adjusted_mode = &crtc_state->hw.adjusted_mode;
  	u32 hdmi_val;
@@ -1774,7 +1775,7 @@ static bool intel_hdmi_get_hw_state(struct intel_encoder *encoder,
  				    enum pipe *pipe)
  {
  	struct drm_i915_private *dev_priv = to_i915(encoder->base.dev);
-	struct intel_hdmi *intel_hdmi = enc_to_intel_hdmi(&encoder->base);
+	struct intel_hdmi *intel_hdmi = enc_to_intel_hdmi(encoder);
  	intel_wakeref_t wakeref;
  	bool ret;
@@ -1793,7 +1794,7 @@ static bool intel_hdmi_get_hw_state(struct intel_encoder *encoder,
  static void intel_hdmi_get_config(struct intel_encoder *encoder,
  				  struct intel_crtc_state *pipe_config)
  {
-	struct intel_hdmi *intel_hdmi = enc_to_intel_hdmi(&encoder->base);
+	struct intel_hdmi *intel_hdmi = enc_to_intel_hdmi(encoder);
  	struct drm_device *dev = encoder->base.dev;
  	struct drm_i915_private *dev_priv = to_i915(dev);
  	u32 tmp, flags = 0;
@@ -1874,7 +1875,7 @@ static void g4x_enable_hdmi(struct intel_encoder *encoder,
  {
  	struct drm_device *dev = encoder->base.dev;
  	struct drm_i915_private *dev_priv = to_i915(dev);
-	struct intel_hdmi *intel_hdmi = enc_to_intel_hdmi(&encoder->base);
+	struct intel_hdmi *intel_hdmi = enc_to_intel_hdmi(encoder);
  	u32 temp;
temp = I915_READ(intel_hdmi->hdmi_reg);
@@ -1896,7 +1897,7 @@ static void ibx_enable_hdmi(struct intel_encoder *encoder,
  {
  	struct drm_device *dev = encoder->base.dev;
  	struct drm_i915_private *dev_priv = to_i915(dev);
-	struct intel_hdmi *intel_hdmi = enc_to_intel_hdmi(&encoder->base);
+	struct intel_hdmi *intel_hdmi = enc_to_intel_hdmi(encoder);
  	u32 temp;
temp = I915_READ(intel_hdmi->hdmi_reg);
@@ -1947,7 +1948,7 @@ static void cpt_enable_hdmi(struct intel_encoder *encoder,
  	struct drm_device *dev = encoder->base.dev;
  	struct drm_i915_private *dev_priv = to_i915(dev);
  	struct intel_crtc *crtc = to_intel_crtc(pipe_config->uapi.crtc);
-	struct intel_hdmi *intel_hdmi = enc_to_intel_hdmi(&encoder->base);
+	struct intel_hdmi *intel_hdmi = enc_to_intel_hdmi(encoder);
  	enum pipe pipe = crtc->pipe;
  	u32 temp;
@@ -2007,7 +2008,7 @@ static void intel_disable_hdmi(struct intel_encoder *encoder,
  {
  	struct drm_device *dev = encoder->base.dev;
  	struct drm_i915_private *dev_priv = to_i915(dev);
-	struct intel_hdmi *intel_hdmi = enc_to_intel_hdmi(&encoder->base);
+	struct intel_hdmi *intel_hdmi = enc_to_intel_hdmi(encoder);
  	struct intel_digital_port *intel_dig_port =
  		hdmi_to_dig_port(intel_hdmi);
  	struct intel_crtc *crtc = to_intel_crtc(old_crtc_state->uapi.crtc);
@@ -2316,7 +2317,7 @@ static int intel_hdmi_compute_bpc(struct intel_encoder *encoder,
  				  struct intel_crtc_state *crtc_state,
  				  int clock, bool force_dvi)
  {
-	struct intel_hdmi *intel_hdmi = enc_to_intel_hdmi(&encoder->base);
+	struct intel_hdmi *intel_hdmi = enc_to_intel_hdmi(encoder);
  	int bpc;
for (bpc = 12; bpc >= 10; bpc -= 2) {
@@ -2334,7 +2335,7 @@ static int intel_hdmi_compute_clock(struct intel_encoder *encoder,
  				    struct intel_crtc_state *crtc_state,
  				    bool force_dvi)
  {
-	struct intel_hdmi *intel_hdmi = enc_to_intel_hdmi(&encoder->base);
+	struct intel_hdmi *intel_hdmi = enc_to_intel_hdmi(encoder);
  	const struct drm_display_mode *adjusted_mode =
  		&crtc_state->hw.adjusted_mode;
  	int bpc, clock = adjusted_mode->crtc_clock;
@@ -2404,7 +2405,7 @@ int intel_hdmi_compute_config(struct intel_encoder *encoder,
  			      struct intel_crtc_state *pipe_config,
  			      struct drm_connector_state *conn_state)
  {
-	struct intel_hdmi *intel_hdmi = enc_to_intel_hdmi(&encoder->base);
+	struct intel_hdmi *intel_hdmi = enc_to_intel_hdmi(encoder);
  	struct drm_i915_private *dev_priv = to_i915(encoder->base.dev);
  	struct drm_display_mode *adjusted_mode = &pipe_config->hw.adjusted_mode;
  	struct drm_connector *connector = conn_state->connector;
@@ -2663,7 +2664,7 @@ static void intel_hdmi_pre_enable(struct intel_encoder *encoder,
  				  const struct drm_connector_state *conn_state)
  {
  	struct intel_digital_port *intel_dig_port =
-		enc_to_dig_port(&encoder->base);
+		enc_to_dig_port(encoder);
intel_hdmi_prepare(encoder, pipe_config); @@ -2676,7 +2677,7 @@ static void vlv_hdmi_pre_enable(struct intel_encoder *encoder,
  				const struct intel_crtc_state *pipe_config,
  				const struct drm_connector_state *conn_state)
  {
-	struct intel_digital_port *dport = enc_to_dig_port(&encoder->base);
+	struct intel_digital_port *dport = enc_to_dig_port(encoder);
  	struct drm_i915_private *dev_priv = to_i915(encoder->base.dev);
vlv_phy_pre_encoder_enable(encoder, pipe_config);
@@ -2746,7 +2747,7 @@ static void chv_hdmi_pre_enable(struct intel_encoder *encoder,
  				const struct intel_crtc_state *pipe_config,
  				const struct drm_connector_state *conn_state)
  {
-	struct intel_digital_port *dport = enc_to_dig_port(&encoder->base);
+	struct intel_digital_port *dport = enc_to_dig_port(encoder);
  	struct drm_device *dev = encoder->base.dev;
  	struct drm_i915_private *dev_priv = to_i915(dev);
@@ -2906,7 +2907,7 @@ bool intel_hdmi_handle_sink_scrambling(struct intel_encoder *encoder,
  				       bool scrambling)
  {
  	struct drm_i915_private *dev_priv = to_i915(encoder->base.dev);
-	struct intel_hdmi *intel_hdmi = enc_to_intel_hdmi(&encoder->base);
+	struct intel_hdmi *intel_hdmi = enc_to_intel_hdmi(encoder);
  	struct drm_scrambling *sink_scrambling =
  		&connector->display_info.hdmi.scdc.scrambling;
  	struct i2c_adapter *adapter =
diff --git a/drivers/gpu/drm/i915/display/intel_hdmi.h b/drivers/gpu/drm/i915/display/intel_hdmi.h
index cf1ea5427639..d3659d0b408b 100644
--- a/drivers/gpu/drm/i915/display/intel_hdmi.h
+++ b/drivers/gpu/drm/i915/display/intel_hdmi.h
@@ -29,7 +29,7 @@ void intel_hdmi_init(struct drm_i915_private *dev_priv, i915_reg_t hdmi_reg,
  		     enum port port);
  void intel_hdmi_init_connector(struct intel_digital_port *intel_dig_port,
  			       struct intel_connector *intel_connector);
-struct intel_hdmi *enc_to_intel_hdmi(struct drm_encoder *encoder);
+struct intel_hdmi *enc_to_intel_hdmi(struct intel_encoder *encoder);
  int intel_hdmi_compute_config(struct intel_encoder *encoder,
  			      struct intel_crtc_state *pipe_config,
  			      struct drm_connector_state *conn_state);
diff --git a/drivers/gpu/drm/i915/display/intel_hotplug.c b/drivers/gpu/drm/i915/display/intel_hotplug.c
index fc29046d48ea..99d3a3c7989e 100644
--- a/drivers/gpu/drm/i915/display/intel_hotplug.c
+++ b/drivers/gpu/drm/i915/display/intel_hotplug.c
@@ -302,7 +302,7 @@ intel_encoder_hotplug(struct intel_encoder *encoder,
  static bool intel_encoder_has_hpd_pulse(struct intel_encoder *encoder)
  {
  	return intel_encoder_is_dig_port(encoder) &&
-		enc_to_dig_port(&encoder->base)->hpd_pulse != NULL;
+		enc_to_dig_port(encoder)->hpd_pulse != NULL;
  }
static void i915_digport_work_func(struct work_struct *work)
@@ -335,7 +335,7 @@ static void i915_digport_work_func(struct work_struct *work)
  		if (!long_hpd && !short_hpd)
  			continue;
- dig_port = enc_to_dig_port(&encoder->base);
+		dig_port = enc_to_dig_port(encoder);
ret = dig_port->hpd_pulse(dig_port, long_hpd);
  		if (ret == IRQ_NONE) {
diff --git a/drivers/gpu/drm/i915/display/intel_lspcon.c b/drivers/gpu/drm/i915/display/intel_lspcon.c
index 5145ff8b962b..d807c5648c87 100644
--- a/drivers/gpu/drm/i915/display/intel_lspcon.c
+++ b/drivers/gpu/drm/i915/display/intel_lspcon.c
@@ -434,8 +434,8 @@ void lspcon_write_infoframe(struct intel_encoder *encoder,
  			    const void *frame, ssize_t len)
  {
  	bool ret;
-	struct intel_dp *intel_dp = enc_to_intel_dp(&encoder->base);
-	struct intel_lspcon *lspcon = enc_to_intel_lspcon(&encoder->base);
+	struct intel_dp *intel_dp = enc_to_intel_dp(encoder);
+	struct intel_lspcon *lspcon = enc_to_intel_lspcon(encoder);
/* LSPCON only needs AVI IF */
  	if (type != HDMI_INFOFRAME_TYPE_AVI)
@@ -472,7 +472,7 @@ void lspcon_set_infoframes(struct intel_encoder *encoder,
  	ssize_t ret;
  	union hdmi_infoframe frame;
  	u8 buf[VIDEO_DIP_DATA_SIZE];
-	struct intel_digital_port *dig_port = enc_to_dig_port(&encoder->base);
+	struct intel_digital_port *dig_port = enc_to_dig_port(encoder);
  	struct intel_lspcon *lspcon = &dig_port->lspcon;
  	const struct drm_display_mode *adjusted_mode =
  		&crtc_state->hw.adjusted_mode;
@@ -522,7 +522,7 @@ u32 lspcon_infoframes_enabled(struct intel_encoder *encoder,
  			      const struct intel_crtc_state *pipe_config)
  {
  	/* FIXME actually read this from the hw */
-	return enc_to_intel_lspcon(&encoder->base)->active;
+	return enc_to_intel_lspcon(encoder)->active;
  }
void lspcon_resume(struct intel_lspcon *lspcon)
diff --git a/drivers/gpu/drm/i915/display/intel_pipe_crc.c b/drivers/gpu/drm/i915/display/intel_pipe_crc.c
index 2746512f4466..520408e83681 100644
--- a/drivers/gpu/drm/i915/display/intel_pipe_crc.c
+++ b/drivers/gpu/drm/i915/display/intel_pipe_crc.c
@@ -98,7 +98,7 @@ static int i9xx_pipe_crc_auto_source(struct drm_i915_private *dev_priv,
  			break;
  		case INTEL_OUTPUT_DP:
  		case INTEL_OUTPUT_EDP:
-			dig_port = enc_to_dig_port(&encoder->base);
+			dig_port = enc_to_dig_port(encoder);
  			switch (dig_port->base.port) {
  			case PORT_B:
  				*source = INTEL_PIPE_CRC_SOURCE_DP_B;
diff --git a/drivers/gpu/drm/i915/display/intel_vdsc.c b/drivers/gpu/drm/i915/display/intel_vdsc.c
index b23ba8d108db..075b6e4f66c6 100644
--- a/drivers/gpu/drm/i915/display/intel_vdsc.c
+++ b/drivers/gpu/drm/i915/display/intel_vdsc.c
@@ -339,7 +339,7 @@ static const struct rc_parameters *get_rc_params(u16 compressed_bpp,
  static int intel_dsc_dp_compute_params(struct intel_encoder *encoder,
  				       struct intel_crtc_state *pipe_config)
  {
-	struct intel_dp *intel_dp = enc_to_intel_dp(&encoder->base);
+	struct intel_dp *intel_dp = enc_to_intel_dp(encoder);
  	struct drm_dsc_config *vdsc_cfg = &pipe_config->dsc.config;
  	u8 line_buf_depth;
@@ -904,7 +904,7 @@ static void intel_dsc_pps_configure(struct intel_encoder *encoder,
  static void intel_dsc_dp_pps_write(struct intel_encoder *encoder,
  				   const struct intel_crtc_state *crtc_state)
  {
-	struct intel_dp *intel_dp = enc_to_intel_dp(&encoder->base);
+	struct intel_dp *intel_dp = enc_to_intel_dp(encoder);
  	struct intel_digital_port *intel_dig_port = dp_to_dig_port(intel_dp);
  	const struct drm_dsc_config *vdsc_cfg = &crtc_state->dsc.config;
  	struct drm_dsc_pps_infoframe dp_dsc_pps_sdp;
diff --git a/drivers/gpu/drm/i915/display/vlv_dsi.c b/drivers/gpu/drm/i915/display/vlv_dsi.c
index 8398a265b6a3..0c19064e42e0 100644
--- a/drivers/gpu/drm/i915/display/vlv_dsi.c
+++ b/drivers/gpu/drm/i915/display/vlv_dsi.c
@@ -319,7 +319,7 @@ static int intel_dsi_compute_config(struct intel_encoder *encoder,
  static bool glk_dsi_enable_io(struct intel_encoder *encoder)
  {
  	struct drm_i915_private *dev_priv = to_i915(encoder->base.dev);
-	struct intel_dsi *intel_dsi = enc_to_intel_dsi(&encoder->base);
+	struct intel_dsi *intel_dsi = enc_to_intel_dsi(encoder);
  	enum port port;
  	u32 tmp;
  	bool cold_boot = false;
@@ -367,7 +367,7 @@ static bool glk_dsi_enable_io(struct intel_encoder *encoder)
  static void glk_dsi_device_ready(struct intel_encoder *encoder)
  {
  	struct drm_i915_private *dev_priv = to_i915(encoder->base.dev);
-	struct intel_dsi *intel_dsi = enc_to_intel_dsi(&encoder->base);
+	struct intel_dsi *intel_dsi = enc_to_intel_dsi(encoder);
  	enum port port;
  	u32 val;
@@ -438,7 +438,7 @@ static void glk_dsi_device_ready(struct intel_encoder *encoder)
  static void bxt_dsi_device_ready(struct intel_encoder *encoder)
  {
  	struct drm_i915_private *dev_priv = to_i915(encoder->base.dev);
-	struct intel_dsi *intel_dsi = enc_to_intel_dsi(&encoder->base);
+	struct intel_dsi *intel_dsi = enc_to_intel_dsi(encoder);
  	enum port port;
  	u32 val;
@@ -465,7 +465,7 @@ static void bxt_dsi_device_ready(struct intel_encoder *encoder)
  static void vlv_dsi_device_ready(struct intel_encoder *encoder)
  {
  	struct drm_i915_private *dev_priv = to_i915(encoder->base.dev);
-	struct intel_dsi *intel_dsi = enc_to_intel_dsi(&encoder->base);
+	struct intel_dsi *intel_dsi = enc_to_intel_dsi(encoder);
  	enum port port;
  	u32 val;
@@ -516,7 +516,7 @@ static void intel_dsi_device_ready(struct intel_encoder *encoder)
  static void glk_dsi_enter_low_power_mode(struct intel_encoder *encoder)
  {
  	struct drm_i915_private *dev_priv = to_i915(encoder->base.dev);
-	struct intel_dsi *intel_dsi = enc_to_intel_dsi(&encoder->base);
+	struct intel_dsi *intel_dsi = enc_to_intel_dsi(encoder);
  	enum port port;
  	u32 val;
@@ -546,7 +546,7 @@ static void glk_dsi_enter_low_power_mode(struct intel_encoder *encoder)
  static void glk_dsi_disable_mipi_io(struct intel_encoder *encoder)
  {
  	struct drm_i915_private *dev_priv = to_i915(encoder->base.dev);
-	struct intel_dsi *intel_dsi = enc_to_intel_dsi(&encoder->base);
+	struct intel_dsi *intel_dsi = enc_to_intel_dsi(encoder);
  	enum port port;
  	u32 tmp;
@@ -579,7 +579,7 @@ static void glk_dsi_clear_device_ready(struct intel_encoder *encoder)
  static void vlv_dsi_clear_device_ready(struct intel_encoder *encoder)
  {
  	struct drm_i915_private *dev_priv = to_i915(encoder->base.dev);
-	struct intel_dsi *intel_dsi = enc_to_intel_dsi(&encoder->base);
+	struct intel_dsi *intel_dsi = enc_to_intel_dsi(encoder);
  	enum port port;
DRM_DEBUG_KMS("\n");
@@ -625,7 +625,7 @@ static void intel_dsi_port_enable(struct intel_encoder *encoder,
  {
  	struct drm_i915_private *dev_priv = to_i915(encoder->base.dev);
  	struct intel_crtc *crtc = to_intel_crtc(crtc_state->uapi.crtc);
-	struct intel_dsi *intel_dsi = enc_to_intel_dsi(&encoder->base);
+	struct intel_dsi *intel_dsi = enc_to_intel_dsi(encoder);
  	enum port port;
if (intel_dsi->dual_link == DSI_DUAL_LINK_FRONT_BACK) {
@@ -681,7 +681,7 @@ static void intel_dsi_port_disable(struct intel_encoder *encoder)
  {
  	struct drm_device *dev = encoder->base.dev;
  	struct drm_i915_private *dev_priv = to_i915(dev);
-	struct intel_dsi *intel_dsi = enc_to_intel_dsi(&encoder->base);
+	struct intel_dsi *intel_dsi = enc_to_intel_dsi(encoder);
  	enum port port;
for_each_dsi_port(port, intel_dsi->ports) {
@@ -745,7 +745,7 @@ static void intel_dsi_pre_enable(struct intel_encoder *encoder,
  				 const struct intel_crtc_state *pipe_config,
  				 const struct drm_connector_state *conn_state)
  {
-	struct intel_dsi *intel_dsi = enc_to_intel_dsi(&encoder->base);
+	struct intel_dsi *intel_dsi = enc_to_intel_dsi(encoder);
  	struct drm_crtc *crtc = pipe_config->uapi.crtc;
  	struct drm_i915_private *dev_priv = to_i915(crtc->dev);
  	struct intel_crtc *intel_crtc = to_intel_crtc(crtc);
@@ -850,7 +850,7 @@ static void intel_dsi_disable(struct intel_encoder *encoder,
  			      const struct intel_crtc_state *old_crtc_state,
  			      const struct drm_connector_state *old_conn_state)
  {
-	struct intel_dsi *intel_dsi = enc_to_intel_dsi(&encoder->base);
+	struct intel_dsi *intel_dsi = enc_to_intel_dsi(encoder);
  	enum port port;
DRM_DEBUG_KMS("\n");
@@ -886,7 +886,7 @@ static void intel_dsi_post_disable(struct intel_encoder *encoder,
  				   const struct drm_connector_state *conn_state)
  {
  	struct drm_i915_private *dev_priv = to_i915(encoder->base.dev);
-	struct intel_dsi *intel_dsi = enc_to_intel_dsi(&encoder->base);
+	struct intel_dsi *intel_dsi = enc_to_intel_dsi(encoder);
  	enum port port;
  	u32 val;
@@ -956,7 +956,7 @@ static bool intel_dsi_get_hw_state(struct intel_encoder *encoder,
  				   enum pipe *pipe)
  {
  	struct drm_i915_private *dev_priv = to_i915(encoder->base.dev);
-	struct intel_dsi *intel_dsi = enc_to_intel_dsi(&encoder->base);
+	struct intel_dsi *intel_dsi = enc_to_intel_dsi(encoder);
  	intel_wakeref_t wakeref;
  	enum port port;
  	bool active = false;
@@ -1035,7 +1035,7 @@ static void bxt_dsi_get_pipe_config(struct intel_encoder *encoder,
  					&pipe_config->hw.adjusted_mode;
  	struct drm_display_mode *adjusted_mode_sw;
  	struct intel_crtc *crtc = to_intel_crtc(pipe_config->uapi.crtc);
-	struct intel_dsi *intel_dsi = enc_to_intel_dsi(&encoder->base);
+	struct intel_dsi *intel_dsi = enc_to_intel_dsi(encoder);
  	unsigned int lane_count = intel_dsi->lane_count;
  	unsigned int bpp, fmt;
  	enum port port;
@@ -1228,7 +1228,7 @@ static void set_dsi_timings(struct drm_encoder *encoder,
  {
  	struct drm_device *dev = encoder->dev;
  	struct drm_i915_private *dev_priv = to_i915(dev);
-	struct intel_dsi *intel_dsi = enc_to_intel_dsi(encoder);
+	struct intel_dsi *intel_dsi = enc_to_intel_dsi(to_intel_encoder(encoder));
  	enum port port;
  	unsigned int bpp = mipi_dsi_pixel_format_to_bpp(intel_dsi->pixel_format);
  	unsigned int lane_count = intel_dsi->lane_count;
@@ -1316,7 +1316,7 @@ static void intel_dsi_prepare(struct intel_encoder *intel_encoder,
  	struct drm_device *dev = encoder->dev;
  	struct drm_i915_private *dev_priv = to_i915(dev);
  	struct intel_crtc *intel_crtc = to_intel_crtc(pipe_config->uapi.crtc);
-	struct intel_dsi *intel_dsi = enc_to_intel_dsi(encoder);
+	struct intel_dsi *intel_dsi = enc_to_intel_dsi(to_intel_encoder(encoder));
  	const struct drm_display_mode *adjusted_mode = &pipe_config->hw.adjusted_mode;
  	enum port port;
  	unsigned int bpp = mipi_dsi_pixel_format_to_bpp(intel_dsi->pixel_format);
@@ -1506,7 +1506,7 @@ static void intel_dsi_prepare(struct intel_encoder *intel_encoder,
  static void intel_dsi_unprepare(struct intel_encoder *encoder)
  {
  	struct drm_i915_private *dev_priv = to_i915(encoder->base.dev);
-	struct intel_dsi *intel_dsi = enc_to_intel_dsi(&encoder->base);
+	struct intel_dsi *intel_dsi = enc_to_intel_dsi(encoder);
  	enum port port;
  	u32 val;
@@ -1533,7 +1533,7 @@ static void intel_dsi_unprepare(struct intel_encoder *encoder) static void intel_dsi_encoder_destroy(struct drm_encoder *encoder)
  {
-	struct intel_dsi *intel_dsi = enc_to_intel_dsi(encoder);
+	struct intel_dsi *intel_dsi = enc_to_intel_dsi(to_intel_encoder(encoder));
/* dispose of the gpios */
  	if (intel_dsi->gpio_panel)
diff --git a/drivers/gpu/drm/i915/display/vlv_dsi_pll.c b/drivers/gpu/drm/i915/display/vlv_dsi_pll.c
index 95f39cd0ce02..6b89e67b120f 100644
--- a/drivers/gpu/drm/i915/display/vlv_dsi_pll.c
+++ b/drivers/gpu/drm/i915/display/vlv_dsi_pll.c
@@ -117,7 +117,7 @@ int vlv_dsi_pll_compute(struct intel_encoder *encoder,
  			struct intel_crtc_state *config)
  {
  	struct drm_i915_private *dev_priv = to_i915(encoder->base.dev);
-	struct intel_dsi *intel_dsi = enc_to_intel_dsi(&encoder->base);
+	struct intel_dsi *intel_dsi = enc_to_intel_dsi(encoder);
  	int ret;
  	u32 dsi_clk;
@@ -255,7 +255,7 @@ u32 vlv_dsi_get_pclk(struct intel_encoder *encoder,
  		     struct intel_crtc_state *config)
  {
  	struct drm_i915_private *dev_priv = to_i915(encoder->base.dev);
-	struct intel_dsi *intel_dsi = enc_to_intel_dsi(&encoder->base);
+	struct intel_dsi *intel_dsi = enc_to_intel_dsi(encoder);
  	int bpp = mipi_dsi_pixel_format_to_bpp(intel_dsi->pixel_format);
  	u32 dsi_clock, pclk;
  	u32 pll_ctl, pll_div;
@@ -321,7 +321,7 @@ u32 bxt_dsi_get_pclk(struct intel_encoder *encoder,
  	u32 pclk;
  	u32 dsi_clk;
  	u32 dsi_ratio;
-	struct intel_dsi *intel_dsi = enc_to_intel_dsi(&encoder->base);
+	struct intel_dsi *intel_dsi = enc_to_intel_dsi(encoder);
  	struct drm_i915_private *dev_priv = to_i915(encoder->base.dev);
  	int bpp = mipi_dsi_pixel_format_to_bpp(intel_dsi->pixel_format);
@@ -341,7 +341,7 @@ void vlv_dsi_reset_clocks(struct intel_encoder *encoder, enum port port)
  {
  	u32 temp;
  	struct drm_i915_private *dev_priv = to_i915(encoder->base.dev);
-	struct intel_dsi *intel_dsi = enc_to_intel_dsi(&encoder->base);
+	struct intel_dsi *intel_dsi = enc_to_intel_dsi(encoder);
temp = I915_READ(MIPI_CTRL(port));
  	temp &= ~ESCAPE_CLOCK_DIVIDER_MASK;
@@ -455,7 +455,7 @@ int bxt_dsi_pll_compute(struct intel_encoder *encoder,
  			struct intel_crtc_state *config)
  {
  	struct drm_i915_private *dev_priv = to_i915(encoder->base.dev);
-	struct intel_dsi *intel_dsi = enc_to_intel_dsi(&encoder->base);
+	struct intel_dsi *intel_dsi = enc_to_intel_dsi(encoder);
  	u8 dsi_ratio, dsi_ratio_min, dsi_ratio_max;
  	u32 dsi_clk;
@@ -503,7 +503,7 @@ void bxt_dsi_pll_enable(struct intel_encoder *encoder,
  			const struct intel_crtc_state *config)
  {
  	struct drm_i915_private *dev_priv = to_i915(encoder->base.dev);
-	struct intel_dsi *intel_dsi = enc_to_intel_dsi(&encoder->base);
+	struct intel_dsi *intel_dsi = enc_to_intel_dsi(encoder);
  	enum port port;
  	u32 val;
diff --git a/drivers/gpu/drm/i915/i915_debugfs.c b/drivers/gpu/drm/i915/i915_debugfs.c
index 4f543ccec15d..3bc8d5c0e88a 100644
--- a/drivers/gpu/drm/i915/i915_debugfs.c
+++ b/drivers/gpu/drm/i915/i915_debugfs.c
@@ -2020,7 +2020,7 @@ static int i915_psr_sink_status_show(struct seq_file *m, void *data)
  	struct drm_connector *connector = m->private;
  	struct drm_i915_private *dev_priv = to_i915(connector->dev);
  	struct intel_dp *intel_dp =
-		enc_to_intel_dp(&intel_attached_encoder(to_intel_connector(connector))->base);
+		enc_to_intel_dp(intel_attached_encoder(to_intel_connector(connector)));
  	int ret;
if (!CAN_PSR(dev_priv)) {
@@ -2432,7 +2432,7 @@ static void intel_dp_info(struct seq_file *m,
  			  struct intel_connector *intel_connector)
  {
  	struct intel_encoder *intel_encoder = intel_connector->encoder;
-	struct intel_dp *intel_dp = enc_to_intel_dp(&intel_encoder->base);
+	struct intel_dp *intel_dp = enc_to_intel_dp(intel_encoder);
seq_printf(m, "\tDPCD rev: %x\n", intel_dp->dpcd[DP_DPCD_REV]);
  	seq_printf(m, "\taudio support: %s\n", yesno(intel_dp->has_audio));
@@ -2452,7 +2452,7 @@ static void intel_dp_mst_info(struct seq_file *m,
  {
  	struct intel_encoder *intel_encoder = intel_connector->encoder;
  	struct intel_dp_mst_encoder *intel_mst =
-		enc_to_mst(&intel_encoder->base);
+		enc_to_mst(intel_encoder);
  	struct intel_digital_port *intel_dig_port = intel_mst->primary;
  	struct intel_dp *intel_dp = &intel_dig_port->dp;
  	bool has_audio = drm_dp_mst_port_has_audio(&intel_dp->mst_mgr,
@@ -2465,7 +2465,7 @@ static void intel_hdmi_info(struct seq_file *m,
  			    struct intel_connector *intel_connector)
  {
  	struct intel_encoder *intel_encoder = intel_connector->encoder;
-	struct intel_hdmi *intel_hdmi = enc_to_intel_hdmi(&intel_encoder->base);
+	struct intel_hdmi *intel_hdmi = enc_to_intel_hdmi(intel_encoder);
seq_printf(m, "\taudio support: %s\n", yesno(intel_hdmi->has_audio));
  	if (intel_connector->hdcp.shim) {
@@ -3059,7 +3059,7 @@ static int i915_dp_mst_info(struct seq_file *m, void *unused)
  		if (!intel_encoder || intel_encoder->type == INTEL_OUTPUT_DP_MST)
  			continue;
- intel_dig_port = enc_to_dig_port(&intel_encoder->base);
+		intel_dig_port = enc_to_dig_port(intel_encoder);
  		if (!intel_dig_port->dp.can_mst)
  			continue;
@@ -3109,7 +3109,7 @@ static ssize_t i915_displayport_test_active_write(struct file *file,
  			continue;
if (encoder && connector->status == connector_status_connected) {
-			intel_dp = enc_to_intel_dp(&encoder->base);
+			intel_dp = enc_to_intel_dp(encoder);
  			status = kstrtoint(input_buffer, 10, &val);
  			if (status < 0)
  				break;
@@ -3153,7 +3153,7 @@ static int i915_displayport_test_active_show(struct seq_file *m, void *data)
  			continue;
if (encoder && connector->status == connector_status_connected) {
-			intel_dp = enc_to_intel_dp(&encoder->base);
+			intel_dp = enc_to_intel_dp(encoder);
  			if (intel_dp->compliance.test_active)
  				seq_puts(m, "1");
  			else
@@ -3203,7 +3203,7 @@ static int i915_displayport_test_data_show(struct seq_file *m, void *data)
  			continue;
if (encoder && connector->status == connector_status_connected) {
-			intel_dp = enc_to_intel_dp(&encoder->base);
+			intel_dp = enc_to_intel_dp(encoder);
  			if (intel_dp->compliance.test_type ==
  			    DP_TEST_LINK_EDID_READ)
  				seq_printf(m, "%lx",
@@ -3247,7 +3247,7 @@ static int i915_displayport_test_type_show(struct seq_file *m, void *data)
  			continue;
if (encoder && connector->status == connector_status_connected) {
-			intel_dp = enc_to_intel_dp(&encoder->base);
+			intel_dp = enc_to_intel_dp(encoder);
  			seq_printf(m, "%02lx", intel_dp->compliance.test_type);
  		} else
  			seq_puts(m, "0");
@@ -4192,7 +4192,7 @@ static int i915_drrs_ctl_set(void *data, u64 val)
  			DRM_DEBUG_DRIVER("Manually %sabling DRRS. %llu\n",
  						val ? "en" : "dis", val);
- intel_dp = enc_to_intel_dp(&encoder->base);
+			intel_dp = enc_to_intel_dp(encoder);
  			if (val)
  				intel_edp_drrs_enable(intel_dp,
  						      crtc_state);
@@ -4396,7 +4396,7 @@ static int i915_dpcd_show(struct seq_file *m, void *data)
  {
  	struct drm_connector *connector = m->private;
  	struct intel_dp *intel_dp =
-		enc_to_intel_dp(&intel_attached_encoder(to_intel_connector(connector))->base);
+		enc_to_intel_dp(intel_attached_encoder(to_intel_connector(connector)));
  	u8 buf[16];
  	ssize_t err;
  	int i;
@@ -4431,7 +4431,7 @@ static int i915_panel_show(struct seq_file *m, void *data)
  {
  	struct drm_connector *connector = m->private;
  	struct intel_dp *intel_dp =
-		enc_to_intel_dp(&intel_attached_encoder(to_intel_connector(connector))->base);
+		enc_to_intel_dp(intel_attached_encoder(to_intel_connector(connector)));
if (connector->status != connector_status_connected)
  		return -ENODEV;
@@ -4509,7 +4509,7 @@ static int i915_dsc_fec_support_show(struct seq_file *m, void *data)
  		} else if (ret) {
  			break;
  		}
-		intel_dp = enc_to_intel_dp(&intel_attached_encoder(to_intel_connector(connector))->base);
+		intel_dp = enc_to_intel_dp(intel_attached_encoder(to_intel_connector(connector)));
  		crtc_state = to_intel_crtc_state(crtc->state);
  		seq_printf(m, "DSC_Enabled: %s\n",
  			   yesno(crtc_state->dsc.compression_enable));
@@ -4537,7 +4537,7 @@ static ssize_t i915_dsc_fec_support_write(struct file *file,
  	struct drm_connector *connector =
  		((struct seq_file *)file->private_data)->private;
  	struct intel_encoder *encoder = intel_attached_encoder(to_intel_connector(connector));
-	struct intel_dp *intel_dp = enc_to_intel_dp(&encoder->base);
+	struct intel_dp *intel_dp = enc_to_intel_dp(encoder);
if (len == 0)
  		return 0;


_______________________________________________
Intel-gfx mailing list
Intel-gfx@xxxxxxxxxxxxxxxxxxxxx
https://lists.freedesktop.org/mailman/listinfo/intel-gfx




[Index of Archives]     [AMD Graphics]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux