xref: /netbsd-src/sys/external/bsd/drm2/dist/drm/nouveau/nvkm/subdev/mmu/mem.h (revision 7649e88fcfe6a7c92de68bd5e592dec3e35224fb)
1 /*	$NetBSD: mem.h,v 1.3 2021/12/19 10:51:58 riastradh Exp $	*/
2 
3 #ifndef __NVKM_MEM_H__
4 #define __NVKM_MEM_H__
5 #include "priv.h"
6 
7 int nvkm_mem_new_type(struct nvkm_mmu *, int type, u8 page, u64 size,
8 		      void *argv, u32 argc, struct nvkm_memory **);
9 #ifdef __NetBSD__
10 int nvkm_mem_map_host(struct nvkm_memory *, bus_dma_tag_t *, void **pmap,
11     bus_size_t *);
12 #else
13 int nvkm_mem_map_host(struct nvkm_memory *, void **pmap);
14 #endif
15 
16 int nv04_mem_new(struct nvkm_mmu *, int, u8, u64, void *, u32,
17 		 struct nvkm_memory **);
18 #ifdef __NetBSD__
19 int nv04_mem_map(struct nvkm_mmu *, struct nvkm_memory *, void *, u32,
20 		 bus_space_tag_t *, u64 *, u64 *, struct nvkm_vma **);
21 #else
22 int nv04_mem_map(struct nvkm_mmu *, struct nvkm_memory *, void *, u32,
23 		 u64 *, u64 *, struct nvkm_vma **);
24 #endif
25 
26 int nv50_mem_new(struct nvkm_mmu *, int, u8, u64, void *, u32,
27 		 struct nvkm_memory **);
28 #ifdef __NetBSD__
29 int nv50_mem_map(struct nvkm_mmu *, struct nvkm_memory *, void *, u32,
30 		 bus_space_tag_t *, u64 *, u64 *, struct nvkm_vma **);
31 #else
32 int nv50_mem_map(struct nvkm_mmu *, struct nvkm_memory *, void *, u32,
33 		 u64 *, u64 *, struct nvkm_vma **);
34 #endif
35 
36 int gf100_mem_new(struct nvkm_mmu *, int, u8, u64, void *, u32,
37 		  struct nvkm_memory **);
38 #ifdef __NetBSD__
39 int gf100_mem_map(struct nvkm_mmu *, struct nvkm_memory *, void *, u32,
40 		  bus_space_tag_t *, u64 *, u64 *, struct nvkm_vma **);
41 #else
42 int gf100_mem_map(struct nvkm_mmu *, struct nvkm_memory *, void *, u32,
43 		  u64 *, u64 *, struct nvkm_vma **);
44 #endif
45 #endif
46