• Daniel Vetter's avatar
    drm/i915/psr: Make idle_frames sensible again · 1c80c25f
    Daniel Vetter authored
    This reverts
    
    commit dfaf37ba
    Author: Rodrigo Vivi <rodrigo.vivi@intel.com>
    Date:   Mon Dec 7 14:45:20 2015 -0800
    
        drm/i915: Fix idle_frames counter.
    
    and
    
    commit 97173eaf
    Author: Rodrigo Vivi <rodrigo.vivi@intel.com>
    Date:   Tue Jul 7 16:28:55 2015 -0700
    
        drm/i915: PSR: Increase idle_frames
    
    and implements
    
    commit d44b4dcb
    Author: Rodrigo Vivi <rodrigo.vivi@intel.com>
    Date:   Fri Nov 14 08:52:31 2014 -0800
    
        drm/i915: HSW/BDW PSR Set idle_frames = VBT + 1
    
    without the hack to use 2 idle frames when VBT says 1. We keep the + 1
    just for safety, although I haven't really figured out why that one
    exists.
    
    It's nonsense. idle_frames = number of frames where the screen is
    entirely idle before we think about entering PSR.
    
    idle_patter = part of link training, and we probably totally butchered
    link training because we told the hw to entirely skip it. No wonder
    PSR occasionally just fell over.
    
    I suspect the reason we've increased idle frames is that it makes PSR
    entry slightly less likely, and more likely to happen in a quite
    system, which probably increased the changes the panel came back up
    without link training. The proper fix is to implement link training
    for PSR.
    
    Cc: Rodrigo Vivi <rodrigo.vivi@intel.com>
    Cc: Sonika Jindal <sonika.jindal@intel.com>
    Cc: Durgadoss R <durgadoss.r@intel.com>
    Cc: "Pandiyan, Dhinakaran" <dhinakaran.pandiyan@intel.com>
    Reviewed-by: default avatarVille Syrjälä <ville.syrjala@linux.intel.com>
    Tested-by: default avatarVille Syrjälä <ville.syrjala@linux.intel.com>
    Signed-off-by: default avatarDaniel Vetter <daniel.vetter@intel.com>
    Link: http://patchwork.freedesktop.org/patch/msgid/1463590036-17824-3-git-send-email-daniel.vetter@ffwll.ch
    1c80c25f
intel_psr.c 26.6 KB