• Ville Syrjälä's avatar
    drm/i915: Fix SNB GT_MODE register setup · 8d85d272
    Ville Syrjälä authored
    On SNB we set up WaSetupGtModeTdRowDispatch:snb early in
    gen6_init_clock_gating(). That sets a bit in the GEN6_GT_MODE register.
    However later we go and disable all the bits in the same register. And
    then we go on to set some other bit. So apparently we never actually
    implemented this workaround since the "disable all bits" part was there
    already before the w/a got supposedly implemented.
    
    These are the relevant commits:
    
     commit 6547fbdb
     Author: Daniel Vetter <daniel.vetter@ffwll.ch>
     Date:   Fri Dec 14 23:38:29 2012 +0100
    
        drm/i915: Implement WaSetupGtModeTdRowDispatch
    
     commit f8f2ac9a
     Author: Ben Widawsky <ben@bwidawsk.net>
     Date:   Wed Oct 3 19:34:24 2012 -0700
    
        drm/i915: Fix GT_MODE default value
    
    So, let's drop the "disable all bits" part, move both writes to
    closer proxomity to each other, and name the WIZ hashing bits
    appropriately. BSpec is still a bit confused how the bits should
    actually be interpreted, but I took the the description for the
    high bit since the low bit part only lists values for a single bit.
    
    Also add a comment about our choice of WIZ hashing mode.
    Signed-off-by: default avatarVille Syrjälä <ville.syrjala@linux.intel.com>
    Reviewed-by: default avatarAntti Koskipää <antti.koskipaa@linux.intel.com>
    Signed-off-by: default avatarDaniel Vetter <daniel.vetter@ffwll.ch>
    8d85d272
intel_pm.c 160 KB