Home
last modified time | relevance | path

Searched refs:pfdev (Results 1 – 8 of 8) sorted by relevance

/linux/drivers/gpu/drm/panfrost/
H A Dpanfrost_job.c93 static struct dma_fence *panfrost_fence_create(struct panfrost_device *pfdev, int js_num) in panfrost_fence_create() argument
96 struct panfrost_job_slot *js = pfdev->js; in panfrost_fence_create()
102 fence->dev = &pfdev->base; in panfrost_fence_create()
124 (job->pfdev->features.nr_core_groups == 2)) in panfrost_job_get_slot()
126 if (panfrost_has_hw_issue(job->pfdev, HW_ISSUE_8987)) in panfrost_job_get_slot()
133 static void panfrost_job_write_affinity(struct panfrost_device *pfdev, in panfrost_job_write_affinity() argument
144 affinity = pfdev->features.shader_present; in panfrost_job_write_affinity()
146 job_write(pfdev, JS_AFFINITY_NEXT_LO(js), lower_32_bits(affinity)); in panfrost_job_write_affinity()
147 job_write(pfdev, JS_AFFINITY_NEXT_HI(js), upper_32_bits(affinity)); in panfrost_job_write_affinity()
155 if (!panfrost_has_hw_feature(job->pfdev, HW_FEATURE_JOBCHAIN_DISAMBIGUATION)) in panfrost_get_job_chain_flag()
[all …]
H A Dpanfrost_mmu.c72 static int wait_ready(struct panfrost_device *pfdev, u32 as_nr) in wait_ready() argument
79 ret = readl_relaxed_poll_timeout_atomic(pfdev->iomem + AS_STATUS(as_nr), in wait_ready()
84 panfrost_device_schedule_reset(pfdev); in wait_ready()
85 dev_err(pfdev->base.dev, "AS_ACTIVE bit stuck\n"); in wait_ready()
91 static int write_cmd(struct panfrost_device *pfdev, u32 as_nr, u32 cmd) in write_cmd() argument
96 status = wait_ready(pfdev, as_nr); in write_cmd()
98 mmu_write(pfdev, AS_COMMAND(as_nr), cmd); in write_cmd()
103 static void lock_region(struct panfrost_device *pfdev, u32 as_nr, in lock_region() argument
133 mmu_write(pfdev, AS_LOCKADDR_LO(as_nr), lower_32_bits(region)); in lock_region()
134 mmu_write(pfdev, AS_LOCKADDR_HI(as_nr), upper_32_bits(region)); in lock_region()
[all …]
H A Dpanfrost_drv.c35 static int panfrost_ioctl_query_timestamp(struct panfrost_device *pfdev, in panfrost_ioctl_query_timestamp() argument
40 ret = pm_runtime_resume_and_get(pfdev->base.dev); in panfrost_ioctl_query_timestamp()
44 panfrost_cycle_counter_get(pfdev); in panfrost_ioctl_query_timestamp()
45 *arg = panfrost_timestamp_read(pfdev); in panfrost_ioctl_query_timestamp()
46 panfrost_cycle_counter_put(pfdev); in panfrost_ioctl_query_timestamp()
48 pm_runtime_put(pfdev->base.dev); in panfrost_ioctl_query_timestamp()
55 struct panfrost_device *pfdev = to_panfrost_device(ddev); in panfrost_ioctl_get_param() local
63 param->value = pfdev->features.member; \ in panfrost_ioctl_get_param()
68 param->value = pfdev->features.member[param->param - \ in panfrost_ioctl_get_param()
101 ret = panfrost_ioctl_query_timestamp(pfdev, &param->value); in panfrost_ioctl_get_param()
[all …]
H A Dpanfrost_gem.c18 void panfrost_gem_init(struct panfrost_device *pfdev) in panfrost_gem_init() argument
26 err = drm_gem_huge_mnt_create(&pfdev->base, "within_size"); in panfrost_gem_init()
27 if (drm_gem_get_huge_mnt(&pfdev->base)) in panfrost_gem_init()
28 drm_info(&pfdev->base, "Using Transparent Hugepage\n"); in panfrost_gem_init()
30 drm_warn(&pfdev->base, "Can't use Transparent Hugepage (%d)\n", in panfrost_gem_init()
35 static void panfrost_gem_debugfs_bo_add(struct panfrost_device *pfdev, in panfrost_gem_debugfs_bo_add() argument
41 mutex_lock(&pfdev->debugfs.gems_lock); in panfrost_gem_debugfs_bo_add()
42 list_add_tail(&bo->debugfs.node, &pfdev->debugfs.gems_list); in panfrost_gem_debugfs_bo_add()
43 mutex_unlock(&pfdev->debugfs.gems_lock); in panfrost_gem_debugfs_bo_add()
48 struct panfrost_device *pfdev = to_panfrost_device(bo->base.base.dev); in panfrost_gem_debugfs_bo_rm() local
[all …]
H A Dpanfrost_perfcnt.h8 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);
H A Dpanfrost_devfreq.h36 int panfrost_devfreq_init(struct panfrost_device *pfdev);
37 void panfrost_devfreq_fini(struct panfrost_device *pfdev);
39 void panfrost_devfreq_resume(struct panfrost_device *pfdev);
40 void panfrost_devfreq_suspend(struct panfrost_device *pfdev);
H A Dpanfrost_issues.h268 static inline bool panfrost_has_hw_issue(const struct panfrost_device *pfdev, in panfrost_has_hw_issue() argument
271 return test_bit(issue, pfdev->features.hw_issues); in panfrost_has_hw_issue()
/linux/drivers/media/pci/ddbridge/
H A Dddbridge.h312 struct platform_device *pfdev; member