drm/i915: move VBT based eDP port check to intel_bios.c
Hide knowledge about VBT child devices in intel_bios.c. Reviewed-by: Daniel Vetter <daniel.vetter@ffwll.ch> Signed-off-by: Jani Nikula <jani.nikula@intel.com> Link: http://patchwork.freedesktop.org/patch/msgid/1458125015-7931-3-git-send-email-jani.nikula@intel.com
此提交包含在:
@@ -4993,14 +4993,6 @@ put_power:
|
||||
bool intel_dp_is_edp(struct drm_device *dev, enum port port)
|
||||
{
|
||||
struct drm_i915_private *dev_priv = dev->dev_private;
|
||||
union child_device_config *p_child;
|
||||
int i;
|
||||
static const short port_mapping[] = {
|
||||
[PORT_B] = DVO_PORT_DPB,
|
||||
[PORT_C] = DVO_PORT_DPC,
|
||||
[PORT_D] = DVO_PORT_DPD,
|
||||
[PORT_E] = DVO_PORT_DPE,
|
||||
};
|
||||
|
||||
/*
|
||||
* eDP not supported on g4x. so bail out early just
|
||||
@@ -5012,18 +5004,7 @@ bool intel_dp_is_edp(struct drm_device *dev, enum port port)
|
||||
if (port == PORT_A)
|
||||
return true;
|
||||
|
||||
if (!dev_priv->vbt.child_dev_num)
|
||||
return false;
|
||||
|
||||
for (i = 0; i < dev_priv->vbt.child_dev_num; i++) {
|
||||
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_BITS) ==
|
||||
(DEVICE_TYPE_eDP & DEVICE_TYPE_eDP_BITS))
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
return intel_bios_is_port_edp(dev_priv, port);
|
||||
}
|
||||
|
||||
void
|
||||
|
新增問題並參考
封鎖使用者