drm/i915/bios: drop has_mipi in favor of intel_bios_is_dsi_present
Favor a single point of truth instead of duplicating the information. The change also filters out unsupported DSI ports at this stage, accepting only ports A and C, instead of waiting until the port checks. 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-6-git-send-email-jani.nikula@intel.com
This commit is contained in:
@@ -1434,7 +1434,6 @@ struct intel_vbt_data {
|
|||||||
unsigned int lvds_use_ssc:1;
|
unsigned int lvds_use_ssc:1;
|
||||||
unsigned int display_clock_mode:1;
|
unsigned int display_clock_mode:1;
|
||||||
unsigned int fdi_rx_polarity_inverted:1;
|
unsigned int fdi_rx_polarity_inverted:1;
|
||||||
unsigned int has_mipi:1;
|
|
||||||
int lvds_ssc_freq;
|
int lvds_ssc_freq;
|
||||||
unsigned int bios_lvds_val; /* initial [PCH_]LVDS reg val in VBIOS */
|
unsigned int bios_lvds_val; /* initial [PCH_]LVDS reg val in VBIOS */
|
||||||
|
|
||||||
|
@@ -706,7 +706,7 @@ parse_mipi_config(struct drm_i915_private *dev_priv,
|
|||||||
const struct mipi_pps_data *pps;
|
const struct mipi_pps_data *pps;
|
||||||
|
|
||||||
/* parse MIPI blocks only if LFP type is MIPI */
|
/* parse MIPI blocks only if LFP type is MIPI */
|
||||||
if (!dev_priv->vbt.has_mipi)
|
if (!intel_bios_is_dsi_present(dev_priv, NULL))
|
||||||
return;
|
return;
|
||||||
|
|
||||||
/* Initialize this to undefined indicating no generic MIPI support */
|
/* Initialize this to undefined indicating no generic MIPI support */
|
||||||
@@ -1232,13 +1232,6 @@ parse_device_mapping(struct drm_i915_private *dev_priv,
|
|||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (p_child->common.dvo_port >= DVO_PORT_MIPIA
|
|
||||||
&& p_child->common.dvo_port <= DVO_PORT_MIPID
|
|
||||||
&&p_child->common.device_type & DEVICE_TYPE_MIPI_OUTPUT) {
|
|
||||||
DRM_DEBUG_KMS("Found MIPI as LFP\n");
|
|
||||||
dev_priv->vbt.has_mipi = 1;
|
|
||||||
}
|
|
||||||
|
|
||||||
child_dev_ptr = dev_priv->vbt.child_dev + count;
|
child_dev_ptr = dev_priv->vbt.child_dev + count;
|
||||||
count++;
|
count++;
|
||||||
|
|
||||||
@@ -1580,7 +1573,8 @@ bool intel_bios_is_dsi_present(struct drm_i915_private *dev_priv,
|
|||||||
switch (dvo_port) {
|
switch (dvo_port) {
|
||||||
case DVO_PORT_MIPIA:
|
case DVO_PORT_MIPIA:
|
||||||
case DVO_PORT_MIPIC:
|
case DVO_PORT_MIPIC:
|
||||||
*port = dvo_port - DVO_PORT_MIPIA;
|
if (port)
|
||||||
|
*port = dvo_port - DVO_PORT_MIPIA;
|
||||||
return true;
|
return true;
|
||||||
case DVO_PORT_MIPIB:
|
case DVO_PORT_MIPIB:
|
||||||
case DVO_PORT_MIPID:
|
case DVO_PORT_MIPID:
|
||||||
|
Reference in New Issue
Block a user