]> git.baikalelectronics.ru Git - kernel.git/commit
drm/radeon: compute ring fix hibernation (CI GPU family) v2.
authorJérôme Glisse <jglisse@redhat.com>
Fri, 19 Jun 2015 14:32:15 +0000 (10:32 -0400)
committerAlex Deucher <alexander.deucher@amd.com>
Mon, 29 Jun 2015 15:21:41 +0000 (11:21 -0400)
commit61a93bc452435b74043ea4ee4affcbf80acab904
tree25ac5720661ad6af9448bbb04f195695809fb581
parent874d0f7909ffd4c7f891f168c477cb212d5724c0
drm/radeon: compute ring fix hibernation (CI GPU family) v2.

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: Jérôme Glisse <jglisse@redhat.com>
Reviewed-by: Christian König <christian.koenig@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
drivers/gpu/drm/radeon/cik.c