meson_encoder_hdmi
struct meson_encoder_hdmi *encoder_hdmi = bridge_to_meson_encoder_hdmi(bridge);
struct meson_encoder_hdmi *encoder_hdmi = bridge_to_meson_encoder_hdmi(bridge);
struct meson_encoder_hdmi *encoder_hdmi = bridge_to_meson_encoder_hdmi(bridge);
struct meson_encoder_hdmi *encoder_hdmi = bridge_to_meson_encoder_hdmi(bridge);
struct meson_encoder_hdmi *encoder_hdmi = bridge_to_meson_encoder_hdmi(bridge);
struct meson_encoder_hdmi *meson_encoder_hdmi;
meson_encoder_hdmi = devm_drm_bridge_alloc(priv->dev,
struct meson_encoder_hdmi,
if (IS_ERR(meson_encoder_hdmi))
return PTR_ERR(meson_encoder_hdmi);
meson_encoder_hdmi->bridge.next_bridge = of_drm_find_and_get_bridge(remote);
if (!meson_encoder_hdmi->bridge.next_bridge) {
meson_encoder_hdmi->bridge.of_node = priv->dev->of_node;
meson_encoder_hdmi->bridge.type = DRM_MODE_CONNECTOR_HDMIA;
meson_encoder_hdmi->bridge.interlace_allowed = true;
drm_bridge_add(&meson_encoder_hdmi->bridge);
meson_encoder_hdmi->priv = priv;
ret = drm_simple_encoder_init(priv->drm, &meson_encoder_hdmi->encoder,
meson_encoder_hdmi->encoder.possible_crtcs = BIT(0);
ret = drm_bridge_attach(&meson_encoder_hdmi->encoder, &meson_encoder_hdmi->bridge, NULL,
meson_encoder_hdmi->connector = drm_bridge_connector_init(priv->drm,
&meson_encoder_hdmi->encoder);
if (IS_ERR(meson_encoder_hdmi->connector)) {
PTR_ERR(meson_encoder_hdmi->connector),
drm_connector_attach_encoder(meson_encoder_hdmi->connector,
&meson_encoder_hdmi->encoder);
drm_atomic_helper_connector_reset(meson_encoder_hdmi->connector);
drm_connector_attach_hdr_output_metadata_property(meson_encoder_hdmi->connector);
drm_connector_attach_max_bpc_property(meson_encoder_hdmi->connector, 8, 8);
meson_encoder_hdmi->connector->ycbcr_420_allowed = true;
cec_fill_conn_info_from_drm(&conn_info, meson_encoder_hdmi->connector);
meson_encoder_hdmi->cec_notifier = notifier;
priv->encoders[MESON_ENC_HDMI] = meson_encoder_hdmi;
container_of(x, struct meson_encoder_hdmi, bridge)
struct meson_encoder_hdmi *meson_encoder_hdmi;
meson_encoder_hdmi = priv->encoders[MESON_ENC_HDMI];
drm_bridge_remove(&meson_encoder_hdmi->bridge);
struct meson_encoder_hdmi *encoder_hdmi = bridge_to_meson_encoder_hdmi(bridge);
struct meson_encoder_hdmi *encoder_hdmi = bridge_to_meson_encoder_hdmi(bridge);
static void meson_encoder_hdmi_set_vclk(struct meson_encoder_hdmi *encoder_hdmi,