summaryrefslogtreecommitdiff
path: root/nvkm
diff options
context:
space:
mode:
authorBen Skeggs <bskeggs@redhat.com>2014-12-11 13:21:24 +1000
committerBen Skeggs <bskeggs@redhat.com>2014-12-22 08:36:01 +1000
commitf59e76f8720bbc8bf94579b9c9a119d518a4a64f (patch)
treee7a5dc5f6130debcb7d6b6b230d4d4ec6f7019ba /nvkm
parent055c212ca03ea964599281211807c09c6cfb8eb5 (diff)
downloadnouveau-f59e76f8720bbc8bf94579b9c9a119d518a4a64f.tar.gz
fb/ram/mcp77: use carveout reg to determine size
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
Diffstat (limited to 'nvkm')
-rw-r--r--nvkm/subdev/fb/ramnvaa.c7
1 files changed, 3 insertions, 4 deletions
diff --git a/nvkm/subdev/fb/ramnvaa.c b/nvkm/subdev/fb/ramnvaa.c
index 8ee3d377f..f56ee5527 100644
--- a/nvkm/subdev/fb/ramnvaa.c
+++ b/nvkm/subdev/fb/ramnvaa.c
@@ -44,16 +44,15 @@ nvaa_ram_ctor(struct nouveau_object *parent, struct nouveau_object *engine,
if (ret)
return ret;
- priv->base.size = nv_rd32(pfb, 0x10020c);
- priv->base.size = (priv->base.size & 0xffffff00) | ((priv->base.size & 0x000000ff) << 32);
+ priv->base.type = NV_MEM_TYPE_STOLEN;
+ priv->base.stolen = (u64)nv_rd32(pfb, 0x100e10) << 12;
+ priv->base.size = (u64)nv_rd32(pfb, 0x100e14) << 12;
ret = nouveau_mm_init(&pfb->vram, rsvd_head, (priv->base.size >> 12) -
(rsvd_head + rsvd_tail), 1);
if (ret)
return ret;
- priv->base.type = NV_MEM_TYPE_STOLEN;
- priv->base.stolen = (u64)nv_rd32(pfb, 0x100e10) << 12;
priv->base.get = nv50_ram_get;
priv->base.put = nv50_ram_put;
return 0;