aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/drivers/gpu/drm/nouveau/include/nvkm/core/memory.h
diff options
context:
space:
mode:
authorBen Skeggs <bskeggs@redhat.com>2018-12-11 14:50:02 +1000
committerBen Skeggs <bskeggs@redhat.com>2018-12-11 15:37:46 +1000
commit1786bf56e4180dfd6a51929230e60d11b899032e (patch)
tree06b39dbdcbe73f6c8d3aa4b7735f186b31ab5e05 /drivers/gpu/drm/nouveau/include/nvkm/core/memory.h
parentdrm/nouveau/tmr: detect stalled gpu timer and break out of waits (diff)
downloadwireguard-linux-1786bf56e4180dfd6a51929230e60d11b899032e.tar.xz
wireguard-linux-1786bf56e4180dfd6a51929230e60d11b899032e.zip
drm/nouveau/imem/nv50: support pinning objects in BAR2 and returning address
Various structures are accessed by the GPU through BAR2 for some reason on newer GPUs. This commit makes it more convenient to handle. Will be used for GP100- fault buffers, and GV100- fault method buffers. Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
Diffstat (limited to 'drivers/gpu/drm/nouveau/include/nvkm/core/memory.h')
-rw-r--r--drivers/gpu/drm/nouveau/include/nvkm/core/memory.h2
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/gpu/drm/nouveau/include/nvkm/core/memory.h b/drivers/gpu/drm/nouveau/include/nvkm/core/memory.h
index 05f505de0075..f34c80310861 100644
--- a/drivers/gpu/drm/nouveau/include/nvkm/core/memory.h
+++ b/drivers/gpu/drm/nouveau/include/nvkm/core/memory.h
@@ -29,6 +29,7 @@ struct nvkm_memory_func {
void *(*dtor)(struct nvkm_memory *);
enum nvkm_memory_target (*target)(struct nvkm_memory *);
u8 (*page)(struct nvkm_memory *);
+ u64 (*bar2)(struct nvkm_memory *);
u64 (*addr)(struct nvkm_memory *);
u64 (*size)(struct nvkm_memory *);
void (*boot)(struct nvkm_memory *, struct nvkm_vmm *);
@@ -56,6 +57,7 @@ void nvkm_memory_tags_put(struct nvkm_memory *, struct nvkm_device *,
#define nvkm_memory_target(p) (p)->func->target(p)
#define nvkm_memory_page(p) (p)->func->page(p)
+#define nvkm_memory_bar2(p) (p)->func->bar2(p)
#define nvkm_memory_addr(p) (p)->func->addr(p)
#define nvkm_memory_size(p) (p)->func->size(p)
#define nvkm_memory_boot(p,v) (p)->func->boot((p),(v))