Home
last modified time | relevance | path

Searched refs:ptdev (Results 1 – 18 of 18) sorted by relevance

/linux/drivers/gpu/drm/panthor/
A Dpanthor_gpu.c87 ptdev->gpu_info.gpu_id = gpu_read(ptdev, GPU_ID); in panthor_gpu_init_info()
88 ptdev->gpu_info.csf_id = gpu_read(ptdev, GPU_CSF_ID); in panthor_gpu_init_info()
89 ptdev->gpu_info.gpu_rev = gpu_read(ptdev, GPU_REVID); in panthor_gpu_init_info()
90 ptdev->gpu_info.core_features = gpu_read(ptdev, GPU_CORE_FEATURES); in panthor_gpu_init_info()
91 ptdev->gpu_info.l2_features = gpu_read(ptdev, GPU_L2_FEATURES); in panthor_gpu_init_info()
93 ptdev->gpu_info.mem_features = gpu_read(ptdev, GPU_MEM_FEATURES); in panthor_gpu_init_info()
94 ptdev->gpu_info.mmu_features = gpu_read(ptdev, GPU_MMU_FEATURES); in panthor_gpu_init_info()
103 ptdev->gpu_info.as_present = gpu_read(ptdev, GPU_AS_PRESENT); in panthor_gpu_init_info()
111 ptdev->gpu_info.l2_present = gpu_read(ptdev, GPU_L2_PRESENT_LO); in panthor_gpu_init_info()
141 ptdev->gpu_info.shader_present, ptdev->gpu_info.l2_present, in panthor_gpu_init_info()
[all …]
A Dpanthor_device.c27 ptdev->clks.core = devm_clk_get(ptdev->base.dev, NULL); in panthor_clk_init()
33 ptdev->clks.stacks = devm_clk_get_optional(ptdev->base.dev, "stacks"); in panthor_clk_init()
39 ptdev->clks.coregroup = devm_clk_get_optional(ptdev->base.dev, "coregroup"); in panthor_clk_init()
45 drm_info(&ptdev->base, "clock rate = %lu\n", clk_get_rate(ptdev->clks.core)); in panthor_clk_init()
77 drm_WARN_ON(&ptdev->base, pm_runtime_get_sync(ptdev->base.dev) < 0); in panthor_device_unplug()
162 ret = drmm_mutex_init(&ptdev->base, &ptdev->unplug.lock); in panthor_device_init()
166 ret = drmm_mutex_init(&ptdev->base, &ptdev->pm.mmio_lock); in panthor_device_init()
192 if (!ptdev->reset.wq) in panthor_device_init()
448 ret = drm_WARN_ON(&ptdev->base, panthor_fw_resume(ptdev)); in panthor_device_resume()
463 queue_work(ptdev->reset.wq, &ptdev->reset.work); in panthor_device_resume()
[all …]
A Dpanthor_fw.c269 return ptdev->fw->vm; in panthor_fw_vm()
446 mem = panthor_kernel_bo_create(ptdev, ptdev->fw->vm, SZ_8K, in panthor_fw_alloc_queue_iface_mem()
479 return panthor_kernel_bo_create(ptdev, panthor_fw_vm(ptdev), size, in panthor_fw_alloc_suspend_buf_mem()
539 drm_err(&ptdev->base, in panthor_fw_load_section_entry()
599 section->mem = panthor_kernel_bo_create(ptdev, panthor_fw_vm(ptdev), in panthor_fw_load_section_entry()
689 drm_err(&ptdev->base, in panthor_fw_load_entry()
962 mod_delayed_work(ptdev->reset.wq, &ptdev->fw->watchdog.ping_work, in panthor_fw_init_global_iface()
990 ptdev->fw->booted, in panthor_fw_start()
1153 panthor_gpu_power_off(ptdev, L2, ptdev->gpu_info.l2_present, 20000); in panthor_fw_unplug()
1281 struct panthor_device *ptdev = fw->irq.ptdev; in panthor_fw_ping_work() local
[all …]
A Dpanthor_mmu.c598 struct panthor_device *ptdev = vm->ptdev; in mmu_hw_do_operation() local
684 struct panthor_device *ptdev = vm->ptdev; in panthor_vm_release_as_locked() local
708 struct panthor_device *ptdev = vm->ptdev; in panthor_vm_active() local
738 drm_WARN_ON(&ptdev->base, ptdev->mmu->as.alloc_mask & BIT(0)); in panthor_vm_active()
783 gpu_write(ptdev, MMU_INT_MASK, ~ptdev->mmu->as.faulty_mask); in panthor_vm_active()
817 struct panthor_device *ptdev = vm->ptdev; in panthor_vm_idle() local
881 struct panthor_device *ptdev = vm->ptdev; in panthor_vm_flush_range() local
910 struct panthor_device *ptdev = vm->ptdev; in panthor_vm_unmap_pages() local
940 struct panthor_device *ptdev = vm->ptdev; in panthor_vm_map_pages() local
1841 struct panthor_device *ptdev = vm->ptdev; in panthor_vm_free() local
[all …]
A Dpanthor_device.h57 struct panthor_device *ptdev; member
172 struct panthor_device *ptdev; member
181 int panthor_device_init(struct panthor_device *ptdev);
189 if (!atomic_cmpxchg(&ptdev->reset.pending, 0, 1) && in panthor_device_schedule_reset()
191 queue_work(ptdev->reset.wq, &ptdev->reset.work); in panthor_device_schedule_reset()
201 return atomic_read(&ptdev->reset.pending) != 0; in panthor_device_reset_is_pending()
204 int panthor_device_mmap_io(struct panthor_device *ptdev,
290 struct panthor_device *ptdev = pirq->ptdev; \
304 struct panthor_device *ptdev = pirq->ptdev; \
315 __handler(ptdev, status); \
[all …]
A Dpanthor_sched.c797 struct panthor_device *ptdev = group->ptdev; in panthor_queue_get_syncwait_obj() local
872 struct panthor_device *ptdev = group->ptdev; in group_release() local
906 struct panthor_device *ptdev = group->ptdev; in group_bind_locked() local
948 struct panthor_device *ptdev = group->ptdev; in group_unbind_locked() local
1375 struct panthor_device *ptdev = group->ptdev; in group_process_tiler_oom() local
1681 struct panthor_device *ptdev = sched->ptdev; in process_fw_events_work() local
1836 struct panthor_device *ptdev = group->ptdev; in group_is_idle() local
1943 struct panthor_device *ptdev = sched->ptdev; in tick_ctx_init() local
2056 struct panthor_device *ptdev = sched->ptdev; in tick_ctx_cleanup() local
3131 group->ptdev = ptdev; in panthor_group_create()
[all …]
A Dpanthor_gpu.h10 int panthor_gpu_init(struct panthor_device *ptdev);
11 void panthor_gpu_unplug(struct panthor_device *ptdev);
12 void panthor_gpu_suspend(struct panthor_device *ptdev);
13 void panthor_gpu_resume(struct panthor_device *ptdev);
15 int panthor_gpu_block_power_on(struct panthor_device *ptdev,
19 int panthor_gpu_block_power_off(struct panthor_device *ptdev,
30 panthor_gpu_block_power_on(ptdev, #type, \
42 panthor_gpu_block_power_off(ptdev, #type, \
47 int panthor_gpu_l2_power_on(struct panthor_device *ptdev);
48 int panthor_gpu_flush_caches(struct panthor_device *ptdev,
[all …]
A Dpanthor_devfreq.c85 struct panthor_device *ptdev = dev_get_drvdata(dev); in panthor_devfreq_get_dev_status() local
86 struct panthor_devfreq *pdevfreq = ptdev->devfreq; in panthor_devfreq_get_dev_status()
119 int panthor_devfreq_init(struct panthor_device *ptdev) in panthor_devfreq_init() argument
129 struct device *dev = ptdev->base.dev; in panthor_devfreq_init()
135 pdevfreq = drmm_kzalloc(&ptdev->base, sizeof(*ptdev->devfreq), GFP_KERNEL); in panthor_devfreq_init()
139 ptdev->devfreq = pdevfreq; in panthor_devfreq_init()
157 cur_freq = clk_get_rate(ptdev->clks.core); in panthor_devfreq_init()
233 struct panthor_devfreq *pdevfreq = ptdev->devfreq; in panthor_devfreq_resume()
245 struct panthor_devfreq *pdevfreq = ptdev->devfreq; in panthor_devfreq_suspend()
255 struct panthor_devfreq *pdevfreq = ptdev->devfreq; in panthor_devfreq_record_busy()
[all …]
A Dpanthor_sched.h40 int panthor_sched_init(struct panthor_device *ptdev);
41 void panthor_sched_unplug(struct panthor_device *ptdev);
42 void panthor_sched_pre_reset(struct panthor_device *ptdev);
43 void panthor_sched_post_reset(struct panthor_device *ptdev, bool reset_failed);
44 void panthor_sched_suspend(struct panthor_device *ptdev);
45 void panthor_sched_resume(struct panthor_device *ptdev);
47 void panthor_sched_report_mmu_fault(struct panthor_device *ptdev);
48 void panthor_sched_report_fw_events(struct panthor_device *ptdev, u32 events);
A Dpanthor_heap.c87 struct panthor_device *ptdev; member
102 static int panthor_heap_ctx_stride(struct panthor_device *ptdev) in panthor_heap_ctx_stride() argument
104 u32 l2_features = ptdev->gpu_info.l2_features; in panthor_heap_ctx_stride()
112 return panthor_heap_ctx_stride(pool->ptdev) * id; in panthor_get_heap_ctx_offset()
134 static int panthor_alloc_heap_chunk(struct panthor_device *ptdev, in panthor_alloc_heap_chunk() argument
147 chunk->bo = panthor_kernel_bo_create(ptdev, vm, heap->chunk_size, in panthor_alloc_heap_chunk()
212 ret = panthor_alloc_heap_chunk(ptdev, vm, heap, true); in panthor_alloc_heap_chunks()
311 ret = panthor_alloc_heap_chunks(pool->ptdev, vm, heap, in panthor_heap_create()
331 memset(gpu_ctx, 0, panthor_heap_ctx_stride(pool->ptdev)); in panthor_heap_create()
532 panthor_heap_ctx_stride(ptdev), in panthor_heap_pool_create()
[all …]
A Dpanthor_fw.h461 panthor_fw_get_glb_iface(struct panthor_device *ptdev);
464 panthor_fw_get_csg_iface(struct panthor_device *ptdev, u32 csg_slot);
478 panthor_fw_alloc_queue_iface_mem(struct panthor_device *ptdev,
485 struct panthor_vm *panthor_fw_vm(struct panthor_device *ptdev);
488 int panthor_fw_post_reset(struct panthor_device *ptdev);
490 static inline void panthor_fw_suspend(struct panthor_device *ptdev) in panthor_fw_suspend() argument
492 panthor_fw_pre_reset(ptdev, false); in panthor_fw_suspend()
495 static inline int panthor_fw_resume(struct panthor_device *ptdev) in panthor_fw_resume() argument
497 return panthor_fw_post_reset(ptdev); in panthor_fw_resume()
500 int panthor_fw_init(struct panthor_device *ptdev);
[all …]
A Dpanthor_devfreq.h13 int panthor_devfreq_init(struct panthor_device *ptdev);
15 int panthor_devfreq_resume(struct panthor_device *ptdev);
16 int panthor_devfreq_suspend(struct panthor_device *ptdev);
18 void panthor_devfreq_record_busy(struct panthor_device *ptdev);
19 void panthor_devfreq_record_idle(struct panthor_device *ptdev);
A Dpanthor_mmu.h18 int panthor_mmu_init(struct panthor_device *ptdev);
19 void panthor_mmu_unplug(struct panthor_device *ptdev);
20 void panthor_mmu_pre_reset(struct panthor_device *ptdev);
21 void panthor_mmu_post_reset(struct panthor_device *ptdev);
22 void panthor_mmu_suspend(struct panthor_device *ptdev);
23 void panthor_mmu_resume(struct panthor_device *ptdev);
42 struct panthor_vm *panthor_vm_create(struct panthor_device *ptdev, bool for_mcu,
60 int panthor_vm_pool_create_vm(struct panthor_device *ptdev,
A Dpanthor_drv.c508 if (drm_WARN_ON(&ptdev->base, !sig_sync)) in panthor_submit_ctx_update_job_sync_signal_fences()
762 args->size = sizeof(ptdev->gpu_info); in panthor_ioctl_dev_query()
766 args->size = sizeof(ptdev->csif_info); in panthor_ioctl_dev_query()
1287 pfile->ptdev = ptdev; in panthor_open()
1346 struct panthor_device *ptdev = pfile->ptdev; in panthor_mmap() local
1369 ret = panthor_device_mmap_io(ptdev, vma); in panthor_mmap()
1423 struct panthor_device *ptdev; in panthor_probe() local
1427 if (IS_ERR(ptdev)) in panthor_probe()
1430 platform_set_drvdata(pdev, ptdev); in panthor_probe()
1432 return panthor_device_init(ptdev); in panthor_probe()
[all …]
A Dpanthor_gem.c74 panthor_kernel_bo_create(struct panthor_device *ptdev, struct panthor_vm *vm, in panthor_kernel_bo_create() argument
83 if (drm_WARN_ON(&ptdev->base, !vm)) in panthor_kernel_bo_create()
90 obj = drm_gem_shmem_create(&ptdev->base, size); in panthor_kernel_bo_create()
176 struct panthor_device *ptdev = container_of(ddev, struct panthor_device, base); in panthor_gem_create_object() local
184 obj->base.map_wc = !ptdev->coherent; in panthor_gem_create_object()
A Dpanthor_heap.h23 panthor_heap_pool_create(struct panthor_device *ptdev, struct panthor_vm *vm);
A Dpanthor_gem.h140 panthor_kernel_bo_create(struct panthor_device *ptdev, struct panthor_vm *vm,
/linux/drivers/gpu/drm/panfrost/
A Dpanfrost_devfreq.c32 struct panfrost_device *ptdev = dev_get_drvdata(dev); in panfrost_devfreq_target() local
43 ptdev->pfdevfreq.current_frequency = *freq; in panfrost_devfreq_target()

Completed in 51 milliseconds