1 /* SPDX-License-Identifier: GPL-2.0 */
2 #ifndef __NVKM_DISP_PRIV_H__
3 #define __NVKM_DISP_PRIV_H__
4 #include <engine/disp.h>
7 int nvkm_disp_ctor(const struct nvkm_disp_func
*, struct nvkm_device
*,
8 int index
, struct nvkm_disp
*);
9 int nvkm_disp_new_(const struct nvkm_disp_func
*, struct nvkm_device
*,
10 int index
, struct nvkm_disp
**);
11 void nvkm_disp_vblank(struct nvkm_disp
*, int head
);
13 struct nvkm_disp_func
{
14 void *(*dtor
)(struct nvkm_disp
*);
15 void (*intr
)(struct nvkm_disp
*);
17 const struct nvkm_disp_oclass
*(*root
)(struct nvkm_disp
*);
20 int nvkm_disp_ntfy(struct nvkm_object
*, u32
, struct nvkm_event
**);
22 extern const struct nvkm_disp_oclass nv04_disp_root_oclass
;
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
;