]> git.ipfire.org Git - thirdparty/kernel/linux.git/blame - drivers/gpu/drm/nouveau/nvkm/engine/fifo/gf100.h
License cleanup: add SPDX GPL-2.0 license identifier to files with no license
[thirdparty/kernel/linux.git] / drivers / gpu / drm / nouveau / nvkm / engine / fifo / gf100.h
CommitLineData
b2441318 1/* SPDX-License-Identifier: GPL-2.0 */
9a65a38c
BS
2#ifndef __GF100_FIFO_H__
3#define __GF100_FIFO_H__
8f0649b5 4#define gf100_fifo(p) container_of((p), struct gf100_fifo, base)
9a65a38c
BS
5#include "priv.h"
6
8f0649b5
BS
7#include <subdev/mmu.h>
8
d40d0fd4 9struct gf100_fifo_chan;
9a65a38c
BS
10struct gf100_fifo {
11 struct nvkm_fifo base;
12
8f0649b5
BS
13 struct list_head chan;
14
79266243
BS
15 struct {
16 struct work_struct work;
17 u64 mask;
18 } recover;
9a65a38c 19
adbe24a2
BS
20 int pbdma_nr;
21
9a65a38c
BS
22 struct {
23 struct nvkm_memory *mem[2];
24 int active;
25 wait_queue_head_t wait;
26 } runlist;
27
28 struct {
29 struct nvkm_memory *mem;
30 struct nvkm_vma bar;
31 } user;
9a65a38c
BS
32};
33
34void gf100_fifo_intr_engine(struct gf100_fifo *);
d40d0fd4
BS
35void gf100_fifo_runlist_insert(struct gf100_fifo *, struct gf100_fifo_chan *);
36void gf100_fifo_runlist_remove(struct gf100_fifo *, struct gf100_fifo_chan *);
37void gf100_fifo_runlist_commit(struct gf100_fifo *);
9a65a38c 38#endif