From: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
To: Bartosz Golaszewski <brgl@bgdev.pl>
Cc: Linus Walleij <linus.walleij@linaro.org>,
Daniel Scally <djrscally@gmail.com>,
Heikki Krogerus <heikki.krogerus@linux.intel.com>,
Sakari Ailus <sakari.ailus@linux.intel.com>,
Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
"Rafael J. Wysocki" <rafael@kernel.org>,
Danilo Krummrich <dakr@kernel.org>,
Philipp Zabel <p.zabel@pengutronix.de>,
Krzysztof Kozlowski <krzk@kernel.org>,
linux-gpio@vger.kernel.org, linux-kernel@vger.kernel.org,
linux-acpi@vger.kernel.org,
Bartosz Golaszewski <bartosz.golaszewski@linaro.org>
Subject: Re: [PATCH v3 02/10] software node: increase the reference of the swnode by its fwnode
Date: Fri, 31 Oct 2025 14:31:56 +0200 [thread overview]
Message-ID: <aQSsPIJ26Sx2WqhE@smile.fi.intel.com> (raw)
In-Reply-To: <CAMRc=MdfbbkWBeAgw3G=k7xgSc8TPhZQ56ks9Or9p9Ah-y5YQw@mail.gmail.com>
On Fri, Oct 31, 2025 at 05:27:10AM -0500, Bartosz Golaszewski wrote:
> On Fri, 31 Oct 2025 10:44:46 +0100, Andy Shevchenko
> <andriy.shevchenko@linux.intel.com> said:
> > On Fri, Oct 31, 2025 at 10:03:47AM +0100, Bartosz Golaszewski wrote:
> >> On Fri, Oct 31, 2025 at 9:30 AM Andy Shevchenko
> >> <andriy.shevchenko@linux.intel.com> wrote:
> >> > 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@linux.intel.com> said:
...
> >> > > 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.
> >> > */
> >>
> >> But this is incorrect: we're not really doing that. We either use the
> >> firmware node reference directly OR cast the software node to its
> >> firmware node representation. We ALWAYS use the firmware node API
> >> below.
> >>
> >> This really *is* evident from the code but if it'll make you happy and
> >> make you sign off on this, I'll add a corrected version.
> >
> > The comment should answer to the Q: "Why the heck are we calling fwnode APIs here?"
> >
> >> IMO It's completely redundant.
> >
> > This is unusual case for swnode API (see other functions, they call directly
> > the low-level implementation instead of going to a round via fwnode). That's
> > why I insist on a comment of this piece. It may be obvious for you, but the
> > unprepared read would be surprised by this inconsistency.
> >
>
> I propose to have the following:
>
> + /*
> + * A software node can reference other software nodes or firmware
> + * nodes (which are the abstraction layer sitting on top of them).
> + * This is done to ensure we can create references to static software
> + * nodes before they're registered with the firmware node framework.
> + * At the time the reference is being resolved, we expect the swnodes
> + * in question to already have been registered and to be backed by
> + * a firmware node. This is why we use the fwnode API below to read the
> + * relevant properties and bump the reference count.
> + */
>
> This at least adds relevant information on *why* we're using the fwnode API.
Yes, works for me, thanks!
--
With Best Regards,
Andy Shevchenko
next prev parent reply other threads:[~2025-10-31 12:32 UTC|newest]
Thread overview: 29+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-10-29 12:28 [PATCH v3 00/10] reset: rework reset-gpios handling Bartosz Golaszewski
2025-10-29 12:28 ` [PATCH v3 01/10] software node: read the reference args via the fwnode API Bartosz Golaszewski
2025-10-30 9:33 ` Andy Shevchenko
2025-10-29 12:28 ` [PATCH v3 02/10] software node: increase the reference of the swnode by its fwnode Bartosz Golaszewski
2025-10-30 9:34 ` Andy Shevchenko
2025-10-30 10:33 ` Bartosz Golaszewski
2025-10-31 8:30 ` Andy Shevchenko
2025-10-31 9:03 ` Bartosz Golaszewski
2025-10-31 9:44 ` Andy Shevchenko
2025-10-31 10:27 ` Bartosz Golaszewski
2025-10-31 12:31 ` Andy Shevchenko [this message]
2025-10-29 12:28 ` [PATCH v3 03/10] software node: allow referencing firmware nodes Bartosz Golaszewski
2025-10-29 12:51 ` Philipp Zabel
2025-10-29 12:55 ` Bartosz Golaszewski
2025-10-29 13:16 ` Philipp Zabel
2025-10-30 9:41 ` Andy Shevchenko
2025-10-30 11:17 ` Bartosz Golaszewski
2025-10-31 8:23 ` Andy Shevchenko
2025-10-31 9:00 ` Bartosz Golaszewski
2025-10-31 9:46 ` Andy Shevchenko
2025-10-29 12:28 ` [PATCH v3 04/10] gpio: swnode: don't use the swnode's name as the key for GPIO lookup Bartosz Golaszewski
2025-10-29 12:28 ` [PATCH v3 05/10] gpio: swnode: allow referencing GPIO chips by firmware nodes Bartosz Golaszewski
2025-10-29 12:28 ` [PATCH v3 06/10] gpio: swnode: update the property definitions Bartosz Golaszewski
2025-10-29 12:28 ` [PATCH v3 07/10] reset: order includes alphabetically in reset/core.c Bartosz Golaszewski
2025-10-29 12:28 ` [PATCH v3 08/10] reset: make the provider of reset-gpios the parent of the reset device Bartosz Golaszewski
2025-10-29 12:28 ` [PATCH v3 09/10] reset: gpio: convert the driver to using the auxiliary bus Bartosz Golaszewski
2025-10-29 12:28 ` [PATCH v3 10/10] reset: gpio: use software nodes to setup the GPIO lookup Bartosz Golaszewski
2025-10-29 13:16 ` [PATCH v3 00/10] reset: rework reset-gpios handling Philipp Zabel
2025-10-29 13:19 ` Bartosz Golaszewski
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=aQSsPIJ26Sx2WqhE@smile.fi.intel.com \
--to=andriy.shevchenko@linux.intel.com \
--cc=bartosz.golaszewski@linaro.org \
--cc=brgl@bgdev.pl \
--cc=dakr@kernel.org \
--cc=djrscally@gmail.com \
--cc=gregkh@linuxfoundation.org \
--cc=heikki.krogerus@linux.intel.com \
--cc=krzk@kernel.org \
--cc=linus.walleij@linaro.org \
--cc=linux-acpi@vger.kernel.org \
--cc=linux-gpio@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=p.zabel@pengutronix.de \
--cc=rafael@kernel.org \
--cc=sakari.ailus@linux.intel.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox