Commit 8f4f2797 authored by Ville Syrjälä's avatar Ville Syrjälä

drm/i915: Nuke intel_digital_port->port

Remove intel_digital_port->port and replace its users with
intel_encoder->port. intel_encoder->port is a superset of
intel_digital_port->port, and it works correctly even for
MST encoders.

v2: Eliminate a few dp_to_dig_port()->base.port cases too (DK)

Performed with cocci:
@@
@@
struct intel_digital_port {
       ...
-       enum port port;
       ...
}

@@
struct intel_digital_port *D;
expression E;
@@
- D->port = E;

@@
struct intel_digital_port *D;
@@
- D->port
+ D->base.port

@
expression E;
@@
(
- dp_to_dig_port(E)->port
+ dp_to_dig_port(E)->base.port
|
- enc_to_dig_port(E)->port
+ to_intel_encoder(E)->port
)

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

@@
struct intel_digital_port *D;
identifier I, M;
@@
  I = &D->base
<...
(
- D->base.M
+ I->M
|
- &D->base
+ I
)
...>

@@
identifier D;
expression E;
identifier M;
@@
 D = enc_to_dig_port(&E->base)
<...
(
- D->base.M
+ E->M
|
- &D->base
+ E
)
...>

@@
identifier D, DP;
expression E;
identifier M;
@@
 DP = enc_to_intel_dp(&E->base)
<...
(
- dp_to_dig_port(DP)->base.M
+ E->M
|
- &dp_to_dig_port(DP)->base
+ E
)
...>

@@
expression E;
identifier M;
@@
(
- enc_to_dig_port(&E->base)->base.M
+ E->M
|
- enc_to_dig_port(&E->base)->base
+ E
|
- enc_to_mst(&E->base)->primary->base.port
+ E->port
)

@@
expression E;
identifier D;
@@
- struct intel_digital_port *D = E;
... when != D

