Re: [PATCH v8 03/10] arm_ffa: introduce Arm FF-A low-level driver

Simon Glass
2023-01-19T17:22:26Z

Hi Sudeep,

On Thu, 19 Jan 2023 at 10:09, Sudeep Holla <sudeep.holla@arm.com> wrote:
>
> On Thu, Jan 19, 2023 at 11:57:44AM -0500, Tom Rini wrote:
> >
> > But it's also true that at run-time, within U-Boot, we can modify the
> > device tree we have, with live tree yes? So, the whole series in
> > question here can be done without modifying the base DT and getting in
> > to the further discussions that doing so entails. The assertion is that
> > the software discoverable bus here is sufficient to not need DT, so, OK,
> > lets go.
>
> OK, may be I am not up-to-date on the U-Boot. IIUC, the modifications
> done in the DT by U-Boot is mostly for consumption by the next stage
> loader/OS and not for self-consumption. But if it is for self consumption,
> then good. It helps especially for the subnodes(as Simon referred) or the
> partitions that can be discovered at run-time using FF-A interface.

It's really just dodging the issue though, because you need a
compatible string and you might as well add it to the DT in the source
as do it at runtime.

>
> As mentioned I am not again DT, it is just not needed and especially
> for subnodes it could result in inconsistency b/w what is in DT and
> what the firmware provides. As mentioned in previous response, having a
> simple node that Simon provided as example earlier is fine by me if that
> is the only option to make progress as I just feel it is redundant and
> one can say not scalable(but that is debatable again 😄).

Gosh, how many of these things are you going to add? I believe the
inconsistency argument is dealt with by the bind/probe explanation. It
may be redundant in Linux but I doubt it would hurt there either.

>
> In short, I am not concerned about having simple node, just don't like
> to see entire FF-A bus enumerated in DT as subnodes for reasons mentioned
> already.

Fair enough, and that is agreed on my side. I'll note that with PCI we
sometimes do add nodes in order to provide parameters to the driver,
there being no other sensible way to do this in U-Boot, for example:

https://github.com/u-boot/u-boot/blob/master/arch/x86/dts/chromebook_coral.dts#L183

Regards,
Simon