1#ifndef __NOUVEAU_DISP_H__
2#define __NOUVEAU_DISP_H__
3
4#include <core/object.h>
5#include <core/engine.h>
6#include <core/device.h>
7#include <core/event.h>
8
9struct nouveau_disp {
10	struct nouveau_engine base;
11
12	struct list_head outp;
13
14	struct nvkm_event hpd;
15	struct nvkm_event vblank;
16};
17
18static inline struct nouveau_disp *
19nouveau_disp(void *obj)
20{
21	return (void *)nv_device(obj)->subdev[NVDEV_ENGINE_DISP];
22}
23
24extern struct nouveau_oclass *nv04_disp_oclass;
25extern struct nouveau_oclass *nv50_disp_oclass;
26extern struct nouveau_oclass *nv84_disp_oclass;
27extern struct nouveau_oclass *nva0_disp_oclass;
28extern struct nouveau_oclass *nv94_disp_oclass;
29extern struct nouveau_oclass *nva3_disp_oclass;
30extern struct nouveau_oclass *nvd0_disp_oclass;
31extern struct nouveau_oclass *nve0_disp_oclass;
32extern struct nouveau_oclass *nvf0_disp_oclass;
33extern struct nouveau_oclass *gm107_disp_oclass;
34
35#endif
36