diff options
author | Ben Skeggs <bskeggs@redhat.com> | 2010-02-19 17:10:11 -0500 |
---|---|---|
committer | Ben Skeggs <bskeggs@redhat.com> | 2010-02-22 22:50:24 -0500 |
commit | 6c42966768b0254f465a8f451333795283f53d22 (patch) | |
tree | b35447b2068e30a30579e081ae387276a13094f9 | |
parent | 76befb8c30cebe2af83fa346bdaf75b430893511 (diff) |
drm/nv50: fix vram ptes on IGPs to point at stolen system memory
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
-rw-r--r-- | drivers/gpu/drm/nouveau/nouveau_mem.c | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/drivers/gpu/drm/nouveau/nouveau_mem.c b/drivers/gpu/drm/nouveau/nouveau_mem.c index 134fedbb7669..2dc09dbd817d 100644 --- a/drivers/gpu/drm/nouveau/nouveau_mem.c +++ b/drivers/gpu/drm/nouveau/nouveau_mem.c | |||
@@ -291,7 +291,13 @@ nv50_mem_vm_bind_linear(struct drm_device *dev, uint64_t virt, uint32_t size, | |||
291 | 291 | ||
292 | virt = ((virt - dev_priv->vm_vram_base) >> 16) << 1; | 292 | virt = ((virt - dev_priv->vm_vram_base) >> 16) << 1; |
293 | size = (size >> 16) << 1; | 293 | size = (size >> 16) << 1; |
294 | phys |= ((uint64_t)flags << 32) | 1; | 294 | |
295 | phys |= ((uint64_t)flags << 32); | ||
296 | phys |= 1; | ||
297 | if (dev_priv->vram_sys_base) { | ||
298 | phys += dev_priv->vram_sys_base; | ||
299 | phys |= 0x30; | ||
300 | } | ||
295 | 301 | ||
296 | dev_priv->engine.instmem.prepare_access(dev, true); | 302 | dev_priv->engine.instmem.prepare_access(dev, true); |
297 | while (size) { | 303 | while (size) { |