aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDave Airlie <airlied@redhat.com>2014-06-04 23:22:59 -0400
committerDave Airlie <airlied@redhat.com>2014-07-21 02:48:59 -0400
commitd05410f9a450df8848196ce87f1c9ef14ff89cb5 (patch)
tree3fbccacaf61bc83dc225f62dc133cbe5ed4f4949
parent36cd7444c044806cd2a4e450a8385597221d5d25 (diff)
drm/i915: split conversion function out into separate function
for MST I need to reuse this, so just move it now. Signed-off-by: Dave Airlie <airlied@redhat.com>
-rw-r--r--drivers/gpu/drm/i915/intel_display.c31
1 files changed, 18 insertions, 13 deletions
diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c
index 008bb3dc88cb..421ea71b2e58 100644
--- a/drivers/gpu/drm/i915/intel_display.c
+++ b/drivers/gpu/drm/i915/intel_display.c
@@ -4300,6 +4300,23 @@ static void i9xx_pfit_enable(struct intel_crtc *crtc)
4300 I915_WRITE(BCLRPAT(crtc->pipe), 0); 4300 I915_WRITE(BCLRPAT(crtc->pipe), 0);
4301} 4301}
4302 4302
4303static enum intel_display_power_domain port_to_power_domain(enum port port)
4304{
4305 switch (port) {
4306 case PORT_A:
4307 return POWER_DOMAIN_PORT_DDI_A_4_LANES;
4308 case PORT_B:
4309 return POWER_DOMAIN_PORT_DDI_B_4_LANES;
4310 case PORT_C:
4311 return POWER_DOMAIN_PORT_DDI_C_4_LANES;
4312 case PORT_D:
4313 return POWER_DOMAIN_PORT_DDI_D_4_LANES;
4314 default:
4315 WARN_ON_ONCE(1);
4316 return POWER_DOMAIN_PORT_OTHER;
4317 }
4318}
4319
4303#define for_each_power_domain(domain, mask) \ 4320#define for_each_power_domain(domain, mask) \
4304 for ((domain) = 0; (domain) < POWER_DOMAIN_NUM; (domain)++) \ 4321 for ((domain) = 0; (domain) < POWER_DOMAIN_NUM; (domain)++) \
4305 if ((1 << (domain)) & (mask)) 4322 if ((1 << (domain)) & (mask))
@@ -4318,19 +4335,7 @@ intel_display_port_power_domain(struct intel_encoder *intel_encoder)
4318 case INTEL_OUTPUT_HDMI: 4335 case INTEL_OUTPUT_HDMI:
4319 case INTEL_OUTPUT_EDP: 4336 case INTEL_OUTPUT_EDP:
4320 intel_dig_port = enc_to_dig_port(&intel_encoder->base); 4337 intel_dig_port = enc_to_dig_port(&intel_encoder->base);
4321 switch (intel_dig_port->port) { 4338 return port_to_power_domain(intel_dig_port->port);
4322 case PORT_A:
4323 return POWER_DOMAIN_PORT_DDI_A_4_LANES;
4324 case PORT_B:
4325 return POWER_DOMAIN_PORT_DDI_B_4_LANES;
4326 case PORT_C:
4327 return POWER_DOMAIN_PORT_DDI_C_4_LANES;
4328 case PORT_D:
4329 return POWER_DOMAIN_PORT_DDI_D_4_LANES;
4330 default:
4331 WARN_ON_ONCE(1);
4332 return POWER_DOMAIN_PORT_OTHER;
4333 }
4334 case INTEL_OUTPUT_ANALOG: 4339 case INTEL_OUTPUT_ANALOG:
4335 return POWER_DOMAIN_PORT_CRT; 4340 return POWER_DOMAIN_PORT_CRT;
4336 case INTEL_OUTPUT_DSI: 4341 case INTEL_OUTPUT_DSI: