From b4906395b08d5b285e4580a757b5367a76c6a09b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ville=20Syrj=C3=A4l=C3=A4?= Date: Fri, 1 Nov 2013 17:08:54 +0200 Subject: [PATCH] drm/i915: Make intel_dp_is_edp() less specific MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit All the bits in the VBT child device type have some speciifc meaning, so looking for an exact match isn't always the right thing. On some VLVs for example the device type for eDP panels is 0x1806. If we mask out the bits that could concievably change between different eDP panels, we are left with the set of bits that should still tell us if the port is eDP or not. Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=71051 Signed-off-by: Ville Syrjälä --- drivers/gpu/drm/i915/intel_dp.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/gpu/drm/i915/intel_dp.c b/drivers/gpu/drm/i915/intel_dp.c index ede023c..87cfb12 100644 --- a/drivers/gpu/drm/i915/intel_dp.c +++ b/drivers/gpu/drm/i915/intel_dp.c @@ -3281,7 +3281,7 @@ bool intel_dp_is_edp(struct drm_device *dev, enum port port) p_child = dev_priv->vbt.child_dev + i; if (p_child->common.dvo_port == port_mapping[port] && - p_child->common.device_type == DEVICE_TYPE_eDP) + (p_child->common.device_type & 0x1f3f) == (DEVICE_TYPE_eDP & 0x1f3f)) return true; } return false; -- 1.8.1.5