From: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
To: Sakari Ailus <sakari.ailus@linux.intel.com>,
Andrew Lunn <andrew@lunn.ch>
Cc: linux-acpi@vger.kernel.org,
"Rafael J. Wysocki" <rafael@kernel.org>,
Len Brown <lenb@kernel.org>, Daniel Scally <djrscally@gmail.com>,
Heikki Krogerus <heikki.krogerus@linux.intel.com>,
Danilo Krummrich <dakr@kernel.org>
Subject: Re: [PATCH 00/14] Align availability checks on fwnode child node enumeration
Date: Wed, 17 Sep 2025 10:07:53 +0300 [thread overview]
Message-ID: <aMpeSeKSFlyJSvQL@smile.fi.intel.com> (raw)
In-Reply-To: <20250916160129.3955410-1-sakari.ailus@linux.intel.com>
+Cc: Andrew
(as I know he is familiar with fwnode concept and related pieces in the net
subsystem, he might be interested to see this series earlier).
On Tue, Sep 16, 2025 at 07:01:15PM +0300, Sakari Ailus wrote:
> Hello everyone,
>
> Historically the fwnode property API has enumerated only available device
> nodes on OF whereas on ACPI, also nodes that haven't been present in the
> system have been provided. Both OF and ACPI have similar concepts of node
> availbility, on OF it's the "status" property present on device nodes and
> on ACPI the _STA object evaluates to device present, enabled and
> functional bits, of which the present and functional bits are currently
> being used to determine whether to enumerate a device.
>
> Two additional functions, fwnode_get_next_available_child_node() and
> fwnode_for_each_available_child_node(), have been provided to enumerate
> the available nodes only on ACPI, whereas on OF the implementation has
> been the same on the non-available variants. The motivation for providing
> these has very likely been to provide fwnode variants of the similarly
> named functions but the difference isn't justifiable from API consistency
> viewpoint.
>
> This set switches the users away from the "available" fwnode API functions
> and later on removes them, aligning the functionality on all fwnode
> backends.
>
> I'm posting this to linux-acpi and a small set of reviewers for now and
> once we're happy with the ACPI / fwnode changes, to the full list.
>
> Sakari Ailus (14):
> ACPI: property: Use ACPI functions in acpi_graph_get_next_endpoint()
> only
> ACPI: property: Make acpi_get_next_subnode() static
> ACPI: property: Return present device nodes only on fwnode interface
> property: Drop DEVICE_DISABLED flag in
> fwnode_graph_get_endpoint_by_id()
> property: Drop DEVICE_DISABLED flag in
> fwnode_graph_get_endpoint_count()
> property: Document that fwnode API returns available nodes
> driver core: Use fwnode_for_each_child_node() instead
> net: lan966x: Use fwnode_for_each_child_node() instead
> Input: touch-overlay - Use fwnode_for_each_child_node() instead
> media: thp7312: Use fwnode_for_each_child_node() instead
> leds: Use fwnode_for_each_child_node() instead
> leds: Use fwnode_get_next_child_node() instead
> property: Drop functions operating on "available" child nodes
> spi: cadence: Remove explicit device node availability check
--
With Best Regards,
Andy Shevchenko
prev parent reply other threads:[~2025-09-17 7:07 UTC|newest]
Thread overview: 27+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-09-16 16:01 [PATCH 00/14] Align availability checks on fwnode child node enumeration Sakari Ailus
2025-09-16 16:01 ` [PATCH 01/14] ACPI: property: Use ACPI functions in acpi_graph_get_next_endpoint() only Sakari Ailus
2025-09-17 7:17 ` Andy Shevchenko
2025-09-17 11:50 ` Sakari Ailus
2025-09-16 16:01 ` [PATCH 02/14] ACPI: property: Make acpi_get_next_subnode() static Sakari Ailus
2025-09-17 7:18 ` Andy Shevchenko
2025-09-16 16:01 ` [PATCH 03/14] ACPI: property: Return present device nodes only on fwnode interface Sakari Ailus
2025-09-17 7:58 ` Andy Shevchenko
2025-09-16 16:01 ` [PATCH 04/14] property: Drop DEVICE_DISABLED flag in fwnode_graph_get_endpoint_by_id() Sakari Ailus
2025-09-17 8:39 ` Andy Shevchenko
2025-09-17 12:19 ` Sakari Ailus
2025-09-16 16:01 ` [PATCH 05/14] property: Drop DEVICE_DISABLED flag in fwnode_graph_get_endpoint_count() Sakari Ailus
2025-09-18 19:23 ` Andy Shevchenko
2025-09-16 16:01 ` [PATCH 06/14] property: Document that fwnode API returns available nodes Sakari Ailus
2025-09-22 8:03 ` Andy Shevchenko
2025-09-16 16:01 ` [PATCH 07/14] driver core: Use fwnode_for_each_child_node() instead Sakari Ailus
2025-09-23 5:43 ` Andy Shevchenko
2025-09-16 16:01 ` [PATCH 08/14] net: lan966x: " Sakari Ailus
2025-09-16 16:01 ` [PATCH 09/14] Input: touch-overlay - " Sakari Ailus
2025-09-16 16:01 ` [PATCH 10/14] media: thp7312: " Sakari Ailus
2025-09-16 16:01 ` [PATCH 11/14] leds: " Sakari Ailus
2025-09-16 16:01 ` [PATCH 12/14] leds: Use fwnode_get_next_child_node() instead Sakari Ailus
2025-09-23 5:46 ` Andy Shevchenko
2025-09-23 8:29 ` Sakari Ailus
2025-09-16 16:01 ` [PATCH 13/14] property: Drop functions operating on "available" child nodes Sakari Ailus
2025-09-16 16:01 ` [PATCH 14/14] spi: cadence: Remove explicit device node availability check Sakari Ailus
2025-09-17 7:07 ` Andy Shevchenko [this message]
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=aMpeSeKSFlyJSvQL@smile.fi.intel.com \
--to=andriy.shevchenko@linux.intel.com \
--cc=andrew@lunn.ch \
--cc=dakr@kernel.org \
--cc=djrscally@gmail.com \
--cc=heikki.krogerus@linux.intel.com \
--cc=lenb@kernel.org \
--cc=linux-acpi@vger.kernel.org \
--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