Home
last modified time | relevance | path

Searched refs:pvr_dev (Results 1 – 25 of 47) sorted by relevance

12

/drivers/gpu/drm/imagination/
A Dpvr_device.c61 pvr_dev->regs = NULL; in pvr_device_reg_init()
68 pvr_dev->regs = regs; in pvr_device_reg_init()
118 pvr_dev->sys_clk = sys_clk; in pvr_device_clk_init()
119 pvr_dev->mem_clk = mem_clk; in pvr_device_clk_init()
134 pvr_dev->reset = reset; in pvr_device_reset_init()
263 pvr_power_put(pvr_dev); in pvr_device_irq_thread_handler()
325 if (pvr_dev->irq < 0) in pvr_device_irq_init()
326 return pvr_dev->irq; in pvr_device_irq_init()
350 free_irq(pvr_dev->irq, pvr_dev); in pvr_device_irq_fini()
560 pvr_dev->kernel_vm_ctx = pvr_vm_create_context(pvr_dev, false); in pvr_device_gpu_init()
[all …]
A Dpvr_power.c39 if (!pvr_dev->lost) { in pvr_device_lost()
40 pvr_dev->lost = true; in pvr_device_lost()
122 pvr_fw_stop(pvr_dev); in pvr_power_fw_enable()
126 queue_delayed_work(pvr_dev->sched_wq, &pvr_dev->watchdog.work, in pvr_power_fw_enable()
193 if (pvr_dev->lost) in pvr_watchdog_worker()
215 if (!pvr_dev->lost) { in pvr_watchdog_worker()
216 queue_delayed_work(pvr_dev->sched_wq, &pvr_dev->watchdog.work, in pvr_watchdog_worker()
428 if (pvr_dev->lost) { in pvr_power_reset()
480 enable_irq(pvr_dev->irq); in pvr_power_reset()
484 pvr_power_put(pvr_dev); in pvr_power_reset()
[all …]
A Dpvr_fw_startstop.c37 rogue_bif_init(struct pvr_device *pvr_dev) in rogue_bif_init() argument
63 rogue_slc_init(struct pvr_device *pvr_dev) in rogue_slc_init() argument
88 if (PVR_HAS_QUIRK(pvr_dev, 71242) && !PVR_HAS_FEATURE(pvr_dev, gpu_multicore_support)) in rogue_slc_init()
105 pvr_fw_start(struct pvr_device *pvr_dev) in pvr_fw_start() argument
111 if (PVR_HAS_FEATURE(pvr_dev, pbe2_in_xe)) in pvr_fw_start()
157 err = rogue_slc_init(pvr_dev); in pvr_fw_start()
162 pvr_dev->fw_dev.defs->wrapper_init(pvr_dev); in pvr_fw_start()
165 rogue_axi_ace_list_init(pvr_dev); in pvr_fw_start()
169 rogue_bif_init(pvr_dev); in pvr_fw_start()
205 pvr_fw_stop(struct pvr_device *pvr_dev) in pvr_fw_stop() argument
[all …]
A Dpvr_ccb.c250 WARN_ON(pvr_dev->lost); in pvr_kccb_send_cmd_reserved_powered()
276 pvr_fw_mts_schedule(pvr_dev, in pvr_kccb_send_cmd_reserved_powered()
299 if (pvr_dev->kccb.reserved_count < pvr_kccb_capacity(pvr_dev) - used_count) { in pvr_kccb_try_reserve_slot()
379 err = pvr_power_get(pvr_dev); in pvr_kccb_send_cmd()
385 pvr_power_put(pvr_dev); in pvr_kccb_send_cmd()
405 int ret = wait_event_timeout(pvr_dev->kccb.rtn_q, READ_ONCE(pvr_dev->kccb.rtn[slot_nr]) & in pvr_kccb_wait_for_completion()
483 if (WARN_ON(used_count + pvr_dev->kccb.reserved_count > pvr_kccb_capacity(pvr_dev))) in pvr_kccb_wake_up_waiters()
486 available_count = pvr_kccb_capacity(pvr_dev) - used_count - pvr_dev->kccb.reserved_count; in pvr_kccb_wake_up_waiters()
529 return pvr_ccb_init(pvr_dev, &pvr_dev->kccb.ccb, in pvr_kccb_init()
597 if (pvr_dev->kccb.reserved_count >= pvr_kccb_capacity(pvr_dev) - used_count) { in pvr_kccb_reserve_slot()
[all …]
A Dpvr_fw.c133 pvr_dev->gpu_id.b, pvr_dev->gpu_id.v, pvr_dev->gpu_id.n, pvr_dev->gpu_id.c); in pvr_fw_validate()
573 pvr_fw_trace_fini(pvr_dev); in pvr_fw_create_structures()
605 pvr_fw_trace_fini(pvr_dev); in pvr_fw_destroy_structures()
642 layout_get_sizes(pvr_dev); in pvr_fw_process()
729 err = pvr_dev->fw_dev.defs->fw_process(pvr_dev, fw, in pvr_fw_process()
984 pvr_dev->kccb.rtn = pvr_fw_object_create_and_map(pvr_dev, kccb_rtn_size, in pvr_fw_init()
1011 pvr_fw_stop(pvr_dev); in pvr_fw_init()
1023 pvr_kccb_fini(pvr_dev); in pvr_fw_init()
1026 pvr_fw_cleanup(pvr_dev); in pvr_fw_init()
1056 pvr_kccb_fini(pvr_dev); in pvr_fw_fini()
[all …]
A Dpvr_fw_mips.c19 pvr_mips_init(struct pvr_device *pvr_dev) in pvr_mips_init() argument
23 return pvr_vm_mips_init(pvr_dev); in pvr_mips_init()
27 pvr_mips_fini(struct pvr_device *pvr_dev) in pvr_mips_fini() argument
29 pvr_vm_mips_fini(pvr_dev); in pvr_mips_fini()
37 struct pvr_fw_device *fw_dev = &pvr_dev->fw_dev; in pvr_mips_fw_process()
77 boot_data->reg_base = pvr_dev->regs_resource->start; in pvr_mips_fw_process()
97 pvr_mips_wrapper_init(struct pvr_device *pvr_dev) in pvr_mips_wrapper_init() argument
112 pvr_cr_write32(pvr_dev, ROGUE_CR_MIPS_WRAPPER_CONFIG, in pvr_mips_wrapper_init()
125 if (PVR_HAS_QUIRK(pvr_dev, 63553)) { in pvr_mips_wrapper_init()
175 pvr_mips_irq_pending(struct pvr_device *pvr_dev) in pvr_mips_irq_pending() argument
[all …]
A Dpvr_device.h341 struct pvr_device *pvr_dev; member
391 #define PVR_HAS_FEATURE(pvr_dev, feature) ((pvr_dev)->features.has_##feature) argument
432 #define PVR_HAS_QUIRK(pvr_dev, quirk) ((pvr_dev)->quirks.has_brn##quirk) argument
447 #define PVR_HAS_ENHANCEMENT(pvr_dev, enhancement) ((pvr_dev)->enhancements.has_ern##enhancement) argument
449 #define from_pvr_device(pvr_dev) (&(pvr_dev)->base) argument
548 return ioread32(pvr_dev->regs + reg); in pvr_cr_read32()
561 return ioread64(pvr_dev->regs + reg); in pvr_cr_read64()
573 iowrite32(val, pvr_dev->regs + reg); in pvr_cr_write32()
585 iowrite64(val, pvr_dev->regs + reg); in pvr_cr_write64()
760 return pvr_dev->fw_dev.defs->irq_pending(pvr_dev); in pvr_fw_irq_pending()
[all …]
A Dpvr_drv.c303 if (PVR_HAS_QUIRK(pvr_dev, 48492) && !PVR_HAS_FEATURE(pvr_dev, compute_overlap)) in rogue_get_max_coeffs()
322 if (PVR_HAS_QUIRK(pvr_dev, 48492) && PVR_HAS_FEATURE(pvr_dev, roguexe) && in rogue_get_cdm_max_local_mem_size_regs()
1329 pvr_file->pvr_dev = pvr_dev; in pvr_drm_driver_open()
1402 struct pvr_device *pvr_dev; in pvr_probe() local
1408 if (IS_ERR(pvr_dev)) in pvr_probe()
1409 return PTR_ERR(pvr_dev); in pvr_probe()
1411 drm_dev = &pvr_dev->base; in pvr_probe()
1432 pvr_watchdog_init(pvr_dev); in pvr_probe()
1448 pvr_device_fini(pvr_dev); in pvr_probe()
1451 pvr_watchdog_fini(pvr_dev); in pvr_probe()
[all …]
A Dpvr_fw_riscv.c23 pvr_riscv_wrapper_init(struct pvr_device *pvr_dev) in pvr_riscv_wrapper_init() argument
49 pvr_cr_write64(pvr_dev, ROGUE_CR_MTS_GARTEN_WRAPPER_CONFIG, in pvr_riscv_wrapper_init()
67 pvr_riscv_fw_process(struct pvr_device *pvr_dev, const u8 *fw, in pvr_riscv_fw_process() argument
71 struct pvr_fw_device *fw_dev = &pvr_dev->fw_dev; in pvr_riscv_fw_process()
102 pvr_riscv_init(struct pvr_device *pvr_dev) in pvr_riscv_init() argument
104 pvr_fw_heap_info_init(pvr_dev, ROGUE_FW_HEAP_RISCV_SHIFT, 0); in pvr_riscv_init()
137 pvr_vm_unmap_obj(pvr_dev->kernel_vm_ctx, pvr_obj, in pvr_riscv_vm_unmap()
142 pvr_riscv_irq_pending(struct pvr_device *pvr_dev) in pvr_riscv_irq_pending() argument
144 return pvr_cr_read32(pvr_dev, ROGUE_CR_IRQ_OS0_EVENT_STATUS) & in pvr_riscv_irq_pending()
149 pvr_riscv_irq_clear(struct pvr_device *pvr_dev) in pvr_riscv_irq_clear() argument
[all …]
A Dpvr_queue.c123 struct pvr_device *pvr_dev = fence->queue->ctx->pvr_dev; in pvr_queue_fence_release() local
453 struct pvr_device *pvr_dev = queue->ctx->pvr_dev; in pvr_queue_get_job_kccb_fence() local
572 struct pvr_device *pvr_dev = queue->ctx->pvr_dev; in pvr_queue_update_active_state_locked() local
604 struct pvr_device *pvr_dev = queue->ctx->pvr_dev; in pvr_queue_update_active_state() local
699 struct pvr_device *pvr_dev = job->pvr_dev; in pvr_queue_run_job() local
813 struct pvr_device *pvr_dev = queue->ctx->pvr_dev; in pvr_queue_timedout_job() local
1227 struct pvr_device *pvr_dev = ctx->pvr_dev; in pvr_queue_create() local
1230 .submit_wq = pvr_dev->sched_wq, in pvr_queue_create()
1237 .dev = pvr_dev->base.dev, in pvr_queue_create()
1433 err = drmm_mutex_init(from_pvr_device(pvr_dev), &pvr_dev->queues.lock); in pvr_queue_device_init()
[all …]
A Dpvr_fw_meta.c49 pvr_cr_write32(pvr_dev, ROGUE_CR_META_SP_MSLVCTRL0, in pvr_meta_cr_read32()
69 pvr_meta_wrapper_init(struct pvr_device *pvr_dev) in pvr_meta_wrapper_init() argument
114 struct pvr_device *pvr_dev = to_pvr_device(drm_dev); in meta_ldr_cmd_loadmem() local
156 struct pvr_device *pvr_dev = to_pvr_device(drm_dev); in meta_ldr_cmd_zeromem() local
362 struct pvr_fw_device *fw_dev = &pvr_dev->fw_dev; in get_fw_obj_gpu_addr()
459 struct pvr_fw_device *fw_dev = &pvr_dev->fw_dev; in pvr_meta_fw_process()
469 configure_seg_mmu(pvr_dev, &boot_conf); in pvr_meta_fw_process()
497 pvr_meta_init(struct pvr_device *pvr_dev) in pvr_meta_init() argument
531 pvr_vm_unmap_obj(pvr_dev->kernel_vm_ctx, pvr_obj, in pvr_meta_vm_unmap()
536 pvr_meta_irq_pending(struct pvr_device *pvr_dev) in pvr_meta_irq_pending() argument
[all …]
A Dpvr_fw.h81 int (*init)(struct pvr_device *pvr_dev);
91 void (*fini)(struct pvr_device *pvr_dev);
111 int (*fw_process)(struct pvr_device *pvr_dev, const u8 *fw,
167 int (*wrapper_init)(struct pvr_device *pvr_dev);
176 bool (*irq_pending)(struct pvr_device *pvr_dev);
185 void (*irq_clear)(struct pvr_device *pvr_dev);
398 int pvr_fw_init(struct pvr_device *pvr_dev);
399 void pvr_fw_fini(struct pvr_device *pvr_dev);
401 int pvr_wait_for_fw_boot(struct pvr_device *pvr_dev);
404 pvr_fw_hard_reset(struct pvr_device *pvr_dev);
[all …]
A Dpvr_stream.c20 pvr_device_has_feature(pvr_dev, stream_def->feature)) { in stream_def_is_supported()
77 if (!stream_def_is_supported(pvr_dev, &stream_def[i])) in pvr_stream_process_1()
126 pvr_stream_process_ext_stream(struct pvr_device *pvr_dev, in pvr_stream_process_ext_stream() argument
166 if (!pvr_device_has_uapi_quirk(pvr_dev, ext_def->quirk)) in pvr_stream_process_ext_stream()
251 if (pvr_dev->stream_musthave_quirks[cmd_defs->type][i]) in pvr_stream_process()
265 pvr_stream_create_musthave_masks(struct pvr_device *pvr_dev) in pvr_stream_create_musthave_masks() argument
267 memset(pvr_dev->stream_musthave_quirks, 0, sizeof(pvr_dev->stream_musthave_quirks)); in pvr_stream_create_musthave_masks()
269 if (pvr_device_has_uapi_quirk(pvr_dev, 47217)) in pvr_stream_create_musthave_masks()
270 pvr_dev->stream_musthave_quirks[PVR_STREAM_TYPE_FRAG][0] |= in pvr_stream_create_musthave_masks()
273 if (pvr_device_has_uapi_quirk(pvr_dev, 49927)) { in pvr_stream_create_musthave_masks()
[all …]
A Dpvr_context.c282 struct pvr_device *pvr_dev = pvr_file->pvr_dev; in pvr_context_create() local
302 ctx->pvr_dev = pvr_dev; in pvr_context_create()
349 spin_lock(&pvr_dev->ctx_list_lock); in pvr_context_create()
351 spin_unlock(&pvr_dev->ctx_list_lock); in pvr_context_create()
377 struct pvr_device *pvr_dev = ctx->pvr_dev; in pvr_context_release() local
380 spin_lock(&pvr_dev->ctx_list_lock); in pvr_context_release()
382 spin_unlock(&pvr_dev->ctx_list_lock); in pvr_context_release()
441 struct pvr_device *pvr_dev = pvr_file->pvr_dev; in pvr_destroy_contexts_for_file() local
448 spin_lock(&pvr_dev->ctx_list_lock); in pvr_destroy_contexts_for_file()
460 spin_lock(&pvr_dev->ctx_list_lock); in pvr_destroy_contexts_for_file()
[all …]
A Dpvr_ccb.h46 int pvr_kccb_init(struct pvr_device *pvr_dev);
47 void pvr_kccb_fini(struct pvr_device *pvr_dev);
48 int pvr_fwccb_init(struct pvr_device *pvr_dev);
51 void pvr_fwccb_process(struct pvr_device *pvr_dev);
56 pvr_kccb_reserve_slot(struct pvr_device *pvr_dev, struct dma_fence *f);
57 void pvr_kccb_release_slot(struct pvr_device *pvr_dev);
58 int pvr_kccb_send_cmd(struct pvr_device *pvr_dev,
60 int pvr_kccb_send_cmd_powered(struct pvr_device *pvr_dev,
63 void pvr_kccb_send_cmd_reserved_powered(struct pvr_device *pvr_dev,
68 bool pvr_kccb_is_idle(struct pvr_device *pvr_dev);
[all …]
A Dpvr_power.h12 int pvr_watchdog_init(struct pvr_device *pvr_dev);
13 void pvr_watchdog_fini(struct pvr_device *pvr_dev);
15 void pvr_device_lost(struct pvr_device *pvr_dev);
17 bool pvr_power_is_idle(struct pvr_device *pvr_dev);
23 int pvr_power_reset(struct pvr_device *pvr_dev, bool hard_reset);
26 pvr_power_get(struct pvr_device *pvr_dev) in pvr_power_get() argument
28 struct drm_device *drm_dev = from_pvr_device(pvr_dev); in pvr_power_get()
34 pvr_power_put(struct pvr_device *pvr_dev) in pvr_power_put() argument
36 struct drm_device *drm_dev = from_pvr_device(pvr_dev); in pvr_power_put()
41 int pvr_power_domains_init(struct pvr_device *pvr_dev);
[all …]
A Dpvr_vm_mips.c30 pvr_vm_mips_init(struct pvr_device *pvr_dev) in pvr_vm_mips_init() argument
33 struct device *dev = from_pvr_device(pvr_dev)->dev; in pvr_vm_mips_init()
85 dma_unmap_page(from_pvr_device(pvr_dev)->dev, in pvr_vm_mips_init()
99 pvr_vm_mips_fini(struct pvr_device *pvr_dev) in pvr_vm_mips_fini() argument
101 struct pvr_fw_device *fw_dev = &pvr_dev->fw_dev; in pvr_vm_mips_fini()
106 dma_unmap_page(from_pvr_device(pvr_dev)->dev, in pvr_vm_mips_fini()
199 pvr_mmu_flush_request_all(pvr_dev); in pvr_vm_mips_map()
207 pvr_mmu_flush_request_all(pvr_dev); in pvr_vm_mips_map()
208 WARN_ON(pvr_mmu_flush_exec(pvr_dev, true)); in pvr_vm_mips_map()
235 pvr_mmu_flush_request_all(pvr_dev); in pvr_vm_mips_unmap()
[all …]
A Dpvr_free_list.c32 pvr_get_free_list_min_pages(struct pvr_device *pvr_dev) in pvr_get_free_list_min_pages() argument
36 if (PVR_HAS_FEATURE(pvr_dev, roguexe)) { in pvr_get_free_list_min_pages()
37 if (PVR_HAS_QUIRK(pvr_dev, 66011)) in pvr_get_free_list_min_pages()
89 free_list->pvr_dev = pvr_file->pvr_dev; in free_list_create_kernel_structure()
198 struct pvr_device *pvr_dev = pvr_file->pvr_dev; in free_list_create_fw_structure() local
299 struct pvr_device *pvr_dev = free_list->pvr_dev; in pvr_free_list_grow() local
433 err = xa_alloc(&pvr_file->pvr_dev->free_list_ids, in pvr_free_list_create()
452 WARN_ON(pvr_fw_structure_cleanup(free_list->pvr_dev, in pvr_free_list_create()
479 err = pvr_fw_structure_cleanup(free_list->pvr_dev, in pvr_free_list_release()
486 pvr_fwccb_process(free_list->pvr_dev); in pvr_free_list_release()
[all …]
A Dpvr_hwrt.c45 struct pvr_device *pvr_dev = pvr_file->pvr_dev; in hwrt_init_kernel_structure() local
48 hwrt->pvr_dev = pvr_dev; in hwrt_init_kernel_structure()
61 pvr_get_free_list_min_pages(pvr_dev)) { in hwrt_init_kernel_structure()
93 get_cr_isp_mtile_size_val(struct pvr_device *pvr_dev, u32 samples, in get_cr_isp_mtile_size_val() argument
234 struct pvr_device *pvr_dev = pvr_file->pvr_dev; in hwrt_init_common_fw_structure() local
238 err = PVR_FEATURE_VALUE(pvr_dev, tile_size_x, &info.tile_size_x); in hwrt_init_common_fw_structure()
242 err = PVR_FEATURE_VALUE(pvr_dev, tile_size_y, &info.tile_size_y); in hwrt_init_common_fw_structure()
249 if (PVR_HAS_FEATURE(pvr_dev, simple_parameter_format_version)) { in hwrt_init_common_fw_structure()
252 err = PVR_FEATURE_VALUE(pvr_dev, simple_parameter_format_version, in hwrt_init_common_fw_structure()
328 err = get_cr_isp_mtile_size_val(pvr_dev, args->samples, &info, in hwrt_init_common_fw_structure()
[all …]
A Dpvr_device_info.c61 drm_warn(from_pvr_device(pvr_dev), "Unsupported quirks in firmware image"); in pvr_device_info_set_common()
63 drm_warn(from_pvr_device(pvr_dev), in pvr_device_info_set_common()
70 drm_warn(from_pvr_device(pvr_dev), in pvr_device_info_set_common()
73 drm_warn(from_pvr_device(pvr_dev), in pvr_device_info_set_common()
80 *(bool *)((u8 *)pvr_dev + mapping[i]) = true; in pvr_device_info_set_common()
94 pvr_device_info_set_common(pvr_dev, quirks, quirks_size, quirks_mapping, in pvr_device_info_set_quirks()
109 pvr_device_info_set_common(pvr_dev, enhancements, enhancements_size, in pvr_device_info_set_enhancements()
229 drm_warn(from_pvr_device(pvr_dev), "Unsupported features in firmware image"); in pvr_device_info_set_features()
235 drm_warn(from_pvr_device(pvr_dev), in pvr_device_info_set_features()
241 *(bool *)((u8 *)pvr_dev + features_mapping[i].flag_offset) = true; in pvr_device_info_set_features()
[all …]
A Dpvr_mmu.c137 if (!pvr_dev->fw_dev.booted) in pvr_mmu_flush_exec()
176 pvr_device_lost(pvr_dev); in pvr_mmu_flush_exec()
183 pvr_device_lost(pvr_dev); in pvr_mmu_flush_exec()
234 struct pvr_device *pvr_dev; member
258 struct pvr_device *pvr_dev) in pvr_mmu_backing_page_init() argument
292 page->pvr_dev = pvr_dev; in pvr_mmu_backing_page_init()
328 if (!page->pvr_dev) in pvr_mmu_backing_page_fini()
359 struct pvr_device *pvr_dev = page->pvr_dev; in pvr_mmu_backing_page_sync() local
366 if (!pvr_dev) in pvr_mmu_backing_page_sync()
1354 struct pvr_device *pvr_dev; member
[all …]
A Dpvr_free_list.h52 struct pvr_device *pvr_dev; member
114 pvr_get_free_list_min_pages(struct pvr_device *pvr_dev);
161 pvr_free_list_lookup_id(struct pvr_device *pvr_dev, u32 id) in pvr_free_list_lookup_id() argument
165 xa_lock(&pvr_dev->free_list_ids); in pvr_free_list_lookup_id()
172 free_list = xa_load(&pvr_dev->free_list_ids, id); in pvr_free_list_lookup_id()
175 xa_unlock(&pvr_dev->free_list_ids); in pvr_free_list_lookup_id()
188 void pvr_free_list_process_grow_req(struct pvr_device *pvr_dev,
192 pvr_free_list_process_reconstruct_req(struct pvr_device *pvr_dev,
A Dpvr_fw_trace.c46 int pvr_fw_trace_init(struct pvr_device *pvr_dev) in pvr_fw_trace_init() argument
48 struct pvr_fw_trace *fw_trace = &pvr_dev->fw_dev.fw_trace; in pvr_fw_trace_init()
49 struct drm_device *drm_dev = from_pvr_device(pvr_dev); in pvr_fw_trace_init()
56 pvr_fw_object_create_and_map(pvr_dev, in pvr_fw_trace_init()
74 pvr_fw_object_create_and_map(pvr_dev, in pvr_fw_trace_init()
110 void pvr_fw_trace_fini(struct pvr_device *pvr_dev) in pvr_fw_trace_fini() argument
147 down_read(&pvr_dev->reset_sem); in update_logtype()
148 if (!drm_dev_enter(from_pvr_device(pvr_dev), &idx)) { in update_logtype()
156 err = pvr_kccb_send_cmd(pvr_dev, &cmd, NULL); in update_logtype()
161 up_read(&pvr_dev->reset_sem); in update_logtype()
[all …]
A Dpvr_params.c73 struct pvr_device *pvr_dev = data; \
76 (update_)(pvr_dev, pvr_dev->params.name_, val); \
77 pvr_dev->params.name_ = val; \
85 struct pvr_device *pvr_dev = data; \
86 *val = pvr_dev->params.name_; \
131 pvr_params_debugfs_init(struct pvr_device *pvr_dev, struct dentry *dir) in pvr_params_debugfs_init() argument
138 debugfs_create_file(#name_, X_MODE(mode_), dir, pvr_dev, \ in pvr_params_debugfs_init()
A Dpvr_context.h37 struct pvr_device *pvr_dev; member
183 pvr_context_lookup_id(struct pvr_device *pvr_dev, u32 id) in pvr_context_lookup_id() argument
188 xa_lock(&pvr_dev->ctx_ids); in pvr_context_lookup_id()
195 ctx = xa_load(&pvr_dev->ctx_ids, id); in pvr_context_lookup_id()
199 xa_unlock(&pvr_dev->ctx_ids); in pvr_context_lookup_id()
222 void pvr_context_device_init(struct pvr_device *pvr_dev);
224 void pvr_context_device_fini(struct pvr_device *pvr_dev);

Completed in 61 milliseconds

12