Home
last modified time | relevance | path

Searched refs:vc4 (Results 1 – 25 of 35) sorted by relevance

12

/linux-6.3-rc2/drivers/gpu/drm/vc4/
A Dvc4_irq.c65 struct vc4_dev *vc4 = in vc4_overflow_mem_work() local
74 if (!vc4->bin_bo) in vc4_overflow_mem_work()
77 bo = vc4->bin_bo; in vc4_overflow_mem_work()
103 vc4->bin_alloc_used &= ~vc4->bin_alloc_overflow; in vc4_overflow_mem_work()
169 vc4->finished_seqno++; in vc4_irq_finish_render_job()
230 spin_lock(&vc4->job_lock); in vc4_irq()
251 if (!vc4->v3d) in vc4_irq_prepare()
271 if (!vc4->v3d) in vc4_irq_enable()
288 if (!vc4->v3d) in vc4_irq_disable()
298 synchronize_irq(vc4->irq); in vc4_irq_disable()
[all …]
A Dvc4_bo.c59 if (vc4->purgeable.num) in vc4_bo_stats_print()
61 vc4->purgeable.size / 1024, vc4->purgeable.num); in vc4_bo_stats_print()
259 vc4->purgeable.num++; in vc4_bo_add_to_purgeable_pool()
284 vc4->purgeable.num--; in vc4_bo_remove_from_purgeable_pool_locked()
611 struct vc4_dev *vc4 = in vc4_bo_cache_time_work() local
682 struct vc4_dev *vc4 = from_timer(vc4, t, bo_cache.time_timer); in vc4_bo_cache_time_timer() local
768 if (!vc4->v3d) in vc4_grab_bin_bo()
995 if (!vc4->v3d) in vc4_bo_debugfs_init()
1017 vc4->bo_labels = kcalloc(VC4_BO_TYPE_COUNT, sizeof(*vc4->bo_labels), in vc4_bo_cache_init()
1019 if (!vc4->bo_labels) in vc4_bo_cache_init()
[all …]
A Dvc4_v3d.c117 vc4_v3d_pm_put(vc4); in vc4_v3d_debugfs_ident()
273 vc4->bin_bo = bo; in bin_bo_alloc()
336 if (vc4->bin_bo) in vc4_v3d_bin_bo_get()
358 vc4->bin_bo = NULL; in bin_bo_release()
375 struct vc4_dev *vc4 = v3d->vc4; in vc4_v3d_runtime_suspend() local
387 struct vc4_dev *vc4 = v3d->vc4; in vc4_v3d_runtime_resume() local
408 if (!vc4->v3d) in vc4_v3d_debugfs_init()
441 vc4->v3d = v3d; in vc4_v3d_bind()
442 v3d->vc4 = vc4; in vc4_v3d_bind()
463 vc4->irq = ret; in vc4_v3d_bind()
[all …]
A Dvc4_gem.c82 if (!vc4->v3d) { in vc4_get_hang_state_ioctl()
104 vc4->hang_state = NULL; in vc4_get_hang_state_ioctl()
279 if (vc4->hang_state) { in vc4_save_hang_state()
317 struct vc4_dev *vc4 = in vc4_reset_work() local
328 struct vc4_dev *vc4 = from_timer(vc4, t, hangcheck.timer); in vc4_hangcheck_elapsed() local
1004 vc4_v3d_pm_put(vc4); in vc4_complete_exec()
1179 if (!vc4->v3d) { in vc4_submit_cl_ioctl()
1202 exec->dev = vc4; in vc4_submit_cl_ioctl()
1349 WARN_ON(vc4->emit_seqno != vc4->finished_seqno); in vc4_gem_destroy()
1354 if (vc4->bin_bo) { in vc4_gem_destroy()
[all …]
A Dvc4_perfmon.c20 struct vc4_dev *vc4; in vc4_perfmon_get() local
25 vc4 = perfmon->dev; in vc4_perfmon_get()
26 if (WARN_ON_ONCE(vc4->is_vc5)) in vc4_perfmon_get()
34 struct vc4_dev *vc4; in vc4_perfmon_put() local
39 vc4 = perfmon->dev; in vc4_perfmon_put()
85 vc4->active_perfmon = NULL; in vc4_perfmon_stop()
113 vc4file->dev = vc4; in vc4_perfmon_open_file()
152 if (!vc4->v3d) { in vc4_perfmon_create_ioctl()
172 perfmon->dev = vc4; in vc4_perfmon_create_ioctl()
206 if (!vc4->v3d) { in vc4_perfmon_destroy_ioctl()
[all …]
A Dvc4_kms.c115 drm_atomic_private_obj_init(&vc4->base, &vc4->ctm_manager, &ctm_state->base, in vc4_ctm_obj_init()
143 struct vc4_hvs *hvs = vc4->hvs; in vc4_ctm_commit()
275 drm_WARN_ON(&vc4->base, in vc5_hvs_pv_muxing_commit()
378 if (vc4->is_vc5) { in vc4_atomic_commit_tail()
395 vc4_ctm_commit(vc4, state); in vc4_atomic_commit_tail()
397 if (vc4->is_vc5) in vc4_atomic_commit_tail()
415 if (vc4->is_vc5) { in vc4_atomic_commit_tail()
671 drm_atomic_private_obj_init(&vc4->base, &vc4->load_tracker, in vc4_load_tracker_obj_init()
754 drm_atomic_private_obj_init(&vc4->base, &vc4->hvs_channels, in vc4_hvs_channels_obj_init()
1049 if (!vc4->is_vc5) { in vc4_kms_load()
[all …]
A Dvc4_hvs.c290 struct vc4_dev *vc4 = hvs->vc4; in vc4_hvs_get_fifo_from_output() local
294 if (!vc4->is_vc5) in vc4_hvs_get_fifo_from_output()
350 struct vc4_dev *vc4 = hvs->vc4; in vc4_hvs_init_channel() local
767 if (!vc4->hvs) in vc4_hvs_debugfs_init()
770 if (!vc4->is_vc5) in vc4_hvs_debugfs_init()
793 hvs->vc4 = vc4; in __vc4_hvs_alloc()
812 if (!vc4->is_vc5) in __vc4_hvs_alloc()
819 vc4->hvs = hvs; in __vc4_hvs_alloc()
884 if (!vc4->is_vc5) in vc4_hvs_bind()
925 if (!vc4->is_vc5) in vc4_hvs_bind()
[all …]
A Dvc4_drv.c104 if (!vc4->v3d) in vc4_get_param_ioctl()
113 vc4_v3d_pm_put(vc4); in vc4_get_param_ioctl()
120 vc4_v3d_pm_put(vc4); in vc4_get_param_ioctl()
127 vc4_v3d_pm_put(vc4); in vc4_get_param_ioctl()
156 vc4file->dev = vc4; in vc4_open()
273 component_unbind_all(vc4->dev, &vc4->base); in vc4_component_unbind_all()
291 struct vc4_dev *vc4; in vc4_drm_bind() local
316 if (IS_ERR(vc4)) in vc4_drm_bind()
317 return PTR_ERR(vc4); in vc4_drm_bind()
319 vc4->dev = dev; in vc4_drm_bind()
[all …]
A Dvc4_drv.h314 struct vc4_dev *vc4; member
322 struct vc4_dev *vc4; member
648 readl(vc4->v3d->regs + (offset)); \
806 vc4_first_bin_job(struct vc4_dev *vc4) in vc4_first_bin_job() argument
813 vc4_first_render_job(struct vc4_dev *vc4) in vc4_first_render_job() argument
820 vc4_last_render_job(struct vc4_dev *vc4) in vc4_last_render_job() argument
822 if (list_empty(&vc4->render_job_list)) in vc4_last_render_job()
824 return list_last_entry(&vc4->render_job_list, in vc4_last_render_job()
1063 void vc4_v3d_bin_bo_put(struct vc4_dev *vc4);
1064 int vc4_v3d_pm_get(struct vc4_dev *vc4);
[all …]
A DMakefile5 vc4-y := \
28 vc4-$(CONFIG_DRM_VC4_KUNIT_TEST) += \
35 vc4-$(CONFIG_DEBUG_FS) += vc4_debugfs.o
37 obj-$(CONFIG_DRM_VC4) += vc4.o
A Dvc4_crtc.c84 struct vc4_hvs *hvs = vc4->hvs; in vc4_crtc_get_cob_allocation()
103 struct vc4_dev *vc4 = to_vc4_dev(dev); in vc4_crtc_get_scanout_position() local
104 struct vc4_hvs *hvs = vc4->hvs; in vc4_crtc_get_scanout_position()
265 if (!vc4->is_vc5) in vc4_get_fifo_full_level()
430 if (vc4->is_vc5) in vc4_crtc_config_pv()
458 struct vc4_hvs *hvs = vc4->hvs; in require_hvs_enabled()
782 struct vc4_hvs *hvs = vc4->hvs; in vc4_crtc_handle_page_flip()
915 if (!vc4->is_vc5) { in vc4_async_set_fence_cb()
1002 if (WARN_ON_ONCE(vc4->is_vc5)) in vc4_async_page_flip()
1045 if (vc4->is_vc5) in vc4_page_flip()
[all …]
A Dvc4_debugfs.c24 struct vc4_dev *vc4 = to_vc4_dev(minor->dev); in vc4_debugfs_init() local
25 struct drm_device *drm = &vc4->base; in vc4_debugfs_init()
29 if (vc4->v3d) { in vc4_debugfs_init()
A Dvc4_validate.c108 struct vc4_dev *vc4 = exec->dev; in vc4_use_bo() local
112 if (WARN_ON_ONCE(vc4->is_vc5)) in vc4_use_bo()
167 struct vc4_dev *vc4 = exec->dev; in vc4_check_tex_size() local
172 if (WARN_ON_ONCE(vc4->is_vc5)) in vc4_check_tex_size()
360 struct vc4_dev *vc4 = to_vc4_dev(dev); in validate_tile_binning_config() local
390 bin_slot = vc4_v3d_get_bin_slot(vc4); in validate_tile_binning_config()
403 bin_addr = vc4->bin_bo->base.dma_addr + bin_slot * vc4->bin_alloc_size; in validate_tile_binning_config()
493 struct vc4_dev *vc4 = to_vc4_dev(dev); in vc4_validate_bin_cl() local
498 if (WARN_ON_ONCE(vc4->is_vc5)) in vc4_validate_bin_cl()
941 struct vc4_dev *vc4 = to_vc4_dev(dev); in vc4_validate_shader_recs() local
[all …]
A Dvc4_fence.c39 struct vc4_dev *vc4 = to_vc4_dev(f->dev); in vc4_fence_signaled() local
41 return vc4->finished_seqno >= f->seqno; in vc4_fence_signaled()
A Dvc4_plane.c300 struct vc4_dev *vc4 = to_vc4_dev(plane->dev); in vc4_plane_destroy_state() local
306 spin_lock_irqsave(&vc4->hvs->mm_lock, irqflags); in vc4_plane_destroy_state()
590 lbm = roundup(lbm, vc4->is_vc5 ? 128 : 64); in vc4_lbm_size()
593 lbm /= vc4->is_vc5 ? 4 : 2; in vc4_lbm_size()
705 spin_lock_irqsave(&vc4->hvs->mm_lock, irqflags); in vc4_plane_allocate_lbm()
709 vc4->is_vc5 ? 64 : 32, in vc4_plane_allocate_lbm()
817 struct vc4_dev *vc4 = to_vc4_dev(plane->dev); in vc4_plane_mode_set() local
1060 if (!vc4->is_vc5) { in vc4_plane_mode_set()
1620 struct vc4_dev *vc4 = to_vc4_dev(dev); in vc4_plane_init() local
1636 if (!hvs_formats[i].hvs5_only || vc4->is_vc5) { in vc4_plane_init()
[all …]
A Dvc4_trace.h14 #define TRACE_SYSTEM vc4
154 #define TRACE_INCLUDE_PATH ../../drivers/gpu/drm/vc4
/linux-6.3-rc2/Documentation/gpu/
A Dvc4.rst2 drm/vc4 Broadcom VC4 Graphics Driver
5 .. kernel-doc:: drivers/gpu/drm/vc4/vc4_drv.c
18 .. kernel-doc:: drivers/gpu/drm/vc4/vc4_crtc.c
24 .. kernel-doc:: drivers/gpu/drm/vc4/vc4_hvs.c
30 .. kernel-doc:: drivers/gpu/drm/vc4/vc4_plane.c
36 .. kernel-doc:: drivers/gpu/drm/vc4/vc4_hdmi.c
42 .. kernel-doc:: drivers/gpu/drm/vc4/vc4_dsi.c
48 .. kernel-doc:: drivers/gpu/drm/vc4/vc4_dpi.c
54 .. kernel-doc:: drivers/gpu/drm/vc4/vc4_vec.c
84 .. kernel-doc:: drivers/gpu/drm/vc4/vc4_bo.c
[all …]
A Ddrivers.rst15 vc4
/linux-6.3-rc2/drivers/gpu/drm/vc4/tests/
A Dvc4_mock.c161 struct vc4_dev *vc4; in __mock_device() local
168 vc4 = drm_kunit_helper_alloc_drm_device_with_driver(test, dev, in __mock_device()
171 KUNIT_ASSERT_NOT_ERR_OR_NULL(test, vc4); in __mock_device()
173 vc4->dev = dev; in __mock_device()
174 vc4->is_vc5 = is_vc5; in __mock_device()
176 vc4->hvs = __vc4_hvs_alloc(vc4, NULL); in __mock_device()
177 KUNIT_ASSERT_NOT_ERR_OR_NULL(test, vc4->hvs); in __mock_device()
179 drm = &vc4->base; in __mock_device()
189 return vc4; in __mock_device()
A Dvc4_test_pv_muxing.c22 struct vc4_dev *vc4; member
731 struct vc4_dev *vc4; in vc4_pv_muxing_test_init() local
739 priv->vc4 = vc4; in vc4_pv_muxing_test_init()
743 drm = &vc4->base; in vc4_pv_muxing_test_init()
757 struct vc4_dev *vc4 = priv->vc4; in vc4_pv_muxing_test_exit() local
812 struct vc4_dev *vc4; in drm_test_vc5_pv_muxing_bugs_subsequent_crtc_enable() local
820 drm = &vc4->base; in drm_test_vc5_pv_muxing_bugs_subsequent_crtc_enable()
888 struct vc4_dev *vc4; in drm_test_vc5_pv_muxing_bugs_stable_fifo() local
896 drm = &vc4->base; in drm_test_vc5_pv_muxing_bugs_stable_fifo()
976 struct vc4_dev *vc4; in drm_test_vc5_pv_muxing_bugs_subsequent_crtc_enable_too_many_crtc_state() local
[all …]
/linux-6.3-rc2/Documentation/devicetree/bindings/display/
A Dbrcm,bcm2835-vc4.yaml4 $id: http://devicetree.org/schemas/display/brcm,bcm2835-vc4.yaml#
21 - brcm,bcm2835-vc4
22 - brcm,cygnus-vc4
31 vc4: gpu {
32 compatible = "brcm,bcm2835-vc4";
/linux-6.3-rc2/drivers/net/dsa/b53/
A Db53_common.c355 u8 mgmt, vc0, vc1, vc4 = 0, vc5; in b53_enable_vlan() local
368 b53_read8(dev, B53_VLAN_PAGE, B53_VLAN_CTRL4, &vc4); in b53_enable_vlan()
375 vc4 &= ~VC4_ING_VID_CHECK_MASK; in b53_enable_vlan()
377 vc4 |= VC4_ING_VID_VIO_DROP << VC4_ING_VID_CHECK_S; in b53_enable_vlan()
380 vc4 |= VC4_ING_VID_VIO_FWD << VC4_ING_VID_CHECK_S; in b53_enable_vlan()
393 vc4 &= ~VC4_ING_VID_CHECK_MASK; in b53_enable_vlan()
397 vc4 |= VC4_ING_VID_VIO_FWD << VC4_ING_VID_CHECK_S; in b53_enable_vlan()
399 vc4 |= VC4_ING_VID_VIO_TO_IMP << VC4_ING_VID_CHECK_S; in b53_enable_vlan()
427 b53_write8(dev, B53_VLAN_PAGE, B53_VLAN_CTRL4, vc4); in b53_enable_vlan()
2582 u8 vc4; in b53_switch_init() local
[all …]
/linux-6.3-rc2/arch/arm/boot/dts/
A Dbcm2835-common.dtsi144 vc4: gpu { label
145 compatible = "brcm,bcm2835-vc4";
A Dbcm2711-rpi-cm4-io.dts133 &vc4 {
/linux-6.3-rc2/drivers/staging/vc04_services/bcm2835-camera/
A DTODO5 vc4 driver can import them. This may involve bringing in the VCSM

Completed in 62 milliseconds

12