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