Lines Matching refs:imem
37 struct nvkm_instmem *imem; member
68 nvkm_bar_flush(iobj->imem->subdev.device->bar); in nvkm_instobj_release()
100 spin_lock(&iobj->imem->lock); in nvkm_instobj_dtor()
102 spin_unlock(&iobj->imem->lock); in nvkm_instobj_dtor()
174 nvkm_instobj_new(struct nvkm_instmem *imem, u32 size, u32 align, bool zero, in nvkm_instobj_new() argument
182 ret = imem->func->memory_new(imem, size, align, zero, &memory); in nvkm_instobj_new()
186 if (!imem->func->persistent) { in nvkm_instobj_new()
194 iobj->imem = imem; in nvkm_instobj_new()
195 spin_lock(&iobj->imem->lock); in nvkm_instobj_new()
196 list_add_tail(&iobj->head, &imem->list); in nvkm_instobj_new()
197 spin_unlock(&iobj->imem->lock); in nvkm_instobj_new()
201 if (!imem->func->zero && zero) { in nvkm_instobj_new()
224 nvkm_instmem_rd32(struct nvkm_instmem *imem, u32 addr) in nvkm_instmem_rd32() argument
226 return imem->func->rd32(imem, addr); in nvkm_instmem_rd32()
230 nvkm_instmem_wr32(struct nvkm_instmem *imem, u32 addr, u32 data) in nvkm_instmem_wr32() argument
232 return imem->func->wr32(imem, addr, data); in nvkm_instmem_wr32()
238 struct nvkm_instmem *imem = nvkm_instmem(subdev); in nvkm_instmem_fini() local
242 if (imem->func->fini) in nvkm_instmem_fini()
243 imem->func->fini(imem); in nvkm_instmem_fini()
246 list_for_each_entry(iobj, &imem->list, head) { in nvkm_instmem_fini()
265 struct nvkm_instmem *imem = nvkm_instmem(subdev); in nvkm_instmem_oneinit() local
266 if (imem->func->oneinit) in nvkm_instmem_oneinit()
267 return imem->func->oneinit(imem); in nvkm_instmem_oneinit()
274 struct nvkm_instmem *imem = nvkm_instmem(subdev); in nvkm_instmem_init() local
278 list_for_each_entry(iobj, &imem->list, head) { in nvkm_instmem_init()
295 struct nvkm_instmem *imem = nvkm_instmem(subdev); in nvkm_instmem_dtor() local
296 if (imem->func->dtor) in nvkm_instmem_dtor()
297 return imem->func->dtor(imem); in nvkm_instmem_dtor()
298 return imem; in nvkm_instmem_dtor()
312 struct nvkm_instmem *imem) in nvkm_instmem_ctor() argument
314 nvkm_subdev_ctor(&nvkm_instmem, device, index, 0, &imem->subdev); in nvkm_instmem_ctor()
315 imem->func = func; in nvkm_instmem_ctor()
316 spin_lock_init(&imem->lock); in nvkm_instmem_ctor()
317 INIT_LIST_HEAD(&imem->list); in nvkm_instmem_ctor()