Received: by 2002:a05:6358:700f:b0:131:369:b2a3 with SMTP id 15csp2677649rwo; Thu, 3 Aug 2023 13:08:30 -0700 (PDT) X-Google-Smtp-Source: APBJJlGRgSkX2gfFfluUrYSaQg7I6phB5YRDeBjf9Wv4/UdNq2S7sL5uGVdPZKpFeJimoIUpvZIb X-Received: by 2002:a05:6a00:854:b0:687:52ae:34ee with SMTP id q20-20020a056a00085400b0068752ae34eemr9822528pfk.5.1691093309713; Thu, 03 Aug 2023 13:08:29 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1691093309; cv=none; d=google.com; s=arc-20160816; b=jd5nNowA20w3d279UQUFrEtrSwdWGGJeHnqP2A9730174S1NVHOP8dl0zBr6OnzZaT pXACkVTp0+rjdOZ4/DfEGbqg8DjiXEAqXt3mVpH1RQp08QNLb+6O7pIomf6wfmIJpp5C iV1I/zYapKu3EyOpA0UmSdrdsz6Qe2AC3UjD98UC94ni6+C7ulRGxO40QXnciES+Cj1m IFjTvKPPNyMmiink9KDHAs6v0hBlcP1xt6z9O4eJ5BVAywYrZMDFmR+KY/AFFYvaMfE4 ypLJ9Vilm2bUPhqhwWCOST2gT5d9WT03srF29FnKOyoE11NIBi+8P1TcI76W6G1ITUfS z/Ww== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :message-id:date:subject:cc:to:from; bh=GJqX3qE3weSXDHzhPWebqLwcWQC/0WuY+Z71i4jStMA=; fh=uIXkm8cj3c9TR2+QLs5NFfyS+JdekmBAQ3a9JCgCFII=; b=VqY2hlHZiD0tkdYJIZWn+B9C/rRnEcBsBlyEsneinlz1zPw6VEQ/pNdPKMIJUJ14sh wMk9NLVRtdUA1hy4vhE9LTtfDsnHlAaVH4teFQTUuZrmXWefDFWKHWVqRXU60OZDeCZM Fv3bSiv0c4Qf7kBdIufKWFJZi7u7/C/O2HPti+2KvKYXpIuMyKODPvvfHmOuVgA3hn+Z s6ZE7GTWrPkhddlL9baAwrdFtOjcge30ROD4KmdjqpRePZgS1zRI5APR1BhJ/1eN7t6V vg5p9CvIgNj6iRZO9H5uNGbHk+hTQwmHeWWNj1xAmZ1KY9e6ItndS7gPnUPDk7hxFcBZ 5TWA== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=arm.com Return-Path: Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id ch12-20020a056a00288c00b00680a955d320si487000pfb.56.2023.08.03.13.08.16; Thu, 03 Aug 2023 13:08:29 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=arm.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S230488AbjHCTC2 (ORCPT + 99 others); Thu, 3 Aug 2023 15:02:28 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:46562 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229766AbjHCTCY (ORCPT ); Thu, 3 Aug 2023 15:02:24 -0400 Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by lindbergh.monkeyblade.net (Postfix) with ESMTP id 4C0CE2D4E for ; Thu, 3 Aug 2023 12:02:22 -0700 (PDT) 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 BB056113E; Thu, 3 Aug 2023 12:03:04 -0700 (PDT) Received: from usa.arm.com (e103737-lin.cambridge.arm.com [10.1.197.49]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPA id 9D2103F6C4; Thu, 3 Aug 2023 12:02:20 -0700 (PDT) From: Sudeep Holla To: linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org Cc: Sudeep Holla , Jens Wiklander , Lucian Paul-Trifu , Marc Bonnici , Coboy Chen Subject: [PATCH RFT 00/12] firmware: arm_ffa: Add FF-A v1.1 notifications support Date: Thu, 3 Aug 2023 20:02:04 +0100 Message-ID: <20230803-ffa_v1-1_notif-v1-0-6613ff2b1f81@arm.com> X-Mailer: git-send-email 2.41.0 MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" X-Mailer: b4 0.12.3 X-Developer-Signature: v=1; a=openpgp-sha256; l=2116; i=sudeep.holla@arm.com; h=from:subject:message-id; bh=8/+/woPUCsRDrEmBsDXsX8w4wqPx+nhTYySmM06ZPOM=; b=owEBbQKS/ZANAwAIAQBBurwxfuKYAcsmYgBky/iMz/bv2SQtquRo8zplLlxuFD2902QwL9wXR oOLa9lUIUCJAjMEAAEIAB0WIQS6ceUSBvMeskPdk+EAQbq8MX7imAUCZMv4jAAKCRAAQbq8MX7i mFiHD/9bD8jxsi92cJBcC/39MAMec+ZMOWedA2b0H5caXwPAMsgoAKe5pFQJNplH8J6tkhZr4kn dST8VkuH6O/rGDOavshMIEDJwDhNU+D9jO9/hdHYME6EsnG7o0QEmnH+SAaVsl/6WLQJ9cyBpw/ WHV/DJ0bJHf9ZfWYkqdXcuVsuO6IDjslnXYsYROTE7HaF3OwMocITaJEJd1LO6qCNwDqBljodrI Uyuwuna+vBBQS1lDgKoxBcQ71oOV5eEiHC5yaD7T2ZSpCz2Mi7hgl8SFX1Y3iS6G6GH393Q7yUp pY4vwKN0PGucnSYe/s6hu3NN+oTI/NUnZWt3dSejJaag5nsH/zeJVd25b3w5TH/YksnwtmDTPF6 0/GdVoXVz6A1iifP81n9zR00uHORxGYuRSlUi5+/e0xOzpaUMfxkhOsyXb4aen9iAROiaeTt3ww 3gKC7tJdURdFwfUo09eCPlDikcNCSnX613iAQBkQMgVWZViNLHpSHeUZyRen/6Q5pJcqUsmnOMK 9620O90uWeepzP/0SkVCypxFmKc7JrD6dk6g9uzqAMWafoDd+Jxsdh2ULUcH9GKmDMyuZDWS2ex ttaHAfycSU56YfNkGxPidYsoozR/fqmxksrVZtVuvqIKkDKWJVrtUUNxQnkxPE46b5rU1mdObHY 9IiUO1iW Oglfo8g== X-Developer-Key: i=sudeep.holla@arm.com; a=openpgp; fpr=7360A21742ADF5A11767C1C139CFD4755FE2D5B4 Content-Transfer-Encoding: 8bit X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00, RCVD_IN_DNSWL_BLOCKED,SPF_HELO_NONE,SPF_NONE,T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org The series adds initial support for the notifications added in FF-A v1.1 The notification mechanism enables a requester/sender endpoint to notify a service provider/receiver endpoint about an event with non-blocking semantics. A notification is akin to the doorbell between two endpoints in a communication protocol that is based upon the doorbell/mailbox mechanism. The framework is responsible for the delivery of the notification from the sender to the receiver without blocking the sender. The receiver endpoint relies on the OS scheduler for allocation of CPU cycles to handle a notification. OS is referred as the receiver’s scheduler in the context of notifications. The framework is responsible for informing the receiver’s scheduler that the receiver must be run since it has a pending notification. Signed-off-by: Sudeep Holla --- Sudeep Holla (12): firmware: arm_ffa: Update the FF-A command list with v1.1 additions firmware: arm_ffa: Implement notification bitmap create and destroy interfaces firmware: arm_ffa: Implement the notification bind and unbind interface firmware: arm_ffa: Implement the FFA_RUN interface firmware: arm_ffa: Implement the FFA_NOTIFICATION_SET interface firmware: arm_ffa: Implement the FFA_NOTIFICATION_GET interface firmware: arm_ffa: Implement the NOTIFICATION_INFO_GET interface firmware: arm_ffa: Initial support for scheduler receiver interrupt firmware: arm_ffa: Add schedule receiver callback mechanism firmware: arm_ffa: Add interfaces to request notification callbacks firmware: arm_ffa: Add interface to send a notification to a given partition firmware: arm_ffa: Add notification handling mechanism drivers/firmware/arm_ffa/driver.c | 700 +++++++++++++++++++++++++++++++++++++- include/linux/arm_ffa.h | 41 +++ 2 files changed, 740 insertions(+), 1 deletion(-) --- base-commit: 5d0c230f1de8c7515b6567d9afba1f196fb4e2f4 change-id: 20230803-ffa_v1-1_notif-e11bc9459962 Best regards, -- Regards, Sudeep