| /linux/drivers/gpu/drm/vc4/ |
| H A D | vc4_irq.c | 63 struct vc4_dev *vc4 = in vc4_overflow_mem_work() local 70 mutex_lock(&vc4->bin_bo_lock); in vc4_overflow_mem_work() 72 if (!vc4->bin_bo) in vc4_overflow_mem_work() 75 bo = vc4->bin_bo; in vc4_overflow_mem_work() 77 bin_bo_slot = vc4_v3d_get_bin_slot(vc4, msecs_to_jiffies(500)); in vc4_overflow_mem_work() 79 drm_err(&vc4->base, "Couldn't allocate binner overflow mem\n"); in vc4_overflow_mem_work() 83 spin_lock_irqsave(&vc4->job_lock, irqflags); in vc4_overflow_mem_work() 85 if (vc4->bin_alloc_overflow) { in vc4_overflow_mem_work() 92 exec = vc4_first_bin_job(vc4); in vc4_overflow_mem_work() 94 exec = vc4_last_render_job(vc4); in vc4_overflow_mem_work() 119 struct vc4_dev *vc4 = to_vc4_dev(dev); vc4_irq_finish_bin_job() local 141 struct vc4_dev *vc4 = to_vc4_dev(dev); vc4_cancel_bin_job() local 158 struct vc4_dev *vc4 = to_vc4_dev(dev); vc4_irq_finish_render_job() local 206 struct vc4_dev *vc4 = to_vc4_dev(dev); vc4_irq() local 247 struct vc4_dev *vc4 = to_vc4_dev(dev); vc4_irq_enable() local 264 struct vc4_dev *vc4 = to_vc4_dev(dev); vc4_irq_disable() local 286 struct vc4_dev *vc4 = to_vc4_dev(dev); vc4_irq_install() local 318 struct vc4_dev *vc4 = to_vc4_dev(dev); vc4_irq_uninstall() local 329 struct vc4_dev *vc4 = to_vc4_dev(dev); vc4_irq_reset() local [all...] |
| H A D | vc4_bo.c | 44 static void vc4_bo_stats_print(struct drm_printer *p, struct vc4_dev *vc4) in vc4_bo_stats_print() argument 48 for (i = 0; i < vc4->num_labels; i++) { in vc4_bo_stats_print() 49 if (!vc4->bo_labels[i].num_allocated) in vc4_bo_stats_print() 53 vc4->bo_labels[i].name, in vc4_bo_stats_print() 54 vc4->bo_labels[i].size_allocated / 1024, in vc4_bo_stats_print() 55 vc4->bo_labels[i].num_allocated); in vc4_bo_stats_print() 58 mutex_lock(&vc4->purgeable.lock); in vc4_bo_stats_print() 59 if (vc4->purgeable.num) in vc4_bo_stats_print() 61 vc4->purgeable.size / 1024, vc4 in vc4_bo_stats_print() 74 struct vc4_dev *vc4 = to_vc4_dev(dev); vc4_bo_stats_debugfs() local 90 vc4_get_user_label(struct vc4_dev * vc4,const char * name) vc4_get_user_label() argument 135 struct vc4_dev *vc4 = to_vc4_dev(gem_obj->dev); vc4_bo_set_label() local 169 struct vc4_dev *vc4 = to_vc4_dev(obj->dev); vc4_bo_destroy() local 188 struct vc4_dev *vc4 = to_vc4_dev(bo->base.base.dev); vc4_bo_remove_from_cache() local 198 struct vc4_dev *vc4 = to_vc4_dev(dev); vc4_get_cache_list_for_size() local 237 struct vc4_dev *vc4 = to_vc4_dev(dev); vc4_bo_cache_purge() local 251 struct vc4_dev *vc4 = to_vc4_dev(bo->base.base.dev); vc4_bo_add_to_purgeable_pool() local 265 struct vc4_dev *vc4 = to_vc4_dev(bo->base.base.dev); vc4_bo_remove_from_purgeable_pool_locked() local 289 struct vc4_dev *vc4 = to_vc4_dev(bo->base.base.dev); vc4_bo_remove_from_purgeable_pool() local 313 struct vc4_dev *vc4 = to_vc4_dev(dev); vc4_bo_userspace_cache_purge() local 362 struct vc4_dev *vc4 = to_vc4_dev(dev); vc4_bo_get_from_cache() local 395 struct vc4_dev *vc4 = to_vc4_dev(dev); vc4_create_object() local 425 struct vc4_dev *vc4 = to_vc4_dev(dev); vc4_bo_create() local 494 struct vc4_dev *vc4 = to_vc4_dev(dev); vc4_bo_dumb_create() local 519 struct vc4_dev *vc4 = to_vc4_dev(dev); vc4_bo_cache_free_old() local 545 struct vc4_dev *vc4 = to_vc4_dev(dev); vc4_free_object() local 610 struct vc4_dev *vc4 = vc4_bo_cache_time_work() local 621 struct vc4_dev *vc4 = to_vc4_dev(bo->base.base.dev); vc4_bo_inc_usecnt() local 661 struct vc4_dev *vc4 = to_vc4_dev(bo->base.base.dev); vc4_bo_dec_usecnt() local 681 struct vc4_dev *vc4 = timer_container_of(vc4, t, bo_cache.time_timer); vc4_bo_cache_time_timer() local 772 vc4_grab_bin_bo(struct vc4_dev * vc4,struct vc4_file * vc4file) vc4_grab_bin_bo() argument 788 struct vc4_dev *vc4 = to_vc4_dev(dev); vc4_create_bo_ioctl() local 818 struct vc4_dev *vc4 = to_vc4_dev(dev); vc4_mmap_bo_ioctl() local 844 struct vc4_dev *vc4 = to_vc4_dev(dev); vc4_create_shader_bo_ioctl() local 921 struct vc4_dev *vc4 = to_vc4_dev(dev); vc4_set_tiling_ioctl() local 968 struct vc4_dev *vc4 = to_vc4_dev(dev); vc4_get_tiling_ioctl() local 999 struct vc4_dev *vc4 = to_vc4_dev(drm); vc4_bo_debugfs_init() local 1012 struct vc4_dev *vc4 = to_vc4_dev(dev); vc4_bo_cache_init() local 1048 struct vc4_dev *vc4 = to_vc4_dev(dev); vc4_bo_cache_destroy() local 1073 struct vc4_dev *vc4 = to_vc4_dev(dev); vc4_label_bo_ioctl() local [all...] |
| H A D | vc4_v3d.c | 104 struct vc4_dev *vc4 = to_vc4_dev(dev); in vc4_v3d_debugfs_ident() 105 int ret = vc4_v3d_pm_get(vc4); in vc4_v3d_debugfs_ident() 120 vc4_v3d_pm_put(vc4); in vc4_v3d_debugfs_ident() 131 vc4_v3d_pm_get(struct vc4_dev *vc4) in vc4_v3d_pm_get() 133 if (WARN_ON_ONCE(vc4->gen > VC4_GEN_4)) in vc4_v3d_pm_get() 136 mutex_lock(&vc4->power_lock); in vc4_v3d_pm_get() 137 if (vc4->power_refcount++ == 0) { in vc4_v3d_pm_get() 138 int ret = pm_runtime_get_sync(&vc4->v3d->pdev->dev); in vc4_v3d_pm_get() 141 vc4->power_refcount--; in vc4_v3d_pm_get() 142 mutex_unlock(&vc4 in vc4_v3d_pm_get() 103 struct vc4_dev *vc4 = to_vc4_dev(dev); vc4_v3d_debugfs_ident() local 130 vc4_v3d_pm_get(struct vc4_dev * vc4) vc4_v3d_pm_get() argument 151 vc4_v3d_pm_put(struct vc4_dev * vc4) vc4_v3d_pm_put() argument 166 struct vc4_dev *vc4 = to_vc4_dev(dev); vc4_v3d_init_hw() local 175 vc4_v3d_get_bin_slot(struct vc4_dev * vc4) vc4_v3d_get_bin_slot() argument 239 bin_bo_alloc(struct vc4_dev * vc4) bin_bo_alloc() argument 326 vc4_v3d_bin_bo_get(struct vc4_dev * vc4,bool * used) vc4_v3d_bin_bo_get() argument 354 struct vc4_dev *vc4 = container_of(ref, struct vc4_dev, bin_bo_kref); bin_bo_release() local 363 vc4_v3d_bin_bo_put(struct vc4_dev * vc4) vc4_v3d_bin_bo_put() argument 377 struct vc4_dev *vc4 = v3d->vc4; vc4_v3d_runtime_suspend() local 389 struct vc4_dev *vc4 = v3d->vc4; vc4_v3d_runtime_resume() local 407 struct vc4_dev *vc4 = to_vc4_dev(drm); vc4_v3d_debugfs_init() local 424 struct vc4_dev *vc4 = to_vc4_dev(drm); vc4_v3d_bind() local 498 struct vc4_dev *vc4 = to_vc4_dev(drm); vc4_v3d_unbind() local [all...] |
| H A D | vc4_hvs.c | 207 struct drm_device *drm = &hvs->vc4->base; in vc4_hvs_dump_state() 233 struct vc4_dev *vc4 = to_vc4_dev(dev); in vc4_hvs_debugfs_underrun() local 236 drm_printf(&p, "%d\n", atomic_read(&vc4->underrun)); in vc4_hvs_debugfs_underrun() 245 struct vc4_dev *vc4 = to_vc4_dev(dev); in vc4_hvs_debugfs_dlist() local 246 struct vc4_hvs *hvs = vc4->hvs; in vc4_hvs_debugfs_dlist() 266 dlist_word = readl((u32 __iomem *)vc4->hvs->dlist + j); in vc4_hvs_debugfs_dlist() 287 struct vc4_dev *vc4 = to_vc4_dev(dev); in vc6_hvs_debugfs_dlist() local 288 struct vc4_hvs *hvs = vc4->hvs; in vc6_hvs_debugfs_dlist() 315 dlist_word = readl((u32 __iomem *)vc4->hvs->dlist + j); in vc6_hvs_debugfs_dlist() 336 struct vc4_dev *vc4 = to_vc4_dev(dev); in vc6_hvs_debugfs_upm_allocs() local [all …]
|
| H A D | vc4_kms.c | 51 struct vc4_dev *vc4 = to_vc4_dev(dev); in vc4_get_ctm_state() local 55 ret = drm_modeset_lock(&vc4->ctm_state_lock, state->acquire_ctx); in vc4_get_ctm_state() 110 struct vc4_dev *vc4 = to_vc4_dev(dev); in vc4_ctm_obj_fini() local 112 drm_atomic_private_obj_fini(&vc4->ctm_manager); in vc4_ctm_obj_fini() 115 static int vc4_ctm_obj_init(struct vc4_dev *vc4) in vc4_ctm_obj_init() argument 117 drm_modeset_lock_init(&vc4->ctm_state_lock); in vc4_ctm_obj_init() 119 drm_atomic_private_obj_init(&vc4->base, &vc4->ctm_manager, in vc4_ctm_obj_init() 122 return drmm_add_action_or_reset(&vc4->base, vc4_ctm_obj_fini, NULL); in vc4_ctm_obj_init() 145 vc4_ctm_commit(struct vc4_dev *vc4, struct drm_atomic_commit *state) in vc4_ctm_commit() argument 147 struct vc4_hvs *hvs = vc4->hvs; in vc4_ctm_commit() [all …]
|
| H 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
|
| H A D | vc4_validate.c | 109 struct vc4_dev *vc4 = exec->dev; in vc4_use_bo() local 113 if (WARN_ON_ONCE(vc4->gen > VC4_GEN_4)) in vc4_use_bo() 168 struct vc4_dev *vc4 = exec->dev; in vc4_check_tex_size() local 173 if (WARN_ON_ONCE(vc4->gen > VC4_GEN_4)) in vc4_check_tex_size() 358 struct vc4_dev *vc4 = to_vc4_dev(dev); in validate_tile_binning_config() local 399 if (tile_state_size >= vc4->bin_alloc_size) { in validate_tile_binning_config() 405 bin_slot = vc4_v3d_get_bin_slot(vc4, MAX_SCHEDULE_TIMEOUT); in validate_tile_binning_config() 418 bin_addr = vc4->bin_bo->base.dma_addr + bin_slot * vc4->bin_alloc_size; in validate_tile_binning_config() 425 memset(vc4 in validate_tile_binning_config() 508 struct vc4_dev *vc4 = to_vc4_dev(dev); vc4_validate_bin_cl() local 948 struct vc4_dev *vc4 = to_vc4_dev(dev); vc4_validate_shader_recs() local [all...] |
| H 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()
|
| H A D | vc4_regs.h | 24 WARN_ON(!FIELD_FIT(hvs->vc4->gen == VC4_GEN_6_C ? \ 27 FIELD_PREP(hvs->vc4->gen == VC4_GEN_6_C ? \ 32 #define VC6_GET_FIELD(word, field) FIELD_GET(hvs->vc4->gen == VC4_GEN_6_C ? \ 565 #define SCALER6_DISPX_CTRL0(x) ((hvs->vc4->gen == VC4_GEN_6_C) ? \ 576 #define SCALER6_DISPX_CTRL1(x) ((hvs->vc4->gen == VC4_GEN_6_C) ? \ 583 #define SCALER6_DISPX_BGND(x) ((hvs->vc4->gen == VC4_GEN_6_C) ? \ 588 #define SCALER6_DISPX_LPTRS(x) ((hvs->vc4->gen == VC4_GEN_6_C) ? \ 594 #define SCALER6_DISPX_COB(x) ((hvs->vc4->gen == VC4_GEN_6_C) ? \ 601 #define SCALER6_DISPX_STATUS(x) ((hvs->vc4->gen == VC4_GEN_6_C) ? \ 616 #define SCALER6_DISPX_DL(x) ((hvs->vc4->gen == VC4_GEN_6_C) ? \ [all …]
|
| H A D | vc4_trace.h | 14 #define TRACE_SYSTEM vc4 154 #define TRACE_INCLUDE_PATH ../../drivers/gpu/drm/vc4
|
| H A D | vc4_txp.c | 389 struct vc4_dev *vc4 = to_vc4_dev(drm); in vc4_txp_encoder_disable() local 408 if (vc4->gen < VC4_GEN_6_C) in vc4_txp_encoder_disable()
|
| /linux/Documentation/gpu/ |
| H 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 69 --kunitconfig=drivers/gpu/drm/vc4/tests/.kunitconfig \ [all …]
|
| /linux/drivers/gpu/drm/vc4/tests/ |
| H A D | vc4_mock.c | 163 struct vc4_dev *vc4; in __mock_device() local 170 vc4 = drm_kunit_helper_alloc_drm_device_with_driver(test, dev, in __mock_device() 173 KUNIT_ASSERT_NOT_ERR_OR_NULL(test, vc4); in __mock_device() 175 vc4->dev = dev; in __mock_device() 176 vc4->gen = gen; in __mock_device() 178 vc4->hvs = __vc4_hvs_alloc(vc4, NULL, NULL); in __mock_device() 179 KUNIT_ASSERT_NOT_ERR_OR_NULL(test, vc4->hvs); in __mock_device() 181 drm = &vc4->base; in __mock_device() 196 return vc4; in __mock_device()
|
| /linux/drivers/net/dsa/b53/ |
| H A D | b53_common.c | 386 u8 mgmt, vc0, vc1, vc4 = 0, vc5; in b53_enable_vlan() local 393 b53_read8(dev, B53_VLAN_PAGE, B53_VLAN_CTRL4_25, &vc4); in b53_enable_vlan() 396 b53_read8(dev, B53_VLAN_PAGE, B53_VLAN_CTRL4_63XX, &vc4); in b53_enable_vlan() 399 b53_read8(dev, B53_VLAN_PAGE, B53_VLAN_CTRL4, &vc4); in b53_enable_vlan() 408 vc4 &= ~VC4_ING_VID_CHECK_MASK; in b53_enable_vlan() 410 vc4 |= VC4_ING_VID_VIO_DROP << VC4_ING_VID_CHECK_S; in b53_enable_vlan() 413 vc4 |= VC4_NO_ING_VID_CHK << VC4_ING_VID_CHECK_S; in b53_enable_vlan() 426 vc4 &= ~VC4_ING_VID_CHECK_MASK; in b53_enable_vlan() 430 vc4 |= VC4_ING_VID_VIO_FWD << VC4_ING_VID_CHECK_S; in b53_enable_vlan() 432 vc4 |= VC4_ING_VID_VIO_TO_IMP << VC4_ING_VID_CHECK_S; in b53_enable_vlan() [all …]
|
| /linux/arch/arm/boot/dts/broadcom/ |
| H A D | bcm-cygnus.dtsi | 511 vc4: gpu { label 512 compatible = "brcm,cygnus-vc4";
|
| /linux/arch/arm64/boot/dts/broadcom/ |
| H A D | bcm2712.dtsi | 668 vc4: gpu { label
|
| /linux/ |
| H A D | MAINTAINERS | 9008 F: drivers/gpu/drm/vc4/
|