Hi Harsimran, On Wed, 29 Jul 2026 at 11:51, Harsimran Singh Tungal <[email protected]> wrote: > > The FF-A EFI runtime variable path uses a shared MM communication buffer > after ExitBootServices(). Before sending a request to the MM secure > partition the buffer range must be flushed, and after the response the > same range must be invalidated. > > Keep flush_dcache_range() and invalidate_dcache_range() available from > EFI runtime code on arm64, together with the underlying assembly range > helpers, so the FF-A runtime transport can maintain the shared buffer > without using whole-cache operations after ExitBootServices(). > > Reviewed-by: Simon Glass <[email protected]> > Signed-off-by: Harsimran Singh Tungal <[email protected]> > --- > arch/arm/cpu/armv8/cache.S | 8 ++++++++ > arch/arm/cpu/armv8/cache_v8.c | 13 +++++++++---- > 2 files changed, 17 insertions(+), 4 deletions(-) > > diff --git a/arch/arm/cpu/armv8/cache.S b/arch/arm/cpu/armv8/cache.S > index c9e46859b4f..916558fe477 100644 > --- a/arch/arm/cpu/armv8/cache.S > +++ b/arch/arm/cpu/armv8/cache.S > @@ -169,7 +169,11 @@ ENDPROC(__asm_flush_l3_dcache) > * x0: start address > * x1: end address > */ > +#ifdef CONFIG_EFI_LOADER
This isn't needed in the general case, and I would prefer to keep those functions inaccessible to the OS after EBS. Can't we limit it even more on the ifdefery, and only keep them at runtime for FF-A? [...] Thanks /Ilias
