Lines Matching full:vc4
21 * DOC: VC4 Falcon HDMI module
102 #define HDMI_READ(offset) readl(vc4->hdmi->hdmicore_regs + offset)
103 #define HDMI_WRITE(offset, val) writel(val, vc4->hdmi->hdmicore_regs + offset)
104 #define HD_READ(offset) readl(vc4->hdmi->hd_regs + offset)
105 #define HD_WRITE(offset, val) writel(val, vc4->hdmi->hd_regs + offset)
107 /* VC4 HDMI encoder KMS struct */
121 /* VC4 HDMI connector KMS struct */
200 struct vc4_dev *vc4 = to_vc4_dev(dev); in vc4_hdmi_debugfs_regs() local
221 struct vc4_dev *vc4 = to_vc4_dev(dev); in vc4_hdmi_dump_regs() local
240 struct vc4_dev *vc4 = to_vc4_dev(dev); in vc4_hdmi_connector_detect() local
242 if (vc4->hdmi->hpd_gpio) { in vc4_hdmi_connector_detect()
243 if (gpio_get_value_cansleep(vc4->hdmi->hpd_gpio) ^ in vc4_hdmi_connector_detect()
244 vc4->hdmi->hpd_active_low) in vc4_hdmi_connector_detect()
246 cec_phys_addr_invalidate(vc4->hdmi->cec_adap); in vc4_hdmi_connector_detect()
250 if (drm_probe_ddc(vc4->hdmi->ddc)) in vc4_hdmi_connector_detect()
255 cec_phys_addr_invalidate(vc4->hdmi->cec_adap); in vc4_hdmi_connector_detect()
272 struct vc4_dev *vc4 = to_vc4_dev(dev); in vc4_hdmi_connector_get_modes() local
276 edid = drm_get_edid(connector, vc4->hdmi->ddc); in vc4_hdmi_connector_get_modes()
277 cec_s_phys_addr_from_edid(vc4->hdmi->cec_adap, edid); in vc4_hdmi_connector_get_modes()
350 struct vc4_dev *vc4 = to_vc4_dev(dev); in vc4_hdmi_stop_packet() local
364 struct vc4_dev *vc4 = to_vc4_dev(dev); in vc4_hdmi_write_infoframe() local
451 struct vc4_dev *vc4 = drm->dev_private; in vc4_hdmi_set_audio_infoframe() local
452 struct vc4_hdmi *hdmi = vc4->hdmi; in vc4_hdmi_set_audio_infoframe()
475 struct vc4_dev *vc4 = to_vc4_dev(dev); in vc4_hdmi_encoder_disable() local
476 struct vc4_hdmi *hdmi = vc4->hdmi; in vc4_hdmi_encoder_disable()
497 struct vc4_dev *vc4 = to_vc4_dev(dev); in vc4_hdmi_encoder_enable() local
498 struct vc4_hdmi *hdmi = vc4->hdmi; in vc4_hdmi_encoder_enable()
702 * As stated in RPi's vc4 firmware "HDMI state machine (HSM) clock must in vc4_hdmi_encoder_mode_valid()
705 * operation." This conflicts with bcm2835's vc4 documentation, which in vc4_hdmi_encoder_mode_valid()
708 * Real life tests reveal that vc4's firmware statement holds up, and in vc4_hdmi_encoder_mode_valid()
733 struct vc4_dev *vc4 = to_vc4_dev(drm); in vc4_hdmi_audio_set_mai_clock() local
754 struct vc4_dev *vc4 = to_vc4_dev(drm); in vc4_hdmi_set_n_cts() local
790 struct vc4_dev *vc4 = to_vc4_dev(encoder->dev); in vc4_hdmi_audio_startup() local
824 struct vc4_dev *vc4 = to_vc4_dev(drm); in vc4_hdmi_audio_reset() local
858 struct vc4_dev *vc4 = to_vc4_dev(drm); in vc4_hdmi_audio_hw_params() local
930 struct vc4_dev *vc4 = to_vc4_dev(drm); in vc4_hdmi_audio_trigger() local
1032 .name = "vc4-hdmi-hifi",
1046 .name = "vc4-hdmi-cpu-dai-component",
1059 .name = "vc4-hdmi-cpu-dai",
1135 card->name = "vc4-hdmi"; in vc4_hdmi_audio_init()
1158 struct vc4_dev *vc4 = priv; in vc4_cec_irq_handler_thread() local
1159 struct vc4_hdmi *hdmi = vc4->hdmi; in vc4_cec_irq_handler_thread()
1178 static void vc4_cec_read_msg(struct vc4_dev *vc4, u32 cntrl1) in vc4_cec_read_msg() argument
1180 struct cec_msg *msg = &vc4->hdmi->cec_rx_msg; in vc4_cec_read_msg()
1197 struct vc4_dev *vc4 = priv; in vc4_cec_irq_handler() local
1198 struct vc4_hdmi *hdmi = vc4->hdmi; in vc4_cec_irq_handler()
1209 vc4_cec_read_msg(vc4, cntrl1); in vc4_cec_irq_handler()
1225 struct vc4_dev *vc4 = cec_get_drvdata(adap); in vc4_hdmi_cec_adap_enable() local
1268 struct vc4_dev *vc4 = cec_get_drvdata(adap); in vc4_hdmi_cec_adap_log_addr() local
1279 struct vc4_dev *vc4 = cec_get_drvdata(adap); in vc4_hdmi_cec_adap_transmit() local
1312 struct vc4_dev *vc4 = drm->dev_private; in vc4_hdmi_bind() local
1397 vc4->hdmi = hdmi; in vc4_hdmi_bind()
1420 vc4, "vc4", in vc4_hdmi_bind()
1442 "vc4 hdmi cec", vc4); in vc4_hdmi_bind()
1477 struct vc4_dev *vc4 = drm->dev_private; in vc4_hdmi_unbind() local
1478 struct vc4_hdmi *hdmi = vc4->hdmi; in vc4_hdmi_unbind()
1489 vc4->hdmi = NULL; in vc4_hdmi_unbind()