summaryrefslogtreecommitdiffstats
path: root/drivers/gpu
diff options
context:
space:
mode:
authorDavid Dillow <dave@thedillows.org>2011-03-21 12:41:47 +0100
committerBen Skeggs <bskeggs@redhat.com>2011-04-05 03:07:16 +0200
commit59197c026257ab730c7fc8819a0e2b26e125a534 (patch)
treef24e835a31a79432a2df9da11152ff7007f8d869 /drivers/gpu
parentdrm/nouveau: implement init table opcode 0x5c (diff)
downloadlinux-59197c026257ab730c7fc8819a0e2b26e125a534.tar.xz
linux-59197c026257ab730c7fc8819a0e2b26e125a534.zip
drm/nv50-nvc0: work around an evo channel hang that some people see
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
Diffstat (limited to 'drivers/gpu')
-rw-r--r--drivers/gpu/drm/nouveau/nv50_evo.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/gpu/drm/nouveau/nv50_evo.c b/drivers/gpu/drm/nouveau/nv50_evo.c
index a2cfaa691e9b..c8e83c1a4de8 100644
--- a/drivers/gpu/drm/nouveau/nv50_evo.c
+++ b/drivers/gpu/drm/nouveau/nv50_evo.c
@@ -186,6 +186,7 @@ nv50_evo_channel_init(struct nouveau_channel *evo)
nv_mask(dev, 0x610028, 0x00000000, 0x00010001 << id);
evo->dma.max = (4096/4) - 2;
+ evo->dma.max &= ~7;
evo->dma.put = 0;
evo->dma.cur = evo->dma.put;
evo->dma.free = evo->dma.max - evo->dma.cur;