[PATCH v10 10/10] arm_ffa: efi: corstone1000: enable MM communication

Ilias Apalodimas ilias.apalodimas at linaro.org
Mon Apr 3 11:59:06 CEST 2023


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.elkhlifi at 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.elkhlifi at arm.com>
> > Cc: Tom Rini <trini at konsulko.com>
> > Cc: Simon Glass <sjg at chromium.org>
> > Cc: Ilias Apalodimas <ilias.apalodimas at linaro.org>
> > Cc: Jens Wiklander <jens.wiklander at 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.silva at linaro.org>
> > - * Abdellatif El Khlifi <abdellatif.elkhlifi at arm.com>
> > + * Copyright 2022-2023 Arm Limited and/or its affiliates <
> open-source-office at arm.com>
> > + *
> > + * Authors:
> > + *   Abdellatif El Khlifi <abdellatif.elkhlifi at 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

Regards
/Ilias
>
> Regards,
> Simon


More information about the U-Boot mailing list