drm/radeon: fix VM flush on cayman/aruba (v3)
authorAlex Deucher <alexander.deucher@amd.com>
Tue, 6 Jan 2015 00:42:25 +0000 (19:42 -0500)
committerAlex Deucher <alexander.deucher@amd.com>
Thu, 8 Jan 2015 14:36:50 +0000 (09:36 -0500)
commitcbfc35b90f3b4853d1eb9fcb82e99531d6a1c629
tree91a7356e4aa8a6b5cf006ae1b49d00324e804d2e
parent79305ec6e60d320832505e95c1a028d309fcd2b6
drm/radeon: fix VM flush on cayman/aruba (v3)

We need to wait for the GPUVM flush to complete.  There
was some confusion as to how this mechanism was supposed
to work.  The operation is not atomic.  For GPU initiated
invalidations you need to read back a VM register to
introduce enough latency for the update to complete.

v2: drop gart changes
v3: just read back rather than polling

Reviewed-by: Christian König <christian.koenig@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
Cc: stable@vger.kernel.org
drivers/gpu/drm/radeon/ni.c
drivers/gpu/drm/radeon/ni_dma.c
drivers/gpu/drm/radeon/nid.h