• Sean Paul's avatar
    drm/msm: dpu: Move crtc runtime resume to encoder · 18a63b3c
    Sean Paul authored
    The crtc runtime resume doesn't actually operate on the crtc, but rather
    its encoders. The problem with this is that we need to inspect the crtc
    state to get the currently connected encoders. Since runtime resume
    isn't guaranteed to be called while holding the modeset locks (although
    it sometimes is), this presents a race condition.
    
    Now that we have ->enabled on the virtual encoders, and a lock to
    protect it, just call resume on each encoder and only restore the ones
    that are enabled.
    
    Changes in v2:
    - None
    
    Cc: Jeykumar Sankaran <jsanka@codeaurora.org>
    Reviewed-by: default avatarJeykumar Sankaran <jsanka@codeaurora.org>
    Signed-off-by: default avatarSean Paul <seanpaul@chromium.org>
    Signed-off-by: default avatarRob Clark <robdclark@gmail.com>
    18a63b3c
dpu_crtc.c 40.5 KB