drm/nouveau/mmu: support initialisation of client-managed address-spaces
NVKM is currently responsible for managing the allocation of a client's
GPU address-space, but there's various use-cases (ie. HMM address-space
mirroring) where giving a client more direct control is desirable.
This commit allows for a VMM to be created where the area allocated for
NVKM is limited to a client-specified window, the remainder of address-
space is controlled directly by the client.
Leaving a window is necessary to support various internal requirements,
but also to support existing allocation interfaces as not all of the HW
is capable of working with a HMM allocation.
Signed-off-by:
Ben Skeggs <bskeggs@redhat.com>
Showing
- drivers/gpu/drm/nouveau/include/nvif/if000c.h 2 additions, 1 deletiondrivers/gpu/drm/nouveau/include/nvif/if000c.h
- drivers/gpu/drm/nouveau/include/nvif/vmm.h 2 additions, 2 deletionsdrivers/gpu/drm/nouveau/include/nvif/vmm.h
- drivers/gpu/drm/nouveau/nouveau_vmm.c 1 addition, 1 deletiondrivers/gpu/drm/nouveau/nouveau_vmm.c
- drivers/gpu/drm/nouveau/nvif/vmm.c 3 additions, 2 deletionsdrivers/gpu/drm/nouveau/nvif/vmm.c
- drivers/gpu/drm/nouveau/nvkm/subdev/mmu/priv.h 1 addition, 1 deletiondrivers/gpu/drm/nouveau/nvkm/subdev/mmu/priv.h
- drivers/gpu/drm/nouveau/nvkm/subdev/mmu/uvmm.c 3 additions, 1 deletiondrivers/gpu/drm/nouveau/nvkm/subdev/mmu/uvmm.c
- drivers/gpu/drm/nouveau/nvkm/subdev/mmu/vmm.c 67 additions, 16 deletionsdrivers/gpu/drm/nouveau/nvkm/subdev/mmu/vmm.c
- drivers/gpu/drm/nouveau/nvkm/subdev/mmu/vmm.h 25 additions, 24 deletionsdrivers/gpu/drm/nouveau/nvkm/subdev/mmu/vmm.h
- drivers/gpu/drm/nouveau/nvkm/subdev/mmu/vmmgf100.c 9 additions, 9 deletionsdrivers/gpu/drm/nouveau/nvkm/subdev/mmu/vmmgf100.c
- drivers/gpu/drm/nouveau/nvkm/subdev/mmu/vmmgk104.c 4 additions, 4 deletionsdrivers/gpu/drm/nouveau/nvkm/subdev/mmu/vmmgk104.c
- drivers/gpu/drm/nouveau/nvkm/subdev/mmu/vmmgk20a.c 4 additions, 4 deletionsdrivers/gpu/drm/nouveau/nvkm/subdev/mmu/vmmgk20a.c
- drivers/gpu/drm/nouveau/nvkm/subdev/mmu/vmmgm200.c 10 additions, 10 deletionsdrivers/gpu/drm/nouveau/nvkm/subdev/mmu/vmmgm200.c
- drivers/gpu/drm/nouveau/nvkm/subdev/mmu/vmmgm20b.c 6 additions, 6 deletionsdrivers/gpu/drm/nouveau/nvkm/subdev/mmu/vmmgm20b.c
- drivers/gpu/drm/nouveau/nvkm/subdev/mmu/vmmgp100.c 4 additions, 4 deletionsdrivers/gpu/drm/nouveau/nvkm/subdev/mmu/vmmgp100.c
- drivers/gpu/drm/nouveau/nvkm/subdev/mmu/vmmgp10b.c 4 additions, 4 deletionsdrivers/gpu/drm/nouveau/nvkm/subdev/mmu/vmmgp10b.c
- drivers/gpu/drm/nouveau/nvkm/subdev/mmu/vmmgv100.c 4 additions, 4 deletionsdrivers/gpu/drm/nouveau/nvkm/subdev/mmu/vmmgv100.c
- drivers/gpu/drm/nouveau/nvkm/subdev/mmu/vmmmcp77.c 4 additions, 4 deletionsdrivers/gpu/drm/nouveau/nvkm/subdev/mmu/vmmmcp77.c
- drivers/gpu/drm/nouveau/nvkm/subdev/mmu/vmmnv04.c 8 additions, 7 deletionsdrivers/gpu/drm/nouveau/nvkm/subdev/mmu/vmmnv04.c
- drivers/gpu/drm/nouveau/nvkm/subdev/mmu/vmmnv41.c 3 additions, 3 deletionsdrivers/gpu/drm/nouveau/nvkm/subdev/mmu/vmmnv41.c
- drivers/gpu/drm/nouveau/nvkm/subdev/mmu/vmmnv44.c 3 additions, 3 deletionsdrivers/gpu/drm/nouveau/nvkm/subdev/mmu/vmmnv44.c
Loading
Please register or sign in to comment