diff options
author | Ben Skeggs <bskeggs@redhat.com> | 2015-08-20 07:54:15 +0300 |
---|---|---|
committer | Ben Skeggs <bskeggs@redhat.com> | 2015-08-28 05:40:30 +0300 |
commit | f2c906fc0cf1657e4164e09ae6061534eebd5430 (patch) | |
tree | 4e68895102b2bd963fdb927307317a3bd80eae25 /drivers/gpu/drm/nouveau/nvkm/engine/disp/priv.h | |
parent | 2aa5eac5163fedf09f2d61992cb5ea4d75bec9db (diff) | |
download | linux-f2c906fc0cf1657e4164e09ae6061534eebd5430.tar.xz |
drm/nouveau/disp: transition outp/conn away from being based on nvkm_object
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
Diffstat (limited to 'drivers/gpu/drm/nouveau/nvkm/engine/disp/priv.h')
-rw-r--r-- | drivers/gpu/drm/nouveau/nvkm/engine/disp/priv.h | 21 |
1 files changed, 19 insertions, 2 deletions
diff --git a/drivers/gpu/drm/nouveau/nvkm/engine/disp/priv.h b/drivers/gpu/drm/nouveau/nvkm/engine/disp/priv.h index 961ce8bb2135..f1df2972a8d1 100644 --- a/drivers/gpu/drm/nouveau/nvkm/engine/disp/priv.h +++ b/drivers/gpu/drm/nouveau/nvkm/engine/disp/priv.h @@ -1,11 +1,28 @@ #ifndef __NVKM_DISP_PRIV_H__ #define __NVKM_DISP_PRIV_H__ #include <engine/disp.h> +#include "outp.h" +#include "outpdp.h" + +struct nvkm_disp_func_outp { + int (* crt)(struct nvkm_disp *, int index, struct dcb_output *, + struct nvkm_output **); + int (* tv)(struct nvkm_disp *, int index, struct dcb_output *, + struct nvkm_output **); + int (*tmds)(struct nvkm_disp *, int index, struct dcb_output *, + struct nvkm_output **); + int (*lvds)(struct nvkm_disp *, int index, struct dcb_output *, + struct nvkm_output **); + int (* dp)(struct nvkm_disp *, int index, struct dcb_output *, + struct nvkm_output **); +}; struct nvkm_disp_impl { struct nvkm_oclass base; - struct nvkm_oclass **outp; - struct nvkm_oclass **conn; + struct { + const struct nvkm_disp_func_outp internal; + const struct nvkm_disp_func_outp external; + } outp; const struct nvkm_event_func *vblank; }; |