From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from phobos.denx.de (phobos.denx.de [85.214.62.61]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 0D4E3C433FE for ; Fri, 14 Oct 2022 10:44:17 +0000 (UTC) Received: from h2850616.stratoserver.net (localhost [IPv6:::1]) by phobos.denx.de (Postfix) with ESMTP id 1C62284EAD; Fri, 14 Oct 2022 12:44:16 +0200 (CEST) Authentication-Results: phobos.denx.de; dmarc=fail (p=none dis=none) header.from=arm.com Authentication-Results: phobos.denx.de; spf=pass smtp.mailfrom=u-boot-bounces@lists.denx.de Received: by phobos.denx.de (Postfix, from userid 109) id B19FA84EAE; Fri, 14 Oct 2022 12:44:13 +0200 (CEST) Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by phobos.denx.de (Postfix) with ESMTP id EA55E84D60 for ; Fri, 14 Oct 2022 12:44:10 +0200 (CEST) Authentication-Results: phobos.denx.de; dmarc=pass (p=none dis=none) header.from=arm.com Authentication-Results: phobos.denx.de; spf=pass smtp.mailfrom=abdellatif.elkhlifi@arm.com Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id 6C3C013D5; Fri, 14 Oct 2022 03:44:16 -0700 (PDT) Received: from e121910.cambridge.arm.com (unknown [10.57.2.187]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id 032EE3F792; Fri, 14 Oct 2022 03:44:07 -0700 (PDT) Date: Fri, 14 Oct 2022 11:44:03 +0100 From: Abdellatif El Khlifi To: Ilias Apalodimas Cc: u-boot@lists.denx.de, nd@arm.com Subject: Re: [PATCH v6 00/10] introduce Arm FF-A support Message-ID: <20221014104403.GA22586@e121910.cambridge.arm.com> References: <20220926140827.15125-1-abdellatif.elkhlifi@arm.com> <20221013103857.614-1-abdellatif.elkhlifi@arm.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.9.4 (2018-02-28) X-BeenThere: u-boot@lists.denx.de X-Mailman-Version: 2.1.39 Precedence: list List-Id: U-Boot discussion List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: u-boot-bounces@lists.denx.de Sender: "U-Boot" X-Virus-Scanned: clamav-milter 0.103.6 at phobos.denx.de X-Virus-Status: Clean On Thu, Oct 13, 2022 at 03:07:39PM +0300, Ilias Apalodimas wrote: > Hi Abdellatif, > > On Thu, Oct 13, 2022 at 11:38:47AM +0100, Abdellatif El Khlifi wrote: > > Adding support for Arm FF-A v1.0 (Arm Firmware Framework for Armv8-A) [6]. > > > > FF-A describes interfaces (ABIs) that standardize communication > > between the Secure World and Normal World. These interfaces enable a pair of > > software sandboxes to communicate with each other. A sandbox aka partition could > > be a VM in the Normal or Secure world, an application in S-EL0, or a > > Trusted OS in S-EL1. > > > > The FF-A transport is implemented as a data bus and a core driver is provided. > > > > 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 > > - The FF-A core driver > > - The FF-A bus is discoverable on demand at runtime > > - The driver provides callbacks to be used by clients to access the FF-A bus > > - FF-A driver can be compiled and used without EFI > > - Support for SMCCCv1.2 x0-x17 registers > > - A new command called armffa is provided as an example of how to access the > > FF-A bus > > - An FF-A Sandbox driver is provided with test cases > > - Support for FF-A MM communication > > - Enabling FF-A and MM communication in Corstone1000 platform > > > > For more details about the FF-A core driver please refer to [7]. > > > > Please find at [8] 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. > > > > Changelog of the major changes: > > =========================== > > > > v6: > > > > * remove clearing x0-x17 registers after SMC calls > > * drop use of EFI runtime support for FF-A (We decided with Linaro to add this later) > > Thanks! This makes the whole process way way easier. I am bit overloaded > atm but I'll try squeezing in reviewing these patches You're welcome! Happy to improve the patchset :) > > > * drop discovery from initcalls (discovery will be on demand by FF-A users) > > * add FF-A runtime discovery at MM communication level > > * update the documentation and move it to doc/arch/arm64.ffa.rst > > > > v5: [5] > > > > * move changelogs in each commit to the changes section > > > > v4: [4] > > > > * add FF-A support README (doc/README.ffa.drv) > > * improving error handling by mapping the FF-A errors to standard errors > > and logs > > * replacing panics with an error log > > * align sandbox driver and tests with the new FF-A driver interfaces > > and new way of error handling > > [...] > > Thanks > /Ilias