Cc: Dhinakaran Pandiyan <dhinakaran.pandiyan@intel.com>
Reviewed-by: default avatarDhinakaran Pandiyan <dhinakaran.pandiyan@intel.com>
Acked-by: default avatarJani Nikula <jani.nikula@intel.com>
Signed-off-by: default avatarVille Syrjälä <ville.syrjala@linux.intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20171109152434.32074-1-ville.syrjala@linux.intel.com
parent 005b5bc6
...@@ -3603,7 +3603,7 @@ static int i915_dp_mst_info(struct seq_file *m, void *unused) ...@@ -3603,7 +3603,7 @@ static int i915_dp_mst_info(struct seq_file *m, void *unused)
continue; continue;
seq_printf(m, "MST Source Port %c\n", seq_printf(m, "MST Source Port %c\n",
port_name(intel_dig_port->port)); port_name(intel_dig_port->base.port));
drm_dp_mst_dump_topology(m, &intel_dig_port->dp.mst_mgr); drm_dp_mst_dump_topology(m, &intel_dig_port->dp.mst_mgr);
} }
drm_connector_list_iter_end(&conn_iter); drm_connector_list_iter_end(&conn_iter);
......
...@@ -1801,8 +1801,8 @@ static void skl_ddi_set_iboost(struct intel_encoder *encoder, ...@@ -1801,8 +1801,8 @@ static void skl_ddi_set_iboost(struct intel_encoder *encoder,
int level, enum intel_output_type type) 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->base);
struct drm_i915_private *dev_priv = to_i915(intel_dig_port->base.base.dev); struct drm_i915_private *dev_priv = to_i915(encoder->base.dev);
enum port port = intel_dig_port->port; enum port port = encoder->port;
uint8_t iboost; uint8_t iboost;
if (type == INTEL_OUTPUT_HDMI) if (type == INTEL_OUTPUT_HDMI)
...@@ -2470,7 +2470,7 @@ void intel_ddi_prepare_link_retrain(struct intel_dp *intel_dp) ...@@ -2470,7 +2470,7 @@ void intel_ddi_prepare_link_retrain(struct intel_dp *intel_dp)
struct intel_digital_port *intel_dig_port = dp_to_dig_port(intel_dp); struct intel_digital_port *intel_dig_port = dp_to_dig_port(intel_dp);
struct drm_i915_private *dev_priv = struct drm_i915_private *dev_priv =
to_i915(intel_dig_port->base.base.dev); to_i915(intel_dig_port->base.base.dev);
enum port port = intel_dig_port->port; enum port port = intel_dig_port->base.port;
uint32_t val; uint32_t val;
bool wait = false; bool wait = false;
...@@ -2698,7 +2698,7 @@ static struct intel_connector * ...@@ -2698,7 +2698,7 @@ static struct intel_connector *
intel_ddi_init_dp_connector(struct intel_digital_port *intel_dig_port) intel_ddi_init_dp_connector(struct intel_digital_port *intel_dig_port)
{ {
struct intel_connector *connector; struct intel_connector *connector;
enum port port = intel_dig_port->port; enum port port = intel_dig_port->base.port;
connector = intel_connector_alloc(); connector = intel_connector_alloc();
if (!connector) if (!connector)
...@@ -2717,7 +2717,7 @@ static struct intel_connector * ...@@ -2717,7 +2717,7 @@ static struct intel_connector *
intel_ddi_init_hdmi_connector(struct intel_digital_port *intel_dig_port) intel_ddi_init_hdmi_connector(struct intel_digital_port *intel_dig_port)
{ {
struct intel_connector *connector; struct intel_connector *connector;
enum port port = intel_dig_port->port; enum port port = intel_dig_port->base.port;
connector = intel_connector_alloc(); connector = intel_connector_alloc();
if (!connector) if (!connector)
...@@ -2733,7 +2733,7 @@ static bool intel_ddi_a_force_4_lanes(struct intel_digital_port *dport) ...@@ -2733,7 +2733,7 @@ static bool intel_ddi_a_force_4_lanes(struct intel_digital_port *dport)
{ {
struct drm_i915_private *dev_priv = to_i915(dport->base.base.dev); struct drm_i915_private *dev_priv = to_i915(dport->base.base.dev);
if (dport->port != PORT_A) if (dport->base.port != PORT_A)
return false; return false;
if (dport->saved_port_bits & DDI_A_4_LANES) if (dport->saved_port_bits & DDI_A_4_LANES)
...@@ -2836,7 +2836,6 @@ void intel_ddi_init(struct drm_i915_private *dev_priv, enum port port) ...@@ -2836,7 +2836,6 @@ void intel_ddi_init(struct drm_i915_private *dev_priv, enum port port)
intel_encoder->suspend = intel_dp_encoder_suspend; intel_encoder->suspend = intel_dp_encoder_suspend;
intel_encoder->get_power_domains = intel_ddi_get_power_domains; intel_encoder->get_power_domains = intel_ddi_get_power_domains;
intel_dig_port->port = port;
intel_dig_port->saved_port_bits = I915_READ(DDI_BUF_CTL(port)) & intel_dig_port->saved_port_bits = I915_READ(DDI_BUF_CTL(port)) &
(DDI_BUF_PORT_REVERSAL | (DDI_BUF_PORT_REVERSAL |
DDI_A_4_LANES); DDI_A_4_LANES);
......
...@@ -1701,7 +1701,7 @@ void vlv_wait_port_ready(struct drm_i915_private *dev_priv, ...@@ -1701,7 +1701,7 @@ void vlv_wait_port_ready(struct drm_i915_private *dev_priv,
u32 port_mask; u32 port_mask;
i915_reg_t dpll_reg; i915_reg_t dpll_reg;
switch (dport->port) { switch (dport->base.port) {
case PORT_B: case PORT_B:
port_mask = DPLL_PORTB_READY_MASK; port_mask = DPLL_PORTB_READY_MASK;
dpll_reg = DPLL(0); dpll_reg = DPLL(0);
...@@ -1723,7 +1723,8 @@ void vlv_wait_port_ready(struct drm_i915_private *dev_priv, ...@@ -1723,7 +1723,8 @@ void vlv_wait_port_ready(struct drm_i915_private *dev_priv,
dpll_reg, port_mask, expected_mask, dpll_reg, port_mask, expected_mask,
1000)) 1000))
WARN(1, "timed out waiting for port %c ready: got 0x%x, expected 0x%x\n", WARN(1, "timed out waiting for port %c ready: got 0x%x, expected 0x%x\n",
port_name(dport->port), I915_READ(dpll_reg) & port_mask, expected_mask); port_name(dport->base.port),
I915_READ(dpll_reg) & port_mask, expected_mask);
} }
static void ironlake_enable_pch_transcoder(struct drm_i915_private *dev_priv, static void ironlake_enable_pch_transcoder(struct drm_i915_private *dev_priv,
...@@ -4481,7 +4482,7 @@ intel_trans_dp_port_sel(struct intel_crtc *crtc) ...@@ -4481,7 +4482,7 @@ intel_trans_dp_port_sel(struct intel_crtc *crtc)
for_each_encoder_on_crtc(dev, &crtc->base, encoder) { for_each_encoder_on_crtc(dev, &crtc->base, encoder) {
if (encoder->type == INTEL_OUTPUT_DP || if (encoder->type == INTEL_OUTPUT_DP ||
encoder->type == INTEL_OUTPUT_EDP) encoder->type == INTEL_OUTPUT_EDP)
return enc_to_dig_port(&encoder->base)->port; return encoder->port;
} }
return -1; return -1;
...@@ -7632,7 +7633,7 @@ static void ironlake_init_pch_refclk(struct drm_i915_private *dev_priv) ...@@ -7632,7 +7633,7 @@ static void ironlake_init_pch_refclk(struct drm_i915_private *dev_priv)
break; break;
case INTEL_OUTPUT_EDP: case INTEL_OUTPUT_EDP:
has_panel = true; has_panel = true;
if (enc_to_dig_port(&encoder->base)->port == PORT_A) if (encoder->port == PORT_A)
has_cpu_edp = true; has_cpu_edp = true;
break; break;
default: default:
...@@ -10755,7 +10756,7 @@ static bool check_digital_port_conflicts(struct drm_atomic_state *state) ...@@ -10755,7 +10756,7 @@ static bool check_digital_port_conflicts(struct drm_atomic_state *state)
case INTEL_OUTPUT_DP: case INTEL_OUTPUT_DP:
case INTEL_OUTPUT_HDMI: case INTEL_OUTPUT_HDMI:
case INTEL_OUTPUT_EDP: case INTEL_OUTPUT_EDP:
port_mask = 1 << enc_to_dig_port(&encoder->base)->port; port_mask = 1 << encoder->port;
/* the same port mustn't appear more than once */ /* the same port mustn't appear more than once */
if (used_ports & port_mask) if (used_ports & port_mask)
...@@ -10765,7 +10766,7 @@ static bool check_digital_port_conflicts(struct drm_atomic_state *state) ...@@ -10765,7 +10766,7 @@ static bool check_digital_port_conflicts(struct drm_atomic_state *state)
break; break;
case INTEL_OUTPUT_DP_MST: case INTEL_OUTPUT_DP_MST:
used_mst_ports |= used_mst_ports |=
1 << enc_to_mst(&encoder->base)->primary->port; 1 << encoder->port;
break; break;
default: default:
break; break;
......
This diff is collapsed.
...@@ -209,7 +209,7 @@ static void intel_mst_pre_enable_dp(struct intel_encoder *encoder, ...@@ -209,7 +209,7 @@ static void intel_mst_pre_enable_dp(struct intel_encoder *encoder,
struct intel_digital_port *intel_dig_port = intel_mst->primary; struct intel_digital_port *intel_dig_port = intel_mst->primary;
struct intel_dp *intel_dp = &intel_dig_port->dp; struct intel_dp *intel_dp = &intel_dig_port->dp;
struct drm_i915_private *dev_priv = to_i915(encoder->base.dev); struct drm_i915_private *dev_priv = to_i915(encoder->base.dev);
enum port port = intel_dig_port->port; enum port port = intel_dig_port->base.port;
struct intel_connector *connector = struct intel_connector *connector =
to_intel_connector(conn_state->connector); to_intel_connector(conn_state->connector);
int ret; int ret;
...@@ -253,7 +253,7 @@ static void intel_mst_enable_dp(struct intel_encoder *encoder, ...@@ -253,7 +253,7 @@ static void intel_mst_enable_dp(struct intel_encoder *encoder,
struct intel_digital_port *intel_dig_port = intel_mst->primary; struct intel_digital_port *intel_dig_port = intel_mst->primary;
struct intel_dp *intel_dp = &intel_dig_port->dp; struct intel_dp *intel_dp = &intel_dig_port->dp;
struct drm_i915_private *dev_priv = to_i915(encoder->base.dev); struct drm_i915_private *dev_priv = to_i915(encoder->base.dev);
enum port port = intel_dig_port->port; enum port port = intel_dig_port->base.port;
int ret; int ret;
DRM_DEBUG_KMS("active links %d\n", intel_dp->active_mst_links); DRM_DEBUG_KMS("active links %d\n", intel_dp->active_mst_links);
...@@ -552,7 +552,7 @@ intel_dp_create_fake_mst_encoder(struct intel_digital_port *intel_dig_port, enum ...@@ -552,7 +552,7 @@ intel_dp_create_fake_mst_encoder(struct intel_digital_port *intel_dig_port, enum
intel_encoder->type = INTEL_OUTPUT_DP_MST; intel_encoder->type = INTEL_OUTPUT_DP_MST;
intel_encoder->power_domain = intel_dig_port->base.power_domain; intel_encoder->power_domain = intel_dig_port->base.power_domain;
intel_encoder->port = intel_dig_port->port; intel_encoder->port = intel_dig_port->base.port;
intel_encoder->crtc_mask = 0x7; intel_encoder->crtc_mask = 0x7;
intel_encoder->cloneable = 0; intel_encoder->cloneable = 0;
......
...@@ -586,9 +586,8 @@ bxt_ddi_phy_calc_lane_lat_optim_mask(uint8_t lane_count) ...@@ -586,9 +586,8 @@ bxt_ddi_phy_calc_lane_lat_optim_mask(uint8_t lane_count)
void bxt_ddi_phy_set_lane_optim_mask(struct intel_encoder *encoder, void bxt_ddi_phy_set_lane_optim_mask(struct intel_encoder *encoder,
uint8_t lane_lat_optim_mask) uint8_t lane_lat_optim_mask)
{ {
struct intel_digital_port *dport = enc_to_dig_port(&encoder->base); struct drm_i915_private *dev_priv = to_i915(encoder->base.dev);
struct drm_i915_private *dev_priv = to_i915(dport->base.base.dev); enum port port = encoder->port;
enum port port = dport->port;
enum dpio_phy phy; enum dpio_phy phy;
enum dpio_channel ch; enum dpio_channel ch;
int lane; int lane;
...@@ -613,9 +612,8 @@ void bxt_ddi_phy_set_lane_optim_mask(struct intel_encoder *encoder, ...@@ -613,9 +612,8 @@ void bxt_ddi_phy_set_lane_optim_mask(struct intel_encoder *encoder,
uint8_t uint8_t
bxt_ddi_phy_get_lane_lat_optim_mask(struct intel_encoder *encoder) bxt_ddi_phy_get_lane_lat_optim_mask(struct intel_encoder *encoder)
{ {
struct intel_digital_port *dport = enc_to_dig_port(&encoder->base); struct drm_i915_private *dev_priv = to_i915(encoder->base.dev);
struct drm_i915_private *dev_priv = to_i915(dport->base.base.dev); enum port port = encoder->port;
enum port port = dport->port;
enum dpio_phy phy; enum dpio_phy phy;
enum dpio_channel ch; enum dpio_channel ch;
int lane; int lane;
...@@ -641,7 +639,7 @@ void chv_set_phy_signal_level(struct intel_encoder *encoder, ...@@ -641,7 +639,7 @@ void chv_set_phy_signal_level(struct intel_encoder *encoder,
{ {
struct drm_i915_private *dev_priv = to_i915(encoder->base.dev); 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->base);
struct intel_crtc *intel_crtc = to_intel_crtc(dport->base.base.crtc); struct intel_crtc *intel_crtc = to_intel_crtc(encoder->base.crtc);
enum dpio_channel ch = vlv_dport_to_channel(dport); enum dpio_channel ch = vlv_dport_to_channel(dport);
enum pipe pipe = intel_crtc->pipe; enum pipe pipe = intel_crtc->pipe;
u32 val; u32 val;
......
...@@ -1056,7 +1056,6 @@ struct intel_lspcon { ...@@ -1056,7 +1056,6 @@ struct intel_lspcon {
struct intel_digital_port { struct intel_digital_port {
struct intel_encoder base; struct intel_encoder base;
enum port port;
u32 saved_port_bits; u32 saved_port_bits;
struct intel_dp dp; struct intel_dp dp;
struct intel_hdmi hdmi; struct intel_hdmi hdmi;
...@@ -1088,7 +1087,7 @@ struct intel_dp_mst_encoder { ...@@ -1088,7 +1087,7 @@ struct intel_dp_mst_encoder {
static inline enum dpio_channel static inline enum dpio_channel
vlv_dport_to_channel(struct intel_digital_port *dport) vlv_dport_to_channel(struct intel_digital_port *dport)
{ {
switch (dport->port) { switch (dport->base.port) {
case PORT_B: case PORT_B:
case PORT_D: case PORT_D:
return DPIO_CH0; return DPIO_CH0;
...@@ -1102,7 +1101,7 @@ vlv_dport_to_channel(struct intel_digital_port *dport) ...@@ -1102,7 +1101,7 @@ vlv_dport_to_channel(struct intel_digital_port *dport)
static inline enum dpio_phy static inline enum dpio_phy
vlv_dport_to_phy(struct intel_digital_port *dport) vlv_dport_to_phy(struct intel_digital_port *dport)
{ {
switch (dport->port) { switch (dport->base.port) {
case PORT_B: case PORT_B:
case PORT_C: case PORT_C:
return DPIO_PHY0; return DPIO_PHY0;
......
...@@ -186,7 +186,7 @@ static bool g4x_infoframe_enabled(struct drm_encoder *encoder, ...@@ -186,7 +186,7 @@ static bool g4x_infoframe_enabled(struct drm_encoder *encoder,
if ((val & VIDEO_DIP_ENABLE) == 0) if ((val & VIDEO_DIP_ENABLE) == 0)
return false; return false;
if ((val & VIDEO_DIP_PORT_MASK) != VIDEO_DIP_PORT(intel_dig_port->port)) if ((val & VIDEO_DIP_PORT_MASK) != VIDEO_DIP_PORT(intel_dig_port->base.port))
return false; return false;
return val & (VIDEO_DIP_ENABLE_AVI | return val & (VIDEO_DIP_ENABLE_AVI |
...@@ -245,7 +245,7 @@ static bool ibx_infoframe_enabled(struct drm_encoder *encoder, ...@@ -245,7 +245,7 @@ static bool ibx_infoframe_enabled(struct drm_encoder *encoder,
if ((val & VIDEO_DIP_ENABLE) == 0) if ((val & VIDEO_DIP_ENABLE) == 0)
return false; return false;
if ((val & VIDEO_DIP_PORT_MASK) != VIDEO_DIP_PORT(intel_dig_port->port)) if ((val & VIDEO_DIP_PORT_MASK) != VIDEO_DIP_PORT(intel_dig_port->base.port))
return false; return false;
return val & (VIDEO_DIP_ENABLE_AVI | return val & (VIDEO_DIP_ENABLE_AVI |
...@@ -362,7 +362,7 @@ static bool vlv_infoframe_enabled(struct drm_encoder *encoder, ...@@ -362,7 +362,7 @@ static bool vlv_infoframe_enabled(struct drm_encoder *encoder,
if ((val & VIDEO_DIP_ENABLE) == 0) if ((val & VIDEO_DIP_ENABLE) == 0)
return false; return false;
if ((val & VIDEO_DIP_PORT_MASK) != VIDEO_DIP_PORT(intel_dig_port->port)) if ((val & VIDEO_DIP_PORT_MASK) != VIDEO_DIP_PORT(intel_dig_port->base.port))
return false; return false;
return val & (VIDEO_DIP_ENABLE_AVI | return val & (VIDEO_DIP_ENABLE_AVI |
...@@ -535,7 +535,7 @@ static void g4x_set_infoframes(struct drm_encoder *encoder, ...@@ -535,7 +535,7 @@ static void g4x_set_infoframes(struct drm_encoder *encoder,
struct intel_hdmi *intel_hdmi = &intel_dig_port->hdmi; struct intel_hdmi *intel_hdmi = &intel_dig_port->hdmi;
i915_reg_t reg = VIDEO_DIP_CTL; i915_reg_t reg = VIDEO_DIP_CTL;
u32 val = I915_READ(reg); u32 val = I915_READ(reg);
u32 port = VIDEO_DIP_PORT(intel_dig_port->port); u32 port = VIDEO_DIP_PORT(intel_dig_port->base.port);
assert_hdmi_port_disabled(intel_hdmi); assert_hdmi_port_disabled(intel_hdmi);
...@@ -686,7 +686,7 @@ static void ibx_set_infoframes(struct drm_encoder *encoder, ...@@ -686,7 +686,7 @@ static void ibx_set_infoframes(struct drm_encoder *encoder,
struct intel_hdmi *intel_hdmi = &intel_dig_port->hdmi; struct intel_hdmi *intel_hdmi = &intel_dig_port->hdmi;
i915_reg_t reg = TVIDEO_DIP_CTL(intel_crtc->pipe); i915_reg_t reg = TVIDEO_DIP_CTL(intel_crtc->pipe);
u32 val = I915_READ(reg); u32 val = I915_READ(reg);
u32 port = VIDEO_DIP_PORT(intel_dig_port->port); u32 port = VIDEO_DIP_PORT(intel_dig_port->base.port);
assert_hdmi_port_disabled(intel_hdmi); assert_hdmi_port_disabled(intel_hdmi);
...@@ -782,7 +782,7 @@ static void vlv_set_infoframes(struct drm_encoder *encoder, ...@@ -782,7 +782,7 @@ static void vlv_set_infoframes(struct drm_encoder *encoder,
struct intel_hdmi *intel_hdmi = enc_to_intel_hdmi(encoder); struct intel_hdmi *intel_hdmi = enc_to_intel_hdmi(encoder);
i915_reg_t reg = VLV_TVIDEO_DIP_CTL(intel_crtc->pipe); i915_reg_t reg = VLV_TVIDEO_DIP_CTL(intel_crtc->pipe);
u32 val = I915_READ(reg); u32 val = I915_READ(reg);
u32 port = VIDEO_DIP_PORT(intel_dig_port->port); u32 port = VIDEO_DIP_PORT(intel_dig_port->base.port);
assert_hdmi_port_disabled(intel_hdmi); assert_hdmi_port_disabled(intel_hdmi);
...@@ -1545,7 +1545,7 @@ intel_hdmi_dp_dual_mode_detect(struct drm_connector *connector, bool has_edid) ...@@ -1545,7 +1545,7 @@ intel_hdmi_dp_dual_mode_detect(struct drm_connector *connector, bool has_edid)
{ {
struct drm_i915_private *dev_priv = to_i915(connector->dev); struct drm_i915_private *dev_priv = to_i915(connector->dev);
struct intel_hdmi *hdmi = intel_attached_hdmi(connector); struct intel_hdmi *hdmi = intel_attached_hdmi(connector);
enum port port = hdmi_to_dig_port(hdmi)->port; enum port port = hdmi_to_dig_port(hdmi)->base.port;
struct i2c_adapter *adapter = struct i2c_adapter *adapter =
intel_gmbus_get_adapter(dev_priv, hdmi->ddc_bus); intel_gmbus_get_adapter(dev_priv, hdmi->ddc_bus);
enum drm_dp_dual_mode_type type = drm_dp_dual_mode_detect(adapter); enum drm_dp_dual_mode_type type = drm_dp_dual_mode_detect(adapter);
...@@ -2015,7 +2015,7 @@ void intel_hdmi_init_connector(struct intel_digital_port *intel_dig_port, ...@@ -2015,7 +2015,7 @@ void intel_hdmi_init_connector(struct intel_digital_port *intel_dig_port,
struct intel_encoder *intel_encoder = &intel_dig_port->base; struct intel_encoder *intel_encoder = &intel_dig_port->base;
struct drm_device *dev = intel_encoder->base.dev; struct drm_device *dev = intel_encoder->base.dev;
struct drm_i915_private *dev_priv = to_i915(dev); struct drm_i915_private *dev_priv = to_i915(dev);
enum port port = intel_dig_port->port; enum port port = intel_encoder->port;
DRM_DEBUG_KMS("Adding HDMI connector on port %c\n", DRM_DEBUG_KMS("Adding HDMI connector on port %c\n",
port_name(port)); port_name(port));
...@@ -2135,7 +2135,6 @@ void intel_hdmi_init(struct drm_i915_private *dev_priv, ...@@ -2135,7 +2135,6 @@ void intel_hdmi_init(struct drm_i915_private *dev_priv,
if (IS_G4X(dev_priv)) if (IS_G4X(dev_priv))
intel_encoder->cloneable |= 1 << INTEL_OUTPUT_HDMI; intel_encoder->cloneable |= 1 << INTEL_OUTPUT_HDMI;
intel_dig_port->port = port;
intel_dig_port->hdmi.hdmi_reg = hdmi_reg; intel_dig_port->hdmi.hdmi_reg = hdmi_reg;
intel_dig_port->dp.output_reg = INVALID_MMIO_REG; intel_dig_port->dp.output_reg = INVALID_MMIO_REG;
intel_dig_port->max_lanes = 4; intel_dig_port->max_lanes = 4;
......
...@@ -269,7 +269,7 @@ static int i9xx_pipe_crc_auto_source(struct drm_i915_private *dev_priv, ...@@ -269,7 +269,7 @@ static int i9xx_pipe_crc_auto_source(struct drm_i915_private *dev_priv,
case INTEL_OUTPUT_DP: case INTEL_OUTPUT_DP:
case INTEL_OUTPUT_EDP: case INTEL_OUTPUT_EDP:
dig_port = enc_to_dig_port(&encoder->base); dig_port = enc_to_dig_port(&encoder->base);
switch (dig_port->port) { switch (dig_port->base.port) {
case PORT_B: case PORT_B:
*source = INTEL_PIPE_CRC_SOURCE_DP_B; *source = INTEL_PIPE_CRC_SOURCE_DP_B;
break; break;
...@@ -281,7 +281,7 @@ static int i9xx_pipe_crc_auto_source(struct drm_i915_private *dev_priv, ...@@ -281,7 +281,7 @@ static int i9xx_pipe_crc_auto_source(struct drm_i915_private *dev_priv,
break; break;
default: default:
WARN(1, "nonexisting DP port %c\n", WARN(1, "nonexisting DP port %c\n",
port_name(dig_port->port)); port_name(dig_port->base.port));
break; break;
} }
break; break;
......
...@@ -163,7 +163,7 @@ static void hsw_psr_enable_sink(struct intel_dp *intel_dp) ...@@ -163,7 +163,7 @@ static void hsw_psr_enable_sink(struct intel_dp *intel_dp)
[3] = 1 - 1, [3] = 1 - 1,
[4] = DP_SET_POWER_D0, [4] = DP_SET_POWER_D0,
}; };
enum port port = dig_port->port; enum port port = dig_port->base.port;
u32 aux_ctl; u32 aux_ctl;
int i; int i;
...@@ -376,7 +376,7 @@ void intel_psr_compute_config(struct intel_dp *intel_dp, ...@@ -376,7 +376,7 @@ void intel_psr_compute_config(struct intel_dp *intel_dp,
* ones. Since by Display design transcoder EDP is tied to port A * ones. Since by Display design transcoder EDP is tied to port A
* we can safely escape based on the port A. * we can safely escape based on the port A.
*/ */
if (HAS_DDI(dev_priv) && dig_port->port != PORT_A) { if (HAS_DDI(dev_priv) && dig_port->base.port != PORT_A) {
DRM_DEBUG_KMS("PSR condition failed: Port not supported\n"); DRM_DEBUG_KMS("PSR condition failed: Port not supported\n");
return; return;
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment