From: Lee Jones <lee@kernel.org>
To: Brian Mak <makb@juniper.net>
Cc: Herve Codina <herve.codina@bootlin.com>,
Andy Shevchenko <andriy.shevchenko@linux.intel.com>,
linux-kernel@vger.kernel.org, stable@vger.kernel.org
Subject: Re: [PATCH v2] mfd: core: Preserve OF node when ACPI handle is present
Date: Fri, 6 Mar 2026 13:38:06 +0000 [thread overview]
Message-ID: <20260306133806.GM183676@google.com> (raw)
In-Reply-To: <20260226224511.458065-1-makb@juniper.net>
On Thu, 26 Feb 2026, Brian Mak wrote:
> Switch device_set_node to set_primary_fwnode, so that the ACPI fwnode
> does not overwrite the of_node with NULL.
>
> This allows MFD children with both OF nodes and ACPI handles to have OF
> nodes again.
>
> Fixes: 51e3b257099d ("mfd: core: Make use of device_set_node()")
> Cc: stable@vger.kernel.org
> Signed-off-by: Brian Mak <makb@juniper.net>
> ---
> drivers/mfd/mfd-core.c | 15 ++++++++++++++-
> 1 file changed, 14 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/mfd/mfd-core.c b/drivers/mfd/mfd-core.c
> index 6be58eb5a746..5c5465763312 100644
> --- a/drivers/mfd/mfd-core.c
> +++ b/drivers/mfd/mfd-core.c
> @@ -88,7 +88,20 @@ static void mfd_acpi_add_device(const struct mfd_cell *cell,
> }
> }
>
> - device_set_node(&pdev->dev, acpi_fwnode_handle(adev ?: parent));
> + /*
> + * FIXME: The fwnode design doesn't allow proper stacking/sharing. This
So when will this be fixed exactly?
> + * should eventually turn into a device fwnode API call that will allow
> + * prepending to a list of fwnodes (with ACPI taking precedence).
> + *
> + * set_primary_fwnode() is used here, instead of device_set_node(), as
> + * device_set_node() will overwrite the existing fwnode, which may be an
> + * OF node that was populated earlier. To support a use case where ACPI
> + * and OF is used in conjunction, we call set_primary_fwnode() instead.
> + */
> + if (adev)
> + set_primary_fwnode(&pdev->dev, acpi_fwnode_handle(adev));
> + else
> + set_primary_fwnode(&pdev->dev, acpi_fwnode_handle(parent));
> }
> #else
> static inline void mfd_acpi_add_device(const struct mfd_cell *cell,
>
> base-commit: d9d32e5bd5a4e57675f2b70ddf73c3dc5cf44fc2
> --
> 2.25.1
>
--
Lee Jones [李琼斯]
next prev parent reply other threads:[~2026-03-06 13:38 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-02-26 22:45 [PATCH v2] mfd: core: Preserve OF node when ACPI handle is present Brian Mak
2026-02-27 5:40 ` Andy Shevchenko
2026-03-06 13:38 ` Lee Jones [this message]
2026-03-06 14:35 ` Andy Shevchenko
2026-03-10 9:21 ` Lee Jones
2026-03-10 10:25 ` Andy Shevchenko
2026-03-11 17:00 ` Brian Mak
2026-03-11 17:20 ` Andy Shevchenko
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=20260306133806.GM183676@google.com \
--to=lee@kernel.org \
--cc=andriy.shevchenko@linux.intel.com \
--cc=herve.codina@bootlin.com \
--cc=linux-kernel@vger.kernel.org \
--cc=makb@juniper.net \
--cc=stable@vger.kernel.org \
/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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.