[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <aQRztwrOFCWk8IG8@smile.fi.intel.com>
Date: Fri, 31 Oct 2025 10:30:47 +0200
From: Andy Shevchenko <andriy.shevchenko@...ux.intel.com>
To: Bartosz Golaszewski <brgl@...ev.pl>
Cc: Linus Walleij <linus.walleij@...aro.org>,
Daniel Scally <djrscally@...il.com>,
Heikki Krogerus <heikki.krogerus@...ux.intel.com>,
Sakari Ailus <sakari.ailus@...ux.intel.com>,
Greg Kroah-Hartman <gregkh@...uxfoundation.org>,
"Rafael J. Wysocki" <rafael@...nel.org>,
Danilo Krummrich <dakr@...nel.org>,
Philipp Zabel <p.zabel@...gutronix.de>,
Krzysztof Kozlowski <krzk@...nel.org>, linux-gpio@...r.kernel.org,
linux-kernel@...r.kernel.org, linux-acpi@...r.kernel.org,
Bartosz Golaszewski <bartosz.golaszewski@...aro.org>
Subject: Re: [PATCH v3 02/10] software node: increase the reference of the
swnode by its fwnode
On Thu, Oct 30, 2025 at 03:33:02AM -0700, Bartosz Golaszewski wrote:
> On Thu, 30 Oct 2025 10:34:46 +0100, Andy Shevchenko
> <andriy.shevchenko@...ux.intel.com> said:
> > On Wed, Oct 29, 2025 at 01:28:36PM +0100, Bartosz Golaszewski wrote:
> >>
> >> Once we allow software nodes to reference other kinds of firmware nodes,
> >> the node in args will no longer necessarily be a software node so bump
> >> its reference count using its fwnode interface.
> >
> > Same, a short comment (or an update of a kernel-doc if present, I don't
> > remember).
> >
>
> Andy: the resulting code after patch 3/10 looks like this:
>
> struct fwnode_handle *refnode;
>
> (...)
Let's say something like below to be put here
/*
* The reference in software node may refer to a node of a different type.
* Depending on the type we choose either to use software node directly, or
* delegate that to fwnode API.
*/
> if (ref->swnode)
> refnode = software_node_fwnode(ref->swnode);
> else if (ref->fwnode)
> refnode = ref->fwnode;
> else
> return -EINVAL;
>
> if (!refnode)
> return -ENOENT;
>
> if (nargs_prop) {
> error = fwnode_property_read_u32(refnode, nargs_prop,
> &nargs_prop_val);
> if (error)
> return error;
>
> nargs = nargs_prop_val;
> }
>
> (...)
>
> args->fwnode = fwnode_handle_get(refnode);
>
> I'm typically all for comments but this code really is self-commenting.
> There's nothing ambiguous about the above. We know the refnode is an fwnode,
> we assign it and we pass it to the fwnode_ routines. What exactly would you
> add here that would make it clearer?
See above.
--
With Best Regards,
Andy Shevchenko
Powered by blists - more mailing lists