Hello Simon, > > This change introduces SCMI agent driver in U-Boot in the firmware > > U-class. > > (...) > > Changes in v2: > > (...) > > > > Note: review comments on defining a uclass and sandbox for SCMI > > transport drivers are NOT addressed in this v2. Main issue is that > > there is no driver/device defined for SCMI transport layer as well as > > and no defined compatible ID in the SCMI DT bindings documentation. > > I'd still like to see this. You can define an API with a header file. > It is certainly easier if the DT binding can cover the transport type > with a separate subnode.
The bindings are already defined for scmi (ref is the Linux kernel source tree) and there is no sub-node currently defined for the scmi driver transport configuration. It's done through the compatible property and dedicated optional properties. I think changing the scmi DT binding is a bit out of the scope of my patch series :) > But that doesn't stop you creating a uclass > for the transport. It will also allow you to create a sandbox impl so > you can add a test for this code. Ok, thanks, I understand. > > Also the two interfaces should really be in separate files rather than > using #ifdefs, I think. I'll send a v3 with the implementation over several source files and the requested uclass/sandbox. I think I'll create sub-directory drivers/firmware/scmi/ for the source files. Thanks again for the feedback on this v2. Regards, Etienne > > > --- > > drivers/firmware/Kconfig | 20 ++ > > drivers/firmware/Makefile | 1 + > > drivers/firmware/scmi.c | 490 ++++++++++++++++++++++++++++++++++++++ > > include/scmi.h | 82 +++++++ > > 4 files changed, 593 insertions(+) > > create mode 100644 drivers/firmware/scmi.c > > create mode 100644 include/scmi.h > > > > Regards, > Simon