xref: /linux/drivers/gpu/drm/nouveau/dispnv50/base.h (revision 88b600d421a5550cd56e13f2eda34cbefe417c28)
1 #ifndef __NV50_KMS_BASE_H__
2 #define __NV50_KMS_BASE_H__
3 #include "wndw.h"
4 
5 int base507c_new(struct nouveau_drm *, int, s32, struct nv50_wndw **);
6 int base507c_new_(const struct nv50_wndw_func *, const u32 *format,
7 		  struct nouveau_drm *, int head, s32 oclass,
8 		  u32 interlock_data, struct nv50_wndw **);
9 extern const u32 base507c_format[];
10 int base507c_acquire(struct nv50_wndw *, struct nv50_wndw_atom *,
11 		     struct nv50_head_atom *);
12 void base507c_release(struct nv50_wndw *, struct nv50_wndw_atom *,
13 		      struct nv50_head_atom *);
14 void base507c_sema_set(struct nv50_wndw *, struct nv50_wndw_atom *);
15 void base507c_sema_clr(struct nv50_wndw *);
16 void base507c_ntfy_reset(struct nouveau_bo *, u32);
17 void base507c_ntfy_set(struct nv50_wndw *, struct nv50_wndw_atom *);
18 void base507c_ntfy_clr(struct nv50_wndw *);
19 int base507c_ntfy_wait_begun(struct nouveau_bo *, u32, struct nvif_device *);
20 void base507c_xlut_set(struct nv50_wndw *, struct nv50_wndw_atom *);
21 void base507c_xlut_clr(struct nv50_wndw *);
22 void base507c_image_clr(struct nv50_wndw *);
23 void base507c_update(struct nv50_wndw *, u32 *);
24 
25 int base827c_new(struct nouveau_drm *, int, s32, struct nv50_wndw **);
26 
27 int base907c_new(struct nouveau_drm *, int, s32, struct nv50_wndw **);
28 extern const struct nv50_wndw_func base907c;
29 
30 int base917c_new(struct nouveau_drm *, int, s32, struct nv50_wndw **);
31 
32 int nv50_base_new(struct nouveau_drm *, int head, struct nv50_wndw **);
33 #endif
34