drm/radeon: Clear RB_OVERFLOW bit earlier
authorMichel Dänzer <michel.daenzer@amd.com>
Fri, 19 Sep 2014 03:07:11 +0000 (12:07 +0900)
committerAlex Deucher <alexander.deucher@amd.com>
Mon, 22 Sep 2014 21:24:25 +0000 (17:24 -0400)
commit11bab0ae9991b165b542294806013d1e06fb3294
treee1eb8ea4bb9d378eb7e17c41a563d6b76931c3e7
parentfe3d9c4b87bb98222a502cc585844a0b950786fb
drm/radeon: Clear RB_OVERFLOW bit earlier

Otherwise the bit remains set in rdev->ih.rptr, so the wptr can never
match that and we still have an infinite loop.

This fix allows me to successfully recover from an IH ring buffer
overflow.

Signed-off-by: Michel Dänzer <michel.daenzer@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
drivers/gpu/drm/radeon/cik.c
drivers/gpu/drm/radeon/evergreen.c
drivers/gpu/drm/radeon/r600.c
drivers/gpu/drm/radeon/si.c