Re: [PATCH v4 1/2] device property: Add scoped fwnode child node iterators

From: Danilo Krummrich
Date: Thu Sep 04 2025 - 03:03:58 EST


On Thu Sep 4, 2025 at 7:56 AM CEST, Sakari Ailus wrote:
> Hi Danilo,
>
> On Wed, Sep 03, 2025 at 07:22:29PM +0200, Danilo Krummrich wrote:
>> (Cc: Javier)
>>
>> On Wed Sep 3, 2025 at 3:18 PM CEST, Sakari Ailus wrote:
>> > Do we really need the available variant?
>> >
>> > Please see
>> > <URL:https://lore.kernel.org/linux-acpi/Zwj12J5bTNUEnxA0@kekkonen.localdomain/>.
>> >
>> > I'll post a patch to remove fwnode_get_next_available_child_node(), too.
>>
>> Either I'm missing something substantial or the link does indeed not provide an
>> obvious justification of why you want to send a patch to remove
>> fwnode_get_next_available_child_node().
>>
>> Do you mean to say that all fwnode backends always return true for
>> device_is_available() and hence the fwnode API should not make this distinction?
>>
>> I.e. are you referring to the fact that of_fwnode_get_next_child_node() always
>> calls of_get_next_available_child() and swnode has no device_is_available()
>> callback and hence is always available? What about ACPI?
>
> On ACPI there's no such concept on ACPI data nodes so all data nodes are
> considered to be available. So effectively the fwnode_*available*() is
> always the same as the variant without _available().

What about acpi_fwnode_device_is_available()? Is it guaranteed to always
evaluate to true?

If so, to you plan to remove device_is_available() from struct
fwnode_operations and fixup all users of fwnode_get_next_available_child_node()
and fwnode_for_each_available_child_node() as well?