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 */
 
 
        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 */
                        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++;
 
                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: