drm/radeon: flush read cache for gtt with fence on r6xx and newer GPU V3
authorJerome Glisse <jglisse@redhat.com>
Wed, 26 Oct 2011 15:41:22 +0000 (11:41 -0400)
committerDave Airlie <airlied@redhat.com>
Tue, 1 Nov 2011 16:02:07 +0000 (16:02 +0000)
commit77b1bad423599c9841ea282a82172f039bb2ff92
tree289bc45bf7cd81361ac2a8aa97a0ef44e6a57cf9
parent8ab250d4484b72ccc78e34276c5ffa84c1d41303
drm/radeon: flush read cache for gtt with fence on r6xx and newer GPU V3

Cayman seems to be particularly sensitive to read cache returning
old data after bind/unbind to GTT. Flush read cache for GTT range
with each fences for all new hw. Should fix several rendering glitches.
Like

V2 flush whole address space
V3 also flush shader read cache

https://bugs.freedesktop.org/show_bug.cgi?id=40221
https://bugs.freedesktop.org/show_bug.cgi?id=38022
https://bugzilla.redhat.com/show_bug.cgi?id=738790

Signed-off-by: Jerome Glisse <jglisse@redhat.com>
Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
Signed-off-by: Dave Airlie <airlied@redhat.com>
drivers/gpu/drm/radeon/evergreen_blit_kms.c
drivers/gpu/drm/radeon/r600.c
drivers/gpu/drm/radeon/r600_blit_kms.c