Răsfoiți Sursa

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
Jani Nikula 9 ani în urmă
părinte
comite
7caaef332a
2 a modificat fișierele cu 3 adăugiri și 10 ștergeri
  1. 0 1
      drivers/gpu/drm/i915/i915_drv.h
  2. 3 9
      drivers/gpu/drm/i915/intel_bios.c

+ 0 - 1
drivers/gpu/drm/i915/i915_drv.h

@@ -1434,7 +1434,6 @@ struct intel_vbt_data {
 	unsigned int lvds_use_ssc:1;
 	unsigned int display_clock_mode:1;
 	unsigned int fdi_rx_polarity_inverted:1;
-	unsigned int has_mipi:1;
 	int lvds_ssc_freq;
 	unsigned int bios_lvds_val; /* initial [PCH_]LVDS reg val in VBIOS */
 

+ 3 - 9
drivers/gpu/drm/i915/intel_bios.c

@@ -706,7 +706,7 @@ parse_mipi_config(struct drm_i915_private *dev_priv,
 	const struct mipi_pps_data *pps;
 
 	/* 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;
 
 	/* Initialize this to undefined indicating no generic MIPI support */
@@ -1232,13 +1232,6 @@ parse_device_mapping(struct drm_i915_private *dev_priv,
 			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;
 		count++;
 
@@ -1580,7 +1573,8 @@ bool intel_bios_is_dsi_present(struct drm_i915_private *dev_priv,
 		switch (dvo_port) {
 		case DVO_PORT_MIPIA:
 		case DVO_PORT_MIPIC:
-			*port = dvo_port - DVO_PORT_MIPIA;
+			if (port)
+				*port = dvo_port - DVO_PORT_MIPIA;
 			return true;
 		case DVO_PORT_MIPIB:
 		case DVO_PORT_MIPID: