| /Linux-v6.6/drivers/gpu/drm/panfrost/ | 
| D | panfrost_gpu.c | 24 	struct panfrost_device *pfdev = data;  in panfrost_gpu_irq_handler()  local25 	u32 state = gpu_read(pfdev, GPU_INT_STAT);  in panfrost_gpu_irq_handler()
 26 	u32 fault_status = gpu_read(pfdev, GPU_FAULT_STATUS);  in panfrost_gpu_irq_handler()
 32 		u64 address = (u64) gpu_read(pfdev, GPU_FAULT_ADDRESS_HI) << 32;  in panfrost_gpu_irq_handler()
 33 		address |= gpu_read(pfdev, GPU_FAULT_ADDRESS_LO);  in panfrost_gpu_irq_handler()
 35 		dev_warn(pfdev->dev, "GPU Fault 0x%08x (%s) at 0x%016llx\n",  in panfrost_gpu_irq_handler()
 40 			dev_warn(pfdev->dev, "There were multiple GPU faults - some have not been reported\n");  in panfrost_gpu_irq_handler()
 42 		gpu_write(pfdev, GPU_INT_MASK, 0);  in panfrost_gpu_irq_handler()
 46 		panfrost_perfcnt_sample_done(pfdev);  in panfrost_gpu_irq_handler()
 49 		panfrost_perfcnt_clean_cache_done(pfdev);  in panfrost_gpu_irq_handler()
 [all …]
 
 | 
| D | panfrost_device.c | 21 static int panfrost_reset_init(struct panfrost_device *pfdev)  in panfrost_reset_init()  argument23 	pfdev->rstc = devm_reset_control_array_get_optional_exclusive(pfdev->dev);  in panfrost_reset_init()
 24 	if (IS_ERR(pfdev->rstc)) {  in panfrost_reset_init()
 25 		dev_err(pfdev->dev, "get reset failed %ld\n", PTR_ERR(pfdev->rstc));  in panfrost_reset_init()
 26 		return PTR_ERR(pfdev->rstc);  in panfrost_reset_init()
 29 	return reset_control_deassert(pfdev->rstc);  in panfrost_reset_init()
 32 static void panfrost_reset_fini(struct panfrost_device *pfdev)  in panfrost_reset_fini()  argument
 34 	reset_control_assert(pfdev->rstc);  in panfrost_reset_fini()
 37 static int panfrost_clk_init(struct panfrost_device *pfdev)  in panfrost_clk_init()  argument
 42 	pfdev->clock = devm_clk_get(pfdev->dev, NULL);  in panfrost_clk_init()
 [all …]
 
 | 
| D | panfrost_job.c | 88 static struct dma_fence *panfrost_fence_create(struct panfrost_device *pfdev, int js_num)  in panfrost_fence_create()  argument91 	struct panfrost_job_slot *js = pfdev->js;  in panfrost_fence_create()
 97 	fence->dev = pfdev->ddev;  in panfrost_fence_create()
 119 		    (job->pfdev->features.nr_core_groups == 2))  in panfrost_job_get_slot()
 121 		if (panfrost_has_hw_issue(job->pfdev, HW_ISSUE_8987))  in panfrost_job_get_slot()
 128 static void panfrost_job_write_affinity(struct panfrost_device *pfdev,  in panfrost_job_write_affinity()  argument
 139 	affinity = pfdev->features.shader_present;  in panfrost_job_write_affinity()
 141 	job_write(pfdev, JS_AFFINITY_NEXT_LO(js), lower_32_bits(affinity));  in panfrost_job_write_affinity()
 142 	job_write(pfdev, JS_AFFINITY_NEXT_HI(js), upper_32_bits(affinity));  in panfrost_job_write_affinity()
 150 	if (!panfrost_has_hw_feature(job->pfdev, HW_FEATURE_JOBCHAIN_DISAMBIGUATION))  in panfrost_get_job_chain_flag()
 [all …]
 
 | 
| D | panfrost_perfcnt.c | 38 void panfrost_perfcnt_clean_cache_done(struct panfrost_device *pfdev)  in panfrost_perfcnt_clean_cache_done()  argument40 	complete(&pfdev->perfcnt->dump_comp);  in panfrost_perfcnt_clean_cache_done()
 43 void panfrost_perfcnt_sample_done(struct panfrost_device *pfdev)  in panfrost_perfcnt_sample_done()  argument
 45 	gpu_write(pfdev, GPU_CMD, GPU_CMD_CLEAN_CACHES);  in panfrost_perfcnt_sample_done()
 48 static int panfrost_perfcnt_dump_locked(struct panfrost_device *pfdev)  in panfrost_perfcnt_dump_locked()  argument
 53 	reinit_completion(&pfdev->perfcnt->dump_comp);  in panfrost_perfcnt_dump_locked()
 54 	gpuva = pfdev->perfcnt->mapping->mmnode.start << PAGE_SHIFT;  in panfrost_perfcnt_dump_locked()
 55 	gpu_write(pfdev, GPU_PERFCNT_BASE_LO, lower_32_bits(gpuva));  in panfrost_perfcnt_dump_locked()
 56 	gpu_write(pfdev, GPU_PERFCNT_BASE_HI, upper_32_bits(gpuva));  in panfrost_perfcnt_dump_locked()
 57 	gpu_write(pfdev, GPU_INT_CLEAR,  in panfrost_perfcnt_dump_locked()
 [all …]
 
 | 
| D | panfrost_mmu.c | 29 static int wait_ready(struct panfrost_device *pfdev, u32 as_nr)  in wait_ready()  argument36 	ret = readl_relaxed_poll_timeout_atomic(pfdev->iomem + AS_STATUS(as_nr),  in wait_ready()
 41 		panfrost_device_schedule_reset(pfdev);  in wait_ready()
 42 		dev_err(pfdev->dev, "AS_ACTIVE bit stuck\n");  in wait_ready()
 48 static int write_cmd(struct panfrost_device *pfdev, u32 as_nr, u32 cmd)  in write_cmd()  argument
 53 	status = wait_ready(pfdev, as_nr);  in write_cmd()
 55 		mmu_write(pfdev, AS_COMMAND(as_nr), cmd);  in write_cmd()
 60 static void lock_region(struct panfrost_device *pfdev, u32 as_nr,  in lock_region()  argument
 90 	mmu_write(pfdev, AS_LOCKADDR_LO(as_nr), lower_32_bits(region));  in lock_region()
 91 	mmu_write(pfdev, AS_LOCKADDR_HI(as_nr), upper_32_bits(region));  in lock_region()
 [all …]
 
 | 
| D | panfrost_gem_shrinker.c | 21 	struct panfrost_device *pfdev =  in panfrost_gem_shrinker_count()  local26 	if (!mutex_trylock(&pfdev->shrinker_lock))  in panfrost_gem_shrinker_count()
 29 	list_for_each_entry(shmem, &pfdev->shrinker_list, madv_list) {  in panfrost_gem_shrinker_count()
 34 	mutex_unlock(&pfdev->shrinker_lock);  in panfrost_gem_shrinker_count()
 68 	struct panfrost_device *pfdev =  in panfrost_gem_shrinker_scan()  local
 73 	if (!mutex_trylock(&pfdev->shrinker_lock))  in panfrost_gem_shrinker_scan()
 76 	list_for_each_entry_safe(shmem, tmp, &pfdev->shrinker_list, madv_list) {  in panfrost_gem_shrinker_scan()
 86 	mutex_unlock(&pfdev->shrinker_lock);  in panfrost_gem_shrinker_scan()
 102 	struct panfrost_device *pfdev = dev->dev_private;  in panfrost_gem_shrinker_init()  local
 103 	pfdev->shrinker.count_objects = panfrost_gem_shrinker_count;  in panfrost_gem_shrinker_init()
 [all …]
 
 | 
| D | panfrost_drv.c | 30 	struct panfrost_device *pfdev = ddev->dev_private;  in panfrost_ioctl_get_param()  local37 		param->value = pfdev->features.member;	\  in panfrost_ioctl_get_param()
 42 		param->value = pfdev->features.member[param->param -	\  in panfrost_ioctl_get_param()
 238 	struct panfrost_device *pfdev = dev->dev_private;  in panfrost_ioctl_submit()  local
 265 	job->pfdev = pfdev;  in panfrost_ioctl_submit()
 268 	job->flush_id = panfrost_gpu_get_latest_flush_id(pfdev);  in panfrost_ioctl_submit()
 398 	struct panfrost_device *pfdev = dev->dev_private;  in panfrost_ioctl_madvise()  local
 415 	mutex_lock(&pfdev->shrinker_lock);  in panfrost_ioctl_madvise()
 444 				       &pfdev->shrinker_list);  in panfrost_ioctl_madvise()
 451 	mutex_unlock(&pfdev->shrinker_lock);  in panfrost_ioctl_madvise()
 [all …]
 
 | 
| D | panfrost_device.h | 77 	void (*vendor_quirk)(struct panfrost_device *pfdev);127 	struct panfrost_device *pfdev;  member
 139 	struct panfrost_device *pfdev;  member
 151 static inline int panfrost_model_cmp(struct panfrost_device *pfdev, s32 id)  in panfrost_model_cmp()  argument
 153 	s32 match_id = pfdev->features.id;  in panfrost_model_cmp()
 160 static inline bool panfrost_model_is_bifrost(struct panfrost_device *pfdev)  in panfrost_model_is_bifrost()  argument
 162 	return panfrost_model_cmp(pfdev, 0x1000) >= 0;  in panfrost_model_is_bifrost()
 165 static inline bool panfrost_model_eq(struct panfrost_device *pfdev, s32 id)  in panfrost_model_eq()  argument
 167 	return !panfrost_model_cmp(pfdev, id);  in panfrost_model_eq()
 172 int panfrost_device_init(struct panfrost_device *pfdev);
 [all …]
 
 | 
| D | panfrost_devfreq.c | 52 	struct panfrost_device *pfdev = dev_get_drvdata(dev);  in panfrost_devfreq_get_dev_status()  local53 	struct panfrost_devfreq *pfdevfreq = &pfdev->pfdevfreq;  in panfrost_devfreq_get_dev_status()
 56 	status->current_frequency = clk_get_rate(pfdev->clock);  in panfrost_devfreq_get_dev_status()
 71 	dev_dbg(pfdev->dev, "busy %lu total %lu %lu %% freq %lu MHz\n",  in panfrost_devfreq_get_dev_status()
 111 int panfrost_devfreq_init(struct panfrost_device *pfdev)  in panfrost_devfreq_init()  argument
 116 	struct device *dev = &pfdev->pdev->dev;  in panfrost_devfreq_init()
 119 	struct panfrost_devfreq *pfdevfreq = &pfdev->pfdevfreq;  in panfrost_devfreq_init()
 121 	if (pfdev->comp->num_supplies > 1) {  in panfrost_devfreq_init()
 134 	ret = devm_pm_opp_set_regulators(dev, pfdev->comp->supply_names);  in panfrost_devfreq_init()
 157 	cur_freq = clk_get_rate(pfdev->clock);  in panfrost_devfreq_init()
 [all …]
 
 | 
| D | panfrost_gpu.h | 10 int panfrost_gpu_init(struct panfrost_device *pfdev);11 void panfrost_gpu_fini(struct panfrost_device *pfdev);
 13 u32 panfrost_gpu_get_latest_flush_id(struct panfrost_device *pfdev);
 15 int panfrost_gpu_soft_reset(struct panfrost_device *pfdev);
 16 void panfrost_gpu_power_on(struct panfrost_device *pfdev);
 17 void panfrost_gpu_power_off(struct panfrost_device *pfdev);
 19 void panfrost_gpu_amlogic_quirk(struct panfrost_device *pfdev);
 
 | 
| D | panfrost_mmu.h | 14 int panfrost_mmu_init(struct panfrost_device *pfdev);15 void panfrost_mmu_fini(struct panfrost_device *pfdev);
 16 void panfrost_mmu_reset(struct panfrost_device *pfdev);
 18 u32 panfrost_mmu_as_get(struct panfrost_device *pfdev, struct panfrost_mmu *mmu);
 19 void panfrost_mmu_as_put(struct panfrost_device *pfdev, struct panfrost_mmu *mmu);
 23 struct panfrost_mmu *panfrost_mmu_ctx_create(struct panfrost_device *pfdev);
 
 | 
| D | panfrost_dump.c | 77 			     struct panfrost_device *pfdev,  in panfrost_core_dump_registers()  argument97 		dumpreg->value = gpu_read(pfdev, reg);  in panfrost_core_dump_registers()
 105 	struct panfrost_device *pfdev = job->pfdev;  in panfrost_core_dump()  local
 166 		dev_warn(pfdev->dev, "failed to allocate devcoredump file\n");  in panfrost_core_dump()
 183 	iter.hdr->reghdr.gpu_id = pfdev->features.id;  in panfrost_core_dump()
 186 	panfrost_core_dump_registers(&iter, pfdev, as_nr, slot);  in panfrost_core_dump()
 207 			dev_err(pfdev->dev, "Panfrost Dump: BO has no sgt, cannot dump\n");  in panfrost_core_dump()
 214 			dev_err(pfdev->dev, "Panfrost Dump: couldn't map Buffer Object\n");  in panfrost_core_dump()
 229 				dev_err(pfdev->dev, "Panfrost Dump: wrong page\n");  in panfrost_core_dump()
 248 	dev_coredumpv(pfdev->dev, iter.start, iter.data - iter.start, GFP_KERNEL);  in panfrost_core_dump()
 
 | 
| D | panfrost_job.h | 19 	struct panfrost_device *pfdev;  member37 int panfrost_job_init(struct panfrost_device *pfdev);
 38 void panfrost_job_fini(struct panfrost_device *pfdev);
 44 void panfrost_job_enable_interrupts(struct panfrost_device *pfdev);
 45 int panfrost_job_is_idle(struct panfrost_device *pfdev);
 
 | 
| D | panfrost_perfcnt.h | 8 void panfrost_perfcnt_sample_done(struct panfrost_device *pfdev);9 void panfrost_perfcnt_clean_cache_done(struct panfrost_device *pfdev);
 10 int panfrost_perfcnt_init(struct panfrost_device *pfdev);
 11 void panfrost_perfcnt_fini(struct panfrost_device *pfdev);
 
 | 
| D | panfrost_devfreq.h | 33 int panfrost_devfreq_init(struct panfrost_device *pfdev);34 void panfrost_devfreq_fini(struct panfrost_device *pfdev);
 36 void panfrost_devfreq_resume(struct panfrost_device *pfdev);
 37 void panfrost_devfreq_suspend(struct panfrost_device *pfdev);
 
 | 
| D | panfrost_gem.c | 20 	struct panfrost_device *pfdev = obj->dev->dev_private;  in panfrost_gem_free_object()  local28 	mutex_lock(&pfdev->shrinker_lock);  in panfrost_gem_free_object()
 30 	mutex_unlock(&pfdev->shrinker_lock);  in panfrost_gem_free_object()
 44 				dma_unmap_sgtable(pfdev->dev, &bo->sgts[i],  in panfrost_gem_free_object()
 222 	struct panfrost_device *pfdev = dev->dev_private;  in panfrost_gem_create_object()  local
 232 	obj->base.map_wc = !pfdev->coherent;  in panfrost_gem_create_object()
 
 | 
| D | panfrost_features.h | 121 static inline bool panfrost_has_hw_feature(struct panfrost_device *pfdev,  in panfrost_has_hw_feature()  argument124 	return test_bit(feat, pfdev->features.hw_features);  in panfrost_has_hw_feature()
 
 | 
| D | panfrost_issues.h | 268 static inline bool panfrost_has_hw_issue(const struct panfrost_device *pfdev,  in panfrost_has_hw_issue()  argument271 	return test_bit(issue, pfdev->features.hw_issues);  in panfrost_has_hw_issue()
 
 | 
| /Linux-v6.6/drivers/media/pci/ddbridge/ | 
| D | ddbridge.h | 312 	struct platform_device  *pfdev;  member
 | 
| /Linux-v6.6/drivers/net/wireless/mediatek/mt76/mt7915/ | 
| D | soc.c | 1198 	struct platform_device *pfdev = to_platform_device(pdev);  in mt798x_wmac_init()  local1213 	dev->dcm = devm_platform_ioremap_resource(pfdev, 1);  in mt798x_wmac_init()
 1217 	dev->sku = devm_platform_ioremap_resource(pfdev, 2);  in mt798x_wmac_init()
 
 |