diff options
author | Ben Skeggs <bskeggs@redhat.com> | 2015-08-20 04:54:17 (GMT) |
---|---|---|
committer | Ben Skeggs <bskeggs@redhat.com> | 2015-08-28 02:40:37 (GMT) |
commit | 1d2a1e53865266a67fb569705eba3ec992682721 (patch) | |
tree | 9ee9f3817de71fe0a39f0d27ddcc80dcd2179b2b /drivers/gpu/drm/nouveau/nvkm/engine/disp | |
parent | f027f49166171c98d5945af12ac3ee9bc9f9bf4c (diff) | |
download | linux-1d2a1e53865266a67fb569705eba3ec992682721.tar.xz |
drm/nouveau/ramht: remove dependence on namedb
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
Diffstat (limited to 'drivers/gpu/drm/nouveau/nvkm/engine/disp')
-rw-r--r-- | drivers/gpu/drm/nouveau/nvkm/engine/disp/gf110.c | 2 | ||||
-rw-r--r-- | drivers/gpu/drm/nouveau/nvkm/engine/disp/nv50.c | 11 |
2 files changed, 7 insertions, 6 deletions
diff --git a/drivers/gpu/drm/nouveau/nvkm/engine/disp/gf110.c b/drivers/gpu/drm/nouveau/nvkm/engine/disp/gf110.c index 4161326..7a8ea49 100644 --- a/drivers/gpu/drm/nouveau/nvkm/engine/disp/gf110.c +++ b/drivers/gpu/drm/nouveau/nvkm/engine/disp/gf110.c @@ -80,7 +80,7 @@ gf110_disp_dmac_object_attach(struct nvkm_object *parent, struct nv50_disp_chan *chan = (void *)parent; u32 addr = nv_gpuobj(object)->node->offset; u32 data = (chan->chid << 27) | (addr << 9) | 0x00000001; - return nvkm_ramht_insert(base->ramht, chan->chid, name, data); + return nvkm_ramht_insert(base->ramht, NULL, chan->chid, 0, name, data); } static void diff --git a/drivers/gpu/drm/nouveau/nvkm/engine/disp/nv50.c b/drivers/gpu/drm/nouveau/nvkm/engine/disp/nv50.c index 2568e5d..a3632d4 100644 --- a/drivers/gpu/drm/nouveau/nvkm/engine/disp/nv50.c +++ b/drivers/gpu/drm/nouveau/nvkm/engine/disp/nv50.c @@ -193,7 +193,7 @@ nv50_disp_dmac_object_attach(struct nvkm_object *parent, u32 addr = nv_gpuobj(object)->node->offset; u32 chid = chan->chid; u32 data = (chid << 28) | (addr << 10) | chid; - return nvkm_ramht_insert(base->ramht, chid, name, data); + return nvkm_ramht_insert(base->ramht, NULL, chid, 0, name, data); } static void @@ -1153,6 +1153,8 @@ nv50_disp_main_ctor(struct nvkm_object *parent, { struct nv50_disp *disp = (void *)engine; struct nv50_disp_base *base; + struct nvkm_device *device = disp->base.engine.subdev.device; + struct nvkm_gpuobj *instmem = (void *)parent; int ret; ret = nvkm_parent_create(parent, engine, oclass, 0, @@ -1161,15 +1163,14 @@ nv50_disp_main_ctor(struct nvkm_object *parent, if (ret) return ret; - return nvkm_ramht_new(nv_object(base), nv_object(base), 0x1000, 0, - &base->ramht); + return nvkm_ramht_new(device, 0x1000, 0, instmem, &base->ramht); } void nv50_disp_main_dtor(struct nvkm_object *object) { struct nv50_disp_base *base = (void *)object; - nvkm_ramht_ref(NULL, &base->ramht); + nvkm_ramht_del(&base->ramht); nvkm_parent_destroy(&base->base); } @@ -1235,7 +1236,7 @@ nv50_disp_main_init(struct nvkm_object *object) } /* point at display engine memory area (hash table, objects) */ - nvkm_wr32(device, 0x610010, (nv_gpuobj(base->ramht)->addr >> 8) | 9); + nvkm_wr32(device, 0x610010, (base->ramht->gpuobj->addr >> 8) | 9); /* enable supervisor interrupts, disable everything else */ nvkm_wr32(device, 0x61002c, 0x00000370); |