From patchwork Thu Feb 27 15:09:21 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Ayan Kumar Halder X-Patchwork-Id: 13994763 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 lists.xenproject.org (lists.xenproject.org [192.237.175.120]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 3CB59C19F2E for ; Thu, 27 Feb 2025 15:09:45 +0000 (UTC) Received: from list by lists.xenproject.org with outflank-mailman.898209.1306788 (Exim 4.92) (envelope-from ) id 1tnfW5-0007Wz-8o; Thu, 27 Feb 2025 15:09:37 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 898209.1306788; Thu, 27 Feb 2025 15:09:37 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1tnfW5-0007Ws-5v; Thu, 27 Feb 2025 15:09:37 +0000 Received: by outflank-mailman (input) for mailman id 898209; Thu, 27 Feb 2025 15:09:36 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1tnfW4-0007DN-Bs for xen-devel@lists.xenproject.org; Thu, 27 Feb 2025 15:09:36 +0000 Received: from NAM11-DM6-obe.outbound.protection.outlook.com (mail-dm6nam11on20623.outbound.protection.outlook.com [2a01:111:f403:2415::623]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id da65101e-f51c-11ef-9aaf-95dc52dad729; Thu, 27 Feb 2025 16:09:35 +0100 (CET) Received: from CH5PR04CA0015.namprd04.prod.outlook.com (2603:10b6:610:1f4::16) by DS7PR12MB6262.namprd12.prod.outlook.com (2603:10b6:8:96::7) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8466.20; Thu, 27 Feb 2025 15:09:29 +0000 Received: from CH1PEPF0000AD74.namprd04.prod.outlook.com (2603:10b6:610:1f4:cafe::40) by CH5PR04CA0015.outlook.office365.com (2603:10b6:610:1f4::16) with Microsoft SMTP Server (version=TLS1_3, cipher=TLS_AES_256_GCM_SHA384) id 15.20.8489.18 via Frontend Transport; Thu, 27 Feb 2025 15:09:29 +0000 Received: from SATLEXMB03.amd.com (165.204.84.17) by CH1PEPF0000AD74.mail.protection.outlook.com (10.167.244.52) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.8489.16 via Frontend Transport; Thu, 27 Feb 2025 15:09:27 +0000 Received: from SATLEXMB06.amd.com (10.181.40.147) by SATLEXMB03.amd.com (10.181.40.144) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.39; Thu, 27 Feb 2025 09:09:27 -0600 Received: from SATLEXMB04.amd.com (10.181.40.145) by SATLEXMB06.amd.com (10.181.40.147) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.39; Thu, 27 Feb 2025 09:09:26 -0600 Received: from xcbayankuma40.xilinx.com (10.180.168.240) by SATLEXMB04.amd.com (10.181.40.145) with Microsoft SMTP Server id 15.1.2507.39 via Frontend Transport; Thu, 27 Feb 2025 09:09:26 -0600 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: da65101e-f51c-11ef-9aaf-95dc52dad729 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=mVagu+dokxMlY4TnwtGNtLNVEkWpcq1fzixE/IdUYZjfXUTjTmw3mtVapRQ8JvBIrau6LT93/ymtLop1Brx+BGUIHldUn0N2Uq+A0Sl46RoFIJu54rSx20/JbH1yrb+/bJAj/IV2iHbUaFsb5C1r2KeBm255YzM4LZVM6DQYikrM5SZEVnru1cccHcqF3RcSAaGACa5agQAC9MdaKn8Ib17zVpcUu8+B36aMyEUj5ZgdbN9CQ1oO2XX2uCNwscYM1vL2In/159+gMR86yUcrnS9bXlnlewisx+3B0NRktDt68rPFW2bvdS1eO7+4qG7/QW8oKYh5hUiAJy9r1WW74g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=pi0/fe4dO83Oi5LFT7o5fOTze/E2+nqDOjqABYbYQY8=; b=DTXcwXApzDWGzh1D8Tkk0omYFzOK+qXPvHYQaBROJ6o4wKigIMSh/HHu/GMg+JueuMdvVk/te6JRuLGZJGSdOkY/yTmpcIMN6k57MhK7cFE7g2iY/NTozchB9uxXfMH3nyCkws4ahl8VpCiRgAePUA+qm7onjSoRuoU+seB/qF9CYp63AwRlKbMji95QlqQu6weddkudD3EKbT6c035BiK46FX+bl1ASyt7AqJZmcYiN49eUPmHF6/DhL1rVW3y/NeXkOc55j8Zl3vfWZGG14v+gLzH3gm8M3IKXLoWUZGbDoM0TtkFx3sysq3C2opxUR9whoKCNJxFtr295uTyEqQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none (0) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=pi0/fe4dO83Oi5LFT7o5fOTze/E2+nqDOjqABYbYQY8=; b=0/qr5qXWzhfALOnZzl5UG0IYZ3lVapC3Ma+er/FDSlI6GaGFrjwqzoubDZcG847ElkpMifIRb6h71YPvjOec6/ca3yQ8z/SQfuU3198MCaiSuvSb9pOAZNV/iKvKVFzxwAAD6H45+I+Vqn4ks770Hn/JmDytMtS6h48jUF7QxA8= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17) smtp.mailfrom=amd.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=amd.com; Received-SPF: Pass (protection.outlook.com: domain of amd.com designates 165.204.84.17 as permitted sender) receiver=protection.outlook.com; client-ip=165.204.84.17; helo=SATLEXMB03.amd.com; pr=C From: Ayan Kumar Halder To: CC: Ayan Kumar Halder , Stefano Stabellini , Bertrand Marquis , Michal Orzel , Artem Mygaiev Subject: [PATCH v2 1/2] docs: fusa: Define the requirements for XEN_VERSION hypercall. Date: Thu, 27 Feb 2025 15:09:21 +0000 Message-ID: <20250227150922.3965010-1-ayan.kumar.halder@amd.com> X-Mailer: git-send-email 2.25.1 MIME-Version: 1.0 X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CH1PEPF0000AD74:EE_|DS7PR12MB6262:EE_ X-MS-Office365-Filtering-Correlation-Id: 380cdc07-7427-4a4c-d699-08dd5740baae X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|36860700013|82310400026|1800799024|376014; X-Microsoft-Antispam-Message-Info: gHtnSnlvkTgKVW6jXBfCX4npWLXaU3MZEm+Y9rYK0G71PazLRKySX3nPOJ2BhT+RqKz7PgFfqjQ2UX/t+nYM1nYpyEFueqDf2RQB5Fzy62sWHoe6Lioxe3zZA8Fnh2Ud5L7ggvu4iEGthRmDK6Ik0GhrQgRV09LXy+DkhzPtPnpvI1b/f5o5DRkGCy5WvsMxKUdOSWNuZkyYZXTBbIgu+rnWSnsXmJxNovmpfJ5S3/4AEUtaJODat+kbWlpu/UOpaSFDv4l0DlsWnJLH9/P7P0eI0EBngbn1Un7Ctn4BHiV8JWs9ocuD2Ijfp2oQBHTNFCkv1bsr/e1TugYISRkVMjJ8J8sOghqmcZ80zyJDU+xoerAZuBw8PjwaDyIeFEVHR1m61n6lbk4zNdChGSc/TLBk7cguN4eEhg88bq2OyrkZvJ02V1pidWFhK3upvJtG9EHTIdYnN+s+kkIZxCqNPK6BkO/qd/KmsQ5pkiJn29WoHoHojU2KpbnnHpmDp13e3WzYmnxc4iUS5FILaQLpcuqo5RbLf104c7ZLRpGmUW0MGWUifLpns2C8KJUPfwG9aqSJx0ZO/tdA41kjhUpXz/frZEFS6YXFaXN85OwviScwGXSBREej5kbLX3DnuQjr5w848cDTEsL6Ni/sQGpIVs4WKv/OtK/77uTajQxE1vAUfDUkhdQ0hCB93HAKA5qSgqasmmuc/bD3/+dZpdNXqUPzAr4xWGhvIPWASrpYr6KmPPGbBlsIn8zs4aCzSw7EofaC2he0A2vgMHxMuney3/k1njWDzQAd8YFew3IsjHohxY26ylmXmBNJFqd2dZBI5aU6fCSzRCX7+eCfLXpMOjYMPP2QdmnFHwIS4io/o3RhUC5ttsGzcm99EzuzI4h31qISvPg1q0VIcmMGpMaTNcOcUibZIGWRPxOo8o0lQgc+xYYy5q2O/diS9H4ypvVuPu47lEpK8tFol0g5rGsRcmkw4r95I63WqKTricp1ksySl4YV8VYxaB/0BJ4rIUFDwBBgWbDxP7EboNEpwIU7l55+5e23fQirU8Q/P1R5QuEzs4wPw4V2s0HZxs5bQJfHrnBv9Vd2+R7kLeW5Y+bNwREKhsoU7kUaSpN9riY3/7ZPb3mETw9B5MQ8DJOoFVNzizioOcWC4hWpxz/iU/TiX+svefCyyPa2RU9PTWvuJlT/nqkLy0SOf6n0UaKWwZFwQjlSnNqRvYG2dCuANQnkgRVNGEc0dPaQSVUnhj/Qucpovo5BQa+kRTfu/ewFt3kvokqOlSmoqN+5qn6LLz4vU6+fAbF9LdQFVbpPZ92IJ3GJDK7qX9ZNf1g1Hqy9LuR1wpMQyP4CJV2BHV0SJAcETpF2nNyUfqOmBFg0koIsw1Ag3DLfS3r9T21jbPUNLxb/ZLO6Ff6YJOJ0eqKov37ppooS6lWKh5qnVHsremLwjdk= X-Forefront-Antispam-Report: CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB03.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230040)(36860700013)(82310400026)(1800799024)(376014);DIR:OUT;SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 27 Feb 2025 15:09:27.6928 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 380cdc07-7427-4a4c-d699-08dd5740baae X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB03.amd.com] X-MS-Exchange-CrossTenant-AuthSource: CH1PEPF0000AD74.namprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: DS7PR12MB6262 In the current patch, we have defined the requirements which are common for all the commands. Signed-off-by: Ayan Kumar Halder --- Changes from - v1 - 1. Fixed `XenProd~version_hyp_ret_val~1` requirement as Xen does not return 0 for success in all the cases. 2. Reworded the requirements so as to write them from Xen's perspective (not domain's perspective). .../fusa/reqs/design-reqs/arm64/hypercall.rst | 55 +++++++++++++++++ docs/fusa/reqs/index.rst | 2 + docs/fusa/reqs/market-reqs/reqs.rst | 16 +++++ .../reqs/product-reqs/version_hypercall.rst | 61 +++++++++++++++++++ 4 files changed, 134 insertions(+) create mode 100644 docs/fusa/reqs/design-reqs/arm64/hypercall.rst create mode 100644 docs/fusa/reqs/product-reqs/version_hypercall.rst diff --git a/docs/fusa/reqs/design-reqs/arm64/hypercall.rst b/docs/fusa/reqs/design-reqs/arm64/hypercall.rst new file mode 100644 index 0000000000..ffd883260c --- /dev/null +++ b/docs/fusa/reqs/design-reqs/arm64/hypercall.rst @@ -0,0 +1,55 @@ +.. SPDX-License-Identifier: CC-BY-4.0 + +Hypercall +========= + +Instruction +----------- + +`XenSwdgn~arm64_hyp_instr~1` + +Description: +Xen shall treat domain hypercall exception as hypercall requests. + +Rationale: + +Comments: +Hypercall is one of the communication mechanism between Xen and domains. +Domains use hypercalls for various requests to Xen. +Domains use 'hvc' instruction to invoke hypercalls. + +Covers: + - `XenProd~version_hyp_first_param~1` + - `XenProd~version_hyp_second_param~1` + +Parameters +---------- + +`XenSwdgn~arm64_hyp_param~1` + +Description: +Xen shall use x0 to read the first parameter, x1 for second parameter and so +on, for domain hypercall requests. + +Rationale: + +Comments: + +Covers: + - `XenProd~version_hyp_first_param~1` + - `XenProd~version_hyp_second_param~1` + +Return value +------------ + +`XenSwdgn~arm64_ret_val~1` + +Description: +Xen shall store the return value in x0 register. + +Rationale: + +Comments: + +Covers: + - `XenProd~version_hyp_ret_val~1` diff --git a/docs/fusa/reqs/index.rst b/docs/fusa/reqs/index.rst index 1088a51d52..d8683edce7 100644 --- a/docs/fusa/reqs/index.rst +++ b/docs/fusa/reqs/index.rst @@ -10,5 +10,7 @@ Requirements documentation market-reqs/reqs product-reqs/reqs product-reqs/arm64/reqs + product-reqs/version_hypercall design-reqs/arm64/generic-timer design-reqs/arm64/sbsa-uart + design-reqs/arm64/hypercall diff --git a/docs/fusa/reqs/market-reqs/reqs.rst b/docs/fusa/reqs/market-reqs/reqs.rst index 2d297ecc13..0e29fe5362 100644 --- a/docs/fusa/reqs/market-reqs/reqs.rst +++ b/docs/fusa/reqs/market-reqs/reqs.rst @@ -79,3 +79,19 @@ Comments: Needs: - XenProd + +Version hypercall +----------------- + +`XenMkt~version_hypercall~1` + +Description: +Xen shall provide an interface for the domains to retrieve Xen's version, type +and compilation information. + +Rationale: + +Comments: + +Needs: + - XenProd diff --git a/docs/fusa/reqs/product-reqs/version_hypercall.rst b/docs/fusa/reqs/product-reqs/version_hypercall.rst new file mode 100644 index 0000000000..03221f70c3 --- /dev/null +++ b/docs/fusa/reqs/product-reqs/version_hypercall.rst @@ -0,0 +1,61 @@ +.. SPDX-License-Identifier: CC-BY-4.0 + +Version hypercall +================= + +First Parameter +--------------- + +`XenProd~version_hyp_first_param~1` + +Description: +Xen shall treat the first argument (as an integer) to denote the command number +for the hypercall. + +Rationale: + +Comments: + +Covers: + - `XenMkt~version_hypercall~1` + +Needs: + - XenSwdgn + +Second Parameter +---------------- + +`XenProd~version_hyp_second_param~1` + +Description: +Xen shall treat the second argument as a virtual address to buffer in domain's +memory. + +Rationale: + +Comments: + +Covers: + - `XenMkt~version_hypercall~1` + +Needs: + - XenSwdgn + +Return Value +------------ + +`XenProd~version_hyp_ret_val~1` + +Description: +In case the hypercall fails, Xen shall return one of the error codes defined +in http://xenbits.xen.org/gitweb/?p=xen.git;a=blob;f=xen/include/public/errno.h. + +Rationale: + +Comments: + +Covers: + - `XenMkt~version_hypercall~1` + +Needs: + - XenSwdgn \ No newline at end of file From patchwork Thu Feb 27 15:09:22 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Ayan Kumar Halder X-Patchwork-Id: 13994769 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 lists.xenproject.org (lists.xenproject.org [192.237.175.120]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 48956C19F2E for ; Thu, 27 Feb 2025 15:11:16 +0000 (UTC) Received: from list by lists.xenproject.org with outflank-mailman.898228.1306809 (Exim 4.92) (envelope-from ) id 1tnfXQ-0001DG-Pa; Thu, 27 Feb 2025 15:11:00 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 898228.1306809; Thu, 27 Feb 2025 15:11:00 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1tnfXQ-0001D9-Mx; Thu, 27 Feb 2025 15:11:00 +0000 Received: by outflank-mailman (input) for mailman id 898228; Thu, 27 Feb 2025 15:10:59 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1tnfXP-0007UI-3q for xen-devel@lists.xenproject.org; Thu, 27 Feb 2025 15:10:59 +0000 Received: from NAM11-CO1-obe.outbound.protection.outlook.com (mail-co1nam11on20623.outbound.protection.outlook.com [2a01:111:f403:2416::623]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 0a8aa307-f51d-11ef-9898-31a8f345e629; Thu, 27 Feb 2025 16:10:57 +0100 (CET) Received: from BN0PR07CA0029.namprd07.prod.outlook.com (2603:10b6:408:141::11) by MN6PR12MB8591.namprd12.prod.outlook.com (2603:10b6:208:471::15) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8466.20; Thu, 27 Feb 2025 15:10:52 +0000 Received: from BN2PEPF00004FBE.namprd04.prod.outlook.com (2603:10b6:408:141:cafe::76) by BN0PR07CA0029.outlook.office365.com (2603:10b6:408:141::11) with Microsoft SMTP Server (version=TLS1_3, cipher=TLS_AES_256_GCM_SHA384) id 15.20.8489.19 via Frontend Transport; Thu, 27 Feb 2025 15:10:52 +0000 Received: from SATLEXMB04.amd.com (165.204.84.17) by BN2PEPF00004FBE.mail.protection.outlook.com (10.167.243.184) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.8489.16 via Frontend Transport; Thu, 27 Feb 2025 15:10:51 +0000 Received: from SATLEXMB06.amd.com (10.181.40.147) by SATLEXMB04.amd.com (10.181.40.145) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.39; Thu, 27 Feb 2025 09:10:10 -0600 Received: from SATLEXMB04.amd.com (10.181.40.145) by SATLEXMB06.amd.com (10.181.40.147) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.39; Thu, 27 Feb 2025 09:09:29 -0600 Received: from xcbayankuma40.xilinx.com (10.180.168.240) by SATLEXMB04.amd.com (10.181.40.145) with Microsoft SMTP Server id 15.1.2507.39 via Frontend Transport; Thu, 27 Feb 2025 09:09:28 -0600 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 0a8aa307-f51d-11ef-9898-31a8f345e629 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=NZ4dnX7ArSR5E9Oc/AJuPMjkZvVuDcQDEA9/t+e7ERvwmjDp3UtSM1zyn+u7FhYE3A+bh+BEaQ/7vphW4I6ecS1e+1LnhFVNzJDF/sbc98Lc1aE3M1PRobh+MMg13uPpv44mIlvVlInRpYBoXnrRawRLR6RzZ+XIG5suz6RC3ynXfbx5NSf6rpv1oSHTNwbrVq5htshel/fyVvoU3ZlI1LXW6Dc9z9Og+Qri6w3qt0T8cnhEHsEPumPmlWc9zkwBBV8/3HeZQk9Eb66zncOYYJ4dh8B2v9qmMnx4NCkAqsp/gW/WFBNIjASiM9sYMwHnvDb9TFvaUtBmy9OCEnBTpw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=650B3ReDrw/HMm/FNuUQzjOth5xTPT8LN8hLk9iKhKg=; b=IEPKkyBULLuzZZRvhr7Ahik+YGeoECXaj88tD/KGeuA7+7wpbR/K0gy7UWIYiuPa9MI6V+ppjAM4LqQOAKviUDjD8+9g3BYRgGOaFqJIDXHH+hYTKyYP0ZC81ABmcRfVS8L0OMyYXXoZo5DChpr+zzCssNHVLurIobFuYGSK/SoL3ZrZwcFMCIE8t9zPbtmVm8D2zwG/Nw9rEe0YYt3HUtWUFpWRvPvmbN+CMVJfE+jPNXaVg/UYd4OnhgHazve9e7wZ9Xeoxfl85xySOqxDClM3z29+TQFAT0MHr/TsGsl9ieT39ZGL5MsN2gydOOMbFnv3sjr35ZDwLbLWVczGOw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none (0) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=650B3ReDrw/HMm/FNuUQzjOth5xTPT8LN8hLk9iKhKg=; b=SUUYc3x+0SkKBTPcy2eOVGK8/ZI6H1xMDimLhx0OeIYu5IYWA9nQGB9mwsEUtcUFfqxZg+LLGYYs3DCrhgzwGZ1xH8ZGw6Lzvu5iBcuxwVK2VXV2kor2cnBWLL8tbZTTaySVUKFaz1+PotZzLRjtXjvz1EN/Vtv4u16O3C+Yzas= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17) smtp.mailfrom=amd.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=amd.com; Received-SPF: Pass (protection.outlook.com: domain of amd.com designates 165.204.84.17 as permitted sender) receiver=protection.outlook.com; client-ip=165.204.84.17; helo=SATLEXMB04.amd.com; pr=C From: Ayan Kumar Halder To: CC: Ayan Kumar Halder , Stefano Stabellini , Bertrand Marquis , Michal Orzel , Artem Mygaiev Subject: [PATCH v2 2/2] docs: fusa: Add the requirements for some of the commands of XEN_VERSION Date: Thu, 27 Feb 2025 15:09:22 +0000 Message-ID: <20250227150922.3965010-2-ayan.kumar.halder@amd.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20250227150922.3965010-1-ayan.kumar.halder@amd.com> References: <20250227150922.3965010-1-ayan.kumar.halder@amd.com> MIME-Version: 1.0 X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BN2PEPF00004FBE:EE_|MN6PR12MB8591:EE_ X-MS-Office365-Filtering-Correlation-Id: 99ebe27a-233c-415c-a958-08dd5740ecdb X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|36860700013|82310400026|376014|1800799024; X-Microsoft-Antispam-Message-Info: i5aHEnt7al351/qcybxOo4qCzaVejsmdE1VyVTCL1DGqkFZCqYQBoqC/GEl//mwa6kACK+BNGPeJBbNAKwvh7tpDoJTdJXXQTjlYjjvdJnSr/pPudS09adyc8BSBnohCMuleB2HTkzJyuQ94J0uxK0TqsVBmMpeyqvW9J3uDbLrJ4/R2Kz1x51wdMJvdW0xnSChFEGRpzDZob8zOJHR/BGr1z/1GJHr7QdckvyCvfnqpgdOdkNEXCLa3Hd06KKOw4R2Y3WPEGiwfcMbkW0ge5setY7rOECiY5S8Eb//iCfxJYAuMaRzRyQOCoGcWMmB6aSjpbbE0vMp3/TZ3HzcIkNorxqYxjDpoIUtlOu97ROqjmFbSE79tEoF+Embp+zgs7w9l6EpqdXWjlh3gr3h6DfJAeBn30932fAQvfDJ6/f7jYCs7Btc0RqslZUfnVan06XAiDoAb5J3o3Unh16FMGfM2I4Bl7+KYbQz7aME9Qj4xEBcuhbGNqVn7x7B0UJnKwrRDzPGXyD6taJJD1Z85PV7QQhyPQf75a47lq2xhaB5bZiufN6ChJ/hk7c1aUQxwT1+LEcV7q6VhTzviQ8Y2QP8q1SswFe+2BmlLyApmML6Li/vVOSCt8Peg8BwSKG8qwbkkXrVS4bPtjekOOfpmWQM/0hoqoU+Q7Jffie8hhvNkbv4qjetGgzV3hqNmt5mB8QwwAZSIYq964w6BqQW0hOB7w1PD4dRDdrInJCNCAPDD4XaZ+uybkcTWNlPQgujo1u57cBeMJW9SUURfF/5wtcNwDd1yYfL7PKgEQBCt6Of6BH30rKeXWzC4Fq2ZrJK0zVs3L8/w1yVdaxCNWBFB+qIX/ZKN/K1or155AOWaWd6+q6F9KSb4b5w0VMCqg/v9TSA4MK4nES10zlJ4CfkrBafm1fXZpvy1cq4ph4LeY/DQBkyoql58RRnD0lxABn+GZIZlYWNxFMDxJTM/b+hoH+iTjQtsgxUKhSuVFq9nMWh7/npn4d7NieGV3U120bZZ22kJ1k3I6A4yvDtREvgo6x9x/Q5y0//HSmx3xFkmvq7wA3fIZsqNoVLj2myphsHaoOgdBA1jTzOq63GeKULhT4mquWDSqnxT+bLwCkTqZT6y38aLAo1riAhBnI4u3pBq8ollNU3EtfaBuXoboUtY5iy+lrS4YlzChiWmUWY0PLoqVwHnLtp42qcVOhnDYB+1gk9NEZlqWV+5uhj6yNZdRvE5IBOOvXUIUP6QRaZ19DQGFMu9OVkrOoEDW/Ae4rCqLDFRmlEGIclXHegGHtkSgPuGZJptaY6cJN43D2dC1zZ7wJKerx7T11DhyQfvQ1T+aHqF3g31a7qM7aNUA1v++dXfbqSKfn1M5iYHNkR/30KUAInDmI+Cv3OylNgvknGLPjfew9+EAwXkQ4ctJepjED9Gc3MLc2B8zLlXfDto0jG5NWE+frDHcC5cLypNBRnk6q1DLLmJt5juwNNrxl5sYlv4NgH+uPEB+eFhOm0UIEQ= X-Forefront-Antispam-Report: CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB04.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230040)(36860700013)(82310400026)(376014)(1800799024);DIR:OUT;SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 27 Feb 2025 15:10:51.9351 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 99ebe27a-233c-415c-a958-08dd5740ecdb X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB04.amd.com] X-MS-Exchange-CrossTenant-AuthSource: BN2PEPF00004FBE.namprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: MN6PR12MB8591 We have written the requirements for some of the commands of the XEN_VERSION hypercall. Signed-off-by: Ayan Kumar Halder Reviewed-by: Bertrand Marquis --- Changes from - v1 - 1. Reworded the requirement so as to avoid mentioining variable names or hardcoded strings. Otherwise, one would need to change the requirement each time the code changes. .../fusa/reqs/design-reqs/arm64/hypercall.rst | 6 +- .../design-reqs/arm64/version_hypercall.rst | 34 ++++++++ .../reqs/design-reqs/version_hypercall.rst | 65 +++++++++++++++ docs/fusa/reqs/index.rst | 2 + .../reqs/product-reqs/version_hypercall.rst | 83 +++++++++++++++++++ 5 files changed, 187 insertions(+), 3 deletions(-) create mode 100644 docs/fusa/reqs/design-reqs/arm64/version_hypercall.rst create mode 100644 docs/fusa/reqs/design-reqs/version_hypercall.rst diff --git a/docs/fusa/reqs/design-reqs/arm64/hypercall.rst b/docs/fusa/reqs/design-reqs/arm64/hypercall.rst index ffd883260c..b6f99af023 100644 --- a/docs/fusa/reqs/design-reqs/arm64/hypercall.rst +++ b/docs/fusa/reqs/design-reqs/arm64/hypercall.rst @@ -28,8 +28,8 @@ Parameters `XenSwdgn~arm64_hyp_param~1` Description: -Xen shall use x0 to read the first parameter, x1 for second parameter and so -on, for domain hypercall requests. +Xen shall use the first register to read the first parameter, second register +for second parameter and so on, for domain hypercall requests. Rationale: @@ -45,7 +45,7 @@ Return value `XenSwdgn~arm64_ret_val~1` Description: -Xen shall store the return value in x0 register. +Xen shall store the return value in first register. Rationale: diff --git a/docs/fusa/reqs/design-reqs/arm64/version_hypercall.rst b/docs/fusa/reqs/design-reqs/arm64/version_hypercall.rst new file mode 100644 index 0000000000..3aa12ea2c2 --- /dev/null +++ b/docs/fusa/reqs/design-reqs/arm64/version_hypercall.rst @@ -0,0 +1,34 @@ +.. SPDX-License-Identifier: CC-BY-4.0 + +Capabilities +------------ + +`XenSwdgn~arm64_capabilities~1` + +Description: +Xen shall have an internal constant string to denote that the cpu is running +in arm64 mode. + +Rationale: + +Comments: + +Covers: + - `XenProd~version_hyp_capabilities_cmd~1` + +Capabilities AArch32 +-------------------- + +`XenSwdgn~arm64_capabilities_aarch32~1` + +Description: +Xen shall have a internal constant string to denote that the cpu is running in +arm32 mode. + +Rationale: + +Comments: + +Covers: + - `XenProd~version_hyp_capabilities_cmd~1` + diff --git a/docs/fusa/reqs/design-reqs/version_hypercall.rst b/docs/fusa/reqs/design-reqs/version_hypercall.rst new file mode 100644 index 0000000000..edc5672e83 --- /dev/null +++ b/docs/fusa/reqs/design-reqs/version_hypercall.rst @@ -0,0 +1,65 @@ +.. SPDX-License-Identifier: CC-BY-4.0 + +Version +------- + +`XenSwdgn~version~1` + +Description: +Xen shall have a internal constant (XEN_VERSION) storing the version number +coming from the Makefile. + +Rationale: + +Comments: + +Covers: + - `XenProd~version_hyp_version_cmd~1` + +Subversion +---------- + +`XenSwdgn~subversion~1` + +Description: +Xen shall have a internal constant (XEN_SUBVERSION) storing the sub version +number coming from the Makefile. + +Rationale: + +Comments: + +Covers: + - `XenProd~version_hyp_version_cmd~1` + +Extraversion +------------ + +`XenSwdgn~extraversion~1` + +Description: +Xen shall have a internal constant (XEN_EXTRAVERSION) storing the extraversion +coming from the build environment. + +Rationale: + +Comments: + +Covers: + - `XenProd~version_hyp_extraversion_cmd~1` + +Changeset +--------- + +`XenSwdgn~changeset~1` + +Description: +Xen shall have a internal constant string (XEN_CHANGESET) storing the date, +time and git hash of the last change made to Xen's codebase. + +Rationale: + +Comments: + +Covers: + - `XenProd~version_hyp_changeset_cmd~1` diff --git a/docs/fusa/reqs/index.rst b/docs/fusa/reqs/index.rst index d8683edce7..b85af19d19 100644 --- a/docs/fusa/reqs/index.rst +++ b/docs/fusa/reqs/index.rst @@ -14,3 +14,5 @@ Requirements documentation design-reqs/arm64/generic-timer design-reqs/arm64/sbsa-uart design-reqs/arm64/hypercall + design-reqs/arm64/version_hypercall + design-reqs/version_hypercall diff --git a/docs/fusa/reqs/product-reqs/version_hypercall.rst b/docs/fusa/reqs/product-reqs/version_hypercall.rst index 03221f70c3..ae72b22556 100644 --- a/docs/fusa/reqs/product-reqs/version_hypercall.rst +++ b/docs/fusa/reqs/product-reqs/version_hypercall.rst @@ -54,6 +54,89 @@ Rationale: Comments: +Covers: + - `XenMkt~version_hypercall~1` + +Needs: + - XenSwdgn + +Version command +--------------- + +`XenProd~version_hyp_version_cmd~1` + +Description: +Xen shall provide a command (num 0) for hypercall (num 17) to retrieve Xen's +version in the domain's register 0. + +Rationale: + +Comments: +Xen version is composed of major and minor number. + +Covers: + - `XenMkt~version_hypercall~1` + +Needs: + - XenSwdgn + +Extraversion command +-------------------- + +`XenProd~version_hyp_extraversion_cmd~1` + +Description: +Xen shall provide a command (num 1) for hypercall (num 17) to copy its +extraversion in the domain's buffer. + +Rationale: + +Comments: +Xen's extra version consists of a string passed with 'XEN_VENDORVERSION' command +line parameter while building Xen. + +Covers: + - `XenMkt~version_hypercall~1` + +Needs: + - XenSwdgn + +Capabilities command +-------------------- + +`XenProd~version_hyp_capabilities_cmd~1` + +Description: +Xen shall provide a command (num 3) for hypercall (num 17) to copy its +capabilities to the domain's buffer. + +Rationale: + +Comments: +Capabilities related information is represented by char[1024]. +For Arm64, the capabilities should contain "xen-3.0-aarch64" string. + +Covers: + - `XenMkt~version_hypercall~1` + +Needs: + - XenSwdgn + +Changeset command +----------------- + +`XenProd~version_hyp_changeset_cmd~1` + +Description: +Xen shall provide a command (num 4) for hypercall (num 17) to copy changeset +to the domain's buffer. + +Rationale: + +Comments: +Changeset is string denoting the date, time and git hash of the last change +made to Xen's codebase. + Covers: - `XenMkt~version_hypercall~1`