1/* $NetBSD: disp.h,v 1.3 2021/12/18 23:45:33 riastradh Exp $ */ 2 3/* SPDX-License-Identifier: MIT */ 4#ifndef __NVKM_DISP_H__ 5#define __NVKM_DISP_H__ 6#define nvkm_disp(p) container_of((p), struct nvkm_disp, engine) 7#include <core/engine.h> 8#include <core/event.h> 9 10struct nvkm_disp { 11 const struct nvkm_disp_func *func; 12 struct nvkm_engine engine; 13 14 struct list_head head; 15 struct list_head ior; 16 struct list_head outp; 17 struct list_head conn; 18 19 struct nvkm_event hpd; 20 struct nvkm_event vblank; 21 22 struct nvkm_oproxy *client; 23}; 24 25int nv04_disp_new(struct nvkm_device *, int, struct nvkm_disp **); 26int nv50_disp_new(struct nvkm_device *, int, struct nvkm_disp **); 27int g84_disp_new(struct nvkm_device *, int, struct nvkm_disp **); 28int gt200_disp_new(struct nvkm_device *, int, struct nvkm_disp **); 29int g94_disp_new(struct nvkm_device *, int, struct nvkm_disp **); 30int mcp77_disp_new(struct nvkm_device *, int, struct nvkm_disp **); 31int gt215_disp_new(struct nvkm_device *, int, struct nvkm_disp **); 32int mcp89_disp_new(struct nvkm_device *, int, struct nvkm_disp **); 33int gf119_disp_new(struct nvkm_device *, int, struct nvkm_disp **); 34int gk104_disp_new(struct nvkm_device *, int, struct nvkm_disp **); 35int gk110_disp_new(struct nvkm_device *, int, struct nvkm_disp **); 36int gm107_disp_new(struct nvkm_device *, int, struct nvkm_disp **); 37int gm200_disp_new(struct nvkm_device *, int, struct nvkm_disp **); 38int gp100_disp_new(struct nvkm_device *, int, struct nvkm_disp **); 39int gp102_disp_new(struct nvkm_device *, int, struct nvkm_disp **); 40int gv100_disp_new(struct nvkm_device *, int, struct nvkm_disp **); 41int tu102_disp_new(struct nvkm_device *, int, struct nvkm_disp **); 42#endif 43