Lines Matching refs:encoder_hdmi
54 struct meson_encoder_hdmi *encoder_hdmi = bridge_to_meson_encoder_hdmi(bridge); in meson_encoder_hdmi_attach() local
56 return drm_bridge_attach(bridge->encoder, encoder_hdmi->next_bridge, in meson_encoder_hdmi_attach()
57 &encoder_hdmi->bridge, flags); in meson_encoder_hdmi_attach()
62 struct meson_encoder_hdmi *encoder_hdmi = bridge_to_meson_encoder_hdmi(bridge); in meson_encoder_hdmi_detach() local
64 cec_notifier_conn_unregister(encoder_hdmi->cec_notifier); in meson_encoder_hdmi_detach()
65 encoder_hdmi->cec_notifier = NULL; in meson_encoder_hdmi_detach()
68 static void meson_encoder_hdmi_set_vclk(struct meson_encoder_hdmi *encoder_hdmi, in meson_encoder_hdmi_set_vclk() argument
71 struct meson_drm *priv = encoder_hdmi->priv; in meson_encoder_hdmi_set_vclk()
81 if (encoder_hdmi->output_bus_fmt == MEDIA_BUS_FMT_UYYVYY8_0_5X24) in meson_encoder_hdmi_set_vclk()
102 encoder_hdmi->output_bus_fmt == MEDIA_BUS_FMT_UYYVYY8_0_5X24) in meson_encoder_hdmi_set_vclk()
122 struct meson_encoder_hdmi *encoder_hdmi = bridge_to_meson_encoder_hdmi(bridge); in meson_encoder_hdmi_mode_valid() local
123 struct meson_drm *priv = encoder_hdmi->priv; in meson_encoder_hdmi_mode_valid()
191 struct meson_encoder_hdmi *encoder_hdmi = bridge_to_meson_encoder_hdmi(bridge); in meson_encoder_hdmi_atomic_enable() local
194 struct meson_drm *priv = encoder_hdmi->priv; in meson_encoder_hdmi_atomic_enable()
220 if (encoder_hdmi->output_bus_fmt == MEDIA_BUS_FMT_UYYVYY8_0_5X24) { in meson_encoder_hdmi_atomic_enable()
223 } else if (encoder_hdmi->output_bus_fmt == MEDIA_BUS_FMT_UYVY8_1X16) in meson_encoder_hdmi_atomic_enable()
230 meson_encoder_hdmi_set_vclk(encoder_hdmi, mode); in meson_encoder_hdmi_atomic_enable()
232 if (encoder_hdmi->output_bus_fmt == MEDIA_BUS_FMT_UYYVYY8_0_5X24) in meson_encoder_hdmi_atomic_enable()
236 else if (encoder_hdmi->output_bus_fmt == MEDIA_BUS_FMT_UYVY8_1X16) in meson_encoder_hdmi_atomic_enable()
255 struct meson_encoder_hdmi *encoder_hdmi = bridge_to_meson_encoder_hdmi(bridge); in meson_encoder_hdmi_atomic_disable() local
256 struct meson_drm *priv = encoder_hdmi->priv; in meson_encoder_hdmi_atomic_disable()
307 struct meson_encoder_hdmi *encoder_hdmi = bridge_to_meson_encoder_hdmi(bridge); in meson_encoder_hdmi_atomic_check() local
310 struct meson_drm *priv = encoder_hdmi->priv; in meson_encoder_hdmi_atomic_check()
312 encoder_hdmi->output_bus_fmt = bridge_state->output_bus_cfg.format; in meson_encoder_hdmi_atomic_check()
314 dev_dbg(priv->dev, "output_bus_fmt %lx\n", encoder_hdmi->output_bus_fmt); in meson_encoder_hdmi_atomic_check()
325 struct meson_encoder_hdmi *encoder_hdmi = bridge_to_meson_encoder_hdmi(bridge); in meson_encoder_hdmi_hpd_notify() local
328 if (!encoder_hdmi->cec_notifier) in meson_encoder_hdmi_hpd_notify()
332 edid = drm_bridge_get_edid(encoder_hdmi->next_bridge, encoder_hdmi->connector); in meson_encoder_hdmi_hpd_notify()
336 cec_notifier_set_phys_addr_from_edid(encoder_hdmi->cec_notifier, edid); in meson_encoder_hdmi_hpd_notify()
340 cec_notifier_phys_addr_invalidate(encoder_hdmi->cec_notifier); in meson_encoder_hdmi_hpd_notify()