Hi Abdellatif, On Fri, 30 Jun 2023 at 13:49, Abdellatif El Khlifi <abdellatif.elkhl...@arm.com> wrote: > > Hi Simon, > > On Tue, Jun 20, 2023 at 11:27:20AM +0100, Simon Glass wrote: > > <abdellatif.elkhl...@arm.com> wrote: > > > > > > Add Arm FF-A support implementing Arm Firmware Framework for Armv8-A v1.0 > > > > > > The Firmware Framework for Arm A-profile processors (FF-A v1.0) [1] > > > describes interfaces (ABIs) that standardize communication > > > between the Secure World and Normal World leveraging TrustZone > > > technology. > > > > > > This driver uses 64-bit registers as per SMCCCv1.2 spec and comes > > > on top of the SMCCC layer. The driver provides the FF-A ABIs needed for > > > querying the FF-A framework from the secure world. > > > > > > The driver uses SMC32 calling convention which means using the first > > > 32-bit data of the Xn registers. > > > > > > All supported ABIs come with their 32-bit version except FFA_RXTX_MAP > > > which has 64-bit version supported. > > > > > > Both 32-bit and 64-bit direct messaging are supported which allows both > > > 32-bit and 64-bit clients to use the FF-A bus. > > > > > > 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. > > > > > > Clients are able to probe then use the FF-A bus by calling the DM class > > > searching APIs (e.g: uclass_first_device). > > > > > > The Secure World is considered as one entity to communicate with > > > using the FF-A bus. FF-A communication is handled by one device and > > > one instance (the bus). This FF-A driver takes care of all the > > > interactions between Normal world and Secure World. > > > > > > The driver exports its operations to be used by upper layers. > > > > > > Exported operations: > > > > > > - ffa_partition_info_get > > > - ffa_sync_send_receive > > > - ffa_rxtx_unmap > > > > > > Generic FF-A methods are implemented in the Uclass (arm-ffa-uclass.c). > > > Arm specific methods are implemented in the Arm driver (arm-ffa.c). > > > > > > For more details please refer to the driver documentation [2]. > > > > > > [1]: https://developer.arm.com/documentation/den0077/latest/ > > > [2]: doc/arch/arm64.ffa.rst > > > > > > Signed-off-by: Abdellatif El Khlifi <abdellatif.elkhl...@arm.com> > > > Cc: Tom Rini <tr...@konsulko.com> > > > Cc: Simon Glass <s...@chromium.org> > > > Cc: Ilias Apalodimas <ilias.apalodi...@linaro.org> > > > Cc: Jens Wiklander <jens.wiklan...@linaro.org> > > > Cc: Heinrich Schuchardt <xypron.g...@gmx.de> > > > > > > --- > > > > > > Changelog: > > > =============== > > > > > > v13: > > > > > > * doc minor change: specify in the readme that the user > > > should call ffa_rxtx_unmap() driver operation to unmap > > > the RX/TX buffers on demand. > > Are you happy with this commit please ? May I add a Reviewed-by ?
Sorry I think I did something wrong on the previous reply. Reviewed-by: Simon Glass <s...@chromium.org> Regards, Simon