| /netbsd-src/sys/external/bsd/drm2/dist/drm/nouveau/nvkm/core/ |
| H A D | nouveau_nvkm_core_ioctl.c | 61 struct nvkm_oclass oclass = { .client = client }; in nvkm_ioctl_sclass() local 68 if (size != args->v0.count * sizeof(args->v0.oclass[0])) in nvkm_ioctl_sclass() 72 object->func->sclass(object, i, &oclass) >= 0) { in nvkm_ioctl_sclass() 74 args->v0.oclass[i].oclass = oclass.base.oclass; in nvkm_ioctl_sclass() 75 args->v0.oclass[i].minver = oclass.base.minver; in nvkm_ioctl_sclass() 76 args->v0.oclass[i].maxver = oclass.base.maxver; in nvkm_ioctl_sclass() 95 struct nvkm_oclass oclass; in nvkm_ioctl_new() local 102 args->v0.version, args->v0.handle, args->v0.oclass, in nvkm_ioctl_new() 113 memset(&oclass, 0x00, sizeof(oclass)); in nvkm_ioctl_new() 114 oclass.handle = args->v0.handle; in nvkm_ioctl_new() [all …]
|
| H A D | nouveau_nvkm_core_client.c | 40 nvkm_uclient_new(const struct nvkm_oclass *oclass, void *argv, u32 argc, in nvkm_uclient_new() argument 52 NULL, oclass->client->ntfy, &client); in nvkm_uclient_new() 58 client->object.client = oclass->client; in nvkm_uclient_new() 59 client->object.handle = oclass->handle; in nvkm_uclient_new() 60 client->object.route = oclass->route; in nvkm_uclient_new() 61 client->object.token = oclass->token; in nvkm_uclient_new() 62 client->object.object = oclass->object; in nvkm_uclient_new() 63 client->debug = oclass->client->debug; in nvkm_uclient_new() 70 .oclass = NVIF_CLASS_CLIENT, 236 nvkm_client_child_new(const struct nvkm_oclass *oclass, in nvkm_client_child_new() argument [all …]
|
| H A D | nouveau_nvkm_core_object.c | 336 const struct nvkm_oclass *oclass, struct nvkm_object *object) in nvkm_object_ctor() argument 339 object->client = oclass->client; in nvkm_object_ctor() 340 object->engine = nvkm_engine_ref(oclass->engine); in nvkm_object_ctor() 341 object->oclass = oclass->base.oclass; in nvkm_object_ctor() 342 object->handle = oclass->handle; in nvkm_object_ctor() 343 object->route = oclass->route; in nvkm_object_ctor() 344 object->token = oclass->token; in nvkm_object_ctor() 345 object->object = oclass->object; in nvkm_object_ctor() 358 const struct nvkm_oclass *oclass, void *data, u32 size, in nvkm_object_new_() argument 364 nvkm_object_ctor(func, oclass, *pobject); in nvkm_object_new_() [all …]
|
| /netbsd-src/sys/external/bsd/drm2/dist/drm/nouveau/nvkm/engine/sw/ |
| H A D | nouveau_nvkm_engine_sw_base.c | 55 nvkm_sw_oclass_new(const struct nvkm_oclass *oclass, void *data, u32 size, in nvkm_sw_oclass_new() argument 58 struct nvkm_sw_chan *chan = nvkm_sw_chan(oclass->parent); in nvkm_sw_oclass_new() 59 const struct nvkm_sw_chan_sclass *sclass = oclass->engn; in nvkm_sw_oclass_new() 60 return sclass->ctor(chan, oclass, data, size, pobject); in nvkm_sw_oclass_new() 64 nvkm_sw_oclass_get(struct nvkm_oclass *oclass, int index) in nvkm_sw_oclass_get() argument 66 struct nvkm_sw *sw = nvkm_sw(oclass->engine); in nvkm_sw_oclass_get() 71 oclass->engn = &sw->func->sclass[index]; in nvkm_sw_oclass_get() 72 oclass->base = sw->func->sclass[index].base; in nvkm_sw_oclass_get() 73 oclass->base.ctor = nvkm_sw_oclass_new; in nvkm_sw_oclass_get() 83 const struct nvkm_oclass *oclass, in nvkm_sw_cclass_get() argument [all …]
|
| /netbsd-src/sys/external/bsd/drm2/dist/drm/nouveau/nvkm/engine/fifo/ |
| H A D | nouveau_nvkm_engine_fifo_chan.c | 138 nvkm_fifo_chan_child_new(const struct nvkm_oclass *oclass, void *data, u32 size, in nvkm_fifo_chan_child_new() argument 141 struct nvkm_engine *engine = oclass->engine; in nvkm_fifo_chan_child_new() 142 struct nvkm_fifo_chan *chan = nvkm_fifo_chan(oclass->parent); in nvkm_fifo_chan_child_new() 149 nvkm_oproxy_ctor(&nvkm_fifo_chan_child_func, oclass, &object->oproxy); in nvkm_fifo_chan_child_new() 155 .client = oclass->client, in nvkm_fifo_chan_child_new() 156 .engine = oclass->engine, in nvkm_fifo_chan_child_new() 174 ret = chan->func->engine_ctor(chan, oclass->engine, in nvkm_fifo_chan_child_new() 181 ret = oclass->base.ctor(&(const struct nvkm_oclass) { in nvkm_fifo_chan_child_new() 182 .base = oclass->base, in nvkm_fifo_chan_child_new() 183 .engn = oclass->engn, in nvkm_fifo_chan_child_new() [all …]
|
| H A D | nouveau_nvkm_engine_fifo_base.c | 225 const struct nvkm_oclass *oclass, void *data, u32 size, in nvkm_fifo_class_new_() argument 228 struct nvkm_fifo *fifo = nvkm_fifo(oclass->engine); in nvkm_fifo_class_new_() 229 return fifo->func->class_new(fifo, oclass, data, size, pobject); in nvkm_fifo_class_new_() 239 const struct nvkm_oclass *oclass, void *data, u32 size, in nvkm_fifo_class_new() argument 242 const struct nvkm_fifo_chan_oclass *sclass = oclass->engn; in nvkm_fifo_class_new() 243 struct nvkm_fifo *fifo = nvkm_fifo(oclass->engine); in nvkm_fifo_class_new() 244 return sclass->ctor(fifo, oclass, data, size, pobject); in nvkm_fifo_class_new() 253 nvkm_fifo_class_get(struct nvkm_oclass *oclass, int index, in nvkm_fifo_class_get() argument 256 struct nvkm_fifo *fifo = nvkm_fifo(oclass->engine); in nvkm_fifo_class_get() 261 int ret = fifo->func->class_get(fifo, index, oclass); in nvkm_fifo_class_get() [all …]
|
| /netbsd-src/sys/external/bsd/drm2/dist/drm/nouveau/nvkm/engine/dma/ |
| H A D | nouveau_nvkm_engine_dma_base.c | 38 const struct nvkm_oclass *oclass, void *data, u32 size, in nvkm_dma_oclass_new() argument 41 struct nvkm_dma *dma = nvkm_dma(oclass->engine); in nvkm_dma_oclass_new() 45 ret = dma->func->class_new(dma, oclass, data, size, &dmaobj); in nvkm_dma_oclass_new() 57 nvkm_dma_oclass_fifo_new(const struct nvkm_oclass *oclass, void *data, u32 size, in nvkm_dma_oclass_fifo_new() argument 60 return nvkm_dma_oclass_new(oclass->engine->subdev.device, in nvkm_dma_oclass_fifo_new() 61 oclass, data, size, pobject); in nvkm_dma_oclass_fifo_new() 77 const struct nvkm_sclass *oclass = &nvkm_dma_sclass[index]; in nvkm_dma_oclass_base_get() local 78 sclass->base = oclass[0]; in nvkm_dma_oclass_base_get() 79 sclass->engn = oclass; in nvkm_dma_oclass_base_get() 87 nvkm_dma_oclass_fifo_get(struct nvkm_oclass *oclass, int index) in nvkm_dma_oclass_fifo_get() argument [all …]
|
| /netbsd-src/sys/external/bsd/drm2/dist/drm/nouveau/nvkm/engine/gr/ |
| H A D | nouveau_nvkm_engine_gr_base.c | 94 nvkm_gr_oclass_get(struct nvkm_oclass *oclass, int index) in nvkm_gr_oclass_get() argument 96 struct nvkm_gr *gr = nvkm_gr(oclass->engine); in nvkm_gr_oclass_get() 100 int ret = gr->func->object_get(gr, index, &oclass->base); in nvkm_gr_oclass_get() 101 if (oclass->base.oclass) in nvkm_gr_oclass_get() 106 while (gr->func->sclass[c].oclass) { in nvkm_gr_oclass_get() 108 oclass->base = gr->func->sclass[index]; in nvkm_gr_oclass_get() 118 const struct nvkm_oclass *oclass, in nvkm_gr_cclass_new() argument 121 struct nvkm_gr *gr = nvkm_gr(oclass->engine); in nvkm_gr_cclass_new() 123 return gr->func->chan_new(gr, chan, oclass, pobject); in nvkm_gr_cclass_new()
|
| /netbsd-src/sys/external/bsd/drm2/dist/drm/nouveau/nvkm/subdev/mmu/ |
| H A D | nouveau_nvkm_subdev_mmu_ummu.c | 38 struct nvkm_oclass *oclass) in nvkm_ummu_sclass() argument 42 if (mmu->func->mem.user.oclass && oclass->client->super) { in nvkm_ummu_sclass() 44 oclass->base = mmu->func->mem.user; in nvkm_ummu_sclass() 45 oclass->ctor = nvkm_umem_new; in nvkm_ummu_sclass() 50 if (mmu->func->vmm.user.oclass) { in nvkm_ummu_sclass() 52 oclass->base = mmu->func->vmm.user; in nvkm_ummu_sclass() 53 oclass->ctor = nvkm_uvmm_new; in nvkm_ummu_sclass() 158 nvkm_ummu_new(struct nvkm_device *device, const struct nvkm_oclass *oclass, in nvkm_ummu_new() argument 182 nvkm_object_ctor(&nvkm_ummu, oclass, &ummu->object); in nvkm_ummu_new()
|
| /netbsd-src/sys/external/bsd/drm2/dist/drm/nouveau/dispnv50/ |
| H A D | nouveau_dispnv50_oimm507b.c | 33 s32 oclass, struct nv50_wndw *wndw) in oimm507b_init_() argument 41 ret = nvif_object_init(&disp->disp->object, 0, oclass, &args, in oimm507b_init_() 44 NV_ERROR(drm, "oimm%04x allocation failed: %d\n", oclass, ret); in oimm507b_init_() 54 oimm507b_init(struct nouveau_drm *drm, s32 oclass, struct nv50_wndw *wndw) in oimm507b_init() argument 56 return oimm507b_init_(&curs507a, drm, oclass, wndw); in oimm507b_init()
|
| H A D | nouveau_dispnv50_wimmc37b.c | 66 s32 oclass, struct nv50_wndw *wndw) in wimmc37b_init_() argument 76 &oclass, 0, &args, sizeof(args), 0, in wimmc37b_init_() 79 NV_ERROR(drm, "wimm%04x allocation failed: %d\n", oclass, ret); in wimmc37b_init_() 89 wimmc37b_init(struct nouveau_drm *drm, s32 oclass, struct nv50_wndw *wndw) in wimmc37b_init() argument 91 return wimmc37b_init_(&wimmc37b, drm, oclass, wndw); in wimmc37b_init()
|
| H A D | nouveau_dispnv50_core507d.c | 94 s32 oclass, struct nv50_core **pcore) in core507d_new_() argument 106 &oclass, 0, &args, sizeof(args), in core507d_new_() 109 NV_ERROR(drm, "core%04x allocation failed: %d\n", oclass, ret); in core507d_new_() 117 core507d_new(struct nouveau_drm *drm, s32 oclass, struct nv50_core **pcore) in core507d_new() argument 119 return core507d_new_(&core507d, drm, oclass, pcore); in core507d_new()
|
| /netbsd-src/sys/external/bsd/drm2/dist/drm/nouveau/include/nvif/ |
| H A D | object.h | 10 s32 oclass; member 23 s32 oclass; member 40 int nvif_object_init(struct nvif_object *, u32 handle, s32 oclass, void *, u32, 149 s32 oclass; member 162 for (i = 0; ret < 0 && mclass[i].oclass; i++) { \ 164 if (mclass[i].oclass == sclass[j].oclass && \ 182 for (_cid = 0; _mclass[_cid].oclass; _cid++) { \ 183 if (_mclass[_cid].oclass == _oclass) \ 186 _cid = _mclass[_cid].oclass ? _cid : -ENOSYS; \
|
| /netbsd-src/sys/external/bsd/drm2/dist/drm/nouveau/ |
| H A D | nouveau_abi16.c | 436 s32 oclass = 0; in nouveau_abi16_ioctl_grobj_alloc() local 456 for (i = 0; !oclass && i < ret; i++) { in nouveau_abi16_ioctl_grobj_alloc() 457 switch (sclass[i].oclass) { in nouveau_abi16_ioctl_grobj_alloc() 462 oclass = sclass[i].oclass; in nouveau_abi16_ioctl_grobj_alloc() 472 if ((sclass[i].oclass & 0x00ff) == 0x00b1) { in nouveau_abi16_ioctl_grobj_alloc() 473 oclass = sclass[i].oclass; in nouveau_abi16_ioctl_grobj_alloc() 481 if ((sclass[i].oclass & 0x00ff) == 0x00b2) { in nouveau_abi16_ioctl_grobj_alloc() 482 oclass = sclass[i].oclass; in nouveau_abi16_ioctl_grobj_alloc() 490 if ((sclass[i].oclass & 0x00ff) == 0x00b3) { in nouveau_abi16_ioctl_grobj_alloc() 491 oclass = sclass[i].oclass; in nouveau_abi16_ioctl_grobj_alloc() [all …]
|
| H A D | nouveau_chan.c | 246 const u16 *oclass = oclasses; in nouveau_channel_ind() local 265 if (oclass[0] >= VOLTA_CHANNEL_GPFIFO_A) { in nouveau_channel_ind() 274 if (oclass[0] >= KEPLER_CHANNEL_GPFIFO_A) { in nouveau_channel_ind() 283 if (oclass[0] >= FERMI_CHANNEL_GPFIFO) { in nouveau_channel_ind() 298 ret = nvif_object_init(&device->object, 0, *oclass++, in nouveau_channel_ind() 301 if (chan->user.oclass >= VOLTA_CHANNEL_GPFIFO_A) { in nouveau_channel_ind() 306 if (chan->user.oclass >= KEPLER_CHANNEL_GPFIFO_A) { in nouveau_channel_ind() 310 if (chan->user.oclass >= FERMI_CHANNEL_GPFIFO) { in nouveau_channel_ind() 317 } while (*oclass); in nouveau_channel_ind() 332 const u16 *oclass = oclasses; in nouveau_channel_dma() local [all …]
|
| /netbsd-src/sys/external/bsd/drm2/dist/drm/nouveau/nvkm/engine/disp/ |
| H A D | nouveau_nvkm_engine_disp_oimmnv50.c | 40 const struct nvkm_oclass *oclass, void *argv, u32 argc, in nv50_disp_oimm_new_() argument 46 struct nvkm_object *parent = oclass->parent; in nv50_disp_oimm_new_() 60 head, oclass, pobject); in nv50_disp_oimm_new_() 64 nv50_disp_oimm_new(const struct nvkm_oclass *oclass, void *argv, u32 argc, in nv50_disp_oimm_new() argument 68 oclass, argv, argc, pobject); in nv50_disp_oimm_new()
|
| H A D | nouveau_nvkm_engine_disp_cursnv50.c | 40 const struct nvkm_oclass *oclass, void *argv, u32 argc, in nv50_disp_curs_new_() argument 46 struct nvkm_object *parent = oclass->parent; in nv50_disp_curs_new_() 60 head, oclass, pobject); in nv50_disp_curs_new_() 64 nv50_disp_curs_new(const struct nvkm_oclass *oclass, void *argv, u32 argc, in nv50_disp_curs_new() argument 68 oclass, argv, argc, pobject); in nv50_disp_curs_new()
|
| H A D | nouveau_nvkm_engine_disp_ovlynv50.c | 41 const struct nvkm_oclass *oclass, void *argv, u32 argc, in nv50_disp_ovly_new_() argument 47 struct nvkm_object *parent = oclass->parent; in nv50_disp_ovly_new_() 64 head, push, oclass, pobject); in nv50_disp_ovly_new_() 107 nv50_disp_ovly_new(const struct nvkm_oclass *oclass, void *argv, u32 argc, in nv50_disp_ovly_new() argument 111 disp, 3, oclass, argv, argc, pobject); in nv50_disp_ovly_new()
|
| H A D | nouveau_nvkm_engine_disp_basenv50.c | 41 const struct nvkm_oclass *oclass, void *argv, u32 argc, in nv50_disp_base_new_() argument 47 struct nvkm_object *parent = oclass->parent; in nv50_disp_base_new_() 64 head, push, oclass, pobject); in nv50_disp_base_new_() 119 nv50_disp_base_new(const struct nvkm_oclass *oclass, void *argv, u32 argc, in nv50_disp_base_new() argument 123 disp, 1, oclass, argv, argc, pobject); in nv50_disp_base_new()
|
| H A D | nouveau_nvkm_engine_disp_channv50.c | 258 nv50_disp_chan_child_new(const struct nvkm_oclass *oclass, in nv50_disp_chan_child_new() argument 261 struct nv50_disp_chan *chan = nv50_disp_chan(oclass->parent); in nv50_disp_chan_child_new() 264 const struct nvkm_device_oclass *sclass = oclass->priv; in nv50_disp_chan_child_new() 270 nvkm_oproxy_ctor(&nv50_disp_chan_child_func_, oclass, &object->oproxy); in nv50_disp_chan_child_new() 274 ret = sclass->ctor(device, oclass, argv, argc, &object->oproxy.object); in nv50_disp_chan_child_new() 279 oclass->handle); in nv50_disp_chan_child_new() 292 const struct nvkm_device_oclass *oclass = NULL; in nv50_disp_chan_child_get() local 300 sclass->engine->func->base.sclass(sclass, index, &oclass); in nv50_disp_chan_child_get() 301 if (oclass) { in nv50_disp_chan_child_get() 303 sclass->priv = oclass; in nv50_disp_chan_child_get() [all …]
|
| H A D | nouveau_nvkm_engine_disp_wimmgv100.c | 55 const struct nvkm_oclass *oclass, void *argv, u32 argc, in gv100_disp_wimm_new_() argument 61 struct nvkm_object *parent = oclass->parent; in gv100_disp_wimm_new_() 78 wndw, push, oclass, pobject); in gv100_disp_wimm_new_() 82 gv100_disp_wimm_new(const struct nvkm_oclass *oclass, void *argv, u32 argc, in gv100_disp_wimm_new() argument 86 oclass, argv, argc, pobject); in gv100_disp_wimm_new()
|
| H A D | nouveau_nvkm_engine_disp_wndwgv100.c | 157 const struct nvkm_oclass *oclass, void *argv, u32 argc, in gv100_disp_wndw_new_() argument 163 struct nvkm_object *parent = oclass->parent; in gv100_disp_wndw_new_() 180 wndw, push, oclass, pobject); in gv100_disp_wndw_new_() 184 gv100_disp_wndw_new(const struct nvkm_oclass *oclass, void *argv, u32 argc, in gv100_disp_wndw_new() argument 188 disp, 1, oclass, argv, argc, pobject); in gv100_disp_wndw_new()
|
| /netbsd-src/sys/external/bsd/drm2/dist/drm/nouveau/nvif/ |
| H A D | nouveau_nvif_object.c | 74 size = sizeof(*args) + cnt * sizeof(args->sclass.oclass[0]); in nvif_object_sclass_get() 94 (*psclass)[i].oclass = args->sclass.oclass[i].oclass; in nvif_object_sclass_get() 95 (*psclass)[i].minver = args->sclass.oclass[i].minver; in nvif_object_sclass_get() 96 (*psclass)[i].maxver = args->sclass.oclass[i].maxver; in nvif_object_sclass_get() 313 nvif_object_init(struct nvif_object *parent, u32 handle, s32 oclass, in nvif_object_init() argument 324 object->oclass = oclass; in nvif_object_init() 341 args->new.oclass = oclass; in nvif_object_init()
|
| /netbsd-src/sys/external/bsd/drm2/dist/drm/nouveau/nvkm/engine/device/ |
| H A D | nouveau_nvkm_engine_device_user.c | 350 nvkm_udevice_child_new(const struct nvkm_oclass *oclass, in nvkm_udevice_child_new() argument 353 struct nvkm_udevice *udev = nvkm_udevice(oclass->parent); in nvkm_udevice_child_new() 354 const struct nvkm_device_oclass *sclass = oclass->priv; in nvkm_udevice_child_new() 355 return sclass->ctor(udev->device, oclass, data, size, pobject); in nvkm_udevice_child_new() 360 struct nvkm_oclass *oclass) in nvkm_udevice_child_get() argument 376 oclass->engine = engine; in nvkm_udevice_child_get() 378 index -= engine->func->base.sclass(oclass, index, &sclass); in nvkm_udevice_child_get() 391 oclass->base = sclass->base; in nvkm_udevice_child_get() 394 oclass->ctor = nvkm_udevice_child_new; in nvkm_udevice_child_get() 395 oclass->priv = sclass; in nvkm_udevice_child_get() [all …]
|
| /netbsd-src/sys/external/bsd/drm2/dist/drm/nouveau/nvkm/engine/pm/ |
| H A D | nouveau_nvkm_engine_pm_base.c | 372 const struct nvkm_oclass *oclass, void *data, u32 size, in nvkm_perfdom_new_() argument 379 struct nvkm_object *parent = oclass->parent; in nvkm_perfdom_new_() 423 nvkm_object_ctor(&nvkm_perfdom, oclass, &dom->object); in nvkm_perfdom_new_() 610 nvkm_perfmon_child_new(const struct nvkm_oclass *oclass, void *data, u32 size, in nvkm_perfmon_child_new() argument 613 struct nvkm_perfmon *perfmon = nvkm_perfmon(oclass->parent); in nvkm_perfmon_child_new() 614 return nvkm_perfdom_new_(perfmon, oclass, data, size, pobject); in nvkm_perfmon_child_new() 619 struct nvkm_oclass *oclass) in nvkm_perfmon_child_get() argument 622 oclass->base.oclass = NVIF_CLASS_PERFDOM; in nvkm_perfmon_child_get() 623 oclass->base.minver = 0; in nvkm_perfmon_child_get() 624 oclass->base.maxver = 0; in nvkm_perfmon_child_get() [all …]
|