drm/i915/cnl: Fix DDI hdmi level selection.
authorRodrigo Vivi <rodrigo.vivi@intel.com>
Tue, 29 Aug 2017 23:22:29 +0000 (16:22 -0700)
committerRodrigo Vivi <rodrigo.vivi@intel.com>
Thu, 31 Aug 2017 16:30:09 +0000 (09:30 -0700)
Let's get a proper HDMI DDI entry level for vswing programming
sequences on CNL.

Spec doesn't specify any default for HDMI tables,
so let's pick the last entry as the default for now.

Signed-off-by: Rodrigo Vivi <rodrigo.vivi@intel.com>
Reviewed-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20170829232230.23051-7-rodrigo.vivi@intel.com
drivers/gpu/drm/i915/intel_ddi.c

index 3ce02cb..f1757a8 100644 (file)
@@ -660,7 +660,10 @@ static int intel_ddi_hdmi_level(struct drm_i915_private *dev_priv, enum port por
        if (IS_GEN9_LP(dev_priv))
                return hdmi_level;
 
-       if (IS_GEN9_BC(dev_priv)) {
+       if (IS_CANNONLAKE(dev_priv)) {
+               cnl_get_buf_trans_hdmi(dev_priv, &n_hdmi_entries);
+               hdmi_default_entry = n_hdmi_entries - 1;
+       } else if (IS_GEN9_BC(dev_priv)) {
                skl_get_buf_trans_hdmi(dev_priv, &n_hdmi_entries);
                hdmi_default_entry = 8;
        } else if (IS_BROADWELL(dev_priv)) {