On Mon, Apr 03, 2023 at 12:59:06PM +0300, Ilias Apalodimas wrote: > On Sun, Apr 02, 2023 at 02:41:17PM +1200, Simon Glass wrote: > > Hi Abdellatif, > > > > On Wed, 29 Mar 2023 at 05:12, Abdellatif El Khlifi < > > abdellatif.elkhl...@arm.com> wrote: > > > > > > turn on EFI MM communication > > > > > > On corstone1000 platform MM communication between u-boot > > > and the secure world (Optee) is done using the FF-A bus. > > > > > > 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> > > > > > > --- > > > Changelog: > > > =============== > > > > > > v9: update copyright string > > > > > > v8: > > > > > > * drop OP-TEE configs from Corstone-1000 defconfig > > > > > > v7: > > > > > > * improve the definition of FFA_SHARED_MM_BUFFER_ADDR and > > > FFA_SHARED_MM_BUFFER_OFFSET > > > * update FFA_SHARED_MM_BUFFER_ADDR value > > > > > > v6: > > > > > > * corstone-1000: enable optee driver > > > * corstone-1000: remove CONFIG_ARM_FFA_EFI_RUNTIME_MODE from the defconfig > > > > > > v4: > > > > > > * corstone-1000: turn on EFI MM communication > > > > > > configs/corstone1000_defconfig | 2 ++ > > > include/configs/corstone1000.h | 15 +++++++++++++-- > > > 2 files changed, 15 insertions(+), 2 deletions(-) > > > > > > diff --git a/configs/corstone1000_defconfig > > b/configs/corstone1000_defconfig > > > index 74250c7524..a7bfcbb2b9 100644 > > > --- a/configs/corstone1000_defconfig > > > +++ b/configs/corstone1000_defconfig > > > @@ -52,3 +52,5 @@ CONFIG_DM_SERIAL=y > > > CONFIG_USB=y > > > CONFIG_USB_ISP1760=y > > > CONFIG_ERRNO_STR=y > > > +CONFIG_EFI_MM_COMM_TEE=y > > > +CONFIG_ARM_FFA_TRANSPORT=y > > > diff --git a/include/configs/corstone1000.h > > b/include/configs/corstone1000.h > > > index 3347c11792..4ef1f05e40 100644 > > > --- a/include/configs/corstone1000.h > > > +++ b/include/configs/corstone1000.h > > > @@ -1,9 +1,11 @@ > > > /* SPDX-License-Identifier: GPL-2.0+ */ > > > /* > > > - * (C) Copyright 2022 ARM Limited > > > * (C) Copyright 2022 Linaro > > > * Rui Miguel Silva <rui.si...@linaro.org> > > > - * Abdellatif El Khlifi <abdellatif.elkhl...@arm.com> > > > + * Copyright 2022-2023 Arm Limited and/or its affiliates < > > open-source-off...@arm.com> > > > + * > > > + * Authors: > > > + * Abdellatif El Khlifi <abdellatif.elkhl...@arm.com> > > > * > > > * Configuration for Corstone1000. Parts were derived from other ARM > > > * configurations. > > > @@ -14,6 +16,15 @@ > > > > > > #include <linux/sizes.h> > > > > > > +#define FFA_SHARED_MM_BUFFER_SIZE SZ_4K /* 4 KB */ > > > + > > > +/* > > > + * shared buffer physical address used for communication between > > > + * u-boot and the MM SP > > > + */ > > > +#define FFA_SHARED_MM_BUFFER_ADDR 0x02000000UL > > > +#define FFA_SHARED_MM_BUFFER_OFFSET 0 > > > + > > > #define V2M_BASE 0x80000000 > > > > > > #define CFG_PL011_CLOCK 50000000 > > > -- > > > 2.25.1 > > > > > > > As a higher-level question, could this whole FFA implementation code be put > > into Linux or fwupd? > > Hi Simon, FF-A is basically a communication mechanism between the secure > and non-secure world for Arm. Linux has support for it. fwupd should be > completely agnostic to the protocol
Hi Simon, I'd like to add to Ilias's explanation the following helpful resources: - The patchset cover letter for a high level overview of what FF-A is about [1]. - A closer look at the FF-A implementation in U-Boot the readme [2]. Cheers [1]: https://lore.kernel.org/all/20230328161157.219375-1-abdellatif.elkhl...@arm.com/ [2]: doc/arch/arm64.ffa.rst > > Regards > /Ilias > > > > Regards, > > Simon