drm/i915: Set the Z inversion overlap field
authorDeepak M <m.deepak@intel.com>
Tue, 14 Feb 2017 13:16:16 +0000 (18:46 +0530)
committerJani Nikula <jani.nikula@intel.com>
Thu, 16 Feb 2017 15:09:50 +0000 (17:09 +0200)
Dual link Z-inversion overlap field is present
in MIPI_CTRL register unlike the older platforms,
hence setting the same in this patch.

Signed-off-by: Deepak M <m.deepak@intel.com>
Signed-off-by: Madhav Chauhan <madhav.chauhan@intel.com>
Signed-off-by: Jani Nikula <jani.nikula@intel.com>
Link: http://patchwork.freedesktop.org/patch/msgid/1487078180-15147-5-git-send-email-madhav.chauhan@intel.com
drivers/gpu/drm/i915/intel_dsi.c

index c3d97e0bc59d380b1bb4f723c5252ad712fa77d5..99dd7e12abc0f98f9528323f5cd693eac1ac4d3d 100644 (file)
@@ -456,12 +456,21 @@ static void intel_dsi_port_enable(struct intel_encoder *encoder)
 
        if (intel_dsi->dual_link == DSI_DUAL_LINK_FRONT_BACK) {
                u32 temp;
-
-               temp = I915_READ(VLV_CHICKEN_3);
-               temp &= ~PIXEL_OVERLAP_CNT_MASK |
+               if (IS_GEN9_LP(dev_priv)) {
+                       for_each_dsi_port(port, intel_dsi->ports) {
+                               temp = I915_READ(MIPI_CTRL(port));
+                               temp &= ~BXT_PIXEL_OVERLAP_CNT_MASK |
+                                       intel_dsi->pixel_overlap <<
+                                       BXT_PIXEL_OVERLAP_CNT_SHIFT;
+                               I915_WRITE(MIPI_CTRL(port), temp);
+                       }
+               } else {
+                       temp = I915_READ(VLV_CHICKEN_3);
+                       temp &= ~PIXEL_OVERLAP_CNT_MASK |
                                        intel_dsi->pixel_overlap <<
                                        PIXEL_OVERLAP_CNT_SHIFT;
-               I915_WRITE(VLV_CHICKEN_3, temp);
+                       I915_WRITE(VLV_CHICKEN_3, temp);
+               }
        }
 
        for_each_dsi_port(port, intel_dsi->ports) {