Re: [PATCH v2 6/6] drm/vs: Add hdmi driver

From: Maxime Ripard
Date: Thu Oct 26 2023 - 04:07:48 EST


On Thu, Oct 26, 2023 at 01:23:53AM +0300, Dmitry Baryshkov wrote:
> > +static int starfive_hdmi_register(struct drm_device *drm, struct starfive_hdmi *hdmi)
> > +{
> > + struct drm_encoder *encoder = &hdmi->encoder;
> > + struct device *dev = hdmi->dev;
> > +
> > + encoder->possible_crtcs = drm_of_find_possible_crtcs(drm, dev->of_node);
> > +
> > + /*
> > + * If we failed to find the CRTC(s) which this encoder is
> > + * supposed to be connected to, it's because the CRTC has
> > + * not been registered yet. Defer probing, and hope that
> > + * the required CRTC is added later.
> > + */
> > + if (encoder->possible_crtcs == 0)
> > + return -EPROBE_DEFER;
> > +
> > + drm_encoder_helper_add(encoder, &starfive_hdmi_encoder_helper_funcs);
> > +
> > + hdmi->connector.polled = DRM_CONNECTOR_POLL_HPD;
> > +
> > + drm_connector_helper_add(&hdmi->connector,
> > + &starfive_hdmi_connector_helper_funcs);
> > + drmm_connector_init(drm, &hdmi->connector,
> > + &starfive_hdmi_connector_funcs,
> > + DRM_MODE_CONNECTOR_HDMIA,
>
> On an embedded device one can not be so sure. There can be MHL or HDMI
> Alternative Mode. Usually we use drm_bridge here and drm_bridge_connector.

On an HDMI driver, it's far from being a requirement, especially given
the limitations bridges have.

Maxime

Attachment: signature.asc
Description: PGP signature