|
@@ -1245,23 +1245,29 @@ intel_attached_encoder(struct drm_connector *connector)
|
|
|
return to_intel_connector(connector)->encoder;
|
|
|
}
|
|
|
|
|
|
-static inline struct intel_digital_port *
|
|
|
-enc_to_dig_port(struct drm_encoder *encoder)
|
|
|
+static inline bool intel_encoder_is_dig_port(struct intel_encoder *encoder)
|
|
|
{
|
|
|
- struct intel_encoder *intel_encoder = to_intel_encoder(encoder);
|
|
|
-
|
|
|
- switch (intel_encoder->type) {
|
|
|
+ switch (encoder->type) {
|
|
|
case INTEL_OUTPUT_DDI:
|
|
|
- WARN_ON(!HAS_DDI(to_i915(encoder->dev)));
|
|
|
- /* fall through */
|
|
|
case INTEL_OUTPUT_DP:
|
|
|
case INTEL_OUTPUT_EDP:
|
|
|
case INTEL_OUTPUT_HDMI:
|
|
|
+ return true;
|
|
|
+ default:
|
|
|
+ return false;
|
|
|
+ }
|
|
|
+}
|
|
|
+
|
|
|
+static inline struct intel_digital_port *
|
|
|
+enc_to_dig_port(struct drm_encoder *encoder)
|
|
|
+{
|
|
|
+ struct intel_encoder *intel_encoder = to_intel_encoder(encoder);
|
|
|
+
|
|
|
+ if (intel_encoder_is_dig_port(intel_encoder))
|
|
|
return container_of(encoder, struct intel_digital_port,
|
|
|
base.base);
|
|
|
- default:
|
|
|
+ else
|
|
|
return NULL;
|
|
|
- }
|
|
|
}
|
|
|
|
|
|
static inline struct intel_dp_mst_encoder *
|