All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 0/6] drm/nouveau: Preparatory work for GV11B support
@ 2019-09-16 15:17 Thierry Reding
       [not found] ` <20190916151757.10953-1-thierry.reding-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
  2019-09-16 15:17 ` [PATCH 6/6] drm/nouveau: Program aperture field where necessary Thierry Reding
  0 siblings, 2 replies; 14+ messages in thread
From: Thierry Reding @ 2019-09-16 15:17 UTC (permalink / raw)
  To: Ben Skeggs; +Cc: nouveau, dri-devel

From: Thierry Reding <treding@nvidia.com>

Hi Ben,

these are a couple of patches that are in preparation for adding GV11B
support. The fundamental issue that these are trying to solve is that
the GV11B is the first Tegra incarnation of the GPU where the aperture
really matters. All prior generations would accept any of them.

For dGPUs we usually allocate memory in VRAM, so the default aperture
(0) is correct. However, on Tegra the buffers are allocated in system
memory, and since the GPU actually cares about the aperture, we need to
ensure that the aperture field is written in all the necessary places.

This series of patches does three things: the first two patches make it
easier to debug aperture related faults by actually reading the aperture
information from the fault information registers. The second patch is
actually only a small cleanup.

Patches 3-5 unify the aperture values. All generations have the same
definitions for these, so there's little use in separating them out into
callbacks.

Finally, patch 6 writes the aperture field in the places where required.
I've used these patches to test my initial support for GV11B. This is
enough to get me through the driver probe without any faults, but I have
not made much progress on secboot support yet, so I can't use the GV11B
to do anything very interesting yet.

I should also note that this is completely untested on dGPU because I
don't currently have a way of testing them. I'm working on that, but in
the meantime it'd be great if somebody could give this set a quick spin
on a dGPU to confirm that these don't break.

Thierry

Thierry Reding (6):
  drm/nouveau: fault: Store aperture in fault information
  drm/nouveau: fault: Widen engine field
  drm/nouveau: Remove bogus gk20a aperture callback
  drm/nouveau: Implement nvkm_memory_aperture()
  drm/nouveau: Remove unused nvkm_vmm_func->aper() implementations
  drm/nouveau: Program aperture field where necessary

 .../drm/nouveau/include/nvkm/core/memory.h    | 28 +++++++++++++++++++
 .../drm/nouveau/include/nvkm/subdev/fault.h   |  1 +
 .../gpu/drm/nouveau/nvkm/engine/fifo/gk104.c  |  3 +-
 .../nouveau/nvkm/engine/fifo/gpfifogk104.c    |  7 +++--
 .../nouveau/nvkm/engine/fifo/gpfifogv100.c    |  5 ++--
 .../gpu/drm/nouveau/nvkm/engine/fifo/gv100.c  |  7 ++++-
 .../gpu/drm/nouveau/nvkm/subdev/bar/gf100.c   |  3 +-
 .../gpu/drm/nouveau/nvkm/subdev/fault/gv100.c |  3 +-
 drivers/gpu/drm/nouveau/nvkm/subdev/mmu/vmm.h |  3 --
 .../drm/nouveau/nvkm/subdev/mmu/vmmgf100.c    | 21 ++------------
 .../drm/nouveau/nvkm/subdev/mmu/vmmgk104.c    |  2 --
 .../drm/nouveau/nvkm/subdev/mmu/vmmgk20a.c    | 12 --------
 .../drm/nouveau/nvkm/subdev/mmu/vmmgm200.c    |  2 --
 .../drm/nouveau/nvkm/subdev/mmu/vmmgm20b.c    |  2 --
 .../drm/nouveau/nvkm/subdev/mmu/vmmgp100.c    |  8 ++----
 .../drm/nouveau/nvkm/subdev/mmu/vmmgp10b.c    |  1 -
 .../drm/nouveau/nvkm/subdev/mmu/vmmgv100.c    |  1 -
 .../drm/nouveau/nvkm/subdev/mmu/vmmtu102.c    |  1 -
 18 files changed, 55 insertions(+), 55 deletions(-)

-- 
2.23.0

_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

^ permalink raw reply	[flat|nested] 14+ messages in thread

end of thread, other threads:[~2019-09-20 15:55 UTC | newest]

Thread overview: 14+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2019-09-16 15:17 [PATCH 0/6] drm/nouveau: Preparatory work for GV11B support Thierry Reding
     [not found] ` <20190916151757.10953-1-thierry.reding-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2019-09-16 15:17   ` [PATCH 1/6] drm/nouveau: fault: Store aperture in fault information Thierry Reding
     [not found]     ` <20190916151757.10953-2-thierry.reding-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2019-09-17  3:47       ` Ben Skeggs
     [not found]         ` <CACAvsv70b1-LJoaP1ZL2hvy9xMcO1WXqh0ibGzNfpB81ybgrTg-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2019-09-17  9:05           ` Thierry Reding
2019-09-16 15:17   ` [PATCH 2/6] drm/nouveau: fault: Widen engine field Thierry Reding
     [not found]     ` <20190916151757.10953-3-thierry.reding-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2019-09-17  3:48       ` Ben Skeggs
2019-09-17  9:05         ` [Nouveau] " Thierry Reding
2019-09-16 15:17   ` [PATCH 3/6] drm/nouveau: Remove bogus gk20a aperture callback Thierry Reding
2019-09-17  3:43     ` [Nouveau] " Ben Skeggs
     [not found]       ` <CACAvsv6AzWvpPLaOKahpJErTAMCJet4_4mBvRC8Z+e4+bwaD4w-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2019-09-17  9:02         ` Thierry Reding
2019-09-20 15:55           ` [Nouveau] " Thierry Reding
2019-09-16 15:17   ` [PATCH 4/6] drm/nouveau: Implement nvkm_memory_aperture() Thierry Reding
2019-09-16 15:17   ` [PATCH 5/6] drm/nouveau: Remove unused nvkm_vmm_func->aper() implementations Thierry Reding
2019-09-16 15:17 ` [PATCH 6/6] drm/nouveau: Program aperture field where necessary Thierry Reding

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.