Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 4ef03f83 authored by Ville Syrjälä's avatar Ville Syrjälä
Browse files

drm/i915: Introduce intel_encoder_is_dig_port()

parent 14aa521c
Loading
Loading
Loading
Loading
+15 −9
Original line number Diff line number Diff line
@@ -1245,24 +1245,30 @@ 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 *
enc_to_mst(struct drm_encoder *encoder)