is_hdmi = is_dvi && (child->device_type & DEVICE_TYPE_NOT_HDMI_OUTPUT) == 0;
        is_edp = is_dp && (child->device_type & DEVICE_TYPE_INTERNAL_CONNECTOR);
 
-       if (port == PORT_A && is_dvi) {
+       if (port == PORT_A && is_dvi && INTEL_GEN(dev_priv) < 12) {
                DRM_DEBUG_KMS("VBT claims port A supports DVI%s, ignoring\n",
                              is_hdmi ? "/HDMI" : "");
                is_dvi = false;
 
        DRM_DEBUG_KMS("Adding HDMI connector on [ENCODER:%d:%s]\n",
                      intel_encoder->base.base.id, intel_encoder->base.name);
 
-       if (WARN_ON(port == PORT_A))
+       if (INTEL_GEN(dev_priv) < 12 && WARN_ON(port == PORT_A))
                return;
 
        if (WARN(intel_dig_port->max_lanes < 4,