]> git.baikalelectronics.ru Git - kernel.git/commit
drm/radeon/kms: balance asic_reset functions
authorAlex Deucher <alexdeucher@gmail.com>
Tue, 11 Jan 2011 18:36:55 +0000 (13:36 -0500)
committerDave Airlie <airlied@redhat.com>
Mon, 17 Jan 2011 02:21:57 +0000 (12:21 +1000)
commit8fbf130a481cbb74c0312433527469a9f10311d3
treea6a7f9f7423f2957819d362cadad37a53da5ee0f
parentf60f7d962b79d7a1017d935c1fe07031a54ec515
drm/radeon/kms: balance asic_reset functions

First, we were calling mc_stop() at the top of the function
which turns off all MC (memory controller) clients,
then checking if the GPU is idle.  If it was idle we
returned without re-enabling the MC clients which would
lead to a blank screen, etc.  This patch checks if the
GPU is idle before calling mc_stop().

Second, if the reset failed, we were returning without
re-enabling the MC clients.  This patch re-enables
the MC clients before returning regardless of whether
the reset was successful or not.

Signed-off-by: Alex Deucher <alexdeucher@gmail.com>
Cc: Jerome Glisse <jglisse@redhat.com>
Signed-off-by: Dave Airlie <airlied@redhat.com>
drivers/gpu/drm/radeon/r100.c
drivers/gpu/drm/radeon/r300.c
drivers/gpu/drm/radeon/rs600.c