Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

drm/i915/bdw: display stuff

Just enough to make the code not barf...

Init BDW display to look like HSW. For the simulator this should be
fine, but this will probably require more work.

Signed-off-by: Ben Widawsky <ben@bwidawsk.net>
[danvet: Add a FIXME comment about RCS flips being untested on bdw.
Also add a note that hblank events are reserved on bdw+ in DERRMR.]
Reviewed-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>

authored by

Ben Widawsky and committed by
Daniel Vetter
4e0bbc31 1020a5c2

+4 -1
+1
drivers/gpu/drm/i915/i915_reg.h
··· 743 743 #define FPGA_DBG_RM_NOCLAIM (1<<31) 744 744 745 745 #define DERRMR 0x44050 746 + /* Note that HBLANK events are reserved on bdw+ */ 746 747 #define DERRMR_PIPEA_SCANLINE (1<<0) 747 748 #define DERRMR_PIPEA_PRI_FLIP_DONE (1<<1) 748 749 #define DERRMR_PIPEA_SPR_FLIP_DONE (1<<2)
+2 -1
drivers/gpu/drm/i915/intel_display.c
··· 10309 10309 dev_priv->display.write_eld = ironlake_write_eld; 10310 10310 dev_priv->display.modeset_global_resources = 10311 10311 ivb_modeset_global_resources; 10312 - } else if (IS_HASWELL(dev)) { 10312 + } else if (IS_HASWELL(dev) || IS_GEN8(dev)) { 10313 10313 dev_priv->display.fdi_link_train = hsw_fdi_link_train; 10314 10314 dev_priv->display.write_eld = haswell_write_eld; 10315 10315 dev_priv->display.modeset_global_resources = ··· 10340 10340 dev_priv->display.queue_flip = intel_gen6_queue_flip; 10341 10341 break; 10342 10342 case 7: 10343 + case 8: /* FIXME(BDW): Check that the gen8 RCS flip works. */ 10343 10344 dev_priv->display.queue_flip = intel_gen7_queue_flip; 10344 10345 break; 10345 10346 }
+1
drivers/gpu/drm/i915/intel_sprite.c
··· 1092 1092 break; 1093 1093 1094 1094 case 7: 1095 + case 8: 1095 1096 if (IS_IVYBRIDGE(dev)) { 1096 1097 intel_plane->can_scale = true; 1097 1098 intel_plane->max_downscale = 2;