Lines Matching defs:mem

23 #include "mem.h"
35 struct page **mem;
57 struct nvkm_mem *mem = nvkm_mem(memory);
58 if (mem->pages == 1 && mem->mem)
59 return mem->dma[0];
73 struct nvkm_mem *mem = nvkm_mem(memory);
75 .memory = &mem->memory,
77 .dma = mem->dma,
85 struct nvkm_mem *mem = nvkm_mem(memory);
86 if (mem->mem) {
87 while (mem->pages--) {
88 dma_unmap_page(mem->mmu->subdev.device->dev,
89 mem->dma[mem->pages], PAGE_SIZE,
91 __free_page(mem->mem[mem->pages]);
93 kvfree(mem->dma);
94 kvfree(mem->mem);
96 return mem;
113 struct nvkm_mem *mem = nvkm_mem(memory);
115 .memory = &mem->memory,
117 .sgl = mem->sgl,
135 struct nvkm_mem *mem = nvkm_mem(memory);
136 if (mem->mem) {
137 *pmap = vmap(mem->mem, mem->pages, VM_MAP, PAGE_KERNEL);
154 struct nvkm_mem *mem;
166 if (!(mem = kzalloc(sizeof(*mem), GFP_KERNEL)))
168 mem->target = target;
169 mem->mmu = mmu;
170 *pmemory = &mem->memory;
174 nvkm_memory_ctor(&nvkm_mem_dma, &mem->memory);
175 mem->dma = args->v0.dma;
177 nvkm_memory_ctor(&nvkm_mem_sgl, &mem->memory);
178 mem->sgl = args->v0.sgl;
183 mem->pages = size >> PAGE_SHIFT;
187 kfree(mem);
191 nvkm_memory_ctor(&nvkm_mem_dma, &mem->memory);
194 if (!(mem->mem = kvmalloc_array(size, sizeof(*mem->mem), GFP_KERNEL)))
196 if (!(mem->dma = kvmalloc_array(size, sizeof(*mem->dma), GFP_KERNEL)))
204 for (mem->pages = 0; size; size--, mem->pages++) {
209 mem->dma[mem->pages] = dma_map_page(mmu->subdev.device->dev,
212 if (dma_mapping_error(dev, mem->dma[mem->pages])) {
217 mem->mem[mem->pages] = p;
231 ret = mmu->func->mem.vram(mmu, type, page, size,