[PATCH] drm: document better that drivers shouldn't use drm_minor directly

Daniel Vetter daniel at ffwll.ch
Thu Jan 5 13:39:45 UTC 2023


On Thu, Jan 05, 2023 at 02:39:21PM +0200, Jani Nikula wrote:
> On Wed, 04 Jan 2023, Daniel Vetter <daniel.vetter at ffwll.ch> wrote:
> > The documentation for struct drm_minor already states this, but that's
> > not always that easy to find.
> >
> > Also due to historical reasons we still have the minor-centric (like
> > drm_debugfs_create_files), but since this is now getting fixed we can
> > put a few more pointers in place as to how this should be done
> > ideally.
> 
> Care to expand on the vague "this is now getting fixed" part a bit?
> 
> I've seen the "Introduce debugfs device-centered functions" series from
> Maíra, but that doesn't solve everything. Not everything can use
> drm_debugfs_add_file().

Yeah this is only step 1 of the entire project, there's still more in the
todo entry:

https://dri.freedesktop.org/docs/drm/gpu/todo.html#clean-up-the-debugfs-support

We need the same trick on the connector and crtc too. I think with those
we should have most things covered?
-Daniel

> 
> BR,
> Jani.
> 
> >
> > Motvated by some discussion with Rodrigo on irc about how drm/xe
> > should lay out its sysfs interfaces.
> >
> > Cc: Rodrigo Vivi <rodrigo.vivi at intel.com>
> > Cc: Wambui Karuga <wambui.karugax at gmail.com>
> > Cc: Maíra Canal <mcanal at igalia.com>
> > Cc: Maxime Ripard <maxime at cerno.tech>
> > Cc: Melissa Wen <mwen at igalia.com>
> > Signed-off-by: Daniel Vetter <daniel.vetter at intel.com>
> > ---
> >  include/drm/drm_device.h | 17 +++++++++++++++--
> >  1 file changed, 15 insertions(+), 2 deletions(-)
> >
> > diff --git a/include/drm/drm_device.h b/include/drm/drm_device.h
> > index 9923c7a6885e..b40e07e004ee 100644
> > --- a/include/drm/drm_device.h
> > +++ b/include/drm/drm_device.h
> > @@ -87,10 +87,23 @@ struct drm_device {
> >  	 */
> >  	void *dev_private;
> >  
> > -	/** @primary: Primary node */
> > +	/**
> > +	 * @primary:
> > +	 *
> > +	 * Primary node. Drivers should not interact with this
> > +	 * directly. debugfs interface can be registered with
> > +	 * drm_debugfs_add_file(), and sysfs should be directly added on the
> > +	 * hardwire struct device @dev.
> > +	 */
> >  	struct drm_minor *primary;
> >  
> > -	/** @render: Render node */
> > +	/**
> > +	 * @render:
> > +	 *
> > +	 * Render node. Drivers should not interact with this directly ever.
> > +	 * Drivers should not expose any additional interfaces in debugfs or
> > +	 * sysfs on thise node.
> > +	 */
> >  	struct drm_minor *render;
> >  
> >  	/**
> 
> -- 
> Jani Nikula, Intel Open Source Graphics Center

-- 
Daniel Vetter
Software Engineer, Intel Corporation
http://blog.ffwll.ch


More information about the dri-devel mailing list