[Intel-gfx] [PATCH 3/9] drm/i915: Pass intel_encoder to enc_to_*()
Juha-Pekka Heikkila
juhapekka.heikkila at gmail.com
Wed Dec 18 20:41:16 UTC 2019
Look ok to me.
Reviewed-by: Juha-Pekka Heikkila <juhapekka.heikkila at gmail.com>
On 4.12.2019 20.05, Ville Syrjala wrote:
> From: Ville Syrjälä <ville.syrjala at linux.intel.com>
>
> 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 at linux.intel.com>
> ---
> 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;
>
More information about the Intel-gfx
mailing list