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 8899CEB64D7 for ; Fri, 30 Jun 2023 12:49:31 +0000 (UTC) Received: from h2850616.stratoserver.net (localhost [IPv6:::1]) by phobos.denx.de (Postfix) with ESMTP id ECA9184691; Fri, 30 Jun 2023 14:49:28 +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 7FA4A8469B; Fri, 30 Jun 2023 14:49:27 +0200 (CEST) Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by phobos.denx.de (Postfix) with ESMTP id 5730D8468A for ; Fri, 30 Jun 2023 14:49:24 +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 5602AD75; Fri, 30 Jun 2023 05:50:07 -0700 (PDT) Received: from e130802.arm.com (unknown [10.57.77.148]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id C02B83F64C; Fri, 30 Jun 2023 05:49:22 -0700 (PDT) Date: Fri, 30 Jun 2023 13:49:16 +0100 From: Abdellatif El Khlifi To: Simon Glass Cc: u-boot@lists.denx.de, nd@arm.com Subject: Re: [PATCH v13 04/10] arm_ffa: introduce Arm FF-A support Message-ID: <20230630124916.GA131777@e130802.arm.com> References: <20230606134856.GA1871110@bill-the-cat> <20230616152817.319869-1-abdellatif.elkhlifi@arm.com> <20230616152817.319869-5-abdellatif.elkhlifi@arm.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: 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.8 at phobos.denx.de X-Virus-Status: Clean Hi Simon, On Tue, Jun 20, 2023 at 11:27:20AM +0100, Simon Glass wrote: > 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 > > Cc: Tom Rini > > Cc: Simon Glass > > Cc: Ilias Apalodimas > > Cc: Jens Wiklander > > Cc: Heinrich Schuchardt > > > > --- > > > > 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 ? Cheers Abdellatif