From 1c6aab75ece7c1d450e4561cb2263403eeb7ae2f Mon Sep 17 00:00:00 2001 From: Ben Skeggs Date: Wed, 1 Jun 2022 20:46:28 +1000 Subject: drm/nouveau/disp: merge nv50_disp_new_() and nvkm_disp_new() Signed-off-by: Ben Skeggs Reviewed-by: Lyude Paul Signed-off-by: Dave Airlie --- drivers/gpu/drm/nouveau/nvkm/engine/disp/base.c | 41 +++++++++++++++-------- drivers/gpu/drm/nouveau/nvkm/engine/disp/g84.c | 3 +- drivers/gpu/drm/nouveau/nvkm/engine/disp/g94.c | 3 +- drivers/gpu/drm/nouveau/nvkm/engine/disp/ga102.c | 3 +- drivers/gpu/drm/nouveau/nvkm/engine/disp/gf119.c | 3 +- drivers/gpu/drm/nouveau/nvkm/engine/disp/gk104.c | 3 +- drivers/gpu/drm/nouveau/nvkm/engine/disp/gk110.c | 3 +- drivers/gpu/drm/nouveau/nvkm/engine/disp/gm107.c | 3 +- drivers/gpu/drm/nouveau/nvkm/engine/disp/gm200.c | 3 +- drivers/gpu/drm/nouveau/nvkm/engine/disp/gp100.c | 3 +- drivers/gpu/drm/nouveau/nvkm/engine/disp/gp102.c | 3 +- drivers/gpu/drm/nouveau/nvkm/engine/disp/gt200.c | 3 +- drivers/gpu/drm/nouveau/nvkm/engine/disp/gt215.c | 3 +- drivers/gpu/drm/nouveau/nvkm/engine/disp/gv100.c | 3 +- drivers/gpu/drm/nouveau/nvkm/engine/disp/mcp77.c | 3 +- drivers/gpu/drm/nouveau/nvkm/engine/disp/mcp89.c | 3 +- drivers/gpu/drm/nouveau/nvkm/engine/disp/nv50.c | 42 +----------------------- drivers/gpu/drm/nouveau/nvkm/engine/disp/priv.h | 4 --- drivers/gpu/drm/nouveau/nvkm/engine/disp/tu102.c | 3 +- 19 files changed, 45 insertions(+), 90 deletions(-) diff --git a/drivers/gpu/drm/nouveau/nvkm/engine/disp/base.c b/drivers/gpu/drm/nouveau/nvkm/engine/disp/base.c index d68d523fabdd..10d4a3359a3f 100644 --- a/drivers/gpu/drm/nouveau/nvkm/engine/disp/base.c +++ b/drivers/gpu/drm/nouveau/nvkm/engine/disp/base.c @@ -30,6 +30,7 @@ #include #include +#include #include #include @@ -394,8 +395,12 @@ nvkm_disp_dtor(struct nvkm_engine *engine) struct nvkm_head *head; void *data = disp; - if (disp->func->dtor) - data = disp->func->dtor(disp); + nvkm_ramht_del(&disp->ramht); + nvkm_gpuobj_del(&disp->inst); + + nvkm_event_fini(&disp->uevent); + if (disp->super.wq) + destroy_workqueue(disp->super.wq); nvkm_event_fini(&disp->vblank); nvkm_event_fini(&disp->hpd); @@ -436,23 +441,33 @@ nvkm_disp = { }; int -nvkm_disp_ctor(const struct nvkm_disp_func *func, struct nvkm_device *device, - enum nvkm_subdev_type type, int inst, struct nvkm_disp *disp) +nvkm_disp_new_(const struct nvkm_disp_func *func, struct nvkm_device *device, + enum nvkm_subdev_type type, int inst, struct nvkm_disp **pdisp) { + struct nvkm_disp *disp; + int ret; + + if (!(disp = *pdisp = kzalloc(sizeof(**pdisp), GFP_KERNEL))) + return -ENOMEM; + disp->func = func; INIT_LIST_HEAD(&disp->heads); INIT_LIST_HEAD(&disp->iors); INIT_LIST_HEAD(&disp->outps); INIT_LIST_HEAD(&disp->conns); spin_lock_init(&disp->client.lock); - return nvkm_engine_ctor(&nvkm_disp, device, type, inst, true, &disp->engine); -} -int -nvkm_disp_new_(const struct nvkm_disp_func *func, struct nvkm_device *device, - enum nvkm_subdev_type type, int inst, struct nvkm_disp **pdisp) -{ - if (!(*pdisp = kzalloc(sizeof(**pdisp), GFP_KERNEL))) - return -ENOMEM; - return nvkm_disp_ctor(func, device, type, inst, *pdisp); + ret = nvkm_engine_ctor(&nvkm_disp, device, type, inst, true, &disp->engine); + if (ret) + return ret; + + if (func->super) { + disp->super.wq = create_singlethread_workqueue("nvkm-disp"); + if (!disp->super.wq) + return -ENOMEM; + + INIT_WORK(&disp->super.work, func->super); + } + + return nvkm_event_init(func->uevent, 1, ARRAY_SIZE(disp->chan), &disp->uevent); } diff --git a/drivers/gpu/drm/nouveau/nvkm/engine/disp/g84.c b/drivers/gpu/drm/nouveau/nvkm/engine/disp/g84.c index 69ef40fe57d0..af5d35149412 100644 --- a/drivers/gpu/drm/nouveau/nvkm/engine/disp/g84.c +++ b/drivers/gpu/drm/nouveau/nvkm/engine/disp/g84.c @@ -298,7 +298,6 @@ g84_disp_core_new(const struct nvkm_oclass *oclass, void *argv, u32 argc, static const struct nvkm_disp_func g84_disp = { - .dtor = nv50_disp_dtor, .oneinit = nv50_disp_oneinit, .init = nv50_disp_init, .fini = nv50_disp_fini, @@ -324,5 +323,5 @@ int g84_disp_new(struct nvkm_device *device, enum nvkm_subdev_type type, int inst, struct nvkm_disp **pdisp) { - return nv50_disp_new_(&g84_disp, device, type, inst, pdisp); + return nvkm_disp_new_(&g84_disp, device, type, inst, pdisp); } diff --git a/drivers/gpu/drm/nouveau/nvkm/engine/disp/g94.c b/drivers/gpu/drm/nouveau/nvkm/engine/disp/g94.c index 6d5fd5c41704..5c9a769ff3bd 100644 --- a/drivers/gpu/drm/nouveau/nvkm/engine/disp/g94.c +++ b/drivers/gpu/drm/nouveau/nvkm/engine/disp/g94.c @@ -345,7 +345,6 @@ g94_disp_core_new(const struct nvkm_oclass *oclass, void *argv, u32 argc, static const struct nvkm_disp_func g94_disp = { - .dtor = nv50_disp_dtor, .oneinit = nv50_disp_oneinit, .init = nv50_disp_init, .fini = nv50_disp_fini, @@ -371,5 +370,5 @@ int g94_disp_new(struct nvkm_device *device, enum nvkm_subdev_type type, int inst, struct nvkm_disp **pdisp) { - return nv50_disp_new_(&g94_disp, device, type, inst, pdisp); + return nvkm_disp_new_(&g94_disp, device, type, inst, pdisp); } diff --git a/drivers/gpu/drm/nouveau/nvkm/engine/disp/ga102.c b/drivers/gpu/drm/nouveau/nvkm/engine/disp/ga102.c index b3cfed2035d8..c693ad09fc83 100644 --- a/drivers/gpu/drm/nouveau/nvkm/engine/disp/ga102.c +++ b/drivers/gpu/drm/nouveau/nvkm/engine/disp/ga102.c @@ -152,7 +152,6 @@ ga102_sor_new(struct nvkm_disp *disp, int id) static const struct nvkm_disp_func ga102_disp = { - .dtor = nv50_disp_dtor, .oneinit = nv50_disp_oneinit, .init = tu102_disp_init, .fini = gv100_disp_fini, @@ -178,5 +177,5 @@ int ga102_disp_new(struct nvkm_device *device, enum nvkm_subdev_type type, int inst, struct nvkm_disp **pdisp) { - return nv50_disp_new_(&ga102_disp, device, type, inst, pdisp); + return nvkm_disp_new_(&ga102_disp, device, type, inst, pdisp); } diff --git a/drivers/gpu/drm/nouveau/nvkm/engine/disp/gf119.c b/drivers/gpu/drm/nouveau/nvkm/engine/disp/gf119.c index 492e2d23fd32..75b7b41d5727 100644 --- a/drivers/gpu/drm/nouveau/nvkm/engine/disp/gf119.c +++ b/drivers/gpu/drm/nouveau/nvkm/engine/disp/gf119.c @@ -1202,7 +1202,6 @@ gf119_disp_init(struct nvkm_disp *disp) static const struct nvkm_disp_func gf119_disp = { - .dtor = nv50_disp_dtor, .oneinit = nv50_disp_oneinit, .init = gf119_disp_init, .fini = gf119_disp_fini, @@ -1228,5 +1227,5 @@ int gf119_disp_new(struct nvkm_device *device, enum nvkm_subdev_type type, int inst, struct nvkm_disp **pdisp) { - return nv50_disp_new_(&gf119_disp, device, type, inst, pdisp); + return nvkm_disp_new_(&gf119_disp, device, type, inst, pdisp); } diff --git a/drivers/gpu/drm/nouveau/nvkm/engine/disp/gk104.c b/drivers/gpu/drm/nouveau/nvkm/engine/disp/gk104.c index b7b7a0c230e1..1c9a5e0d1ddd 100644 --- a/drivers/gpu/drm/nouveau/nvkm/engine/disp/gk104.c +++ b/drivers/gpu/drm/nouveau/nvkm/engine/disp/gk104.c @@ -296,7 +296,6 @@ gk104_disp_core_new(const struct nvkm_oclass *oclass, void *argv, u32 argc, static const struct nvkm_disp_func gk104_disp = { - .dtor = nv50_disp_dtor, .oneinit = nv50_disp_oneinit, .init = gf119_disp_init, .fini = gf119_disp_fini, @@ -322,5 +321,5 @@ int gk104_disp_new(struct nvkm_device *device, enum nvkm_subdev_type type, int inst, struct nvkm_disp **pdisp) { - return nv50_disp_new_(&gk104_disp, device, type, inst, pdisp); + return nvkm_disp_new_(&gk104_disp, device, type, inst, pdisp); } diff --git a/drivers/gpu/drm/nouveau/nvkm/engine/disp/gk110.c b/drivers/gpu/drm/nouveau/nvkm/engine/disp/gk110.c index d4097d3c0858..018a92d6a694 100644 --- a/drivers/gpu/drm/nouveau/nvkm/engine/disp/gk110.c +++ b/drivers/gpu/drm/nouveau/nvkm/engine/disp/gk110.c @@ -30,7 +30,6 @@ static const struct nvkm_disp_func gk110_disp = { - .dtor = nv50_disp_dtor, .oneinit = nv50_disp_oneinit, .init = gf119_disp_init, .fini = gf119_disp_fini, @@ -56,5 +55,5 @@ int gk110_disp_new(struct nvkm_device *device, enum nvkm_subdev_type type, int inst, struct nvkm_disp **pdisp) { - return nv50_disp_new_(&gk110_disp, device, type, inst, pdisp); + return nvkm_disp_new_(&gk110_disp, device, type, inst, pdisp); } diff --git a/drivers/gpu/drm/nouveau/nvkm/engine/disp/gm107.c b/drivers/gpu/drm/nouveau/nvkm/engine/disp/gm107.c index 9a0a519e280f..301d7a9692c8 100644 --- a/drivers/gpu/drm/nouveau/nvkm/engine/disp/gm107.c +++ b/drivers/gpu/drm/nouveau/nvkm/engine/disp/gm107.c @@ -86,7 +86,6 @@ gm107_sor_new(struct nvkm_disp *disp, int id) static const struct nvkm_disp_func gm107_disp = { - .dtor = nv50_disp_dtor, .oneinit = nv50_disp_oneinit, .init = gf119_disp_init, .fini = gf119_disp_fini, @@ -112,5 +111,5 @@ int gm107_disp_new(struct nvkm_device *device, enum nvkm_subdev_type type, int inst, struct nvkm_disp **pdisp) { - return nv50_disp_new_(&gm107_disp, device, type, inst, pdisp); + return nvkm_disp_new_(&gm107_disp, device, type, inst, pdisp); } diff --git a/drivers/gpu/drm/nouveau/nvkm/engine/disp/gm200.c b/drivers/gpu/drm/nouveau/nvkm/engine/disp/gm200.c index 242c939e5715..c65d85b4299e 100644 --- a/drivers/gpu/drm/nouveau/nvkm/engine/disp/gm200.c +++ b/drivers/gpu/drm/nouveau/nvkm/engine/disp/gm200.c @@ -183,7 +183,6 @@ gm200_sor_new(struct nvkm_disp *disp, int id) static const struct nvkm_disp_func gm200_disp = { - .dtor = nv50_disp_dtor, .oneinit = nv50_disp_oneinit, .init = gf119_disp_init, .fini = gf119_disp_fini, @@ -209,5 +208,5 @@ int gm200_disp_new(struct nvkm_device *device, enum nvkm_subdev_type type, int inst, struct nvkm_disp **pdisp) { - return nv50_disp_new_(&gm200_disp, device, type, inst, pdisp); + return nvkm_disp_new_(&gm200_disp, device, type, inst, pdisp); } diff --git a/drivers/gpu/drm/nouveau/nvkm/engine/disp/gp100.c b/drivers/gpu/drm/nouveau/nvkm/engine/disp/gp100.c index 8b9effddbabd..603b7188f1cf 100644 --- a/drivers/gpu/drm/nouveau/nvkm/engine/disp/gp100.c +++ b/drivers/gpu/drm/nouveau/nvkm/engine/disp/gp100.c @@ -101,7 +101,6 @@ gp100_sor_new(struct nvkm_disp *disp, int id) static const struct nvkm_disp_func gp100_disp = { - .dtor = nv50_disp_dtor, .oneinit = nv50_disp_oneinit, .init = gf119_disp_init, .fini = gf119_disp_fini, @@ -126,5 +125,5 @@ int gp100_disp_new(struct nvkm_device *device, enum nvkm_subdev_type type, int inst, struct nvkm_disp **pdisp) { - return nv50_disp_new_(&gp100_disp, device, type, inst, pdisp); + return nvkm_disp_new_(&gp100_disp, device, type, inst, pdisp); } diff --git a/drivers/gpu/drm/nouveau/nvkm/engine/disp/gp102.c b/drivers/gpu/drm/nouveau/nvkm/engine/disp/gp102.c index 5b8ca2d9eefa..5cafd7ce5382 100644 --- a/drivers/gpu/drm/nouveau/nvkm/engine/disp/gp102.c +++ b/drivers/gpu/drm/nouveau/nvkm/engine/disp/gp102.c @@ -172,7 +172,6 @@ gp102_disp_intr_error(struct nvkm_disp *disp, int chid) static const struct nvkm_disp_func gp102_disp = { - .dtor = nv50_disp_dtor, .oneinit = nv50_disp_oneinit, .init = gf119_disp_init, .fini = gf119_disp_fini, @@ -197,5 +196,5 @@ int gp102_disp_new(struct nvkm_device *device, enum nvkm_subdev_type type, int inst, struct nvkm_disp **pdisp) { - return nv50_disp_new_(&gp102_disp, device, type, inst, pdisp); + return nvkm_disp_new_(&gp102_disp, device, type, inst, pdisp); } diff --git a/drivers/gpu/drm/nouveau/nvkm/engine/disp/gt200.c b/drivers/gpu/drm/nouveau/nvkm/engine/disp/gt200.c index d7f9d141c091..31b5fd32e03a 100644 --- a/drivers/gpu/drm/nouveau/nvkm/engine/disp/gt200.c +++ b/drivers/gpu/drm/nouveau/nvkm/engine/disp/gt200.c @@ -80,7 +80,6 @@ gt200_disp_ovly_new(const struct nvkm_oclass *oclass, void *argv, u32 argc, static const struct nvkm_disp_func gt200_disp = { - .dtor = nv50_disp_dtor, .oneinit = nv50_disp_oneinit, .init = nv50_disp_init, .fini = nv50_disp_fini, @@ -106,5 +105,5 @@ int gt200_disp_new(struct nvkm_device *device, enum nvkm_subdev_type type, int inst, struct nvkm_disp **pdisp) { - return nv50_disp_new_(>200_disp, device, type, inst, pdisp); + return nvkm_disp_new_(>200_disp, device, type, inst, pdisp); } diff --git a/drivers/gpu/drm/nouveau/nvkm/engine/disp/gt215.c b/drivers/gpu/drm/nouveau/nvkm/engine/disp/gt215.c index 42cc17d7116a..98d99e1c01b2 100644 --- a/drivers/gpu/drm/nouveau/nvkm/engine/disp/gt215.c +++ b/drivers/gpu/drm/nouveau/nvkm/engine/disp/gt215.c @@ -173,7 +173,6 @@ gt215_sor_new(struct nvkm_disp *disp, int id) static const struct nvkm_disp_func gt215_disp = { - .dtor = nv50_disp_dtor, .oneinit = nv50_disp_oneinit, .init = nv50_disp_init, .fini = nv50_disp_fini, @@ -199,5 +198,5 @@ int gt215_disp_new(struct nvkm_device *device, enum nvkm_subdev_type type, int inst, struct nvkm_disp **pdisp) { - return nv50_disp_new_(>215_disp, device, type, inst, pdisp); + return nvkm_disp_new_(>215_disp, device, type, inst, pdisp); } diff --git a/drivers/gpu/drm/nouveau/nvkm/engine/disp/gv100.c b/drivers/gpu/drm/nouveau/nvkm/engine/disp/gv100.c index bb61ba6a2a24..18c40e398ea5 100644 --- a/drivers/gpu/drm/nouveau/nvkm/engine/disp/gv100.c +++ b/drivers/gpu/drm/nouveau/nvkm/engine/disp/gv100.c @@ -1285,7 +1285,6 @@ gv100_disp_init(struct nvkm_disp *disp) static const struct nvkm_disp_func gv100_disp = { - .dtor = nv50_disp_dtor, .oneinit = nv50_disp_oneinit, .init = gv100_disp_init, .fini = gv100_disp_fini, @@ -1311,5 +1310,5 @@ int gv100_disp_new(struct nvkm_device *device, enum nvkm_subdev_type type, int inst, struct nvkm_disp **pdisp) { - return nv50_disp_new_(&gv100_disp, device, type, inst, pdisp); + return nvkm_disp_new_(&gv100_disp, device, type, inst, pdisp); } diff --git a/drivers/gpu/drm/nouveau/nvkm/engine/disp/mcp77.c b/drivers/gpu/drm/nouveau/nvkm/engine/disp/mcp77.c index e23e3b80817f..fb8bfb98c105 100644 --- a/drivers/gpu/drm/nouveau/nvkm/engine/disp/mcp77.c +++ b/drivers/gpu/drm/nouveau/nvkm/engine/disp/mcp77.c @@ -54,7 +54,6 @@ mcp77_sor_new(struct nvkm_disp *disp, int id) static const struct nvkm_disp_func mcp77_disp = { - .dtor = nv50_disp_dtor, .oneinit = nv50_disp_oneinit, .init = nv50_disp_init, .fini = nv50_disp_fini, @@ -80,5 +79,5 @@ int mcp77_disp_new(struct nvkm_device *device, enum nvkm_subdev_type type, int inst, struct nvkm_disp **pdisp) { - return nv50_disp_new_(&mcp77_disp, device, type, inst, pdisp); + return nvkm_disp_new_(&mcp77_disp, device, type, inst, pdisp); } diff --git a/drivers/gpu/drm/nouveau/nvkm/engine/disp/mcp89.c b/drivers/gpu/drm/nouveau/nvkm/engine/disp/mcp89.c index 2dc99897dc67..8b9e97665805 100644 --- a/drivers/gpu/drm/nouveau/nvkm/engine/disp/mcp89.c +++ b/drivers/gpu/drm/nouveau/nvkm/engine/disp/mcp89.c @@ -59,7 +59,6 @@ mcp89_sor_new(struct nvkm_disp *disp, int id) static const struct nvkm_disp_func mcp89_disp = { - .dtor = nv50_disp_dtor, .oneinit = nv50_disp_oneinit, .init = nv50_disp_init, .fini = nv50_disp_fini, @@ -85,5 +84,5 @@ int mcp89_disp_new(struct nvkm_device *device, enum nvkm_subdev_type type, int inst, struct nvkm_disp **pdisp) { - return nv50_disp_new_(&mcp89_disp, device, type, inst, pdisp); + return nvkm_disp_new_(&mcp89_disp, device, type, inst, pdisp); } diff --git a/drivers/gpu/drm/nouveau/nvkm/engine/disp/nv50.c b/drivers/gpu/drm/nouveau/nvkm/engine/disp/nv50.c index 056daf34e62c..1a3151528e7e 100644 --- a/drivers/gpu/drm/nouveau/nvkm/engine/disp/nv50.c +++ b/drivers/gpu/drm/nouveau/nvkm/engine/disp/nv50.c @@ -1788,22 +1788,8 @@ nv50_disp_oneinit(struct nvkm_disp *disp) 0x1000, 0, disp->inst, &disp->ramht); } -void * -nv50_disp_dtor(struct nvkm_disp *disp) -{ - nvkm_ramht_del(&disp->ramht); - nvkm_gpuobj_del(&disp->inst); - - nvkm_event_fini(&disp->uevent); - if (disp->super.wq) - destroy_workqueue(disp->super.wq); - - return disp; -} - static const struct nvkm_disp_func nv50_disp = { - .dtor = nv50_disp_dtor, .oneinit = nv50_disp_oneinit, .init = nv50_disp_init, .fini = nv50_disp_fini, @@ -1825,35 +1811,9 @@ nv50_disp = { } }; -int -nv50_disp_new_(const struct nvkm_disp_func *func, struct nvkm_device *device, - enum nvkm_subdev_type type, int inst, struct nvkm_disp **pdisp) -{ - struct nvkm_disp *disp; - int ret; - - if (!(disp = kzalloc(sizeof(*disp), GFP_KERNEL))) - return -ENOMEM; - disp->func = func; - *pdisp = disp; - - ret = nvkm_disp_ctor(func, device, type, inst, disp); - if (ret) - return ret; - - disp->super.wq = create_singlethread_workqueue("nvkm-disp"); - if (!disp->super.wq) - return -ENOMEM; - - INIT_WORK(&disp->super.work, func->super); - - return nvkm_event_init(func->uevent, 1, ARRAY_SIZE(disp->chan), - &disp->uevent); -} - int nv50_disp_new(struct nvkm_device *device, enum nvkm_subdev_type type, int inst, struct nvkm_disp **pdisp) { - return nv50_disp_new_(&nv50_disp, device, type, inst, pdisp); + return nvkm_disp_new_(&nv50_disp, device, type, inst, pdisp); } diff --git a/drivers/gpu/drm/nouveau/nvkm/engine/disp/priv.h b/drivers/gpu/drm/nouveau/nvkm/engine/disp/priv.h index 472ff32d7879..a73b453c6302 100644 --- a/drivers/gpu/drm/nouveau/nvkm/engine/disp/priv.h +++ b/drivers/gpu/drm/nouveau/nvkm/engine/disp/priv.h @@ -15,7 +15,6 @@ int nvkm_disp_new_(const struct nvkm_disp_func *, struct nvkm_device *, enum nvk void nvkm_disp_vblank(struct nvkm_disp *, int head); struct nvkm_disp_func { - void *(*dtor)(struct nvkm_disp *); int (*oneinit)(struct nvkm_disp *); int (*init)(struct nvkm_disp *); void (*fini)(struct nvkm_disp *); @@ -46,9 +45,6 @@ int nvkm_disp_ntfy(struct nvkm_object *, u32, struct nvkm_event **); int nv04_disp_mthd(struct nvkm_object *, u32, void *, u32); int nv50_disp_root_mthd_(struct nvkm_object *, u32, void *, u32); -int nv50_disp_new_(const struct nvkm_disp_func *, struct nvkm_device *, enum nvkm_subdev_type, int, - struct nvkm_disp **); -void *nv50_disp_dtor(struct nvkm_disp *); int nv50_disp_oneinit(struct nvkm_disp *); int nv50_disp_init(struct nvkm_disp *); void nv50_disp_fini(struct nvkm_disp *); diff --git a/drivers/gpu/drm/nouveau/nvkm/engine/disp/tu102.c b/drivers/gpu/drm/nouveau/nvkm/engine/disp/tu102.c index 2c0a10d6af8c..b9cd706f5451 100644 --- a/drivers/gpu/drm/nouveau/nvkm/engine/disp/tu102.c +++ b/drivers/gpu/drm/nouveau/nvkm/engine/disp/tu102.c @@ -238,7 +238,6 @@ tu102_disp_init(struct nvkm_disp *disp) static const struct nvkm_disp_func tu102_disp = { - .dtor = nv50_disp_dtor, .oneinit = nv50_disp_oneinit, .init = tu102_disp_init, .fini = gv100_disp_fini, @@ -264,5 +263,5 @@ int tu102_disp_new(struct nvkm_device *device, enum nvkm_subdev_type type, int inst, struct nvkm_disp **pdisp) { - return nv50_disp_new_(&tu102_disp, device, type, inst, pdisp); + return nvkm_disp_new_(&tu102_disp, device, type, inst, pdisp); } -- cgit v1.2.3