Lines Matching defs:gpuobj

26 #include <core/gpuobj.h>
33 nouveau_gpuobj_destroy(struct nouveau_gpuobj *gpuobj)
37 if (gpuobj->flags & NVOBJ_FLAG_ZERO_FREE) {
38 for (i = 0; i < gpuobj->size; i += 4)
39 nv_wo32(gpuobj, i, 0x00000000);
42 if (gpuobj->node) {
43 nouveau_mm_free(&nv_gpuobj(gpuobj->parent)->heap,
44 &gpuobj->node);
47 if (gpuobj->heap.block_size)
48 nouveau_mm_fini(&gpuobj->heap);
50 nouveau_object_destroy(&gpuobj->base);
63 struct nouveau_gpuobj *gpuobj;
78 nv_error(parent, "no gpuobj heap\n");
108 gpuobj = *pobject;
112 gpuobj->parent = pargpu;
113 gpuobj->flags = flags;
114 gpuobj->addr = addr;
115 gpuobj->size = size;
119 max(align, (u32)1), &gpuobj->node);
123 gpuobj->addr += gpuobj->node->offset;
126 if (gpuobj->flags & NVOBJ_FLAG_HEAP) {
127 ret = nouveau_mm_init(&gpuobj->heap, 0, gpuobj->size, 1);
133 for (i = 0; i < gpuobj->size; i += 4)
134 nv_wo32(gpuobj, i, 0x00000000);
188 struct nouveau_gpuobj *gpuobj = nv_gpuobj(object);
189 struct nouveau_ofuncs *pfuncs = nv_ofuncs(gpuobj->parent);
190 if (gpuobj->node)
191 addr += gpuobj->node->offset;
192 return pfuncs->rd32(gpuobj->parent, addr);
198 struct nouveau_gpuobj *gpuobj = nv_gpuobj(object);
199 struct nouveau_ofuncs *pfuncs = nv_ofuncs(gpuobj->parent);
200 if (gpuobj->node)
201 addr += gpuobj->node->offset;
202 pfuncs->wr32(gpuobj->parent, addr, data);
241 nouveau_gpuobj_map(struct nouveau_gpuobj *gpuobj, u32 access,
244 struct nouveau_bar *bar = nouveau_bar(gpuobj);
249 nv_pclass(nv_object(gpuobj), NV_MEMOBJ_CLASS);
258 nouveau_gpuobj_map_vm(struct nouveau_gpuobj *gpuobj, struct nouveau_vm *vm,
262 nv_pclass(nv_object(gpuobj), NV_MEMOBJ_CLASS);
266 ret = nouveau_vm_get(vm, gpuobj->size, 12, access, vma);
291 struct nouveau_gpuobj *gpuobj = (void *)object;
292 nouveau_object_ref(NULL, &gpuobj->parent);
293 nouveau_object_destroy(&gpuobj->base);
310 struct nouveau_gpuobj *gpuobj;
314 &nouveau_gpudup_oclass, 0, &gpuobj);
315 *pgpuobj = gpuobj;
319 nouveau_object_ref(nv_object(base), &gpuobj->parent);
320 gpuobj->addr = base->addr;
321 gpuobj->size = base->size;