drm/i915/dp: Move initialization of hpd_pin to a new function

This shaves a few lines from intel_dp_init_connector() and will serve as
a good place to add other port specific information in a follow up
patch.

While at it, convert BUG() to MISSING_CASE() in the default case.

v2: s/BUG/MISSING_CASE. (Chris)
Cc: Chris Wilson <chris@chris-wilson.co.uk>
Cc: Jani Nikula <jani.nikula@linux.intel.com>
Signed-off-by: NAnder Conselvan de Oliveira <ander.conselvan.de.oliveira@intel.com>
Reviewed-by: NJani Nikula <jani.nikula@intel.com>
Link: http://patchwork.freedesktop.org/patch/msgid/20170203140316.20792-2-ander.conselvan.de.oliveira@intel.com
上级 ca4c3890
...@@ -5903,6 +5903,33 @@ static bool intel_edp_init_connector(struct intel_dp *intel_dp, ...@@ -5903,6 +5903,33 @@ static bool intel_edp_init_connector(struct intel_dp *intel_dp,
return false; return false;
} }
static void
intel_dp_init_connector_port_info(struct intel_digital_port *intel_dig_port)
{
struct intel_encoder *encoder = &intel_dig_port->base;
/* Set up the hotplug pin. */
switch (intel_dig_port->port) {
case PORT_A:
encoder->hpd_pin = HPD_PORT_A;
break;
case PORT_B:
encoder->hpd_pin = HPD_PORT_B;
break;
case PORT_C:
encoder->hpd_pin = HPD_PORT_C;
break;
case PORT_D:
encoder->hpd_pin = HPD_PORT_D;
break;
case PORT_E:
encoder->hpd_pin = HPD_PORT_E;
break;
default:
MISSING_CASE(intel_dig_port->port);
}
}
bool bool
intel_dp_init_connector(struct intel_digital_port *intel_dig_port, intel_dp_init_connector(struct intel_digital_port *intel_dig_port,
struct intel_connector *intel_connector) struct intel_connector *intel_connector)
...@@ -5988,26 +6015,7 @@ intel_dp_init_connector(struct intel_digital_port *intel_dig_port, ...@@ -5988,26 +6015,7 @@ intel_dp_init_connector(struct intel_digital_port *intel_dig_port,
else else
intel_connector->get_hw_state = intel_connector_get_hw_state; intel_connector->get_hw_state = intel_connector_get_hw_state;
/* Set up the hotplug pin. */ intel_dp_init_connector_port_info(intel_dig_port);
switch (port) {
case PORT_A:
intel_encoder->hpd_pin = HPD_PORT_A;
break;
case PORT_B:
intel_encoder->hpd_pin = HPD_PORT_B;
break;
case PORT_C:
intel_encoder->hpd_pin = HPD_PORT_C;
break;
case PORT_D:
intel_encoder->hpd_pin = HPD_PORT_D;
break;
case PORT_E:
intel_encoder->hpd_pin = HPD_PORT_E;
break;
default:
BUG();
}
/* init MST on ports that can support it */ /* init MST on ports that can support it */
if (HAS_DP_MST(dev_priv) && !is_edp(intel_dp) && if (HAS_DP_MST(dev_priv) && !is_edp(intel_dp) &&
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册