[PATCH 02/17] drm/i915: Clean up intel_ddi_get_encoder_port.

Maarten Lankhorst maarten.lankhorst at linux.intel.com
Wed Jun 22 09:20:05 UTC 2016


MST and VGA are special, but all others default to dig_port->port.

Signed-off-by: Maarten Lankhorst <maarten.lankhorst at linux.intel.com>
---
 drivers/gpu/drm/i915/intel_ddi.c | 37 +++++--------------------------------
 1 file changed, 5 insertions(+), 32 deletions(-)

diff --git a/drivers/gpu/drm/i915/intel_ddi.c b/drivers/gpu/drm/i915/intel_ddi.c
index ad3b0ee5e55b..9e3c8d3b821b 100644
--- a/drivers/gpu/drm/i915/intel_ddi.c
+++ b/drivers/gpu/drm/i915/intel_ddi.c
@@ -304,42 +304,15 @@ static const struct bxt_ddi_buf_trans bxt_ddi_translations_hdmi[] = {
 static void bxt_ddi_vswing_sequence(struct drm_i915_private *dev_priv,
 				    u32 level, enum port port, int type);
 
-static void ddi_get_encoder_port(struct intel_encoder *intel_encoder,
-				 struct intel_digital_port **dig_port,
-				 enum port *port)
-{
-	struct drm_encoder *encoder = &intel_encoder->base;
-
-	switch (intel_encoder->type) {
-	case INTEL_OUTPUT_DP_MST:
-		*dig_port = enc_to_mst(encoder)->primary;
-		*port = (*dig_port)->port;
-		break;
-	default:
-		WARN(1, "Invalid DDI encoder type %d\n", intel_encoder->type);
-		/* fallthrough and treat as unknown */
-	case INTEL_OUTPUT_DISPLAYPORT:
-	case INTEL_OUTPUT_EDP:
-	case INTEL_OUTPUT_HDMI:
-	case INTEL_OUTPUT_UNKNOWN:
-		*dig_port = enc_to_dig_port(encoder);
-		*port = (*dig_port)->port;
-		break;
-	case INTEL_OUTPUT_ANALOG:
-		*dig_port = NULL;
-		*port = PORT_E;
-		break;
-	}
-}
-
 enum port intel_ddi_get_encoder_port(struct intel_encoder *intel_encoder)
 {
-	struct intel_digital_port *dig_port;
-	enum port port;
+	if (intel_encoder->type == INTEL_OUTPUT_ANALOG)
+		return PORT_E;
 
-	ddi_get_encoder_port(intel_encoder, &dig_port, &port);
+	if (intel_encoder->type == INTEL_OUTPUT_DP_MST)
+		return enc_to_mst(&intel_encoder->base)->primary->port;
 
-	return port;
+	return enc_to_dig_port(&intel_encoder->base)->port;
 }
 
 static const struct ddi_buf_trans *
-- 
2.5.5



More information about the Intel-gfx-trybot mailing list