• Ville Syrjälä's avatar
    drm/i915: Don't swap planes on 830M · 4abd5e6a
    Ville Syrjälä authored
    commit 38af6096 upstream.
    
    Looks like 830M doesn't quite like it when you try to move a plane from
    one pipe to another. It seems that the plane's old pipe has to be active
    even if the plane is already disabled, otherwise the relevant register
    just won't accept new values.
    
    The following commit:
    
     commit 1f1c2e24
     Author: Ville Syrjälä <ville.syrjala@linux.intel.com>
     Date:   Thu Nov 28 17:30:01 2013 +0200
    
        drm/i915: Swap primary planes on gen2 for FBC
    
    caused a regression on 830M. It will attempt to swap the planes when the
    driver is loaded, but at that time only pipe A might be active, so plane
    A gets disabled, but plane B won't get enabled since pipe B is not
    active when we try to move the plane over to pipe A.
    
    There's no reason to swap planes on 830M since it doesn't support
    FBC. Change the logic a bit to limit the plane swapping to platforms
    which actually support FBC. This should avoid getting a black screen on
    830M.
    Signed-off-by: default avatarVille Syrjälä <ville.syrjala@linux.intel.com>
    Signed-off-by: default avatarDaniel Vetter <daniel.vetter@ffwll.ch>
    Signed-off-by: default avatarKamal Mostafa <kamal@canonical.com>
    4abd5e6a
i915_irq.c 112 KB