drm/nouveau/mmu/gp100,gp10b: implement new vmm backend
Adds support for:
- 64KiB/2MiB big page sizes (128KiB not supported by HW with new PT layout).
- System-memory PTs.
- LPTE "invalid" state.
- (Tegra) Use of video memory aperture.
- Sparse PDEs/PTEs.
- Additional blocklinear kinds.
- 49-bit address-space.
GP100 supports an entirely new 5-level page table layout that provides
an expanded 49-bit address-space. It also supports the layout present
on previous generations, which we've been making do with until now.
This commit implements support for the new layout, and enables it by
default.
Signed-off-by:
Ben Skeggs <bskeggs@redhat.com>
Showing
- drivers/gpu/drm/nouveau/include/nvif/ifc00d.h 13 additions, 0 deletionsdrivers/gpu/drm/nouveau/include/nvif/ifc00d.h
- drivers/gpu/drm/nouveau/nvkm/subdev/mmu/gf100.c 0 additions, 123 deletionsdrivers/gpu/drm/nouveau/nvkm/subdev/mmu/gf100.c
- drivers/gpu/drm/nouveau/nvkm/subdev/mmu/gp100.c 2 additions, 1 deletiondrivers/gpu/drm/nouveau/nvkm/subdev/mmu/gp100.c
- drivers/gpu/drm/nouveau/nvkm/subdev/mmu/gp10b. 0 additions, 0 deletionsdrivers/gpu/drm/nouveau/nvkm/subdev/mmu/gp10b.
- drivers/gpu/drm/nouveau/nvkm/subdev/mmu/gp10b.c 2 additions, 1 deletiondrivers/gpu/drm/nouveau/nvkm/subdev/mmu/gp10b.c
- drivers/gpu/drm/nouveau/nvkm/subdev/mmu/priv.h 0 additions, 7 deletionsdrivers/gpu/drm/nouveau/nvkm/subdev/mmu/priv.h
- drivers/gpu/drm/nouveau/nvkm/subdev/mmu/vmm.h 2 additions, 0 deletionsdrivers/gpu/drm/nouveau/nvkm/subdev/mmu/vmm.h
- drivers/gpu/drm/nouveau/nvkm/subdev/mmu/vmmgf100.c 1 addition, 1 deletiondrivers/gpu/drm/nouveau/nvkm/subdev/mmu/vmmgf100.c
- drivers/gpu/drm/nouveau/nvkm/subdev/mmu/vmmgp100.c 258 additions, 0 deletionsdrivers/gpu/drm/nouveau/nvkm/subdev/mmu/vmmgp100.c
- drivers/gpu/drm/nouveau/nvkm/subdev/mmu/vmmgp10b.c 3 additions, 0 deletionsdrivers/gpu/drm/nouveau/nvkm/subdev/mmu/vmmgp10b.c
Loading
Please register or sign in to comment