mirror of
https://github.com/torvalds/linux.git
synced 2026-05-02 21:42:42 -04:00
drm/nouveau/fifo/gk110-: support writing channel group runlist entries
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
This commit is contained in:
@@ -22,10 +22,29 @@
|
||||
* Authors: Ben Skeggs
|
||||
*/
|
||||
#include "gk104.h"
|
||||
#include "cgrp.h"
|
||||
#include "changk104.h"
|
||||
|
||||
#include <core/memory.h>
|
||||
|
||||
#include <nvif/class.h>
|
||||
|
||||
void
|
||||
gk110_fifo_runlist_cgrp(struct nvkm_fifo_cgrp *cgrp,
|
||||
struct nvkm_memory *memory, u32 offset)
|
||||
{
|
||||
nvkm_wo32(memory, offset + 0, (cgrp->chan_nr << 26) | (128 << 18) |
|
||||
(3 << 14) | 0x00002000 | cgrp->id);
|
||||
nvkm_wo32(memory, offset + 4, 0x00000000);
|
||||
}
|
||||
|
||||
const struct gk104_fifo_runlist_func
|
||||
gk110_fifo_runlist = {
|
||||
.size = 8,
|
||||
.cgrp = gk110_fifo_runlist_cgrp,
|
||||
.chan = gk104_fifo_runlist_chan,
|
||||
};
|
||||
|
||||
static const struct gk104_fifo_func
|
||||
gk110_fifo = {
|
||||
.fault.access = gk104_fifo_fault_access,
|
||||
@@ -33,7 +52,7 @@ gk110_fifo = {
|
||||
.fault.reason = gk104_fifo_fault_reason,
|
||||
.fault.hubclient = gk104_fifo_fault_hubclient,
|
||||
.fault.gpcclient = gk104_fifo_fault_gpcclient,
|
||||
.runlist = &gk104_fifo_runlist,
|
||||
.runlist = &gk110_fifo_runlist,
|
||||
.chan = {{0,0,KEPLER_CHANNEL_GPFIFO_B}, gk104_fifo_gpfifo_new },
|
||||
};
|
||||
|
||||
|
||||
Reference in New Issue
Block a user