diff options
author | Ben Skeggs <bskeggs@redhat.com> | 2015-08-20 14:54:18 +1000 |
---|---|---|
committer | Ben Skeggs <bskeggs@redhat.com> | 2015-08-28 12:40:38 +1000 |
commit | 898a2b32138da26ed8f7abc0cc8232741ca03de7 (patch) | |
tree | 074fe2ff37d9c2d872f8a4c3d8b3b1e3f00b5930 /drivers/gpu/drm/nouveau/nvkm/engine/sw/chan.h | |
parent | cd459e7776c2c08e3771e20fca7de96272f2c9cd (diff) |
drm/nouveau/sw: turn flip completion into an event
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
Diffstat (limited to 'drivers/gpu/drm/nouveau/nvkm/engine/sw/chan.h')
-rw-r--r-- | drivers/gpu/drm/nouveau/nvkm/engine/sw/chan.h | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/drivers/gpu/drm/nouveau/nvkm/engine/sw/chan.h b/drivers/gpu/drm/nouveau/nvkm/engine/sw/chan.h new file mode 100644 index 000000000000..b5cf4c517a95 --- /dev/null +++ b/drivers/gpu/drm/nouveau/nvkm/engine/sw/chan.h @@ -0,0 +1,25 @@ +#ifndef __NVKM_SW_CHAN_H__ +#define __NVKM_SW_CHAN_H__ +#include "priv.h" +#include <core/engctx.h> +#include <core/event.h> + +struct nvkm_sw_chan { + struct nvkm_engctx base; + struct nvkm_event event; +}; + +#define nvkm_sw_context_create(p,e,c,d) \ + nvkm_sw_chan_ctor((p), (e), (c), sizeof(**d), (void **)d) +int nvkm_sw_chan_ctor(struct nvkm_object *, struct nvkm_object *, + struct nvkm_oclass *, int, void **); +void nvkm_sw_chan_dtor(struct nvkm_object *); +#define nvkm_sw_context_init(d) \ + nvkm_engctx_init(&(d)->base) +#define nvkm_sw_context_fini(d,s) \ + nvkm_engctx_fini(&(d)->base, (s)) + +#define _nvkm_sw_context_dtor nvkm_sw_chan_dtor +#define _nvkm_sw_context_init _nvkm_engctx_init +#define _nvkm_sw_context_fini _nvkm_engctx_fini +#endif |