Commit 68af607d authored by Ben Skeggs's avatar Ben Skeggs
Browse files

drm/nouveau/mmu/gf100-: type-based vram allocation and bar mapping



Signed-off-by: default avatarBen Skeggs <bskeggs@redhat.com>
parent 07661161
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -17,6 +17,7 @@
#define NVIF_CLASS_MEM                               /* if000a.h */  0x8000000a
#define NVIF_CLASS_MEM_NV04                          /* if000b.h */  0x8000000b
#define NVIF_CLASS_MEM_NV50                          /* if500b.h */  0x8000500b
#define NVIF_CLASS_MEM_GF100                         /* if900b.h */  0x8000900b

#define NVIF_CLASS_VMM                               /* if000c.h */  0x8000000c
#define NVIF_CLASS_VMM_NV04                          /* if000d.h */  0x8000000d
+23 −0
Original line number Diff line number Diff line
#ifndef __NVIF_IF900B_H__
#define __NVIF_IF900B_H__
#include "if000a.h"

struct gf100_mem_vn {
	/* nvif_mem_vX ... */
};

struct gf100_mem_v0 {
	/* nvif_mem_vX ... */
	__u8  version;
	__u8  contig;
};

struct gf100_mem_map_vn {
};

struct gf100_mem_map_v0 {
	__u8  version;
	__u8  ro;
	__u8  kind;
};
#endif
+1 −0
Original line number Diff line number Diff line
@@ -15,6 +15,7 @@ nvkm-y += nvkm/subdev/mmu/gp10b.o
nvkm-y += nvkm/subdev/mmu/mem.o
nvkm-y += nvkm/subdev/mmu/memnv04.o
nvkm-y += nvkm/subdev/mmu/memnv50.o
nvkm-y += nvkm/subdev/mmu/memgf100.o

nvkm-y += nvkm/subdev/mmu/vmm.o
nvkm-y += nvkm/subdev/mmu/vmmnv04.o
+2 −0
Original line number Diff line number Diff line
@@ -21,6 +21,7 @@
 *
 * Authors: Ben Skeggs
 */
#include "mem.h"
#include "vmm.h"

#include <nvif/class.h>
@@ -76,6 +77,7 @@ gf100_mmu = {
	.limit = (1ULL << 40),
	.dma_bits = 40,
	.lpg_shift = 17,
	.mem = {{ -1,  0, NVIF_CLASS_MEM_GF100}, gf100_mem_new, gf100_mem_map },
	.vmm = {{ -1, -1, NVIF_CLASS_VMM_GF100}, gf100_vmm_new },
	.kind = gf100_mmu_kind,
	.kind_sys = true,
+2 −0
Original line number Diff line number Diff line
@@ -19,6 +19,7 @@
 * ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
 * OTHER DEALINGS IN THE SOFTWARE.
 */
#include "mem.h"
#include "vmm.h"

#include <nvif/class.h>
@@ -28,6 +29,7 @@ gk104_mmu = {
	.limit = (1ULL << 40),
	.dma_bits = 40,
	.lpg_shift = 17,
	.mem = {{ -1,  0, NVIF_CLASS_MEM_GF100}, gf100_mem_new, gf100_mem_map },
	.vmm = {{ -1, -1, NVIF_CLASS_VMM_GF100}, gk104_vmm_new },
	.kind = gf100_mmu_kind,
	.kind_sys = true,
Loading