| /linux/drivers/gpu/drm/imagination/ |
| H A D | pvr_drv.c | 78 struct pvr_file *pvr_file = to_pvr_file(file); in pvr_ioctl_create_bo() local 122 err = pvr_gem_object_into_handle(pvr_obj, pvr_file, &args->handle); in pvr_ioctl_create_bo() 169 struct pvr_file *pvr_file = to_pvr_file(file); in pvr_ioctl_get_bo_mmap_offset() local 190 pvr_obj = pvr_gem_object_from_handle(pvr_file, args->handle); in pvr_ioctl_get_bo_mmap_offset() 685 struct pvr_file *pvr_file = file->driver_priv; in pvr_ioctl_create_context() local 692 ret = pvr_context_create(pvr_file, args); in pvr_ioctl_create_context() 717 struct pvr_file *pvr_file = file->driver_priv; in pvr_ioctl_destroy_context() local 722 return pvr_context_destroy(pvr_file, args->handle); in pvr_ioctl_destroy_context() 743 struct pvr_file *pvr_file = to_pvr_file(file); in pvr_ioctl_create_free_list() local 751 free_list = pvr_free_list_create(pvr_file, args); in pvr_ioctl_create_free_list() [all …]
|
| H A D | pvr_hwrt.h | 81 pvr_hwrt_dataset_create(struct pvr_file *pvr_file, 85 pvr_destroy_hwrt_datasets_for_file(struct pvr_file *pvr_file); 100 pvr_hwrt_dataset_lookup(struct pvr_file *pvr_file, u32 handle) in pvr_hwrt_dataset_lookup() argument 104 xa_lock(&pvr_file->hwrt_handles); in pvr_hwrt_dataset_lookup() 105 hwrt = xa_load(&pvr_file->hwrt_handles, handle); in pvr_hwrt_dataset_lookup() 110 xa_unlock(&pvr_file->hwrt_handles); in pvr_hwrt_dataset_lookup() 132 pvr_hwrt_data_lookup(struct pvr_file *pvr_file, u32 handle, u32 index) in pvr_hwrt_data_lookup() argument 134 struct pvr_hwrt_dataset *hwrt_dataset = pvr_hwrt_dataset_lookup(pvr_file, handle); in pvr_hwrt_data_lookup()
|
| H A D | pvr_context.c | 33 remap_priority(struct pvr_file *pvr_file, s32 uapi_priority, in remap_priority() argument 44 if (!capable(CAP_SYS_NICE) && !drm_is_current_master(from_pvr_file(pvr_file))) in remap_priority() 280 int pvr_context_create(struct pvr_file *pvr_file, struct drm_pvr_ioctl_create_context_args *args) in pvr_context_create() argument 282 struct pvr_device *pvr_dev = pvr_file->pvr_dev; in pvr_context_create() 305 err = remap_priority(pvr_file, args->priority, &ctx->priority); in pvr_context_create() 309 ctx->vm_ctx = pvr_vm_context_lookup(pvr_file, args->vm_context_handle); in pvr_context_create() 338 err = xa_alloc(&pvr_file->ctx_handles, &args->handle, ctx, xa_limit_32b, GFP_KERNEL); in pvr_context_create() 350 list_add_tail(&ctx->file_link, &pvr_file->contexts); in pvr_context_create() 416 pvr_context_destroy(struct pvr_file *pvr_file, u32 handle) in pvr_context_destroy() argument 418 struct pvr_context *ctx = xa_erase(&pvr_file->ctx_handles, handle); in pvr_context_destroy() [all …]
|
| H A D | pvr_free_list.h | 107 pvr_free_list_create(struct pvr_file *pvr_file, 111 pvr_destroy_free_lists_for_file(struct pvr_file *pvr_file); 138 pvr_free_list_lookup(struct pvr_file *pvr_file, u32 handle) in pvr_free_list_lookup() argument 142 xa_lock(&pvr_file->free_list_handles); in pvr_free_list_lookup() 143 free_list = pvr_free_list_get(xa_load(&pvr_file->free_list_handles, handle)); in pvr_free_list_lookup() 144 xa_unlock(&pvr_file->free_list_handles); in pvr_free_list_lookup()
|
| H A D | pvr_hwrt.c | 41 hwrt_init_kernel_structure(struct pvr_file *pvr_file, in hwrt_init_kernel_structure() argument 45 struct pvr_device *pvr_dev = pvr_file->pvr_dev; in hwrt_init_kernel_structure() 53 hwrt->free_lists[i] = pvr_free_list_lookup(pvr_file, args->free_list_handles[i]); in hwrt_init_kernel_structure() 229 hwrt_init_common_fw_structure(struct pvr_file *pvr_file, in hwrt_init_common_fw_structure() argument 234 struct pvr_device *pvr_dev = pvr_file->pvr_dev; in hwrt_init_common_fw_structure() 354 hwrt_data_init_fw_structure(struct pvr_file *pvr_file, in hwrt_data_init_fw_structure() argument 361 struct pvr_device *pvr_dev = pvr_file->pvr_dev; in hwrt_data_init_fw_structure() 453 pvr_hwrt_dataset_create(struct pvr_file *pvr_file, in pvr_hwrt_dataset_create() argument 465 err = hwrt_init_kernel_structure(pvr_file, args, hwrt); in pvr_hwrt_dataset_create() 469 err = hwrt_init_common_fw_structure(pvr_file, args, hwrt); in pvr_hwrt_dataset_create() [all …]
|
| H A D | pvr_job.c | 325 prepare_job_syncs(struct pvr_file *pvr_file, in prepare_job_syncs() argument 331 from_pvr_file(pvr_file), in prepare_job_syncs() 338 err = pvr_sync_add_deps_to_job(pvr_file, &job_data->job->base, in prepare_job_syncs() 384 prepare_job_syncs_for_each(struct pvr_file *pvr_file, in prepare_job_syncs_for_each() argument 390 int err = prepare_job_syncs(pvr_file, &job_data[i], in prepare_job_syncs_for_each() 404 struct pvr_file *pvr_file, in create_job() argument 430 job->ctx = pvr_context_lookup(pvr_file, args->context_handle); in create_job() 437 job->hwrt = pvr_hwrt_data_lookup(pvr_file, args->hwrt.set_handle, in create_job() 449 err = pvr_queue_job_init(job, pvr_file->file->client_id); in create_job() 484 struct pvr_file *pvr_file, in pvr_job_data_init() argument [all …]
|
| H A D | pvr_free_list.c | 49 free_list_create_kernel_structure(struct pvr_file *pvr_file, in free_list_create_kernel_structure() argument 71 vm_ctx = pvr_vm_context_lookup(pvr_file, args->vm_context_handle); in free_list_create_kernel_structure() 89 free_list->pvr_dev = pvr_file->pvr_dev; in free_list_create_kernel_structure() 194 free_list_create_fw_structure(struct pvr_file *pvr_file, in free_list_create_fw_structure() argument 198 struct pvr_device *pvr_dev = pvr_file->pvr_dev; in free_list_create_fw_structure() 411 pvr_free_list_create(struct pvr_file *pvr_file, in pvr_free_list_create() argument 428 err = free_list_create_kernel_structure(pvr_file, args, free_list); in pvr_free_list_create() 433 err = xa_alloc(&pvr_file->pvr_dev->free_list_ids, in pvr_free_list_create() 441 err = free_list_create_fw_structure(pvr_file, args, free_list); in pvr_free_list_create() 519 void pvr_destroy_free_lists_for_file(struct pvr_file *pvr_file) in pvr_destroy_free_lists_for_file() argument [all …]
|
| H A D | pvr_vm.h | 15 struct pvr_file; 65 struct pvr_vm_context *pvr_vm_context_lookup(struct pvr_file *pvr_file, u32 handle); 68 void pvr_destroy_vm_contexts_for_file(struct pvr_file *pvr_file);
|
| H A D | pvr_gem.c | 133 struct pvr_file *pvr_file, u32 *handle) in pvr_gem_object_into_handle() argument 136 struct drm_file *file = from_pvr_file(pvr_file); in pvr_gem_object_into_handle() 177 pvr_gem_object_from_handle(struct pvr_file *pvr_file, u32 handle) in pvr_gem_object_from_handle() argument 179 struct drm_file *file = from_pvr_file(pvr_file); in pvr_gem_object_from_handle()
|
| H A D | pvr_sync.h | 19 struct pvr_file; 79 pvr_sync_add_deps_to_job(struct pvr_file *pvr_file, struct drm_sched_job *job,
|
| H A D | pvr_job.h | 22 struct pvr_file; 158 int pvr_submit_jobs(struct pvr_device *pvr_dev, struct pvr_file *pvr_file,
|
| H A D | pvr_vm.c | 645 pvr_vm_context_lookup(struct pvr_file *pvr_file, u32 handle) in pvr_vm_context_lookup() argument 649 xa_lock(&pvr_file->vm_ctx_handles); in pvr_vm_context_lookup() 650 vm_ctx = xa_load(&pvr_file->vm_ctx_handles, handle); in pvr_vm_context_lookup() 652 xa_unlock(&pvr_file->vm_ctx_handles); in pvr_vm_context_lookup() 683 void pvr_destroy_vm_contexts_for_file(struct pvr_file *pvr_file) in pvr_destroy_vm_contexts_for_file() argument 688 xa_for_each(&pvr_file->vm_ctx_handles, handle, vm_ctx) { in pvr_destroy_vm_contexts_for_file() 690 pvr_vm_context_put(xa_erase(&pvr_file->vm_ctx_handles, handle)); in pvr_destroy_vm_contexts_for_file()
|
| H A D | pvr_sync.c | 248 pvr_sync_add_deps_to_job(struct pvr_file *pvr_file, struct drm_sched_job *job, in pvr_sync_add_deps_to_job() argument 277 err = drm_syncobj_find_fence(from_pvr_file(pvr_file), sync_ops[i].handle, in pvr_sync_add_deps_to_job()
|