Re: [PATCH v7 2/5] drm/scdc-helper: Add scdc_status debugfs entry
From: Maxime Ripard
Date: Tue Jul 21 2026 - 09:20:47 EST
On Tue, Jul 21, 2026 at 03:01:12PM +0200, Nicolas Frattaroli wrote:
> On Tuesday, 21 July 2026 14:41:42 Central European Summer Time Maxime Ripard wrote:
> > On Tue, Jul 21, 2026 at 10:58:58AM +0200, Nicolas Frattaroli wrote:
> > > SCDC provides status information on the current display link. At the
> > > very least, it may be useful to expose this info through debugfs.
> > >
> > > Add a debugfs entry for it under the connector, which displays a few
> > > more details parsed out of the SCDC registers. A new
> > > drm_scdc_debugfs_init function can be called by the connector
> > > implementation to initialise the debugfs file.
> > >
> > > Signed-off-by: Nicolas Frattaroli <nicolas.frattaroli@xxxxxxxxxxxxx>
> > > ---
> > > drivers/gpu/drm/display/drm_scdc_helper.c | 184 ++++++++++++++++++++++++++++++
> > > include/drm/display/drm_scdc_helper.h | 32 ++++++
> > > 2 files changed, 216 insertions(+)
> > >
> > > diff --git a/drivers/gpu/drm/display/drm_scdc_helper.c b/drivers/gpu/drm/display/drm_scdc_helper.c
> > > +/**
> > > + * drm_scdc_debugfs_init - Initialize scdc files in connector debugfs
> > > + * @connector: pointer to &struct drm_connector to operate on
> > > + * @root: debugfs &struct dentry for the debugfs root of @connector
> > > + *
> > > + * Creates SCDC-related debugfs files for @connector. Must be called after
> > > + * @root is already created.
> > > + */
> > > +void drm_scdc_debugfs_init(struct drm_connector *connector, struct dentry *root)
> > > +{
> > > + struct scdc_debugfs_priv *priv;
> > > +
> > > + if (!root || !connector)
> > > + return;
> > > +
> > > + priv = drmm_kzalloc(connector->dev, sizeof(*priv), GFP_KERNEL);
> > > + if (!priv)
> > > + return;
> > > +
> > > + priv->connector = connector;
> >
> > You need to take a reference to the connector pointer here with
> > drm_connector_get()
> >
> > With this fixed,
> > Reviewed-by: Maxime Ripard <mripard@xxxxxxxxxx>
> >
> > Maxime
> >
>
> I think sashiko is onto something here with the memleak and the
> entirety of the priv thing should go, which is fairly easy to do.
> We don't reuse the state anymore anyways.
>
> I'll then just pass the connector as the priv, which will be valid
> for the lifetime of the debugfs entry. This means there's no cleanup.
Connectors can be hotplugged, so they have a shorter (or equal) lifetime
than what drmm_kzalloc provides.
Maxime
Attachment:
signature.asc
Description: PGP signature