• Jérôme Glisse's avatar
    drm/radeon: compute ring fix hibernation (CI GPU family) v2. · 161569de
    Jérôme Glisse authored
    In order for hibernation to reliably work we need to cleanup more
    thoroughly the compute ring. Hibernation is different from suspend
    resume as when we resume from hibernation the hardware is first
    fully initialize by regular kernel then freeze callback happens
    (which correspond to a suspend inside the radeon kernel driver)
    and turn off each of the block. It turns out we were not cleanly
    shutting down the compute ring. This patch fix that.
    
    Hibernation and suspend to ram were tested (several times) on :
    Bonaire
    Hawaii
    Mullins
    Kaveri
    Kabini
    
    Changed since v1:
      - Factor the ring stop logic into a function taking ring as arg.
    
    Cc: stable@vger.kernel.org
    Signed-off-by: default avatarJérôme Glisse <jglisse@redhat.com>
    Reviewed-by: default avatarChristian König <christian.koenig@amd.com>
    Signed-off-by: default avatarAlex Deucher <alexander.deucher@amd.com>
    161569de
cik.c 283 KB