• Rob Clark's avatar
    drm/atomic: clear plane's CRTC and FB when shutting down · e5b5341c
    Rob Clark authored
    Otherwise we'd still end up w/ the plane attached to the CRTC, and
    seemingly active, but without an FB.  Which ends up going *boom*
    in the drivers.
    
    Slightly modified version of Daniel's irc suggestion.
    
    Note that the big problem isn't drivers going *boom* here (since we
    already have the situation of planes being left enabled when the crtc
    goes down). The real issue is that the core assumes the primary plane
    always goes down when calling ->set_config with a NULL mode. Ignoring
    that assumption leads to the legacy state pointers plane->fb/crtc
    getting out of sync with atomic, and that then leads to the subsequent
    *boom* all over the place.
    
    CC: Daniel Vetter <daniel@ffwll.ch>
    Signed-off-by: default avatarRob Clark <robdclark@gmail.com>
    [danvet: Drop my opinion of what's going sidewides here into the
    commit message as a note.]
    Signed-off-by: default avatarDaniel Vetter <daniel.vetter@ffwll.ch>
    e5b5341c
drm_atomic_helper.c 51.2 KB