/linux-6.3-rc2/drivers/gpu/drm/nouveau/nvkm/core/ |
A D | ioctl.c | 58 oclass->base.minver = 0; in nvkm_ioctl_sclass_() 59 oclass->base.maxver = 0; in nvkm_ioctl_sclass_() 60 oclass->base.oclass = NVIF_CLASS_EVENT; in nvkm_ioctl_sclass_() 89 args->v0.oclass[i].oclass = oclass.base.oclass; in nvkm_ioctl_sclass() 90 args->v0.oclass[i].minver = oclass.base.minver; in nvkm_ioctl_sclass() 91 args->v0.oclass[i].maxver = oclass.base.maxver; in nvkm_ioctl_sclass() 128 memset(&oclass, 0x00, sizeof(oclass)); in nvkm_ioctl_new() 138 } while (oclass.base.oclass != args->v0.oclass); in nvkm_ioctl_new() 140 if (oclass.engine) { in nvkm_ioctl_new() 141 oclass.engine = nvkm_engine_ref(oclass.engine); in nvkm_ioctl_new() [all …]
|
A D | client.c | 52 client->object.client = oclass->client; in nvkm_uclient_new() 53 client->object.handle = oclass->handle; in nvkm_uclient_new() 54 client->object.route = oclass->route; in nvkm_uclient_new() 55 client->object.token = oclass->token; in nvkm_uclient_new() 57 client->debug = oclass->client->debug; in nvkm_uclient_new() 64 .oclass = NVIF_CLASS_CLIENT, 126 return oclass->base.ctor(oclass, data, size, pobject); in nvkm_client_child_new() 131 struct nvkm_oclass *oclass) in nvkm_client_child_get() argument 142 oclass->ctor = nvkm_client_child_new; in nvkm_client_child_get() 143 oclass->base = *sclass; in nvkm_client_child_get() [all …]
|
A D | object.c | 298 object->client = oclass->client; in nvkm_object_ctor() 299 object->engine = nvkm_engine_ref(oclass->engine); in nvkm_object_ctor() 300 object->oclass = oclass->base.oclass; in nvkm_object_ctor() 301 object->handle = oclass->handle; in nvkm_object_ctor() 302 object->route = oclass->route; in nvkm_object_ctor() 303 object->token = oclass->token; in nvkm_object_ctor() 304 object->object = oclass->object; in nvkm_object_ctor() 313 const struct nvkm_oclass *oclass, void *data, u32 size, in nvkm_object_new_() argument 319 nvkm_object_ctor(func, oclass, *pobject); in nvkm_object_new_() 334 oclass->base.func ? oclass->base.func : &nvkm_object_func; in nvkm_object_new() [all …]
|
A D | oproxy.c | 104 struct nvkm_oclass *oclass) in nvkm_oproxy_sclass() argument 107 oclass->parent = oproxy->object; in nvkm_oproxy_sclass() 110 return oproxy->object->func->sclass(oproxy->object, index, oclass); in nvkm_oproxy_sclass() 213 const struct nvkm_oclass *oclass, struct nvkm_oproxy *oproxy) in nvkm_oproxy_ctor() argument 215 nvkm_object_ctor(&nvkm_oproxy_func, oclass, &oproxy->base); in nvkm_oproxy_ctor() 221 const struct nvkm_oclass *oclass, struct nvkm_oproxy **poproxy) in nvkm_oproxy_new_() argument 225 nvkm_oproxy_ctor(func, oclass, *poproxy); in nvkm_oproxy_new_()
|
/linux-6.3-rc2/drivers/gpu/drm/nouveau/nvkm/engine/fifo/ |
A D | uchan.c | 183 .base = oclass->base, in nvkm_uchan_object_new() 184 .engn = oclass->engn, in nvkm_uchan_object_new() 185 .handle = oclass->handle, in nvkm_uchan_object_new() 186 .object = oclass->object, in nvkm_uchan_object_new() 187 .client = oclass->client, in nvkm_uchan_object_new() 222 oclass->engine = engine; in nvkm_uchan_sclass() 223 oclass->base.oclass = 0; in nvkm_uchan_sclass() 227 if (oclass->base.oclass) { in nvkm_uchan_sclass() 228 if (!oclass->base.ctor) in nvkm_uchan_sclass() 229 oclass->base.ctor = nvkm_object_new; in nvkm_uchan_sclass() [all …]
|
A D | ucgrp.c | 37 nvkm_ucgrp_chan_new(const struct nvkm_oclass *oclass, void *argv, u32 argc, in nvkm_ucgrp_chan_new() argument 40 struct nvkm_cgrp *cgrp = nvkm_ucgrp(oclass->parent)->cgrp; in nvkm_ucgrp_chan_new() 42 return nvkm_uchan_new(cgrp->runl->fifo, cgrp, oclass, argv, argc, pobject); in nvkm_ucgrp_chan_new() 46 nvkm_ucgrp_sclass(struct nvkm_object *object, int index, struct nvkm_oclass *oclass) in nvkm_ucgrp_sclass() argument 54 if (chan->user.oclass) { in nvkm_ucgrp_sclass() 56 oclass->base = chan->user; in nvkm_ucgrp_sclass() 57 oclass->ctor = nvkm_ucgrp_chan_new; in nvkm_ucgrp_sclass() 81 nvkm_ucgrp_new(struct nvkm_fifo *fifo, const struct nvkm_oclass *oclass, void *argv, u32 argc, in nvkm_ucgrp_new() argument 102 vmm = nvkm_uvmm_search(oclass->client, args->v0.vmm); in nvkm_ucgrp_new() 112 nvkm_object_ctor(&nvkm_ucgrp, oclass, &ucgrp->object); in nvkm_ucgrp_new()
|
A D | base.c | 76 struct nvkm_fifo *fifo = nvkm_fifo(oclass->engine); in nvkm_fifo_class_new() 78 if (oclass->engn == &fifo->func->cgrp.user) in nvkm_fifo_class_new() 79 return nvkm_ucgrp_new(fifo, oclass, argv, argc, pobject); in nvkm_fifo_class_new() 81 if (oclass->engn == &fifo->func->chan.user) in nvkm_fifo_class_new() 96 struct nvkm_fifo *fifo = nvkm_fifo(oclass->engine); in nvkm_fifo_class_get() 102 if (cgrp->user.oclass) { in nvkm_fifo_class_get() 104 oclass->base = cgrp->user; in nvkm_fifo_class_get() 105 oclass->engn = &fifo->func->cgrp.user; in nvkm_fifo_class_get() 112 if (chan->user.oclass) { in nvkm_fifo_class_get() 114 oclass->base = chan->user; in nvkm_fifo_class_get() [all …]
|
/linux-6.3-rc2/drivers/gpu/drm/nouveau/nvkm/engine/disp/ |
A D | chan.c | 104 struct nvkm_disp_chan *chan = nvkm_disp_chan(oclass->parent); in nvkm_disp_chan_child_new() 107 const struct nvkm_device_oclass *sclass = oclass->priv; in nvkm_disp_chan_child_new() 133 const struct nvkm_device_oclass *oclass = NULL; in nvkm_disp_chan_child_get() local 141 sclass->engine->func->base.sclass(sclass, index, &oclass); in nvkm_disp_chan_child_get() 142 if (oclass) { in nvkm_disp_chan_child_get() 144 sclass->priv = oclass; in nvkm_disp_chan_child_get() 208 if (disp->func->user[i].base.oclass == oclass->base.oclass) { in nvkm_disp_chan_new_() 226 nvkm_object_ctor(&nvkm_disp_chan, oclass, &chan->object); in nvkm_disp_chan_new_() 254 struct nvkm_disp *disp = nvkm_udisp(oclass->parent); in nvkm_disp_wndw_new() 263 struct nvkm_disp *disp = nvkm_udisp(oclass->parent); in nvkm_disp_chan_new() [all …]
|
/linux-6.3-rc2/drivers/gpu/drm/nouveau/nvkm/engine/sw/ |
A D | base.c | 53 struct nvkm_sw_chan *chan = nvkm_sw_chan(oclass->parent); in nvkm_sw_oclass_new() 54 const struct nvkm_sw_chan_sclass *sclass = oclass->engn; in nvkm_sw_oclass_new() 55 return sclass->ctor(chan, oclass, data, size, pobject); in nvkm_sw_oclass_new() 59 nvkm_sw_oclass_get(struct nvkm_oclass *oclass, int index) in nvkm_sw_oclass_get() argument 61 struct nvkm_sw *sw = nvkm_sw(oclass->engine); in nvkm_sw_oclass_get() 66 oclass->engn = &sw->func->sclass[index]; in nvkm_sw_oclass_get() 67 oclass->base = sw->func->sclass[index].base; in nvkm_sw_oclass_get() 68 oclass->base.ctor = nvkm_sw_oclass_new; in nvkm_sw_oclass_get() 78 const struct nvkm_oclass *oclass, in nvkm_sw_cclass_get() argument 81 struct nvkm_sw *sw = nvkm_sw(oclass->engine); in nvkm_sw_cclass_get() [all …]
|
A D | nvsw.c | 62 const struct nvkm_oclass *oclass, void *data, u32 size, in nvkm_nvsw_new_() argument 71 nvkm_object_ctor(&nvkm_nvsw_, oclass, &nvsw->object); in nvkm_nvsw_new_() 82 nvkm_nvsw_new(struct nvkm_sw_chan *chan, const struct nvkm_oclass *oclass, in nvkm_nvsw_new() argument 85 return nvkm_nvsw_new_(&nvkm_nvsw, chan, oclass, data, size, pobject); in nvkm_nvsw_new()
|
A D | nv04.c | 77 nv04_nvsw_new(struct nvkm_sw_chan *chan, const struct nvkm_oclass *oclass, in nv04_nvsw_new() argument 80 return nvkm_nvsw_new_(&nv04_nvsw, chan, oclass, data, size, pobject); in nv04_nvsw_new() 110 const struct nvkm_oclass *oclass, struct nvkm_object **pobject) in nv04_sw_chan_new() argument 119 return nvkm_sw_chan_ctor(&nv04_sw_chan, sw, fifo, oclass, &chan->base); in nv04_sw_chan_new()
|
/linux-6.3-rc2/drivers/gpu/drm/nouveau/nvkm/engine/dma/ |
A D | base.c | 33 const struct nvkm_oclass *oclass, void *data, u32 size, in nvkm_dma_oclass_new() argument 36 struct nvkm_dma *dma = nvkm_dma(oclass->engine); in nvkm_dma_oclass_new() 40 ret = dma->func->class_new(dma, oclass, data, size, &dmaobj); in nvkm_dma_oclass_new() 52 nvkm_dma_oclass_fifo_new(const struct nvkm_oclass *oclass, void *data, u32 size, in nvkm_dma_oclass_fifo_new() argument 55 return nvkm_dma_oclass_new(oclass->engine->subdev.device, in nvkm_dma_oclass_fifo_new() 56 oclass, data, size, pobject); in nvkm_dma_oclass_fifo_new() 72 const struct nvkm_sclass *oclass = &nvkm_dma_sclass[index]; in nvkm_dma_oclass_base_get() local 73 sclass->base = oclass[0]; in nvkm_dma_oclass_base_get() 74 sclass->engn = oclass; in nvkm_dma_oclass_base_get() 82 nvkm_dma_oclass_fifo_get(struct nvkm_oclass *oclass, int index) in nvkm_dma_oclass_fifo_get() argument [all …]
|
A D | usergf100.c | 70 gf100_dmaobj_new(struct nvkm_dma *dma, const struct nvkm_oclass *oclass, in gf100_dmaobj_new() argument 76 struct nvkm_object *parent = oclass->parent; in gf100_dmaobj_new() 85 ret = nvkm_dmaobj_ctor(&gf100_dmaobj_func, dma, oclass, in gf100_dmaobj_new() 117 dmaobj->flags0 |= (kind << 22) | (user << 20) | oclass->base.oclass; in gf100_dmaobj_new()
|
A D | usernv50.c | 70 nv50_dmaobj_new(struct nvkm_dma *dma, const struct nvkm_oclass *oclass, in nv50_dmaobj_new() argument 76 struct nvkm_object *parent = oclass->parent; in nv50_dmaobj_new() 85 ret = nvkm_dmaobj_ctor(&nv50_dmaobj_func, dma, oclass, in nv50_dmaobj_new() 122 oclass->base.oclass; in nv50_dmaobj_new()
|
/linux-6.3-rc2/drivers/gpu/drm/nouveau/nvkm/engine/gr/ |
A D | base.c | 89 nvkm_gr_oclass_get(struct nvkm_oclass *oclass, int index) in nvkm_gr_oclass_get() argument 91 struct nvkm_gr *gr = nvkm_gr(oclass->engine); in nvkm_gr_oclass_get() 95 int ret = gr->func->object_get(gr, index, &oclass->base); in nvkm_gr_oclass_get() 96 if (oclass->base.oclass) in nvkm_gr_oclass_get() 101 while (gr->func->sclass[c].oclass) { in nvkm_gr_oclass_get() 103 oclass->base = gr->func->sclass[index]; in nvkm_gr_oclass_get() 113 const struct nvkm_oclass *oclass, in nvkm_gr_cclass_new() argument 116 struct nvkm_gr *gr = nvkm_gr(oclass->engine); in nvkm_gr_cclass_new() 118 return gr->func->chan_new(gr, chan, oclass, pobject); in nvkm_gr_cclass_new()
|
/linux-6.3-rc2/drivers/gpu/drm/nouveau/dispnv50/ |
A D | oimm507b.c | 28 s32 oclass, struct nv50_wndw *wndw) in oimm507b_init_() argument 36 ret = nvif_object_ctor(&disp->disp->object, "kmsOvim", 0, oclass, in oimm507b_init_() 39 NV_ERROR(drm, "oimm%04x allocation failed: %d\n", oclass, ret); in oimm507b_init_() 49 oimm507b_init(struct nouveau_drm *drm, s32 oclass, struct nv50_wndw *wndw) in oimm507b_init() argument 51 return oimm507b_init_(&curs507a, drm, oclass, wndw); in oimm507b_init()
|
A D | wimmc37b.c | 69 s32 oclass, struct nv50_wndw *wndw) in wimmc37b_init_() argument 78 &oclass, 0, &args, sizeof(args), -1, in wimmc37b_init_() 81 NV_ERROR(drm, "wimm%04x allocation failed: %d\n", oclass, ret); in wimmc37b_init_() 91 wimmc37b_init(struct nouveau_drm *drm, s32 oclass, struct nv50_wndw *wndw) in wimmc37b_init() argument 93 return wimmc37b_init_(&wimmc37b, drm, oclass, wndw); in wimmc37b_init()
|
/linux-6.3-rc2/drivers/gpu/drm/nouveau/nvkm/subdev/mmu/ |
A D | ummu.c | 33 struct nvkm_oclass *oclass) in nvkm_ummu_sclass() argument 37 if (mmu->func->mem.user.oclass) { in nvkm_ummu_sclass() 39 oclass->base = mmu->func->mem.user; in nvkm_ummu_sclass() 40 oclass->ctor = nvkm_umem_new; in nvkm_ummu_sclass() 45 if (mmu->func->vmm.user.oclass) { in nvkm_ummu_sclass() 47 oclass->base = mmu->func->vmm.user; in nvkm_ummu_sclass() 48 oclass->ctor = nvkm_uvmm_new; in nvkm_ummu_sclass() 153 nvkm_ummu_new(struct nvkm_device *device, const struct nvkm_oclass *oclass, in nvkm_ummu_new() argument 177 nvkm_object_ctor(&nvkm_ummu, oclass, &ummu->object); in nvkm_ummu_new()
|
/linux-6.3-rc2/drivers/gpu/drm/nouveau/include/nvif/ |
A D | object.h | 7 s32 oclass; member 17 s32 oclass; member 32 s32 oclass, void *, u32, struct nvif_object *); 81 s32 oclass; member 94 for (i = 0; ret < 0 && mclass[i].oclass; i++) { \ 96 if (mclass[i].oclass == sclass[j].oclass && \ 114 for (_cid = 0; _mclass[_cid].oclass; _cid++) { \ 115 if (_mclass[_cid].oclass == _oclass) \ 118 _cid = _mclass[_cid].oclass ? _cid : -ENOSYS; \
|
/linux-6.3-rc2/drivers/gpu/drm/nouveau/nvif/ |
A D | disp.c | 36 nvif_disp_ctor(struct nvif_device *device, const char *name, s32 oclass, struct nvif_disp *disp) in nvif_disp_ctor() argument 60 cid = nvif_sclass(&device->object, disps, oclass); in nvif_disp_ctor() 63 NVIF_ERRON(cid, &device->object, "[NEW disp%04x] not supported", oclass); in nvif_disp_ctor() 70 disps[cid].oclass, &args, sizeof(args), &disp->object); in nvif_disp_ctor() 71 NVIF_ERRON(ret, &device->object, "[NEW disp%04x]", disps[cid].oclass); in nvif_disp_ctor()
|
A D | object.c | 68 size = sizeof(*args) + cnt * sizeof(args->sclass.oclass[0]); in nvif_object_sclass_get() 88 (*psclass)[i].oclass = args->sclass.oclass[i].oclass; in nvif_object_sclass_get() 89 (*psclass)[i].minver = args->sclass.oclass[i].minver; in nvif_object_sclass_get() 90 (*psclass)[i].maxver = args->sclass.oclass[i].maxver; in nvif_object_sclass_get() 263 s32 oclass, void *data, u32 size, struct nvif_object *object) in nvif_object_ctor() argument 274 object->oclass = oclass; in nvif_object_ctor() 293 args->new.oclass = oclass; in nvif_object_ctor()
|
A D | mem.c | 48 nvif_mem_ctor_type(struct nvif_mmu *mmu, const char *name, s32 oclass, in nvif_mem_ctor_type() argument 72 ret = nvif_object_ctor(&mmu->object, name ? name : "nvifMem", 0, oclass, in nvif_mem_ctor_type() 88 nvif_mem_ctor(struct nvif_mmu *mmu, const char *name, s32 oclass, u8 type, in nvif_mem_ctor() argument 97 ret = nvif_mem_ctor_type(mmu, name, oclass, i, page, in nvif_mem_ctor()
|
/linux-6.3-rc2/drivers/gpu/drm/nouveau/nvkm/engine/device/ |
A D | user.c | 307 nvkm_udevice_child_new(const struct nvkm_oclass *oclass, in nvkm_udevice_child_new() argument 311 const struct nvkm_device_oclass *sclass = oclass->priv; in nvkm_udevice_child_new() 317 struct nvkm_oclass *oclass) in nvkm_udevice_child_get() argument 333 oclass->engine = engine; in nvkm_udevice_child_get() 350 oclass->base = sclass->base; in nvkm_udevice_child_get() 351 oclass->engine = NULL; in nvkm_udevice_child_get() 354 oclass->ctor = nvkm_udevice_child_new; in nvkm_udevice_child_get() 355 oclass->priv = sclass; in nvkm_udevice_child_get() 389 struct nvkm_client *client = oclass->client; in nvkm_udevice_new() 410 nvkm_object_ctor(func, oclass, &udev->object); in nvkm_udevice_new() [all …]
|
/linux-6.3-rc2/drivers/gpu/drm/nouveau/ |
A D | nouveau_abi16.c | 456 s32 oclass = 0; in nouveau_abi16_ioctl_grobj_alloc() local 476 for (i = 0; !oclass && i < ret; i++) { in nouveau_abi16_ioctl_grobj_alloc() 477 switch (sclass[i].oclass) { in nouveau_abi16_ioctl_grobj_alloc() 482 oclass = sclass[i].oclass; in nouveau_abi16_ioctl_grobj_alloc() 492 if ((sclass[i].oclass & 0x00ff) == 0x00b1) { in nouveau_abi16_ioctl_grobj_alloc() 493 oclass = sclass[i].oclass; in nouveau_abi16_ioctl_grobj_alloc() 502 oclass = sclass[i].oclass; in nouveau_abi16_ioctl_grobj_alloc() 511 oclass = sclass[i].oclass; in nouveau_abi16_ioctl_grobj_alloc() 516 oclass = init->class; in nouveau_abi16_ioctl_grobj_alloc() 520 if (!oclass) in nouveau_abi16_ioctl_grobj_alloc() [all …]
|
/linux-6.3-rc2/drivers/gpu/drm/nouveau/nvkm/engine/pm/ |
A D | base.c | 374 struct nvkm_object *parent = oclass->parent; in nvkm_perfdom_new_() 418 nvkm_object_ctor(&nvkm_perfdom, oclass, &dom->object); in nvkm_perfdom_new_() 614 struct nvkm_oclass *oclass) in nvkm_perfmon_child_get() argument 617 oclass->base.oclass = NVIF_CLASS_PERFDOM; in nvkm_perfmon_child_get() 618 oclass->base.minver = 0; in nvkm_perfmon_child_get() 619 oclass->base.maxver = 0; in nvkm_perfmon_child_get() 620 oclass->ctor = nvkm_perfmon_child_new; in nvkm_perfmon_child_get() 667 struct nvkm_pm *pm = nvkm_pm(oclass->engine); in nvkm_pm_oclass_new() 670 ret = nvkm_perfmon_new(pm, oclass, data, size, pobject); in nvkm_pm_oclass_new() 684 .base.oclass = NVIF_CLASS_PERFMON, [all …]
|