| /linux/drivers/gpu/drm/vc4/ |
| H A D | vc4_bo.c | 45 static void vc4_bo_stats_print(struct drm_printer *p, struct vc4_dev *vc4) in vc4_bo_stats_print() argument 49 for (i = 0; i < vc4->num_labels; i++) { in vc4_bo_stats_print() 50 if (!vc4->bo_labels[i].num_allocated) in vc4_bo_stats_print() 54 vc4->bo_labels[i].name, in vc4_bo_stats_print() 55 vc4->bo_labels[i].size_allocated / 1024, in vc4_bo_stats_print() 56 vc4->bo_labels[i].num_allocated); in vc4_bo_stats_print() 59 mutex_lock(&vc4->purgeable.lock); in vc4_bo_stats_print() 60 if (vc4->purgeable.num) in vc4_bo_stats_print() 62 vc4->purgeable.size / 1024, vc4->purgeable.num); in vc4_bo_stats_print() 64 if (vc4->purgeable.purged_num) in vc4_bo_stats_print() [all …]
|
| H A D | vc4_gem.c | 44 struct vc4_dev *vc4 = to_vc4_dev(dev); in vc4_queue_hangcheck() local 46 mod_timer(&vc4->hangcheck.timer, in vc4_queue_hangcheck() 76 struct vc4_dev *vc4 = to_vc4_dev(dev); in vc4_get_hang_state_ioctl() local 81 if (WARN_ON_ONCE(vc4->gen > VC4_GEN_4)) in vc4_get_hang_state_ioctl() 84 if (!vc4->v3d) { in vc4_get_hang_state_ioctl() 89 spin_lock_irqsave(&vc4->job_lock, irqflags); in vc4_get_hang_state_ioctl() 90 kernel_state = vc4->hang_state; in vc4_get_hang_state_ioctl() 92 spin_unlock_irqrestore(&vc4->job_lock, irqflags); in vc4_get_hang_state_ioctl() 102 spin_unlock_irqrestore(&vc4->job_lock, irqflags); in vc4_get_hang_state_ioctl() 106 vc4->hang_state = NULL; in vc4_get_hang_state_ioctl() [all …]
|
| H A D | vc4_perfmon.c | 22 struct vc4_dev *vc4; in vc4_perfmon_get() local 27 vc4 = perfmon->dev; in vc4_perfmon_get() 28 if (WARN_ON_ONCE(vc4->gen > VC4_GEN_4)) in vc4_perfmon_get() 36 struct vc4_dev *vc4; in vc4_perfmon_put() local 41 vc4 = perfmon->dev; in vc4_perfmon_put() 42 if (WARN_ON_ONCE(vc4->gen > VC4_GEN_4)) in vc4_perfmon_put() 49 void vc4_perfmon_start(struct vc4_dev *vc4, struct vc4_perfmon *perfmon) in vc4_perfmon_start() argument 54 if (WARN_ON_ONCE(vc4->gen > VC4_GEN_4)) in vc4_perfmon_start() 57 if (WARN_ON_ONCE(!perfmon || vc4->active_perfmon)) in vc4_perfmon_start() 66 vc4->active_perfmon = perfmon; in vc4_perfmon_start() [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() 95 struct vc4_dev *vc4 = to_vc4_dev(dev); in vc4_ctm_obj_fini() local 97 drm_atomic_private_obj_fini(&vc4->ctm_manager); in vc4_ctm_obj_fini() 100 static int vc4_ctm_obj_init(struct vc4_dev *vc4) in vc4_ctm_obj_init() argument 104 drm_modeset_lock_init(&vc4->ctm_state_lock); in vc4_ctm_obj_init() 110 drm_atomic_private_obj_init(&vc4->base, &vc4->ctm_manager, &ctm_state->base, in vc4_ctm_obj_init() 113 return drmm_add_action_or_reset(&vc4->base, vc4_ctm_obj_fini, NULL); in vc4_ctm_obj_init() 136 vc4_ctm_commit(struct vc4_dev *vc4, struct drm_atomic_state *state) in vc4_ctm_commit() argument 138 struct vc4_hvs *hvs = vc4->hvs; in vc4_ctm_commit() [all …]
|
| H A D | vc4_drv.c | 96 struct vc4_dev *vc4 = to_vc4_dev(dev); in vc4_get_param_ioctl() local 103 if (WARN_ON_ONCE(vc4->gen > VC4_GEN_4)) in vc4_get_param_ioctl() 106 if (!vc4->v3d) in vc4_get_param_ioctl() 111 ret = vc4_v3d_pm_get(vc4); in vc4_get_param_ioctl() 115 vc4_v3d_pm_put(vc4); in vc4_get_param_ioctl() 118 ret = vc4_v3d_pm_get(vc4); in vc4_get_param_ioctl() 122 vc4_v3d_pm_put(vc4); in vc4_get_param_ioctl() 125 ret = vc4_v3d_pm_get(vc4); in vc4_get_param_ioctl() 129 vc4_v3d_pm_put(vc4); in vc4_get_param_ioctl() 149 struct vc4_dev *vc4 = to_vc4_dev(dev); in vc4_open() local [all …]
|
| H A D | vc4_crtc.c | 83 vc4_crtc_get_cob_allocation(struct vc4_dev *vc4, unsigned int channel) in vc4_crtc_get_cob_allocation() argument 85 struct vc4_hvs *hvs = vc4->hvs; in vc4_crtc_get_cob_allocation() 93 if (vc4->gen >= VC4_GEN_6_C) { in vc4_crtc_get_cob_allocation() 113 struct vc4_dev *vc4 = to_vc4_dev(dev); in vc4_crtc_get_scanout_position() local 114 struct vc4_hvs *hvs = vc4->hvs; in vc4_crtc_get_scanout_position() 134 if (vc4->gen >= VC4_GEN_6_C) in vc4_crtc_get_scanout_position() 147 if (vc4->gen >= VC4_GEN_6_C) in vc4_crtc_get_scanout_position() 162 cob_size = vc4_crtc_get_cob_allocation(vc4, channel); in vc4_crtc_get_scanout_position() 242 struct vc4_dev *vc4 = to_vc4_dev(vc4_crtc->base.dev); in vc4_get_fifo_full_level() local 289 if (vc4->gen == VC4_GEN_4) in vc4_get_fifo_full_level() [all …]
|
| H A D | vc4_plane.c | 282 struct vc4_dev *vc4 = to_vc4_dev(plane->dev); in vc4_plane_duplicate_state() local 283 struct vc4_hvs *hvs = vc4->hvs; in vc4_plane_duplicate_state() 337 struct vc4_dev *vc4 = to_vc4_dev(plane->dev); in vc4_plane_destroy_state() local 338 struct vc4_hvs *hvs = vc4->hvs; in vc4_plane_destroy_state() 572 struct vc4_dev *vc4 = to_vc4_dev(vc4_state->base.plane->dev); in vc4_write_tpz() local 575 WARN_ON_ONCE(vc4->gen > VC4_GEN_6_D); in vc4_write_tpz() 602 struct vc4_dev *vc4 = to_vc4_dev(vc4_state->base.plane->dev); in vc4_write_ppf() local 607 WARN_ON_ONCE(vc4->gen > VC4_GEN_6_D); in vc4_write_ppf() 664 struct vc4_dev *vc4 = to_vc4_dev(state->plane->dev); in __vc4_lbm_size() local 701 lbm = roundup(lbm, vc4->gen == VC4_GEN_5 ? 128 : 64); in __vc4_lbm_size() [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_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_hdmi.c | 437 struct vc4_dev *vc4 = to_vc4_dev(connector->dev); in vc4_hdmi_connector_get_modes() local 442 if (!vc4->hvs->vc5_hdmi_enable_hdmi_20) { in vc4_hdmi_connector_get_modes() 884 struct vc4_dev *vc4 = to_vc4_dev(drm); in vc4_hdmi_encoder_post_crtc_disable() local 901 if (vc4->gen >= VC4_GEN_6_C) in vc4_hdmi_encoder_post_crtc_disable() 913 if (vc4->gen < VC4_GEN_6_C) { in vc4_hdmi_encoder_post_crtc_disable() 1725 struct vc4_dev *vc4 = to_vc4_dev(connector->dev); in vc4_hdmi_connector_clock_valid() local 1730 if (!vc4->hvs->vc5_hdmi_enable_hdmi_20 && clock > HDMI_14_MAX_TMDS_CLK) in vc4_hdmi_connector_clock_valid() 1734 if (!vc4->hvs->vc5_hdmi_enable_4096by2160 && in vc4_hdmi_connector_clock_valid() 2117 struct vc4_dev *vc4 = to_vc4_dev(drm); in vc4_hdmi_audio_prepare() local 2175 switch (vc4->gen) { in vc4_hdmi_audio_prepare() [all …]
|
| H A D | vc4_validate_shaders.c | 783 struct vc4_dev *vc4 = to_vc4_dev(shader_obj->base.dev); in vc4_validate_shader() local 791 if (WARN_ON_ONCE(vc4->gen > VC4_GEN_4)) in vc4_validate_shader()
|
| /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/arch/arm/boot/dts/broadcom/ |
| H A D | bcm2835-common.dtsi | 144 vc4: gpu { label 145 compatible = "brcm,bcm2835-vc4";
|
| H A D | bcm2711-rpi-cm4-io.dts | 166 &vc4 {
|
| H A D | bcm2711-rpi-4-b.dts | 262 &vc4 {
|
| H A D | bcm-cygnus.dtsi | 511 vc4: gpu { label 512 compatible = "brcm,cygnus-vc4";
|
| /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/drivers/gpu/drm/ |
| H A D | Makefile | 184 obj-$(CONFIG_DRM_VC4) += vc4/
|
| H A D | Kconfig | 337 source "drivers/gpu/drm/vc4/Kconfig"
|
| /linux/ |
| H A D | MAINTAINERS | 8793 F: drivers/gpu/drm/vc4/
|