diff options
Diffstat (limited to 'drivers/gpu/drm/nouveau/nvkm/engine/disp/g84.c')
-rw-r--r-- | drivers/gpu/drm/nouveau/nvkm/engine/disp/g84.c | 14 |
1 files changed, 7 insertions, 7 deletions
diff --git a/drivers/gpu/drm/nouveau/nvkm/engine/disp/g84.c b/drivers/gpu/drm/nouveau/nvkm/engine/disp/g84.c index 5995bcae2178..a223cef2b81f 100644 --- a/drivers/gpu/drm/nouveau/nvkm/engine/disp/g84.c +++ b/drivers/gpu/drm/nouveau/nvkm/engine/disp/g84.c @@ -24,6 +24,11 @@ #include "nv50.h" #include "rootnv50.h" +static const struct nvkm_disp_func +g84_disp = { + .root = &g84_disp_root_oclass, +}; + static int g84_disp_ctor(struct nvkm_object *parent, struct nvkm_object *engine, struct nvkm_oclass *oclass, void *data, u32 size, @@ -38,15 +43,14 @@ g84_disp_ctor(struct nvkm_object *parent, struct nvkm_object *engine, if (ret) return ret; + disp->base.func = &g84_disp; + ret = nvkm_event_init(&nv50_disp_chan_uevent, 1, 9, &disp->uevent); if (ret) return ret; - nv_engine(disp)->sclass = g84_disp_root_oclass; - nv_engine(disp)->cclass = &nv50_disp_cclass; nv_subdev(disp)->intr = nv50_disp_intr; INIT_WORK(&disp->supervisor, nv50_disp_intr_supervisor); - disp->sclass = g84_disp_sclass; disp->head.nr = 2; disp->dac.nr = 3; disp->sor.nr = 2; @@ -74,9 +78,5 @@ g84_disp_oclass = &(struct nv50_disp_impl) { .base.outp.external.tmds = nv50_pior_output_new, .base.outp.external.dp = nv50_pior_dp_new, .base.vblank = &nv50_disp_vblank_func, - .mthd.core = &g84_disp_core_mthd_chan, - .mthd.base = &g84_disp_base_mthd_chan, - .mthd.ovly = &g84_disp_ovly_mthd_chan, - .mthd.prev = 0x000004, .head.scanoutpos = nv50_disp_root_scanoutpos, }.base.base; |