[PATCH v19 0/9] introduce Arm FF-A support

Simon Glass sjg at chromium.org
Wed Aug 9 04:03:50 CEST 2023


Hi,

On Tue, 8 Aug 2023 at 13:25, Tom Rini <trini at konsulko.com> wrote:
>
> On Fri, Aug 04, 2023 at 02:33:36PM +0100, Abdellatif El Khlifi wrote:
>
> > Adding support for Arm FF-A v1.0 (Arm Firmware Framework for Armv8-A) [A].
> >
> > FF-A specifies interfaces that enable a pair of software execution environments aka partitions to
> > communicate with each other. A partition could be a VM in the Normal or Secure world, an
> > application in S-EL0, or a Trusted OS in S-EL1.
> >
> > FF-A is a discoverable bus and similar to architecture features.
> > FF-A bus is discovered using ARM_SMCCC_FEATURES mechanism performed
> > by the PSCI driver.
> >
> >    => dm tree
> >
> >     Class     Index  Probed  Driver                Name
> >    -----------------------------------------------------------
> >    ...
> >     firmware      0  [ + ]   psci                      |-- psci
> >     ffa                   0  [   ]   arm_ffa               |   `-- arm_ffa
> >    ...
> >
> > Clients are able to probe then use the FF-A bus by calling the DM class
> > searching APIs (e.g: uclass_first_device).
> >
> > This implementation of the specification provides support for Aarch64.
> >
> > The FF-A driver uses the SMC ABIs defined by the FF-A specification to:
> >
> >     - Discover the presence of secure partitions (SPs) of interest
> >     - Access an SP's service through communication protocols
> >       (e.g: EFI MM communication protocol)
> >
> > The FF-A support provides the following features:
> >
> >     - Being generic by design and can be used by any Arm 64-bit platform
> >     - FF-A support can be compiled and used without EFI
> >     - Support for SMCCCv1.2 x0-x17 registers
> >     - Support for SMC32 calling convention
> >     - Support for 32-bit and 64-bit FF-A direct messaging
> >     - Support for FF-A MM communication (compatible with EFI boot time)
> >     - Enabling FF-A and MM communication in Corstone1000 platform as a use case
> >     - A Uclass driver providing generic FF-A methods.
> >     - An Arm FF-A device driver providing Arm-specific methods and reusing the Uclass methods.
> >     - A sandbox emulator for Arm FF-A, emulates the FF-A side of the Secure World and provides
> >       FF-A ABIs inspection methods.
> >     - An FF-A sandbox device driver for FF-A communication with the emulated Secure World.
> >       The driver leverages the FF-A Uclass to establish FF-A communication.
> >     - Sandbox FF-A test cases.
> >     - A new command called armffa is provided as an example of how to access the
> >       FF-A bus
> >
> > For more details about the FF-A support please refer to [B] and refer to [C] for
> > how to use the armffa command.
> >
> > Please find at [D] an example of the expected boot logs when enabling
> > FF-A support for a platform. In this example the platform is
> > Corstone1000. But it can be any Arm 64-bit platform.
>
> For the series, applied to u-boot/master, thanks!

Oh dear. Running this I see this debug output. Please can you suppress it?

Emulated FF-A framework discovery
FF-A emulator ready to use
FF-A driver 1.0
FF-A framework 1.0
FF-A versions are compatible
Test: dm_test_power_regulator_autoset_list: regulator.c (flat tree)
Emulated FF-A framework discovery
FF-A emulator ready to use
FF-A driver 1.0
FF-A framework 1.0
FF-A versions are compatible
Emulated FF-A framework discovery
FF-A emulator ready to use
FF-A driver 1.0
FF-A framework 1.0
FF-A versions are compatible

Regards,
Simon


More information about the U-Boot mailing list