Searched refs:abi16 (Results 1 - 4 of 4) sorted by relevance

/linux-4.4.14/drivers/gpu/drm/nouveau/
H A Dnouveau_abi16.c40 if (!cli->abi16) { nouveau_abi16()
41 struct nouveau_abi16 *abi16; nouveau_abi16() local
42 cli->abi16 = abi16 = kzalloc(sizeof(*abi16), GFP_KERNEL); nouveau_abi16()
43 if (cli->abi16) { nouveau_abi16()
48 INIT_LIST_HEAD(&abi16->channels); nouveau_abi16()
56 &abi16->device) == 0) nouveau_abi16()
57 return cli->abi16; nouveau_abi16()
59 kfree(cli->abi16); nouveau_abi16()
60 cli->abi16 = NULL; nouveau_abi16()
63 return cli->abi16; nouveau_abi16()
72 return cli->abi16; nouveau_abi16_get()
78 nouveau_abi16_put(struct nouveau_abi16 *abi16, int ret) nouveau_abi16_put() argument
80 struct nouveau_cli *cli = (void *)abi16->device.object.client; nouveau_abi16_put()
118 nouveau_abi16_chan_fini(struct nouveau_abi16 *abi16, nouveau_abi16_chan_fini() argument
153 nouveau_abi16_fini(struct nouveau_abi16 *abi16) nouveau_abi16_fini() argument
155 struct nouveau_cli *cli = (void *)abi16->device.object.client; nouveau_abi16_fini()
159 list_for_each_entry_safe(chan, temp, &abi16->channels, head) { nouveau_abi16_fini()
160 nouveau_abi16_chan_fini(abi16, chan); nouveau_abi16_fini()
164 nvif_device_fini(&abi16->device); nouveau_abi16_fini()
166 kfree(cli->abi16); nouveau_abi16_fini()
167 cli->abi16 = NULL; nouveau_abi16_fini()
248 struct nouveau_abi16 *abi16 = nouveau_abi16_get(file_priv); nouveau_abi16_ioctl_channel_alloc() local
253 if (unlikely(!abi16)) nouveau_abi16_ioctl_channel_alloc()
257 return nouveau_abi16_put(abi16, -ENODEV); nouveau_abi16_ioctl_channel_alloc()
259 device = &abi16->device; nouveau_abi16_ioctl_channel_alloc()
275 return nouveau_abi16_put(abi16, -EINVAL); nouveau_abi16_ioctl_channel_alloc()
277 /* allocate "abi16 channel" data and make up a handle for it */ nouveau_abi16_ioctl_channel_alloc()
280 return nouveau_abi16_put(abi16, -ENOMEM); nouveau_abi16_ioctl_channel_alloc()
283 list_add(&chan->head, &abi16->channels); nouveau_abi16_ioctl_channel_alloc()
333 nouveau_abi16_chan_fini(abi16, chan); nouveau_abi16_ioctl_channel_alloc()
334 return nouveau_abi16_put(abi16, ret); nouveau_abi16_ioctl_channel_alloc()
338 nouveau_abi16_chan(struct nouveau_abi16 *abi16, int channel) nouveau_abi16_chan() argument
342 list_for_each_entry(chan, &abi16->channels, head) { nouveau_abi16_chan()
357 struct nouveau_abi16 *abi16; nouveau_abi16_usif() local
372 if (!(abi16 = nouveau_abi16(file_priv))) nouveau_abi16_usif()
376 if (!(chan = nouveau_abi16_chan(abi16, args->v0.token))) nouveau_abi16_usif()
383 args->v0.object = nvif_handle(&abi16->device.object); nouveau_abi16_usif()
392 struct nouveau_abi16 *abi16 = nouveau_abi16_get(file_priv); nouveau_abi16_ioctl_channel_free() local
395 if (unlikely(!abi16)) nouveau_abi16_ioctl_channel_free()
398 chan = nouveau_abi16_chan(abi16, req->channel); nouveau_abi16_ioctl_channel_free()
400 return nouveau_abi16_put(abi16, -ENOENT); nouveau_abi16_ioctl_channel_free()
401 nouveau_abi16_chan_fini(abi16, chan); nouveau_abi16_ioctl_channel_free()
402 return nouveau_abi16_put(abi16, 0); nouveau_abi16_ioctl_channel_free()
409 struct nouveau_abi16 *abi16 = nouveau_abi16_get(file_priv); nouveau_abi16_ioctl_grobj_alloc() local
417 if (unlikely(!abi16)) nouveau_abi16_ioctl_grobj_alloc()
421 return nouveau_abi16_put(abi16, -EINVAL); nouveau_abi16_ioctl_grobj_alloc()
422 client = abi16->device.object.client; nouveau_abi16_ioctl_grobj_alloc()
424 chan = nouveau_abi16_chan(abi16, init->channel); nouveau_abi16_ioctl_grobj_alloc()
426 return nouveau_abi16_put(abi16, -ENOENT); nouveau_abi16_ioctl_grobj_alloc()
430 return nouveau_abi16_put(abi16, ret); nouveau_abi16_ioctl_grobj_alloc()
479 return nouveau_abi16_put(abi16, -EINVAL); nouveau_abi16_ioctl_grobj_alloc()
483 return nouveau_abi16_put(abi16, -ENOMEM); nouveau_abi16_ioctl_grobj_alloc()
494 return nouveau_abi16_put(abi16, ret); nouveau_abi16_ioctl_grobj_alloc()
502 struct nouveau_abi16 *abi16 = nouveau_abi16_get(file_priv); nouveau_abi16_ioctl_notifierobj_alloc() local
505 struct nvif_device *device = &abi16->device; nouveau_abi16_ioctl_notifierobj_alloc()
510 if (unlikely(!abi16)) nouveau_abi16_ioctl_notifierobj_alloc()
515 return nouveau_abi16_put(abi16, -EINVAL); nouveau_abi16_ioctl_notifierobj_alloc()
516 client = abi16->device.object.client; nouveau_abi16_ioctl_notifierobj_alloc()
518 chan = nouveau_abi16_chan(abi16, info->channel); nouveau_abi16_ioctl_notifierobj_alloc()
520 return nouveau_abi16_put(abi16, -ENOENT); nouveau_abi16_ioctl_notifierobj_alloc()
524 return nouveau_abi16_put(abi16, -ENOMEM); nouveau_abi16_ioctl_notifierobj_alloc()
567 return nouveau_abi16_put(abi16, ret); nouveau_abi16_ioctl_notifierobj_alloc()
574 struct nouveau_abi16 *abi16 = nouveau_abi16_get(file_priv); nouveau_abi16_ioctl_gpuobj_free() local
579 if (unlikely(!abi16)) nouveau_abi16_ioctl_gpuobj_free()
582 chan = nouveau_abi16_chan(abi16, fini->channel); nouveau_abi16_ioctl_gpuobj_free()
584 return nouveau_abi16_put(abi16, -EINVAL); nouveau_abi16_ioctl_gpuobj_free()
597 return nouveau_abi16_put(abi16, ret); nouveau_abi16_ioctl_gpuobj_free()
H A Dnouveau_gem.c671 struct nouveau_abi16 *abi16 = nouveau_abi16_get(file_priv); nouveau_gem_ioctl_pushbuf() local
683 if (unlikely(!abi16)) nouveau_gem_ioctl_pushbuf()
686 list_for_each_entry(temp, &abi16->channels, head) { nouveau_gem_ioctl_pushbuf()
694 return nouveau_abi16_put(abi16, -ENOENT); nouveau_gem_ioctl_pushbuf()
704 return nouveau_abi16_put(abi16, -EINVAL); nouveau_gem_ioctl_pushbuf()
710 return nouveau_abi16_put(abi16, -EINVAL); nouveau_gem_ioctl_pushbuf()
716 return nouveau_abi16_put(abi16, -EINVAL); nouveau_gem_ioctl_pushbuf()
721 return nouveau_abi16_put(abi16, PTR_ERR(push)); nouveau_gem_ioctl_pushbuf()
726 return nouveau_abi16_put(abi16, PTR_ERR(bo)); nouveau_gem_ioctl_pushbuf()
853 return nouveau_abi16_put(abi16, ret); nouveau_gem_ioctl_pushbuf()
H A Dnouveau_drm.h90 void *abi16; member in struct:nouveau_cli
H A Dnouveau_drm.c66 MODULE_PARM_DESC(noaccel, "disable kernel/abi16 acceleration");
842 if (cli->abi16) nouveau_drm_preclose()
843 nouveau_abi16_fini(cli->abi16); nouveau_drm_preclose()

Completed in 98 milliseconds