Alexandre Courbot
71757abf2e
drm/nouveau/volt: add GM20B driver
...
Add basic GM20B volt driver that reuses the GK20A logic.
Signed-off-by: Alexandre Courbot <acourbot@nvidia.com >
Signed-off-by: Ben Skeggs <bskeggs@redhat.com >
2016-03-14 10:13:50 +10:00
Alexandre Courbot
4158c9c2bf
drm/nouveau/volt/gk20a: split constructor
...
Split the constructor function so we can reuse the same logic in other
chips.
Signed-off-by: Alexandre Courbot <acourbot@nvidia.com >
Signed-off-by: Ben Skeggs <bskeggs@redhat.com >
2016-03-14 10:13:50 +10:00
Vince Hsu
0f9520931e
drm/nouveau/volt/gk20a: share reusable members & functions
...
The CVB calculation and voltage setting functions can be reused for the
future chips. So move the declaration to gk20a.h.
Signed-off-by: Vince Hsu <vinceh@nvidia.com >
Signed-off-by: Alexandre Courbot <acourbot@nvidia.com >
Signed-off-by: Ben Skeggs <bskeggs@redhat.com >
2016-03-14 10:13:49 +10:00
Ben Skeggs
253a03f03f
drm/nouveau/ce/gm107: expose MaxwellDmaCopyA
...
The HW accepts KeplerDmaCopyA and MaxwellDmaCopyA classes.
Signed-off-by: Ben Skeggs <bskeggs@redhat.com >
2016-03-14 10:13:49 +10:00
Ben Skeggs
7c4f87c9e5
drm/nouveau/fifo/gm107: KeplerChannelGpfifoB, and 2048 channels
...
Signed-off-by: Ben Skeggs <bskeggs@redhat.com >
2016-03-14 10:13:48 +10:00
Ben Skeggs
63f8c9b7f6
drm/nouveau/fifo/gk110: expose KeplerChannelGpfifoB
...
This class supports a WFI method (0x0078) that's not present on the
KeplerChannelGpfifoA class.
The binary driver exposes both classes on these GPUs for some reason,
though there doesn't appear to be any difference in the setup that's
done for each (ie. even if you allocate GpfifoA, the WFI method will
still work).
We shall just expose GpfifoB, as I don't see a good reason to report
the presence of both.
Signed-off-by: Ben Skeggs <bskeggs@redhat.com >
2016-03-14 10:13:48 +10:00
Ben Skeggs
b4c5fc4b85
drm/nouveau/fifo/gk104: submit NOP after all PBDMA_INTR_0, not just DEVICE
...
Prevents the same interrupt from re-triggering forever.
Signed-off-by: Ben Skeggs <bskeggs@redhat.com >
2016-03-14 10:13:47 +10:00
Ben Skeggs
4a3f63f808
drm/nouveau/fifo/gk104: add vic plumbing
...
Signed-off-by: Ben Skeggs <bskeggs@redhat.com >
2016-03-14 10:13:47 +10:00
Ben Skeggs
a8b005fd52
drm/nouveau/fifo/gk104: add sec plumbing
...
Signed-off-by: Ben Skeggs <bskeggs@redhat.com >
2016-03-14 10:13:46 +10:00
Ben Skeggs
608fd040b7
drm/nouveau/fifo/gk104: add nvdec plumbing
...
Signed-off-by: Ben Skeggs <bskeggs@redhat.com >
2016-03-14 10:13:46 +10:00
Ben Skeggs
9e4fff3205
drm/nouveau/fifo/gk104: add nvenc plumbing
...
Signed-off-by: Ben Skeggs <bskeggs@redhat.com >
2016-03-14 10:13:46 +10:00
Ben Skeggs
5d7fa4de46
drm/nouveau/fifo/gk104: add msenc plumbing
...
Signed-off-by: Ben Skeggs <bskeggs@redhat.com >
2016-03-14 10:13:45 +10:00
Ben Skeggs
72150b2edd
drm/nouveau/core: add vic plumbing
...
Signed-off-by: Ben Skeggs <bskeggs@redhat.com >
2016-03-14 10:13:45 +10:00
Ben Skeggs
3545b42532
drm/nouveau/core: add nvdec plumbing
...
Signed-off-by: Ben Skeggs <bskeggs@redhat.com >
2016-03-14 10:13:44 +10:00
Ben Skeggs
294af04b16
drm/nouveau/core: add nvenc plumbing
...
Signed-off-by: Ben Skeggs <bskeggs@redhat.com >
2016-03-14 10:13:44 +10:00
Ben Skeggs
c0c914eca7
drm/nouveau/core: add msenc plumbing
...
Signed-off-by: Ben Skeggs <bskeggs@redhat.com >
2016-03-14 10:13:43 +10:00
Ben Skeggs
7cee043334
drm/nouveau/core: sort engine indices alphabetically
...
Unlike subdevs, these aren't initialised in a defined order.
Signed-off-by: Ben Skeggs <bskeggs@redhat.com >
2016-03-14 10:13:43 +10:00
Ben Skeggs
1f5ff7f52b
drm/nouveau/fifo/gk104: make use of topology info during gpfifo construction
...
Signed-off-by: Ben Skeggs <bskeggs@redhat.com >
2016-03-14 10:13:42 +10:00
Ben Skeggs
19f89279fa
drm/nouveau/fifo/gk104: make use of topology info during fault recovery
...
Signed-off-by: Ben Skeggs <bskeggs@redhat.com >
2016-03-14 10:13:42 +10:00
Ben Skeggs
af83a67779
drm/nouveau/fifo/gk104: make use of topology info when handling ctxsw timeout
...
Signed-off-by: Ben Skeggs <bskeggs@redhat.com >
2016-03-14 10:13:41 +10:00
Ben Skeggs
41e5171ba8
drm/nouveau/fifo/gk104: read device topology information from hw
...
Signed-off-by: Ben Skeggs <bskeggs@redhat.com >
2016-03-14 10:13:41 +10:00
Ben Skeggs
69aa40e276
drm/nouveau/fifo/gk104: cosmetic engine->runlist changes
...
Signed-off-by: Ben Skeggs <bskeggs@redhat.com >
2016-03-14 10:13:40 +10:00
Ben Skeggs
acdf7d4f7e
drm/nouveau/fifo/gk104: don't attempt recovery of unknown mmu engines
...
Signed-off-by: Ben Skeggs <bskeggs@redhat.com >
2016-03-14 10:13:40 +10:00
Ben Skeggs
55252da161
drm/nouveau/fifo/gk104: identify fault-recovery members more clearly
...
Signed-off-by: Ben Skeggs <bskeggs@redhat.com >
2016-03-14 10:13:39 +10:00
Ben Skeggs
6d39b83f13
drm/nouveau/fifo/gk104: rename spoon to pbdma, and move detection to oneinit
...
Signed-off-by: Ben Skeggs <bskeggs@redhat.com >
2016-03-14 10:13:39 +10:00