Re: [PATCH RFT] driver core: faux: allow to set the firmware node for a faux device
From: Greg Kroah-Hartman
Date: Mon Mar 09 2026 - 11:55:57 EST
On Mon, Mar 09, 2026 at 09:16:19PM +0530, Shivendra Pratap wrote:
>
>
> 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.
As this is a "real" device that talks to hardware (i.e. you have a
firmware device representation), please do not use a faux device, that
is not what that interface is for. Instead, as it is a firmware device,
just use a platform one as you already have a representation of it
somewhere in the system, right?
thanks,
greg k-h