Re: [Freedreno] [PATCH] drm: improve the documentation of connector hpd ops

From: Dmitry Baryshkov
Date: Sun Dec 03 2023 - 13:15:12 EST


On Sun, 3 Dec 2023 at 16:24, Laurent Pinchart
<laurent.pinchart@xxxxxxxxxxxxxxxx> wrote:
>
> Hi Abhinav,
>
> Thank you for the patch (and thank to Dmitry for pinging me on IRC, this
> patch got burried in my inbox).
>
> On Wed, Sep 20, 2023 at 01:13:58PM -0700, Abhinav Kumar wrote:
> > While making the changes in [1], it was noted that the documentation
> > of the enable_hpd() and disable_hpd() does not make it clear that
> > these ops should not try to do hpd state maintenance and should only
> > attempt to enable/disable hpd related hardware for the connector.
>
> s/attempt to //

I can probably fix this while applying the patch.

>
> >
> > The state management of these calls to make sure these calls are
> > balanced is handled by the DRM core and we should keep it that way
> > to minimize the overhead in the drivers which implement these ops.
> >
> > [1]: https://patchwork.freedesktop.org/patch/558387/
> >
>
> You could add a
>
> Suggested-by: Laurent Pinchart <laurent.pinchart@xxxxxxxxxxxxxxxx>
>
> > Signed-off-by: Abhinav Kumar <quic_abhinavk@xxxxxxxxxxx>
>
> Reviewed-by: Laurent Pinchart <laurent.pinchart@xxxxxxxxxxxxxxxx>
>
> > ---
> > include/drm/drm_modeset_helper_vtables.h | 10 ++++++++++
> > 1 file changed, 10 insertions(+)
> >
> > diff --git a/include/drm/drm_modeset_helper_vtables.h b/include/drm/drm_modeset_helper_vtables.h
> > index e3c3ac615909..a33cf7488737 100644
> > --- a/include/drm/drm_modeset_helper_vtables.h
> > +++ b/include/drm/drm_modeset_helper_vtables.h
> > @@ -1154,6 +1154,11 @@ struct drm_connector_helper_funcs {
> > * This operation is optional.
> > *
> > * This callback is used by the drm_kms_helper_poll_enable() helpers.
> > + *
> > + * This operation does not need to perform any hpd state tracking as
> > + * the DRM core handles that maintenance and ensures the calls to enable
> > + * and disable hpd are balanced.
> > + *
> > */
> > void (*enable_hpd)(struct drm_connector *connector);
> >
> > @@ -1165,6 +1170,11 @@ struct drm_connector_helper_funcs {
> > * This operation is optional.
> > *
> > * This callback is used by the drm_kms_helper_poll_disable() helpers.
> > + *
> > + * This operation does not need to perform any hpd state tracking as
> > + * the DRM core handles that maintenance and ensures the calls to enable
> > + * and disable hpd are balanced.
> > + *
> > */
> > void (*disable_hpd)(struct drm_connector *connector);
> > };
>
> --
> Regards,
>
> Laurent Pinchart



--
With best wishes
Dmitry