Commit | Line | Data |
---|---|---|
b2441318 | 1 | /* SPDX-License-Identifier: GPL-2.0 */ |
a8f8b489 BS |
2 | #ifndef __NVKM_DISP_PRIV_H__ |
3 | #define __NVKM_DISP_PRIV_H__ | |
a8f8b489 | 4 | #include <engine/disp.h> |
f2c906fc | 5 | #include "outp.h" |
f2c906fc | 6 | |
70aa8670 | 7 | int nvkm_disp_ctor(const struct nvkm_disp_func *, struct nvkm_device *, |
a1c93078 | 8 | int index, struct nvkm_disp *); |
70aa8670 | 9 | int nvkm_disp_new_(const struct nvkm_disp_func *, struct nvkm_device *, |
a1c93078 | 10 | int index, struct nvkm_disp **); |
70aa8670 BS |
11 | void nvkm_disp_vblank(struct nvkm_disp *, int head); |
12 | ||
70aa8670 BS |
13 | struct nvkm_disp_func { |
14 | void *(*dtor)(struct nvkm_disp *); | |
15 | void (*intr)(struct nvkm_disp *); | |
16 | ||
17 | const struct nvkm_disp_oclass *(*root)(struct nvkm_disp *); | |
a8f8b489 BS |
18 | }; |
19 | ||
878da15a | 20 | int nvkm_disp_ntfy(struct nvkm_object *, u32, struct nvkm_event **); |
2a7909c0 | 21 | |
0ce41e3c BS |
22 | extern const struct nvkm_disp_oclass nv04_disp_root_oclass; |
23 | ||
24 | struct nvkm_disp_oclass { | |
25 | int (*ctor)(struct nvkm_disp *, const struct nvkm_oclass *, | |
26 | void *data, u32 size, struct nvkm_object **); | |
27 | struct nvkm_sclass base; | |
28 | }; | |
a8f8b489 | 29 | #endif |