Re: [PATCH 04/15] drivers: thermal: tsens: Add debugfs support
From: Amit Kucheria
Date: Wed Aug 21 2019 - 08:55:54 EST
On Mon, Aug 19, 2019 at 7:57 PM Stephen Boyd <swboyd@xxxxxxxxxxxx> wrote:
>
> Quoting Amit Kucheria (2019-08-19 00:58:23)
> > On Sat, Aug 17, 2019 at 9:37 AM Stephen Boyd <swboyd@xxxxxxxxxxxx> wrote:
> > > > +
> > > > +static void tsens_debug_init(struct platform_device *pdev)
> > > > +{
> > > > + struct tsens_priv *priv = platform_get_drvdata(pdev);
> > > > + struct dentry *root, *file;
> > > > +
> > > > + root = debugfs_lookup("tsens", NULL);
> > >
> > > Does this get created many times? Why doesn't tsens have a pointer to
> > > the root saved away somewhere globally?
> > >
> >
> > I guess we could call the statement below to create the root dir and
> > save away the pointer. I was trying to avoid #ifdef CONFIG_DEBUG_FS in
> > init_common() and instead have all of it in a single function that
> > gets called once per instance of the tsens controller.
>
> Or call this code many times and try to create the tsens node if
> !tsens_root exists where the variable is some global.
So I didn't quite understand this statement. The change you're
requesting is that the 'root' variable below should be a global?
tsens_probe() will get called twice on platforms with two instances of
the controller. So I will need to check some place if the 'tsens' root
dir already exists in debugfs, no? That is what I'm doing below.
> >
> > > > + if (!root)
> > > > + priv->debug_root = debugfs_create_dir("tsens", NULL);
> > > > + else
> > > > + priv->debug_root = root;
> > > > +