Symbol: pvr_file
drivers/gpu/drm/imagination/pvr_context.c
282
int pvr_context_create(struct pvr_file *pvr_file, struct drm_pvr_ioctl_create_context_args *args)
drivers/gpu/drm/imagination/pvr_context.c
284
struct pvr_device *pvr_dev = pvr_file->pvr_dev;
drivers/gpu/drm/imagination/pvr_context.c
307
err = remap_priority(pvr_file, args->priority, &ctx->priority);
drivers/gpu/drm/imagination/pvr_context.c
311
ctx->vm_ctx = pvr_vm_context_lookup(pvr_file, args->vm_context_handle);
drivers/gpu/drm/imagination/pvr_context.c
33
remap_priority(struct pvr_file *pvr_file, s32 uapi_priority,
drivers/gpu/drm/imagination/pvr_context.c
340
err = xa_alloc(&pvr_file->ctx_handles, &args->handle, ctx, xa_limit_32b, GFP_KERNEL);
drivers/gpu/drm/imagination/pvr_context.c
345
list_add_tail(&ctx->file_link, &pvr_file->contexts);
drivers/gpu/drm/imagination/pvr_context.c
420
pvr_context_destroy(struct pvr_file *pvr_file, u32 handle)
drivers/gpu/drm/imagination/pvr_context.c
422
struct pvr_context *ctx = xa_erase(&pvr_file->ctx_handles, handle);
drivers/gpu/drm/imagination/pvr_context.c
44
if (!capable(CAP_SYS_NICE) && !drm_is_current_master(from_pvr_file(pvr_file)))
drivers/gpu/drm/imagination/pvr_context.c
443
void pvr_destroy_contexts_for_file(struct pvr_file *pvr_file)
drivers/gpu/drm/imagination/pvr_context.c
445
struct pvr_device *pvr_dev = pvr_file->pvr_dev;
drivers/gpu/drm/imagination/pvr_context.c
449
xa_for_each(&pvr_file->ctx_handles, handle, ctx)
drivers/gpu/drm/imagination/pvr_context.c
450
pvr_context_destroy(pvr_file, handle);
drivers/gpu/drm/imagination/pvr_context.c
453
ctx = list_first_entry(&pvr_file->contexts, struct pvr_context, file_link);
drivers/gpu/drm/imagination/pvr_context.c
455
while (!list_entry_is_head(ctx, &pvr_file->contexts, file_link)) {
drivers/gpu/drm/imagination/pvr_context.c
466
ctx = list_first_entry(&pvr_file->contexts, struct pvr_context, file_link);
drivers/gpu/drm/imagination/pvr_context.h
159
pvr_context_lookup(struct pvr_file *pvr_file, u32 handle)
drivers/gpu/drm/imagination/pvr_context.h
164
xa_lock(&pvr_file->ctx_handles);
drivers/gpu/drm/imagination/pvr_context.h
165
ctx = pvr_context_get(xa_load(&pvr_file->ctx_handles, handle));
drivers/gpu/drm/imagination/pvr_context.h
166
xa_unlock(&pvr_file->ctx_handles);
drivers/gpu/drm/imagination/pvr_context.h
216
int pvr_context_create(struct pvr_file *pvr_file, struct drm_pvr_ioctl_create_context_args *args);
drivers/gpu/drm/imagination/pvr_context.h
218
int pvr_context_destroy(struct pvr_file *pvr_file, u32 handle);
drivers/gpu/drm/imagination/pvr_context.h
220
void pvr_destroy_contexts_for_file(struct pvr_file *pvr_file);
drivers/gpu/drm/imagination/pvr_device.h
469
#define from_pvr_file(pvr_file) ((pvr_file)->file)
drivers/gpu/drm/imagination/pvr_drv.c
1019
struct pvr_file *pvr_file = to_pvr_file(file);
drivers/gpu/drm/imagination/pvr_drv.c
1045
vm_ctx = pvr_vm_context_lookup(pvr_file, args->vm_context_handle);
drivers/gpu/drm/imagination/pvr_drv.c
1051
pvr_obj = pvr_gem_object_from_handle(pvr_file, args->handle);
drivers/gpu/drm/imagination/pvr_drv.c
1113
struct pvr_file *pvr_file = to_pvr_file(file);
drivers/gpu/drm/imagination/pvr_drv.c
1121
vm_ctx = pvr_vm_context_lookup(pvr_file, args->vm_context_handle);
drivers/gpu/drm/imagination/pvr_drv.c
1151
struct pvr_file *pvr_file = to_pvr_file(file);
drivers/gpu/drm/imagination/pvr_drv.c
1160
err = pvr_submit_jobs(pvr_dev, pvr_file, args);
drivers/gpu/drm/imagination/pvr_drv.c
122
err = pvr_gem_object_into_handle(pvr_obj, pvr_file, &args->handle);
drivers/gpu/drm/imagination/pvr_drv.c
1316
struct pvr_file *pvr_file;
drivers/gpu/drm/imagination/pvr_drv.c
1318
pvr_file = kzalloc_obj(*pvr_file);
drivers/gpu/drm/imagination/pvr_drv.c
1319
if (!pvr_file)
drivers/gpu/drm/imagination/pvr_drv.c
1326
pvr_file->file = file;
drivers/gpu/drm/imagination/pvr_drv.c
1332
pvr_file->pvr_dev = pvr_dev;
drivers/gpu/drm/imagination/pvr_drv.c
1334
INIT_LIST_HEAD(&pvr_file->contexts);
drivers/gpu/drm/imagination/pvr_drv.c
1336
xa_init_flags(&pvr_file->ctx_handles, XA_FLAGS_ALLOC1);
drivers/gpu/drm/imagination/pvr_drv.c
1337
xa_init_flags(&pvr_file->free_list_handles, XA_FLAGS_ALLOC1);
drivers/gpu/drm/imagination/pvr_drv.c
1338
xa_init_flags(&pvr_file->hwrt_handles, XA_FLAGS_ALLOC1);
drivers/gpu/drm/imagination/pvr_drv.c
1339
xa_init_flags(&pvr_file->vm_ctx_handles, XA_FLAGS_ALLOC1);
drivers/gpu/drm/imagination/pvr_drv.c
1345
file->driver_priv = pvr_file;
drivers/gpu/drm/imagination/pvr_drv.c
1364
struct pvr_file *pvr_file = to_pvr_file(file);
drivers/gpu/drm/imagination/pvr_drv.c
1367
pvr_destroy_contexts_for_file(pvr_file);
drivers/gpu/drm/imagination/pvr_drv.c
1370
pvr_destroy_free_lists_for_file(pvr_file);
drivers/gpu/drm/imagination/pvr_drv.c
1371
pvr_destroy_hwrt_datasets_for_file(pvr_file);
drivers/gpu/drm/imagination/pvr_drv.c
1372
pvr_destroy_vm_contexts_for_file(pvr_file);
drivers/gpu/drm/imagination/pvr_drv.c
1374
kfree(pvr_file);
drivers/gpu/drm/imagination/pvr_drv.c
169
struct pvr_file *pvr_file = to_pvr_file(file);
drivers/gpu/drm/imagination/pvr_drv.c
190
pvr_obj = pvr_gem_object_from_handle(pvr_file, args->handle);
drivers/gpu/drm/imagination/pvr_drv.c
687
struct pvr_file *pvr_file = file->driver_priv;
drivers/gpu/drm/imagination/pvr_drv.c
694
ret = pvr_context_create(pvr_file, args);
drivers/gpu/drm/imagination/pvr_drv.c
719
struct pvr_file *pvr_file = file->driver_priv;
drivers/gpu/drm/imagination/pvr_drv.c
724
return pvr_context_destroy(pvr_file, args->handle);
drivers/gpu/drm/imagination/pvr_drv.c
745
struct pvr_file *pvr_file = to_pvr_file(file);
drivers/gpu/drm/imagination/pvr_drv.c
753
free_list = pvr_free_list_create(pvr_file, args);
drivers/gpu/drm/imagination/pvr_drv.c
760
err = xa_alloc(&pvr_file->free_list_handles,
drivers/gpu/drm/imagination/pvr_drv.c
78
struct pvr_file *pvr_file = to_pvr_file(file);
drivers/gpu/drm/imagination/pvr_drv.c
799
struct pvr_file *pvr_file = to_pvr_file(file);
drivers/gpu/drm/imagination/pvr_drv.c
805
free_list = xa_erase(&pvr_file->free_list_handles, args->handle);
drivers/gpu/drm/imagination/pvr_drv.c
831
struct pvr_file *pvr_file = to_pvr_file(file);
drivers/gpu/drm/imagination/pvr_drv.c
839
hwrt = pvr_hwrt_dataset_create(pvr_file, args);
drivers/gpu/drm/imagination/pvr_drv.c
846
err = xa_alloc(&pvr_file->hwrt_handles,
drivers/gpu/drm/imagination/pvr_drv.c
885
struct pvr_file *pvr_file = to_pvr_file(file);
drivers/gpu/drm/imagination/pvr_drv.c
891
hwrt = xa_erase(&pvr_file->hwrt_handles, args->handle);
drivers/gpu/drm/imagination/pvr_drv.c
917
struct pvr_file *pvr_file = to_pvr_file(file);
drivers/gpu/drm/imagination/pvr_drv.c
930
vm_ctx = pvr_vm_create_context(pvr_file->pvr_dev, true);
drivers/gpu/drm/imagination/pvr_drv.c
937
err = xa_alloc(&pvr_file->vm_ctx_handles,
drivers/gpu/drm/imagination/pvr_drv.c
976
struct pvr_file *pvr_file = to_pvr_file(file);
drivers/gpu/drm/imagination/pvr_drv.c
982
vm_ctx = xa_erase(&pvr_file->vm_ctx_handles, args->handle);
drivers/gpu/drm/imagination/pvr_free_list.c
194
free_list_create_fw_structure(struct pvr_file *pvr_file,
drivers/gpu/drm/imagination/pvr_free_list.c
198
struct pvr_device *pvr_dev = pvr_file->pvr_dev;
drivers/gpu/drm/imagination/pvr_free_list.c
411
pvr_free_list_create(struct pvr_file *pvr_file,
drivers/gpu/drm/imagination/pvr_free_list.c
428
err = free_list_create_kernel_structure(pvr_file, args, free_list);
drivers/gpu/drm/imagination/pvr_free_list.c
433
err = xa_alloc(&pvr_file->pvr_dev->free_list_ids,
drivers/gpu/drm/imagination/pvr_free_list.c
441
err = free_list_create_fw_structure(pvr_file, args, free_list);
drivers/gpu/drm/imagination/pvr_free_list.c
49
free_list_create_kernel_structure(struct pvr_file *pvr_file,
drivers/gpu/drm/imagination/pvr_free_list.c
519
void pvr_destroy_free_lists_for_file(struct pvr_file *pvr_file)
drivers/gpu/drm/imagination/pvr_free_list.c
524
xa_for_each(&pvr_file->free_list_handles, handle, free_list) {
drivers/gpu/drm/imagination/pvr_free_list.c
526
pvr_free_list_put(xa_erase(&pvr_file->free_list_handles, handle));
drivers/gpu/drm/imagination/pvr_free_list.c
71
vm_ctx = pvr_vm_context_lookup(pvr_file, args->vm_context_handle);
drivers/gpu/drm/imagination/pvr_free_list.c
89
free_list->pvr_dev = pvr_file->pvr_dev;
drivers/gpu/drm/imagination/pvr_free_list.h
107
pvr_free_list_create(struct pvr_file *pvr_file,
drivers/gpu/drm/imagination/pvr_free_list.h
111
pvr_destroy_free_lists_for_file(struct pvr_file *pvr_file);
drivers/gpu/drm/imagination/pvr_free_list.h
138
pvr_free_list_lookup(struct pvr_file *pvr_file, u32 handle)
drivers/gpu/drm/imagination/pvr_free_list.h
142
xa_lock(&pvr_file->free_list_handles);
drivers/gpu/drm/imagination/pvr_free_list.h
143
free_list = pvr_free_list_get(xa_load(&pvr_file->free_list_handles, handle));
drivers/gpu/drm/imagination/pvr_free_list.h
144
xa_unlock(&pvr_file->free_list_handles);
drivers/gpu/drm/imagination/pvr_fw.h
17
struct pvr_file;
drivers/gpu/drm/imagination/pvr_gem.c
136
struct pvr_file *pvr_file, u32 *handle)
drivers/gpu/drm/imagination/pvr_gem.c
139
struct drm_file *file = from_pvr_file(pvr_file);
drivers/gpu/drm/imagination/pvr_gem.c
180
pvr_gem_object_from_handle(struct pvr_file *pvr_file, u32 handle)
drivers/gpu/drm/imagination/pvr_gem.c
182
struct drm_file *file = from_pvr_file(pvr_file);
drivers/gpu/drm/imagination/pvr_gem.h
130
struct pvr_file *pvr_file, u32 *handle);
drivers/gpu/drm/imagination/pvr_gem.h
131
struct pvr_gem_object *pvr_gem_object_from_handle(struct pvr_file *pvr_file,
drivers/gpu/drm/imagination/pvr_gem.h
29
struct pvr_file;
drivers/gpu/drm/imagination/pvr_hwrt.c
229
hwrt_init_common_fw_structure(struct pvr_file *pvr_file,
drivers/gpu/drm/imagination/pvr_hwrt.c
234
struct pvr_device *pvr_dev = pvr_file->pvr_dev;
drivers/gpu/drm/imagination/pvr_hwrt.c
354
hwrt_data_init_fw_structure(struct pvr_file *pvr_file,
drivers/gpu/drm/imagination/pvr_hwrt.c
361
struct pvr_device *pvr_dev = pvr_file->pvr_dev;
drivers/gpu/drm/imagination/pvr_hwrt.c
41
hwrt_init_kernel_structure(struct pvr_file *pvr_file,
drivers/gpu/drm/imagination/pvr_hwrt.c
45
struct pvr_device *pvr_dev = pvr_file->pvr_dev;
drivers/gpu/drm/imagination/pvr_hwrt.c
453
pvr_hwrt_dataset_create(struct pvr_file *pvr_file,
drivers/gpu/drm/imagination/pvr_hwrt.c
465
err = hwrt_init_kernel_structure(pvr_file, args, hwrt);
drivers/gpu/drm/imagination/pvr_hwrt.c
469
err = hwrt_init_common_fw_structure(pvr_file, args, hwrt);
drivers/gpu/drm/imagination/pvr_hwrt.c
474
err = hwrt_data_init_fw_structure(pvr_file, hwrt, args,
drivers/gpu/drm/imagination/pvr_hwrt.c
526
void pvr_destroy_hwrt_datasets_for_file(struct pvr_file *pvr_file)
drivers/gpu/drm/imagination/pvr_hwrt.c
53
hwrt->free_lists[i] = pvr_free_list_lookup(pvr_file, args->free_list_handles[i]);
drivers/gpu/drm/imagination/pvr_hwrt.c
531
xa_for_each(&pvr_file->hwrt_handles, handle, hwrt) {
drivers/gpu/drm/imagination/pvr_hwrt.c
533
pvr_hwrt_dataset_put(xa_erase(&pvr_file->hwrt_handles, handle));
drivers/gpu/drm/imagination/pvr_hwrt.h
100
pvr_hwrt_dataset_lookup(struct pvr_file *pvr_file, u32 handle)
drivers/gpu/drm/imagination/pvr_hwrt.h
104
xa_lock(&pvr_file->hwrt_handles);
drivers/gpu/drm/imagination/pvr_hwrt.h
105
hwrt = xa_load(&pvr_file->hwrt_handles, handle);
drivers/gpu/drm/imagination/pvr_hwrt.h
110
xa_unlock(&pvr_file->hwrt_handles);
drivers/gpu/drm/imagination/pvr_hwrt.h
132
pvr_hwrt_data_lookup(struct pvr_file *pvr_file, u32 handle, u32 index)
drivers/gpu/drm/imagination/pvr_hwrt.h
134
struct pvr_hwrt_dataset *hwrt_dataset = pvr_hwrt_dataset_lookup(pvr_file, handle);
drivers/gpu/drm/imagination/pvr_hwrt.h
81
pvr_hwrt_dataset_create(struct pvr_file *pvr_file,
drivers/gpu/drm/imagination/pvr_hwrt.h
85
pvr_destroy_hwrt_datasets_for_file(struct pvr_file *pvr_file);
drivers/gpu/drm/imagination/pvr_job.c
326
prepare_job_syncs(struct pvr_file *pvr_file,
drivers/gpu/drm/imagination/pvr_job.c
332
from_pvr_file(pvr_file),
drivers/gpu/drm/imagination/pvr_job.c
339
err = pvr_sync_add_deps_to_job(pvr_file, &job_data->job->base,
drivers/gpu/drm/imagination/pvr_job.c
385
prepare_job_syncs_for_each(struct pvr_file *pvr_file,
drivers/gpu/drm/imagination/pvr_job.c
391
int err = prepare_job_syncs(pvr_file, &job_data[i],
drivers/gpu/drm/imagination/pvr_job.c
405
struct pvr_file *pvr_file,
drivers/gpu/drm/imagination/pvr_job.c
431
job->ctx = pvr_context_lookup(pvr_file, args->context_handle);
drivers/gpu/drm/imagination/pvr_job.c
438
job->hwrt = pvr_hwrt_data_lookup(pvr_file, args->hwrt.set_handle,
drivers/gpu/drm/imagination/pvr_job.c
450
err = pvr_queue_job_init(job, pvr_file->file->client_id);
drivers/gpu/drm/imagination/pvr_job.c
485
struct pvr_file *pvr_file,
drivers/gpu/drm/imagination/pvr_job.c
494
create_job(pvr_dev, pvr_file, &job_args[i]);
drivers/gpu/drm/imagination/pvr_job.c
707
pvr_submit_jobs(struct pvr_device *pvr_dev, struct pvr_file *pvr_file,
drivers/gpu/drm/imagination/pvr_job.c
731
err = pvr_job_data_init(pvr_dev, pvr_file, job_args, &args->jobs.count,
drivers/gpu/drm/imagination/pvr_job.c
750
err = prepare_job_syncs_for_each(pvr_file, job_data, &args->jobs.count,
drivers/gpu/drm/imagination/pvr_job.h
158
int pvr_submit_jobs(struct pvr_device *pvr_dev, struct pvr_file *pvr_file,
drivers/gpu/drm/imagination/pvr_job.h
22
struct pvr_file;
drivers/gpu/drm/imagination/pvr_sync.c
248
pvr_sync_add_deps_to_job(struct pvr_file *pvr_file, struct drm_sched_job *job,
drivers/gpu/drm/imagination/pvr_sync.c
277
err = drm_syncobj_find_fence(from_pvr_file(pvr_file), sync_ops[i].handle,
drivers/gpu/drm/imagination/pvr_sync.h
19
struct pvr_file;
drivers/gpu/drm/imagination/pvr_sync.h
79
pvr_sync_add_deps_to_job(struct pvr_file *pvr_file, struct drm_sched_job *job,
drivers/gpu/drm/imagination/pvr_vm.c
645
pvr_vm_context_lookup(struct pvr_file *pvr_file, u32 handle)
drivers/gpu/drm/imagination/pvr_vm.c
649
xa_lock(&pvr_file->vm_ctx_handles);
drivers/gpu/drm/imagination/pvr_vm.c
650
vm_ctx = xa_load(&pvr_file->vm_ctx_handles, handle);
drivers/gpu/drm/imagination/pvr_vm.c
652
xa_unlock(&pvr_file->vm_ctx_handles);
drivers/gpu/drm/imagination/pvr_vm.c
683
void pvr_destroy_vm_contexts_for_file(struct pvr_file *pvr_file)
drivers/gpu/drm/imagination/pvr_vm.c
688
xa_for_each(&pvr_file->vm_ctx_handles, handle, vm_ctx) {
drivers/gpu/drm/imagination/pvr_vm.c
690
pvr_vm_context_put(xa_erase(&pvr_file->vm_ctx_handles, handle));
drivers/gpu/drm/imagination/pvr_vm.h
15
struct pvr_file;
drivers/gpu/drm/imagination/pvr_vm.h
65
struct pvr_vm_context *pvr_vm_context_lookup(struct pvr_file *pvr_file, u32 handle);
drivers/gpu/drm/imagination/pvr_vm.h
68
void pvr_destroy_vm_contexts_for_file(struct pvr_file *pvr_file);