/linux/drivers/gpu/drm/panfrost/ |
A D | panfrost_gpu.c | 153 pfdev->comp->vendor_quirk(pfdev); in panfrost_gpu_init_quirks() 221 pfdev->features.l2_features = gpu_read(pfdev, GPU_L2_FEATURES); in panfrost_gpu_init_features() 222 pfdev->features.core_features = gpu_read(pfdev, GPU_CORE_FEATURES); in panfrost_gpu_init_features() 224 pfdev->features.mem_features = gpu_read(pfdev, GPU_MEM_FEATURES); in panfrost_gpu_init_features() 225 pfdev->features.mmu_features = gpu_read(pfdev, GPU_MMU_FEATURES); in panfrost_gpu_init_features() 235 pfdev->features.as_present = gpu_read(pfdev, GPU_AS_PRESENT); in panfrost_gpu_init_features() 237 pfdev->features.js_present = gpu_read(pfdev, GPU_JS_PRESENT); in panfrost_gpu_init_features() 248 pfdev->features.l2_present = gpu_read(pfdev, GPU_L2_PRESENT_LO); in panfrost_gpu_init_features() 316 pfdev->features.shader_present, pfdev->features.l2_present); in panfrost_gpu_init_features() 327 gpu_write(pfdev, L2_PWRON_LO, pfdev->features.l2_present); in panfrost_gpu_power_on() [all …]
|
A D | panfrost_device.c | 21 pfdev->rstc = devm_reset_control_array_get_optional_exclusive(pfdev->dev); in panfrost_reset_init() 23 dev_err(pfdev->dev, "get reset failed %ld\n", PTR_ERR(pfdev->rstc)); in panfrost_reset_init() 40 pfdev->clock = devm_clk_get(pfdev->dev, NULL); in panfrost_clk_init() 42 dev_err(pfdev->dev, "get clock failed %ld\n", PTR_ERR(pfdev->clock)); in panfrost_clk_init() 53 pfdev->bus_clock = devm_clk_get_optional(pfdev->dev, "bus"); in panfrost_clk_init() 88 pfdev->regulators = devm_kcalloc(pfdev->dev, pfdev->comp->num_supplies, in panfrost_regulator_init() 95 pfdev->regulators[i].supply = pfdev->comp->supply_names[i]; in panfrost_regulator_init() 122 regulator_bulk_disable(pfdev->comp->num_supplies, pfdev->regulators); in panfrost_regulator_fini() 157 dev_err(pfdev->dev, in panfrost_pm_domain_init() 180 pfdev->pm_domain_links[i] = device_link_add(pfdev->dev, in panfrost_pm_domain_init() [all …]
|
A D | panfrost_job.c | 161 pfdev->jobs[slot][0] = pfdev->jobs[slot][1]; in panfrost_dequeue_job() 188 struct panfrost_device *pfdev = job->pfdev; in panfrost_job_hw_submit() local 236 dev_dbg(pfdev->dev, in panfrost_job_hw_submit() 272 struct panfrost_device *pfdev = job->pfdev; in panfrost_job_push() local 355 struct panfrost_device *pfdev = job->pfdev; in panfrost_job_run() local 666 memset(pfdev->jobs, 0, sizeof(pfdev->jobs)); in panfrost_reset() 708 struct panfrost_device *pfdev = job->pfdev; in panfrost_job_timedout() local 782 pfdev->js = js = devm_kzalloc(pfdev->dev, sizeof(*js), GFP_KERNEL); in panfrost_job_init() 797 pfdev); in panfrost_job_init() 851 struct panfrost_device *pfdev = panfrost_priv->pfdev; in panfrost_job_open() local [all …]
|
A D | panfrost_perfcnt.c | 39 complete(&pfdev->perfcnt->dump_comp); in panfrost_perfcnt_clean_cache_done() 56 gpu_write(pfdev, GPU_INT_CLEAR, in panfrost_perfcnt_dump_locked() 86 ret = pm_runtime_get_sync(pfdev->dev); in panfrost_perfcnt_enable_locked() 118 gpu_write(pfdev, GPU_INT_CLEAR, in panfrost_perfcnt_enable_locked() 175 pm_runtime_put(pfdev->dev); in panfrost_perfcnt_enable_locked() 193 gpu_write(pfdev, GPU_PERFCNT_CFG, in panfrost_perfcnt_disable_locked() 271 struct panfrost_device *pfdev = pfile->pfdev; in panfrost_perfcnt_close() local 274 pm_runtime_get_sync(pfdev->dev); in panfrost_perfcnt_close() 325 gpu_write(pfdev, GPU_PERFCNT_CFG, in panfrost_perfcnt_init() 334 pfdev->perfcnt = perfcnt; in panfrost_perfcnt_init() [all …]
|
A D | panfrost_mmu.c | 118 spin_lock(&pfdev->as_lock); in mmu_hw_do_operation() 162 spin_lock(&pfdev->as_lock); in panfrost_mmu_as_get() 183 mmu_write(pfdev, MMU_INT_MASK, ~pfdev->as_faulty_mask); in panfrost_mmu_as_get() 236 pfdev->as_alloc_mask = 0; in panfrost_mmu_reset() 237 pfdev->as_faulty_mask = 0; in panfrost_mmu_reset() 528 struct panfrost_device *pfdev = mmu->pfdev; in panfrost_mmu_release_ctx() local 594 mmu->pfdev = pfdev; in panfrost_mmu_ctx_create() 690 dev_err(pfdev->dev, in panfrost_mmu_irq_handler_thread() 721 status = mmu_read(pfdev, MMU_INT_RAWSTAT) & ~pfdev->as_faulty_mask; in panfrost_mmu_irq_handler_thread() 725 mmu_write(pfdev, MMU_INT_MASK, ~pfdev->as_faulty_mask); in panfrost_mmu_irq_handler_thread() [all …]
|
A D | panfrost_gem_shrinker.c | 21 struct panfrost_device *pfdev = in panfrost_gem_shrinker_count() local 26 if (!mutex_trylock(&pfdev->shrinker_lock)) 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() 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 105 pfdev->shrinker.seeks = DEFAULT_SEEKS; in panfrost_gem_shrinker_init() 106 WARN_ON(register_shrinker(&pfdev->shrinker)); in panfrost_gem_shrinker_init() 119 if (pfdev->shrinker.nr_deferred) { in panfrost_gem_shrinker_cleanup() [all …]
|
A D | panfrost_drv.c | 261 job->pfdev = pfdev; in panfrost_ioctl_submit() 467 panfrost_priv->pfdev = pfdev; in panfrost_open() 550 pfdev = devm_kzalloc(&pdev->dev, sizeof(*pfdev), GFP_KERNEL); in panfrost_probe() 551 if (!pfdev) in panfrost_probe() 554 pfdev->pdev = pdev; in panfrost_probe() 555 pfdev->dev = &pdev->dev; in panfrost_probe() 560 if (!pfdev->comp) in panfrost_probe() 570 ddev->dev_private = pfdev; in panfrost_probe() 571 pfdev->ddev = ddev; in panfrost_probe() 603 panfrost_device_fini(pfdev); in panfrost_probe() [all …]
|
A D | panfrost_devfreq.c | 51 struct panfrost_device *pfdev = dev_get_drvdata(dev); in panfrost_devfreq_get_dev_status() local 52 struct panfrost_devfreq *pfdevfreq = &pfdev->pfdevfreq; in panfrost_devfreq_get_dev_status() 55 status->current_frequency = clk_get_rate(pfdev->clock); in panfrost_devfreq_get_dev_status() 85 int panfrost_devfreq_init(struct panfrost_device *pfdev) in panfrost_devfreq_init() argument 90 struct device *dev = &pfdev->pdev->dev; in panfrost_devfreq_init() 93 struct panfrost_devfreq *pfdevfreq = &pfdev->pfdevfreq; in panfrost_devfreq_init() 95 if (pfdev->comp->num_supplies > 1) { in panfrost_devfreq_init() 105 pfdev->comp->num_supplies); in panfrost_devfreq_init() 128 cur_freq = clk_get_rate(pfdev->clock); in panfrost_devfreq_init() 164 struct panfrost_devfreq *pfdevfreq = &pfdev->pfdevfreq; in panfrost_devfreq_fini() [all …]
|
A D | panfrost_device.h | 76 void (*vendor_quirk)(struct panfrost_device *pfdev); 126 struct panfrost_device *pfdev; member 138 struct panfrost_device *pfdev; member 152 s32 match_id = pfdev->features.id; in panfrost_model_cmp() 161 return panfrost_model_cmp(pfdev, 0x1000) >= 0; in panfrost_model_is_bifrost() 166 return !panfrost_model_cmp(pfdev, id); in panfrost_model_eq() 171 int panfrost_device_init(struct panfrost_device *pfdev); 172 void panfrost_device_fini(struct panfrost_device *pfdev); 173 void panfrost_device_reset(struct panfrost_device *pfdev); 261 atomic_set(&pfdev->reset.pending, 1); in panfrost_device_schedule_reset() [all …]
|
A 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);
|
A 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);
|
A D | panfrost_job.h | 19 struct panfrost_device *pfdev; member 37 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);
|
A 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);
|
A 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);
|
A D | panfrost_gem.c | 20 struct panfrost_device *pfdev = obj->dev->dev_private; in panfrost_gem_free_object() local 28 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() 219 struct panfrost_device *pfdev = dev->dev_private; in panfrost_gem_create_object() local 229 obj->base.map_wc = !pfdev->coherent; in panfrost_gem_create_object()
|
A D | panfrost_issues.h | 251 static inline bool panfrost_has_hw_issue(struct panfrost_device *pfdev, in panfrost_has_hw_issue() argument 254 return test_bit(issue, pfdev->features.hw_issues); in panfrost_has_hw_issue()
|
A D | panfrost_features.h | 303 static inline bool panfrost_has_hw_feature(struct panfrost_device *pfdev, in panfrost_has_hw_feature() argument 306 return test_bit(feat, pfdev->features.hw_features); in panfrost_has_hw_feature()
|
/linux/drivers/media/pci/ddbridge/ |
A D | ddbridge.h | 321 struct platform_device *pfdev; member
|