disp.h 1.5 KB

1234567891011121314151617181920212223242526272829303132333435363738
  1. /* SPDX-License-Identifier: GPL-2.0 */
  2. #ifndef __NVKM_DISP_H__
  3. #define __NVKM_DISP_H__
  4. #define nvkm_disp(p) container_of((p), struct nvkm_disp, engine)
  5. #include <core/engine.h>
  6. #include <core/event.h>
  7. struct nvkm_disp {
  8. const struct nvkm_disp_func *func;
  9. struct nvkm_engine engine;
  10. struct list_head head;
  11. struct list_head ior;
  12. struct list_head outp;
  13. struct list_head conn;
  14. struct nvkm_event hpd;
  15. struct nvkm_event vblank;
  16. struct nvkm_oproxy *client;
  17. };
  18. int nv04_disp_new(struct nvkm_device *, int, struct nvkm_disp **);
  19. int nv50_disp_new(struct nvkm_device *, int, struct nvkm_disp **);
  20. int g84_disp_new(struct nvkm_device *, int, struct nvkm_disp **);
  21. int gt200_disp_new(struct nvkm_device *, int, struct nvkm_disp **);
  22. int g94_disp_new(struct nvkm_device *, int, struct nvkm_disp **);
  23. int mcp77_disp_new(struct nvkm_device *, int, struct nvkm_disp **);
  24. int gt215_disp_new(struct nvkm_device *, int, struct nvkm_disp **);
  25. int mcp89_disp_new(struct nvkm_device *, int, struct nvkm_disp **);
  26. int gf119_disp_new(struct nvkm_device *, int, struct nvkm_disp **);
  27. int gk104_disp_new(struct nvkm_device *, int, struct nvkm_disp **);
  28. int gk110_disp_new(struct nvkm_device *, int, struct nvkm_disp **);
  29. int gm107_disp_new(struct nvkm_device *, int, struct nvkm_disp **);
  30. int gm200_disp_new(struct nvkm_device *, int, struct nvkm_disp **);
  31. int gp100_disp_new(struct nvkm_device *, int, struct nvkm_disp **);
  32. int gp102_disp_new(struct nvkm_device *, int, struct nvkm_disp **);
  33. #endif