
On Wed, Apr 13, 2022 at 12:46:07PM -0400, Tom Rini wrote:
On Wed, Apr 13, 2022 at 03:20:23PM +0100, Abdellatif El Khlifi wrote:
[...]
Since we can not add an FFA node in the device tree, we will make FFA a discoverable bus. So, we will manually create the udevice, binding it to the driver and probing it. Manually means directly calling device_bind and device_probe APIs.
Any thoughts about this approach ?
How is it both discoverable and doesn't have a device tree node, in the kernel?
I don't clearly understand your query here fully. Generally if some h/w is discoverable, then we don't need to have device node in the DT as it may result in conflicts.
In this we can query f/w to check if a particular feature is implemented or not before we initialise the FF-A bus. One we discover the partitions we add devices for each and the individual device and associated driver gets probed based on UUID.
I have neither seen the u-boot implementation nor fully understand how device/driver model differs from the kernel one to comment on details. I am happy to provide any more details if required.
-- Regards, Sudeep