linux/drivers/gpu/drm/nouveau/nvkm/engine/disp/rootnv50.h
<<
>>
Prefs
   1/* SPDX-License-Identifier: GPL-2.0 */
   2#ifndef __NV50_DISP_ROOT_H__
   3#define __NV50_DISP_ROOT_H__
   4#define nv50_disp_root(p) container_of((p), struct nv50_disp_root, object)
   5#include "nv50.h"
   6#include "channv50.h"
   7#include "dmacnv50.h"
   8
   9struct nv50_disp_root {
  10        const struct nv50_disp_root_func *func;
  11        struct nv50_disp *disp;
  12        struct nvkm_object object;
  13
  14        struct nvkm_gpuobj *instmem;
  15        struct nvkm_ramht *ramht;
  16};
  17
  18struct nv50_disp_root_func {
  19        int (*init)(struct nv50_disp_root *);
  20        void (*fini)(struct nv50_disp_root *);
  21        const struct nv50_disp_dmac_oclass *dmac[3];
  22        const struct nv50_disp_pioc_oclass *pioc[2];
  23};
  24
  25int  nv50_disp_root_new_(const struct nv50_disp_root_func *, struct nvkm_disp *,
  26                         const struct nvkm_oclass *, void *data, u32 size,
  27                         struct nvkm_object **);
  28int  nv50_disp_root_init(struct nv50_disp_root *);
  29void nv50_disp_root_fini(struct nv50_disp_root *);
  30
  31int  gf119_disp_root_init(struct nv50_disp_root *);
  32void gf119_disp_root_fini(struct nv50_disp_root *);
  33
  34extern const struct nvkm_disp_oclass nv50_disp_root_oclass;
  35extern const struct nvkm_disp_oclass g84_disp_root_oclass;
  36extern const struct nvkm_disp_oclass g94_disp_root_oclass;
  37extern const struct nvkm_disp_oclass gt200_disp_root_oclass;
  38extern const struct nvkm_disp_oclass gt215_disp_root_oclass;
  39extern const struct nvkm_disp_oclass gf119_disp_root_oclass;
  40extern const struct nvkm_disp_oclass gk104_disp_root_oclass;
  41extern const struct nvkm_disp_oclass gk110_disp_root_oclass;
  42extern const struct nvkm_disp_oclass gm107_disp_root_oclass;
  43extern const struct nvkm_disp_oclass gm200_disp_root_oclass;
  44extern const struct nvkm_disp_oclass gp100_disp_root_oclass;
  45extern const struct nvkm_disp_oclass gp102_disp_root_oclass;
  46#endif
  47