drm/nouveau/sw: convert user classes to new-style nvkm_object
[deliverable/linux.git] / drivers / gpu / drm / nouveau / nvkm / engine / sw / nv50.h
1 #ifndef __NVKM_SW_NV50_H__
2 #define __NVKM_SW_NV50_H__
3 #define nv50_sw_chan(p) container_of((p), struct nv50_sw_chan, base)
4 #include "priv.h"
5 #include "chan.h"
6 #include "nvsw.h"
7 #include <core/notify.h>
8
9 struct nv50_sw_oclass {
10 struct nvkm_oclass base;
11 const struct nvkm_sw_func *func;
12 };
13
14 int nv50_sw_ctor(struct nvkm_object *, struct nvkm_object *,
15 struct nvkm_oclass *, void *, u32,
16 struct nvkm_object **);
17
18 struct nv50_sw_cclass {
19 struct nvkm_oclass base;
20 int (*vblank)(struct nvkm_notify *);
21 const struct nvkm_sw_chan_func *chan;
22 };
23
24 struct nv50_sw_chan {
25 struct nvkm_sw_chan base;
26 struct {
27 struct nvkm_notify notify[4];
28 u32 ctxdma;
29 u64 offset;
30 u32 value;
31 } vblank;
32 };
33
34 void *nv50_sw_chan_dtor(struct nvkm_sw_chan *);
35 #endif
This page took 0.051301 seconds and 5 git commands to generate.