Re: [PATCH RFT] driver core: faux: allow to set the firmware node for a faux device
From: Shivendra Pratap
Date: Mon Mar 09 2026 - 12:03:06 EST
On 06-03-2026 19:54, Bartosz Golaszewski wrote:
On Fri, Mar 6, 2026 at 3:13 PM Greg Kroah-Hartman
<gregkh@xxxxxxxxxxxxxxxxxxx> wrote:
On Fri, Mar 06, 2026 at 03:07:03PM +0100, Bartosz Golaszewski wrote:
On Fri, Mar 6, 2026 at 2:54 PM Greg Kroah-Hartman
<gregkh@xxxxxxxxxxxxxxxxxxx> wrote:
On Fri, Mar 06, 2026 at 02:45:56PM +0100, Bartosz Golaszewski wrote:
Add a new variant of faux_device_create() taking a firmware node handle
as argument and attaching it to the created faux device. This allows
users to define and read device properties using the standard property
accessors.
Why would a faux device have firmware backing? Doesn't that mean it
should be a platform device?
While at it: order includes in faux.c alphabetically for easier
maintenance.
Hint, that should be a separate patch, and is never something that I
enforce or require in .c files I maintain :)
Signed-off-by: Bartosz Golaszewski <bartosz.golaszewski@xxxxxxxxxxxxxxxx>
---
Hi Shivendra et al!
This patch is related to my response to your reboot-mode patch[1].
You should be able to use the new function like:
faux_device_create_full("psci-reboot-mode", NULL, NULL, NULL, of_fwnode_handle(np));
What is the fwnode handle here for? Why is it required at all? What
resources are involved that would want this?
Shivendra creates a faux device that registers with the reboot-mode
subsystem which reads the reboot-mode definitions from devicetree. The
faux device needs to have the "reboot-mode" OF-node attached. In his
current proposal, Shivenda had to bypass faux device's probe() because
he can't have the fwnode attached before probe() is called.
Why would a firmware device be attached to a faux device? A firmware
device is, implicitly, already part of the firmware "device tree", so
there should be something for it to be a child of already in the system.
Shivendra: I rememeber there was an issue with using any proper
devices like platform or auxiliary with this but - as the series is
already at v20 - I can't find the actual discussion. Could you please
describe what the issue with driver matching was?
reboot-mode node is a property of psci which defines the reboot commands. As its not an actual device we wanted to avoid creating platform or aux device. few references here:
https://lore.kernel.org/all/rz7tnl5gg73gtyij3kmwk6hubikfsvu3krekjkpoofpdio6cwe@innio7qvotye/
Till v17, we were exposing an explicit of_node based registration in reboot mode and then registering it from psci driver.
Post this, Lorenzo suggested to move this outside of psci and use a faux device instead.
thanks,
Shivendra