1. 07 May, 2020 2 commits
    • Nicholas Kazlauskas's avatar
      drm/amd/display: Fix vblank and pageflip event handling for FreeSync · b931e199
      Nicholas Kazlauskas authored
      [Why]
      We're sending the drm vblank event a frame too early in the case where
      the pageflip happens close to VUPDATE and ends up blocking the signal.
      
      The implementation in DM was previously correct *before* we started
      sending vblank events from VSTARTUP unconditionally to handle cases
      where HUBP was off, OTG was ON and userspace was still requesting some
      DRM planes enabled. As part of that patch series we dropped VUPDATE
      since it was deemed close enough to VSTARTUP, but there's a key
      difference betweeen VSTARTUP and VUPDATE - the VUPDATE signal can be
      blocked if we're holding the pipe lock.
      
      There was a fix recently to revert the unconditional behavior for the
      DCN VSTARTUP vblank event since it was sending the pageflip event on
      the wrong frame - once again, due to blocking VUPDATE and having the
      address start scanning out two frames later.
      
      The problem with this fix is it didn't update the logic that calls
      drm_crtc_handle_vblank(), so the timestamps are totally bogus now.
      
      [How]
      Essentially reverts most of the original VSTARTUP series but retains
      the behavior to send back events when active planes == 0.
      
      Some refactoring/cleanup was done to not have duplicated code in both
      the handlers.
      
      Fixes: 16f17eda ("drm/amd/display: Send vblank and user events at vsartup for DCN")
      Fixes: 3a2ce8d6 ("drm/amd/display: Disable VUpdate interrupt for DCN hardware")
      Fixes: 2b5aed9a ("drm/amd/display: Fix pageflip event race condition for DCN.")
      Signed-off-by: default avatarNicholas Kazlauskas <nicholas.kazlauskas@amd.com>
      Reviewed-by: default avatarLeo Li <sunpeng.li@amd.com>
      Acked-by: default avatarAlex Deucher <alexander.deucher@amd.com>
      Signed-off-by: default avatarAlex Deucher <alexander.deucher@amd.com>
      b931e199
    • John Clements's avatar
      drm/amdgpu: Fix bug in RAS invoke · 624e8c87
      John Clements authored
      Invoke sequence should abort when ras interrupt is detected before reading TA host shared memory
      Reviewed-by: default avatarHawking Zhang <Hawking.Zhang@amd.com>
      Signed-off-by: default avatarJohn Clements <john.clements@amd.com>
      Signed-off-by: default avatarAlex Deucher <alexander.deucher@amd.com>
      624e8c87
  2. 06 May, 2020 8 commits
  3. 05 May, 2020 21 commits
  4. 01 May, 2020 9 commits