/linux-6.3-rc2/drivers/gpu/drm/vc4/ |
A D | vc4_irq.c | 65 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 D | vc4_bo.c | 59 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 D | vc4_v3d.c | 117 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 D | vc4_gem.c | 82 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 D | vc4_perfmon.c | 20 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 D | vc4_kms.c | 115 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 D | vc4_hvs.c | 290 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 D | vc4_drv.c | 104 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 D | vc4_drv.h | 314 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 D | Makefile | 5 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 D | vc4_crtc.c | 84 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 D | vc4_debugfs.c | 24 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 D | vc4_validate.c | 108 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 D | vc4_fence.c | 39 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 D | vc4_plane.c | 300 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 D | vc4_trace.h | 14 #define TRACE_SYSTEM vc4 154 #define TRACE_INCLUDE_PATH ../../drivers/gpu/drm/vc4
|
/linux-6.3-rc2/Documentation/gpu/ |
A D | vc4.rst | 2 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 D | drivers.rst | 15 vc4
|
/linux-6.3-rc2/drivers/gpu/drm/vc4/tests/ |
A D | vc4_mock.c | 161 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 D | vc4_test_pv_muxing.c | 22 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 D | brcm,bcm2835-vc4.yaml | 4 $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 D | b53_common.c | 355 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 D | bcm2835-common.dtsi | 144 vc4: gpu { label 145 compatible = "brcm,bcm2835-vc4";
|
A D | bcm2711-rpi-cm4-io.dts | 133 &vc4 {
|
/linux-6.3-rc2/drivers/staging/vc04_services/bcm2835-camera/ |
A D | TODO | 5 vc4 driver can import them. This may involve bringing in the VCSM
|