| /drivers/gpu/drm/nouveau/nvkm/engine/fifo/ |
| A D | runq.c | 26 nvkm_runq_del(struct nvkm_runq *runq) in nvkm_runq_del() argument 28 list_del(&runq->head); in nvkm_runq_del() 29 kfree(runq); in nvkm_runq_del() 35 struct nvkm_runq *runq; in nvkm_runq_new() local 37 if (!(runq = kzalloc(sizeof(*runq), GFP_KERNEL))) in nvkm_runq_new() 40 runq->func = fifo->func->runq; in nvkm_runq_new() 41 runq->fifo = fifo; in nvkm_runq_new() 42 runq->id = pbid; in nvkm_runq_new() 43 list_add_tail(&runq->head, &fifo->runqs); in nvkm_runq_new() 44 return runq; in nvkm_runq_new()
|
| A D | ga100.c | 177 ga100_runq_idle(struct nvkm_runq *runq) in ga100_runq_idle() argument 363 if (runl->runq[0]) { in ga100_runl_intr() 364 if (runl->runq[0]->func->intr(runl->runq[0], runl)) in ga100_runl_intr() 370 if (runl->runq[1]) { in ga100_runl_intr() 371 if (runl->runq[1]->func->intr(runl->runq[1], runl)) in ga100_runl_intr() 396 struct nvkm_runq *runq; in ga100_runl_init() local 415 runq = runl->runq[i]; in ga100_runl_init() 416 runq->func->init(runq); in ga100_runl_init() 462 runl->runq[runl->runq_nr] = in ga100_runl_new() 464 if (!runl->runq[runl->runq_nr]) { in ga100_runl_new() [all …]
|
| A D | gk104.c | 289 gk104_runq_idle(struct nvkm_runq *runq) in gk104_runq_idle() argument 317 if (runq->func->intr_1_ctxnotvalid && in gk104_runq_intr_1() 318 runq->func->intr_1_ctxnotvalid(runq, chid)) in gk104_runq_intr_1() 325 runq->id, stat, msg, chid, in gk104_runq_intr_1() 373 bool intr1 = gk104_runq_intr_1(runq); in gk104_runq_intr() 383 gf100_runq_init(runq); in gk104_runq_init() 392 return nvkm_rd32(runq->fifo->engine.subdev.device, 0x002390 + (runq->id * 0x04)); in gk104_runq_runm() 761 struct nvkm_runq *runq; in gk104_fifo_runl_ctor() local 771 nvkm_runq_foreach_cond(runq, fifo, gk104_runq_runm(runq) & BIT(runl->id)) { in gk104_fifo_runl_ctor() 775 runl->runq[runl->runq_nr++] = runq; in gk104_fifo_runl_ctor() [all …]
|
| A D | gk208.c | 30 gk208_runq_init(struct nvkm_runq *runq) in gk208_runq_init() argument 32 gk104_runq_init(runq); in gk208_runq_init() 34 nvkm_wr32(runq->fifo->engine.subdev.device, 0x04012c + (runq->id * 0x2000), 0x000f4240); in gk208_runq_init() 65 .runq = &gk208_runq,
|
| A D | gf100.c | 312 struct nvkm_subdev *subdev = &runq->fifo->engine.subdev; in gf100_runq_intr() 314 u32 mask = nvkm_rd32(device, 0x04010c + (runq->id * 0x2000)); in gf100_runq_intr() 318 u32 chid = nvkm_rd32(device, 0x040120 + (runq->id * 0x2000)) & runq->fifo->chid->mask; in gf100_runq_intr() 338 runq->id, show, msg, chid, chan ? chan->inst->addr : 0, in gf100_runq_intr() 348 nvkm_wr32(device, 0x040108 + (runq->id * 0x2000), stat); in gf100_runq_intr() 353 gf100_runq_init(struct nvkm_runq *runq) in gf100_runq_init() argument 736 struct nvkm_runq *runq; in gf100_fifo_intr_pbdma() local 740 nvkm_runq_foreach_cond(runq, fifo, mask & BIT(runq->id)) { in gf100_fifo_intr_pbdma() 741 if (runq->func->intr(runq, NULL)) in gf100_fifo_intr_pbdma() 744 nvkm_wr32(device, 0x0025a0, BIT(runq->id)); in gf100_fifo_intr_pbdma() [all …]
|
| A D | runq.h | 24 #define nvkm_runq_foreach(runq,fifo) list_for_each_entry((runq), &(fifo)->runqs, head) argument 25 #define nvkm_runq_foreach_cond(runq,fifo,cond) nvkm_list_foreach(runq, &(fifo)->runqs, head, (cond)) argument
|
| A D | base.c | 142 struct nvkm_runq *runq; in nvkm_fifo_init() local 147 nvkm_runq_foreach(runq, fifo) in nvkm_fifo_init() 148 mask |= BIT(runq->id); in nvkm_fifo_init() 152 nvkm_runq_foreach(runq, fifo) in nvkm_fifo_init() 153 runq->func->init(runq); in nvkm_fifo_init() 338 struct nvkm_runq *runq, *rtmp; in nvkm_fifo_dtor() local 346 list_for_each_entry_safe(runq, rtmp, &fifo->runqs, head) in nvkm_fifo_dtor() 347 nvkm_runq_del(runq); in nvkm_fifo_dtor()
|
| A D | gv100.c | 145 gv100_runq_intr_1_ctxnotvalid(struct nvkm_runq *runq, int chid) in gv100_runq_intr_1_ctxnotvalid() argument 147 struct nvkm_fifo *fifo = runq->fifo; in gv100_runq_intr_1_ctxnotvalid() 152 RUNQ_ERROR(runq, "CTXNOTVALID chid:%d", chid); in gv100_runq_intr_1_ctxnotvalid() 161 nvkm_mask(device, 0x0400ac + (runq->id * 0x2000), 0x00030000, 0x00030000); in gv100_runq_intr_1_ctxnotvalid() 162 nvkm_wr32(device, 0x040148 + (runq->id * 0x2000), 0x80000000); in gv100_runq_intr_1_ctxnotvalid() 187 nvkm_wo32(memory, offset + 0x0, lower_32_bits(user) | chan->runq << 1); in gv100_runl_insert_chan() 479 .runq = &gv100_runq,
|
| A D | chan.c | 345 nvkm_chan_new_(const struct nvkm_chan_func *func, struct nvkm_runl *runl, int runq, in nvkm_chan_new_() argument 356 if ((runq && runq >= runl->func->runqs) || in nvkm_chan_new_() 364 runl->func->runqs, runq, func->inst->vmm, vmm, in nvkm_chan_new_() 375 chan->runq = runq; in nvkm_chan_new_()
|
| A D | runl.c | 89 struct nvkm_runq *runq = runl->runq[i]; in nvkm_runl_rc() local 91 if (runq) { in nvkm_runl_rc() 93 if (runq->func->idle(runq)) in nvkm_runl_rc()
|
| A D | gp100.c | 35 nvkm_wo32(memory, offset + 0, chan->id | chan->runq << 14); in gp100_runl_insert_chan() 127 .runq = &gk208_runq,
|
| A D | uchan.c | 208 int ret, runq = 0; in nvkm_uchan_sclass() local 217 if (chan->runq != runq++) in nvkm_uchan_sclass() 386 ret = nvkm_chan_new_(fifo->func->chan.func, runl, args->v0.runq, cgrp, args->v0.name, in nvkm_uchan_new()
|
| A D | ga102.c | 35 .runq = &ga100_runq,
|
| A D | gk20a.c | 40 .runq = &gk208_runq,
|
| A D | gm200.c | 54 .runq = &gk208_runq,
|
| A D | gk110.c | 120 .runq = &gk104_runq,
|
| A D | chan.h | 56 int nvkm_chan_new_(const struct nvkm_chan_func *, struct nvkm_runl *, int runq, struct nvkm_cgrp *,
|
| A D | gm107.c | 144 .runq = &gk208_runq,
|
| A D | Kbuild | 7 nvkm-y += nvkm/engine/fifo/runq.o
|
| A D | runl.h | 74 struct nvkm_runq *runq[2]; member
|
| /drivers/gpu/drm/nouveau/include/nvif/ |
| A D | if0020.h | 10 __u8 runq; member
|
| /drivers/gpu/drm/nouveau/nvkm/subdev/gsp/rm/r570/ |
| A D | fifo.c | 20 r570_chan_alloc(struct nvkm_gsp_device *device, u32 handle, u32 nv2080_engine_type, u8 runq, in r570_chan_alloc() argument 42 args->flags |= NVVAL(NVOS04, FLAGS, GROUP_CHANNEL_RUNQUEUE, runq); in r570_chan_alloc()
|
| /drivers/gpu/drm/nouveau/include/nvkm/engine/ |
| A D | fifo.h | 16 int runq; member
|
| /drivers/gpu/drm/nouveau/nvkm/subdev/gsp/rm/r535/ |
| A D | fifo.c | 75 r535_chan_alloc(struct nvkm_gsp_device *device, u32 handle, u32 nv2080_engine_type, u8 runq, in r535_chan_alloc() argument 97 args->flags |= NVVAL(NVOS04, FLAGS, GROUP_CHANNEL_RUNQUEUE, runq); in r535_chan_alloc() 184 eT, chan->runq, priv, chan->id, chan->inst->addr, in r535_chan_ramfc_write()
|
| /drivers/gpu/drm/nouveau/nvkm/subdev/gsp/rm/ |
| A D | rm.h | 114 u32 nv2080_engine_type, u8 runq, bool priv, int chid,
|