Lines Matching defs:memory

24  * GK20A does not have dedicated video memory, and to accurately represent this
26 * implementation must be done directly on top of system memory, while
30 * 1) If an IOMMU unit has been probed, the IOMMU API is used to make memory
33 * contiguous memory.
46 #include <core/memory.h>
59 #define gk20a_instobj(p) container_of((p), struct gk20a_instobj, base.memory)
116 gk20a_instobj_target(struct nvkm_memory *memory)
122 gk20a_instobj_page(struct nvkm_memory *memory)
128 gk20a_instobj_addr(struct nvkm_memory *memory)
130 return (u64)gk20a_instobj(memory)->mn->offset << 12;
134 gk20a_instobj_size(struct nvkm_memory *memory)
136 return (u64)gk20a_instobj(memory)->mn->length << 12;
151 imem->vaddr_use -= nvkm_memory_size(&obj->base.base.memory);
174 gk20a_instobj_acquire_dma(struct nvkm_memory *memory)
176 struct gk20a_instobj *node = gk20a_instobj(memory);
186 gk20a_instobj_acquire_iommu(struct nvkm_memory *memory)
188 struct gk20a_instobj_iommu *node = gk20a_instobj_iommu(memory);
191 const u64 size = nvkm_memory_size(memory);
229 gk20a_instobj_release_dma(struct nvkm_memory *memory)
231 struct gk20a_instobj *node = gk20a_instobj(memory);
241 gk20a_instobj_release_iommu(struct nvkm_memory *memory)
243 struct gk20a_instobj_iommu *node = gk20a_instobj_iommu(memory);
265 gk20a_instobj_rd32(struct nvkm_memory *memory, u64 offset)
267 struct gk20a_instobj *node = gk20a_instobj(memory);
273 gk20a_instobj_wr32(struct nvkm_memory *memory, u64 offset, u32 data)
275 struct gk20a_instobj *node = gk20a_instobj(memory);
281 gk20a_instobj_map(struct nvkm_memory *memory, u64 offset, struct nvkm_vmm *vmm,
284 struct gk20a_instobj *node = gk20a_instobj(memory);
286 .memory = &node->base.memory,
295 gk20a_instobj_dtor_dma(struct nvkm_memory *memory)
297 struct gk20a_instobj_dma *node = gk20a_instobj_dma(memory);
312 gk20a_instobj_dtor_iommu(struct nvkm_memory *memory)
314 struct gk20a_instobj_iommu *node = gk20a_instobj_iommu(memory);
394 nvkm_memory_ctor(&gk20a_instobj_func_dma, &node->base.base.memory);
395 node->base.base.memory.ptrs = &gk20a_instobj_ptrs;
401 nvkm_error(subdev, "cannot allocate DMA memory\n");
408 "memory not aligned as requested: %pad (0x%x)\n",
411 /* present memory for being mapped using small pages */
441 nvkm_memory_ctor(&gk20a_instobj_func_iommu, &node->base.base.memory);
442 node->base.base.memory.ptrs = &gk20a_instobj_ptrs;
444 /* Allocate backing memory */
536 *pmemory = node ? &node->base.memory : NULL;