From nobody Fri Apr 3 16:04:12 2026 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; arc=pass (i=1 dmarc=pass fromdomain=nvidia.com); dmarc=pass(p=reject dis=none) header.from=nvidia.com ARC-Seal: i=2; a=rsa-sha256; t=1774290386; cv=pass; d=zohomail.com; s=zohoarc; b=PQ9BMSDnSgqqVVy99axhCcsyzXMzZbM4hL1plAdO7McYKf2yVzqQrTiC/ar5+a1Iy7/qjvw1Ja7q38en6YM9/GqRtDI5FIszKaPw9mOvKYRCC6RtYbIA71bgvkYPvVRXIvddNPLaK+e+K0X6bpiH2P0vHaFV5Ekq/Xt2VYkR20w= ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1774290386; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=adPRUrxXITFSkQUIArj7TzyQH9nU1ofcGSAc84qCnvw=; b=ZuuXDC6IQ74FUPLDIvt+9fUMKqgnKy6nl0dWw+qN2U45pCVZngChyvyd/EuaX+tnglBNbZjNUN0q9HJyAEj9KIHVGa8RTUjPurEyDQpVqaP/nG0r7rfJYQcVQp7Z9BLSzd6uRj+jSyprEQS7qDL7Fuk5BTU0uXHHkUTaLH8zIMU= ARC-Authentication-Results: i=2; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; arc=pass (i=1 dmarc=pass fromdomain=nvidia.com); dmarc=pass header.from= (p=reject dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 17742903860111017.9145599034026; Mon, 23 Mar 2026 11:26:26 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1w4jyJ-00025B-VT; Mon, 23 Mar 2026 14:25:52 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1w4jxe-0001no-N8; Mon, 23 Mar 2026 14:25:13 -0400 Received: from mail-eastusazlp170120007.outbound.protection.outlook.com ([2a01:111:f403:c101::7] helo=BL0PR03CU003.outbound.protection.outlook.com) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1w4jxd-00043g-1Z; Mon, 23 Mar 2026 14:25:10 -0400 Received: from DS2PR12MB9567.namprd12.prod.outlook.com (2603:10b6:8:27c::8) by CY8PR12MB8268.namprd12.prod.outlook.com (2603:10b6:930:6c::16) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9745.20; Mon, 23 Mar 2026 18:25:00 +0000 Received: from DS2PR12MB9567.namprd12.prod.outlook.com ([fe80::636:1b52:24ca:d7e5]) by DS2PR12MB9567.namprd12.prod.outlook.com ([fe80::636:1b52:24ca:d7e5%3]) with mapi id 15.20.9745.012; Mon, 23 Mar 2026 18:25:00 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=lYjI7c24vTATkGKWrvC5xWIapdMo1bQ3AvsoS4ertx/Jx6bRDZ7GGVmL6nJWu7xmUUDmb6Yai/AHgQkOQfxbspJqz8M+VZIavToJfFTEYi96JnuZCqJgy5quOt6hiSNImgqM7buHMN1lxbHUty8m6cYlPH9h/WrT7LLOFxXrv4uNwWRhyK9CmGtspH4yaT2UARtJCUAAFcTnKEoZL2JcBjtiPIIgZs//7M0hPLrSb9ukSI4HO8QHxUJcML+Xb8TKv/D/9n1Ct5x9Ox1YPHdrfAJ13WZJ5UMX3cPknwT1Vvjy0zDLAVFusspUcO48CMetRwSq3ooW4bqSqJpZ7npJag== 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=adPRUrxXITFSkQUIArj7TzyQH9nU1ofcGSAc84qCnvw=; b=KAnO37kw5mTyzl0FIgS7qERhkUpWSbn6dk1+5wLGXMllG/68aI1t570eIFHTiPpEmOVOUYos8EvDjFopL7WIICoII8v1O1gVxs69LMHq1iXqCeskBBCvtXdSJbM8+hv5nDlhSpr3acSeR1BTKrn7eDdvtuGzXhBwp+ltd7pvIfNgSgbxVMJxexIG97tZ13x9ztbak1KpbGUP4VVafkyrGdjEs9xuzn4va/lfzFRkb1kpnNX8PXs2KdzW86Ye+gztt7nmYFUOHLlIeBCJsfoNaRma2eh2PVAjh5DTh5E116gFU6qfWAz3CCNFr38chzYO7AqlS1kB+CkGL/Dnxs8dSA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=nvidia.com; dmarc=pass action=none header.from=nvidia.com; dkim=pass header.d=nvidia.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=Nvidia.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=adPRUrxXITFSkQUIArj7TzyQH9nU1ofcGSAc84qCnvw=; b=PLqmJEUZbROx8nVGoIwQ3fRXPCb2/dvDDgTlKCD12hWd/boUP69B809Wjrx4zoDRdtKdB2pQI723PMg7Q3tQrgV2FFUKkIZc1ozkt/7yYaZyXQuf71ctBBiN6CbTQErV4BF3CMoUcIucBPFPopHJgyW4KTUJLy1p5oc+vSy+w1Flqpz723rhXsVUyQYIL90W+nuY+pYExUrtDHFNFpwhaf5Uf5U6n3BJpcG429Y18R/SqIV4VbjghXXS8UA6IplQZdYFiJPgsfshM+1+DamZuh7YcZJJKiL7ZOFpo3CPFkulZ9XqI10cDANvSvO662i1vSEEtv8ljrSC3Qb5/sM8tA== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=nvidia.com; From: Nathan Chen To: qemu-arm@nongnu.org, qemu-devel@nongnu.org Cc: Eric Auger , Peter Maydell , "Michael S . Tsirkin" , Igor Mammedov , Ani Sinha , Shannon Zhao , Paolo Bonzini , =?UTF-8?q?Daniel=20P=20=2E=20Berrang=C3=A9?= , Eric Blake , Markus Armbruster , Shameer Kolothum , Matt Ochs , Nicolin Chen , Nathan Chen Subject: [PATCH v5 1/8] hw/arm/smmuv3-accel: Check ATS compatibility between host and guest Date: Mon, 23 Mar 2026 11:24:47 -0700 Message-ID: <20260323182454.1416110-2-nathanc@nvidia.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20260323182454.1416110-1-nathanc@nvidia.com> References: <20260323182454.1416110-1-nathanc@nvidia.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: BYAPR06CA0023.namprd06.prod.outlook.com (2603:10b6:a03:d4::36) To DS2PR12MB9567.namprd12.prod.outlook.com (2603:10b6:8:27c::8) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: DS2PR12MB9567:EE_|CY8PR12MB8268:EE_ X-MS-Office365-Filtering-Correlation-Id: f20952ce-bbb3-47c4-1099-08de89097e93 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; ARA:13230040|376014|366016|7416014|1800799024|18002099003|56012099003|22082099003; X-Microsoft-Antispam-Message-Info: N/W56u5o085v//gIa3aCoRdQlT0bEp7s2NNlkoM8qyEh0L5vaZf53MyWyRCPqN7MK44W8saqSsy6ycq5oox6g9u6s5xk5oBuLEIDbH/Y5vbDGJc6WRqT339bstgpv7nD+JdVd2/r0frT7PVl4pVsYpulDgjd7E5R+uxLYqdvLFkrrIqNu1KHZCm+fbrvcfT+zHAw+e3vt0oDPPku+WbHOoZ8UQiTC2becbV6Auv929pPzOxkk2vM9QO9zHnzSWQcqlXAr1WIjK7XS8kW0NHzC6K3+BtRawYfWqIR54RFSRttjRacc3P+yARBciznUiwvdcR8yUEI1ca4oA6p4A9NJreBmJnGdZYLvwm7IbBLyN9ZpUEDhq+/xvRD42orHfvhRXz/oxvkXCrFGThlkDWd2Sz4KkenuWvSyEAd01QCWbHhGKcX10O3fDWglRUax+7jgVDdSHWNwXCagaEt5ilB9pSKRhvNE/9yp3bgO8l567w31ofdLAWS2jjgAs6j/s2iQYRcaQ4xlCuH3ziEvCuQ0CY5UN/e0khBVPd7fiuWIdwai5NqLWgE8iKJSuW5nLg3rDtMenQx7o/LWjeH8mUyE+vpNzJzV/2SjPAi/NDoCntbcMyOJZL9505RxCTa0PXkerc2wqumhB7mqfscAVuiSFxQKrD3l75J88tcMdffEQ9FgrqZrZ2I40GraC+xHZzT5lK1aCxklujHQ4CkQkFlD2ZgC524cqcT4WIUQYPdWTA= X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:DS2PR12MB9567.namprd12.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230040)(376014)(366016)(7416014)(1800799024)(18002099003)(56012099003)(22082099003); DIR:OUT; SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?Uf8s/iu9G2YuixM4BCV2luuOlrqB8f7vK63k2gONuOQ0V87PgXqGmk4rDOfp?= =?us-ascii?Q?dlYnT+vlepkFbXcXFhH7kgIXpcLee2PVtnSEv+KbGjLAtI3fC9+rAm33Hdk7?= =?us-ascii?Q?w1J8xUaPYjdvrPYRUDG6akR1v1i67zjYiUTC7rfAHbeV+mh3XfoTT6pQrSAM?= =?us-ascii?Q?y2Ho83plw77Kw35QMd6R6uFHZcIHPmOkYBGx/7mFu7Bw9xv8Qzy2RDv5Cihj?= =?us-ascii?Q?sJCXjhJkOTl2RnkyvEmrroiXJRqaki2sZY8Cd4Khq3PDYMBT2dulpDusS8bc?= =?us-ascii?Q?ERjehiiK7XlTdHWFxpbUpfB9B3Mw/TCezGvY99w00as3OB+SSO8fgSiGzajx?= =?us-ascii?Q?CktOlNOGcXlxAj/w8fZ3qCmCQWDT6UAHhhpjHt1etqkipiYIRADYL3w1cdf+?= =?us-ascii?Q?ilj0omHreaSjay8eGeiMBiSDKhV6gc/LbMiqOZiA380w2rUUNdMRm9sZWJ2D?= =?us-ascii?Q?D/ARAC09MRGZFrXIzDTXdHfp2J1N/H1XkmuXBO3Q+dRUjTf56ZYLl7w4FyLv?= =?us-ascii?Q?XKxr5ZmfbfBLmWLh/HDZsYAt7StnbIMMiDFWGLWTFs3EyKfwK2HTYiuf+lJL?= =?us-ascii?Q?JmEfQEteddbWnTfjn3syKpEiGOv6i5xJ5YYuippq4Yo61qvjnLeWxfgbZAP5?= =?us-ascii?Q?IqojgZv5XzkcZEPLE1+W0tTwisCluBKAPWL9WPVhcgcIGNPR9yJpW/ayMBxF?= =?us-ascii?Q?7rHvkrUnJ8ZuYLqcU/wLaitF9cPPxu+F3EMlgWJ34rWC1azLbHsBE93PyjTp?= =?us-ascii?Q?4BJMWyPlEzx+N8ksm8BhO2x+tUIKROCgxkBltJo+3HkftaPA9Vtu9RMXRuCX?= =?us-ascii?Q?YGD+TE9V7c2CdC7oB6cAByVDeNfps17iaUC0Dp8fggKZyYL88EWPqTHo9U+e?= =?us-ascii?Q?479ezJVS3p2D1xZADgCuTGXmShsEW2W8oKr3481KCdnXrwh8eDw9nFXSNhPJ?= =?us-ascii?Q?PhwBt5W4YYeQQS8eKU1eXdoi7YuaVVPcxRQ94inf/9ZOEo2+ZI0wpWl0Myn1?= =?us-ascii?Q?+rwqudspcschluUdbrcfBh4UKUDKqPJDvlL68hHMAhSWdszboQM0xHxcpkhS?= =?us-ascii?Q?jTmE2RHGKFk8mioYSVOvXLdpxIao0MkZwpAi7TetehsUpw5lZ0Cdz9KJ/edz?= =?us-ascii?Q?uyCR8DnMR38RswjlKAIQSfsRnbHmhi7/imG56ONJgJ5UAXBaGhg78ItT5jN0?= =?us-ascii?Q?N8IhEoHpmwR2X6RF8GsybuW+IMrGjlbIOxzmpaIw88ThIMNLtpGTl6R/aeI/?= =?us-ascii?Q?2rAwFAVYSsLVVp0sHz6HzLhf3JQYZvk3AYn3fKE4Ujfs9Cdn8u1fwZ6lSuXC?= =?us-ascii?Q?Fxu+F++/egv/KpATSKzpUJ/JWjxiiMpdqm9muZwPAxEYX5b3p/MdHX5s1y6R?= =?us-ascii?Q?sEruHwOsmc3tFW/RBhN7+PTr1/X45Ja8VVGga3p2RfgEskclrcgWyn4FQhDt?= =?us-ascii?Q?8aItXCgkoaeBT4wmDP/9GZJUdrWCXZHuP43Y0A9GGuQ5TtZ7O6yovna+79eI?= =?us-ascii?Q?Z2NbFsDT67M4d6/un0wO+T2YZzd+in7NyQXxK8CvvklOIxWEs+AtY5yENy8p?= =?us-ascii?Q?wHyl6+/FdW+RsGKkSmMJIyhiRqC7E9l6MFkABECDOX1jxvVJMS6VgDuIc8Zd?= =?us-ascii?Q?6Em6OlyIV6G0qrwu4TxQCkyNEMnwiwQ8tKgH3Nu+C8bPutWQNyFF9vZxL6BC?= =?us-ascii?Q?DxvQ0oqyQA74X39OGUYjUSh4JSM2tRW2oTu83warzbD2pFbWSxcH+onMvX4U?= =?us-ascii?Q?bgyZBreqRw=3D=3D?= X-OriginatorOrg: Nvidia.com X-MS-Exchange-CrossTenant-Network-Message-Id: f20952ce-bbb3-47c4-1099-08de89097e93 X-MS-Exchange-CrossTenant-AuthSource: DS2PR12MB9567.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 23 Mar 2026 18:25:00.6172 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 43083d15-7273-40c1-b7db-39efd9ccc17a X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: QxIjLHiyh6V7l5TiTN8sxBvwrDH9zFa3dzWpw19qpsiK57AhR9H/8c9M1rrc/f9DfB0gmtC3hZu/5HWzsnyVEw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: CY8PR12MB8268 Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: permerror client-ip=2a01:111:f403:c101::7; envelope-from=nathanc@nvidia.com; helo=BL0PR03CU003.outbound.protection.outlook.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_NONE=0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: qemu development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @Nvidia.com) X-ZM-MESSAGEID: 1774290388590154100 Content-Type: text/plain; charset="utf-8" From: Nathan Chen Compare the host SMMUv3 ATS support bit with the guest SMMUv3 ATS support bit in IDR0 and fail the compatibility check if ATS support is opted as enabled on the guest SMMUv3 when it is not supported on host SMMUv3. Fixes: f7f5013a55a3 ("hw/arm/smmuv3-accel: Add support for ATS") Reviewed-by: Eric Auger Tested-by: Eric Auger Reviewed-by: Shameer Kolothum Tested-by: Shameer Kolothum Signed-off-by: Nathan Chen --- hw/arm/smmuv3-accel.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/hw/arm/smmuv3-accel.c b/hw/arm/smmuv3-accel.c index 17306cd04b..2bb142c47f 100644 --- a/hw/arm/smmuv3-accel.c +++ b/hw/arm/smmuv3-accel.c @@ -101,6 +101,12 @@ smmuv3_accel_check_hw_compatible(SMMUv3State *s, smmuv3_oas_bits(FIELD_EX32(s->idr[5], IDR5, OAS))); return false; } + /* Check ATS value opted is compatible with Host SMMUv3 */ + if (FIELD_EX32(info->idr[0], IDR0, ATS) < + FIELD_EX32(s->idr[0], IDR0, ATS)) { + error_setg(errp, "Host SMMUv3 doesn't support Address Translation = Services"); + return false; + } =20 /* QEMU SMMUv3 supports GRAN4K/GRAN16K/GRAN64K translation granules */ if (FIELD_EX32(info->idr[5], IDR5, GRAN4K) !=3D --=20 2.43.0 From nobody Fri Apr 3 16:04:12 2026 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; arc=pass (i=1 dmarc=pass fromdomain=nvidia.com); dmarc=pass(p=reject dis=none) header.from=nvidia.com ARC-Seal: i=2; a=rsa-sha256; t=1774290386; cv=pass; d=zohomail.com; s=zohoarc; b=haYyA2CkEU7mPFeDjvnwt4O4+uehm9DvNA4FYGJ+/bHe5/52nJXoumdvi9yqri4Jl75ae1bOxKkdiuwJovFVanHGk6iXRH2G2gHRbJvWq/loDCdeXw3tdf15lmepMjlpEOk1HkHDfA65gVgfsOKSZ1NfQ0lIosg1s8tF90PWUe8= ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1774290386; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=jUA7momm04Ldf+ga3ygVr/UlG098QI6ny9D2P61VRCg=; b=bJreTJGxXIgDW0C2y3fgZ2xUg+lRuhG9gzElZZ/3wNFxmNUYl28Fdb9SbtOjWR74RM76wXBHuqZNzHJr+6wPCz2nBI45zQuScUSQgYrdzni+XSfqBbszGmnGD3gjHZPnGotaIa1rAtFpNeykRwX3XUG3DDPV/IhmYs2M4h+VvkY= ARC-Authentication-Results: i=2; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; arc=pass (i=1 dmarc=pass fromdomain=nvidia.com); dmarc=pass header.from= (p=reject dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1774290386059250.02689517703698; Mon, 23 Mar 2026 11:26:26 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1w4jyE-00022o-OH; Mon, 23 Mar 2026 14:25:47 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1w4jxh-0001oC-VG; Mon, 23 Mar 2026 14:25:15 -0400 Received: from mail-eastusazlp170120007.outbound.protection.outlook.com ([2a01:111:f403:c101::7] helo=BL0PR03CU003.outbound.protection.outlook.com) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1w4jxf-00043g-9k; Mon, 23 Mar 2026 14:25:13 -0400 Received: from DS2PR12MB9567.namprd12.prod.outlook.com (2603:10b6:8:27c::8) by CY8PR12MB8268.namprd12.prod.outlook.com (2603:10b6:930:6c::16) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9745.20; Mon, 23 Mar 2026 18:25:04 +0000 Received: from DS2PR12MB9567.namprd12.prod.outlook.com ([fe80::636:1b52:24ca:d7e5]) by DS2PR12MB9567.namprd12.prod.outlook.com ([fe80::636:1b52:24ca:d7e5%3]) with mapi id 15.20.9745.012; Mon, 23 Mar 2026 18:25:04 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=CX6/Q15may21HZlMWeac8w/coLAofjOYs6Li5HzVNR4mIvtSzCl8Ql+c/d1TCnI7f1esjcHkcBVjq4A3d6S6bKjBrF4i6MUkYQWA4A1VuRLESmWKN95rfhFqXoS+CfY/HP41VyDOn3/XZbCMuShBKGccNdkPGp01WCP2WNs2p2R3L9ys1Cy2E3UNf48I3vBh6iwZGnz2zay83rSw63CAdTs7FapFTMiPcTxcGhqBiOsdJif8kXgt5vcLDaymrBZ3yU0iQZz2pfNLEKIu4Rdw5Qe5ljB0Frflt9eRP23ACnxjnvt6UyQPqVRV+TdwltlM13YcMcWdps3cMcTSeTsVyA== 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=jUA7momm04Ldf+ga3ygVr/UlG098QI6ny9D2P61VRCg=; b=siHRcx4vjxCUKClwnygPk0cYHb5b3t1GKG21Ssi72SCmORNJMLzDik6yKj9ueRiupbwzXuf5aPNc5VsvNJ6njTdQ0TSnzHALpujmuFHxZ2z4ktHR+mL4huS/NC1TRMGEcoklTUR2VKVyARJ5R9ube5U0JJMQOLtYDLjwgMuVqQRVIVIXx5qwi7DCs/8G37M8g2eyNhoEHHtI+PqfhERirxg3/XdAABJzkXkXN/B5z4dYG7vE8JzMaOYjx6nGpiEAdkizN9TDGYpnU9i9WiPVPp6ViaO+SyV2CmqPi1XkS+pm7JCAne0Yjd4cpkx4LFvkr8gP2By+ZA/I9rrDCKfFcQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=nvidia.com; dmarc=pass action=none header.from=nvidia.com; dkim=pass header.d=nvidia.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=Nvidia.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=jUA7momm04Ldf+ga3ygVr/UlG098QI6ny9D2P61VRCg=; b=qSy3YaHsYpacFcHNnAHc/HpeVreVsMZ0kHGD9chQT+PonhzddyQDUyLDdTxXYsmUv+XkxSP9mdBuel5HKlOb17Vg1uAI82uXTJflRUfbVMtxsEhzVKPH7ZqkNIJAd+MmntMCE85qjZE9wWh8tjZ9PjDwlYSc0rQMiPT3FuHgolpH/GjzaT0R8bigAXJHxuujNwaS2lOTKNP5ts6YsWkv7bcGPGbLO7z+Vw3Te8wJmsmObH0kmMQtZmdCQOxJ23TJxcZG29Lcgp0tA8/GMDjMAZ2yT2b4im+9/kU6/U6UdqwAd5f25bcXK+bCWzdBw0N6xHejgCli8UPC+JrssOlX5g== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=nvidia.com; From: Nathan Chen To: qemu-arm@nongnu.org, qemu-devel@nongnu.org Cc: Eric Auger , Peter Maydell , "Michael S . Tsirkin" , Igor Mammedov , Ani Sinha , Shannon Zhao , Paolo Bonzini , =?UTF-8?q?Daniel=20P=20=2E=20Berrang=C3=A9?= , Eric Blake , Markus Armbruster , Shameer Kolothum , Matt Ochs , Nicolin Chen , Nathan Chen Subject: [PATCH v5 2/8] hw/arm/smmuv3-accel: Change "ats" property type to OnOffAuto Date: Mon, 23 Mar 2026 11:24:48 -0700 Message-ID: <20260323182454.1416110-3-nathanc@nvidia.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20260323182454.1416110-1-nathanc@nvidia.com> References: <20260323182454.1416110-1-nathanc@nvidia.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: SJ0PR03CA0134.namprd03.prod.outlook.com (2603:10b6:a03:33c::19) To DS2PR12MB9567.namprd12.prod.outlook.com (2603:10b6:8:27c::8) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: DS2PR12MB9567:EE_|CY8PR12MB8268:EE_ X-MS-Office365-Filtering-Correlation-Id: c9c7b053-145f-4f25-0695-08de89098089 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; ARA:13230040|376014|366016|7416014|1800799024|18002099003|56012099003|22082099003; X-Microsoft-Antispam-Message-Info: /2njaOvpl//EwtUenbRuvBvRTmPHL1XFWMkS/jCkzVXR5hxdJYBrpDNfqajxrwg52tRBQ0TWM9hOrlHW6h3/jmz3d/jmn8mLHOn9OsUkGuUWRbzNugBPT1jqm98j4UVWUuYPGCOp9uoBjrum0X4TJm4pCpQFJ8nxKaBGCmPVaAA/sdKvWN5m3H5FKyUQJDlcrl0odkfTajEXE6rGSSG7mkRw1H6zsLYgkkeCGzMNwQEMFXUlg2NwJj7j/3QtAWBaKG6YhRL8Q2Y1FyGgtazFgtjrXe5uD0MVN2tqEUV8F7r3mCGui45S2O/bl24X9KeCE6YTYip+QPMJY8zltxn4VMdDaLzkV47cWSIbGo1doKsxpxZF+akQ8MtRE+IPqT9oEgZ1D8YIqE/5Sv9KMe5V3Y5cjf3hLEkEl1dpIulZaijOmhN7x4pIcPplgHh404KM9GlPZ2DgJNOsXR0FVOhHwpzC//7BpThoJeFVyQYlh6piikGu+zje2VIEGHrhUEsKnd+oV/kKSUMd2ZBtIt4kkr2miOUWB7Q42RVGHwR0tgvfOs4wp0ZxZIrlVIA3TVM/BhyJeWGexzcWcT3quo6a/K1cE5m7lCFCx/wWyWEmNpe29djqIiEYs4JOmjsNQL8NcrG5rF+oBj7GSmwn+5sefwod3M+EpA0WGoBbVzYgFfS11nblNhGB9X1rHgV+SSUKIsDmdsLG1u86S+YEvEgyYQZzSUjRmCOzfns50UycPvI= X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:DS2PR12MB9567.namprd12.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230040)(376014)(366016)(7416014)(1800799024)(18002099003)(56012099003)(22082099003); DIR:OUT; SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?ezxzBLEJ6YmS5dInXYesJ3aa4eihVgnJtnXumoTEBtBf8t8xaVQ+bAyC4Bdx?= =?us-ascii?Q?ou/YRtI/MNnoBM591WHH35fz2xJOy2NQL1SMQxgmKDJNSIeUWug+7EfrHH1S?= =?us-ascii?Q?QAX4HInb+qsIux+VzmtKRb4HvdzdvmhNFWlzslLQ9/jm21dLe8bLT3xb7cnc?= =?us-ascii?Q?pGfelbnZvuXVrXiSNdm5qeKfluySkAleddNmqI7sMo0s2XtpcwrqsFR7OsoD?= =?us-ascii?Q?9WYc13O2vxxMGVIPJlkLv46ALT1cGfc9Q3oCfcO54dpg3mYvz92Dbz18+cdF?= =?us-ascii?Q?TU3Vblfn3SgfBNmGZ8cj7iDPB1lmH3aD7XJydbknjGTYtjS6yMPwIzD8rUgH?= =?us-ascii?Q?zFptvkwX4cis221FJBMzCrnnSwIf2bifJlnJ/O56vScCB7Xt76OlCMCfEEeg?= =?us-ascii?Q?BMpSXeC5Isdt4MVfv6oqhZuRLGD0jxg3ZJ20KaweNJvi6bh52t/cmvU8KgEz?= =?us-ascii?Q?99QpaK+YhtPq+1rfhiPBW0cE9S93n9dpy5dJYFCs6ektE50qpQ4S2t9Qd0Sn?= =?us-ascii?Q?xiBVr1NcYMUBZoena4bZS5mr+KYgPYJzl9dXs3Dv88pE+Ad6yRzqBsbtI719?= =?us-ascii?Q?wV2ossP1PwGcU0EXO2CSgNoimng8JBz/CC1RXp7h/xu3wSTtbwhLFVTnklnN?= =?us-ascii?Q?bcuBAUgwDMdYE/c39m//yLs7gvrHEgQ0G+ot43Gj71ouTY98xWFQV60hWThd?= =?us-ascii?Q?89WqstyR/NSeyIFuTzYVvhVcHOIFAGpNHsRyU0dbnj1GMD7FDfgZ+ETBzGfz?= =?us-ascii?Q?UuQuyoXpB1QBrasGPPeNalnn2g9OyFvRtrk7ElAx423ivXx0eFgIc3OM+/lN?= =?us-ascii?Q?fYAH7NyUwguQpZsUarj1V7pCi58PP8wVK5ZNYHntrH2GLadSme991Y/p0Rfy?= =?us-ascii?Q?prvLGsO0s7RqNMvBDBJbFVUNvw7P9RZYsUrgAKgwKmXioKkS/eUHKfeiMHdy?= =?us-ascii?Q?DpdnXv2q9lbNXjmhxVfpDMNT4VO8fgsGDRm//+oh1roxfyK90NHzMnBmyU5P?= =?us-ascii?Q?gzWYrBsPHf1Jwhov8dhZnRP1+G9gBmKW/LT74+jqGHtkZVujLodY9Odxy9i0?= =?us-ascii?Q?9a4sw0AZZyq1KBMS769hQVO/QrdIQ6g3UC1tlF+bYUYeQkFmh/Pu3tDyWtza?= =?us-ascii?Q?//pxodAmm/qHeesZVR996sevdKGxCFhQYIW5l+YtcpfTSQ1f51G50Q7IR4it?= =?us-ascii?Q?8f9vK8L1tx74NJS99gzzbH1oE5JY+nwwk9RtakbYneCDOqjtmYNuvSDMDYVb?= =?us-ascii?Q?zY4jEoT8/MGcZRgB7278ntbjSuC/uFWypOUhkHFnOM9CKL9yYhoU6yVZuEgD?= =?us-ascii?Q?0394m/pB1Hs1XVK+B8yhEFYJfGNl6XJv89YNBUJWScM7i9eIp12JtDTiFNUj?= =?us-ascii?Q?xjf5p96XFzpnqN6gvm1eMmmHyobNb9+S2J6bYpLO43xT4frWx2hJSuDJ81Q5?= =?us-ascii?Q?Z2zxcRsy42fo+vrDaFUP8Hb34HlnITRL/QFXO3YnxFauBvjHsSHNf5DYdvRw?= =?us-ascii?Q?uOiKDeg5moDSTx6R30COzTc9mCOIhlmauIqtll5z6Nzkt5ZPaVdKer9VLcx7?= =?us-ascii?Q?FCxNtF3RiLFKNn9u5PT0m0Ca7hBDrQ5igEMDHzJQLAEjMQmTJLKXZOBm7GP7?= =?us-ascii?Q?p1IJtExWrYS0DLpU0N4DBTOM/g1luCwoCJX6k3G+6qUDUWZ7exwTsqMc424W?= =?us-ascii?Q?fRnYj+/JewZ32eXulPfLMmrbSMTQMAn9bhH6gj6RjupdO0fvlhVFOWaVz2Pw?= =?us-ascii?Q?OZtExD2eAA=3D=3D?= X-OriginatorOrg: Nvidia.com X-MS-Exchange-CrossTenant-Network-Message-Id: c9c7b053-145f-4f25-0695-08de89098089 X-MS-Exchange-CrossTenant-AuthSource: DS2PR12MB9567.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 23 Mar 2026 18:25:04.0085 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 43083d15-7273-40c1-b7db-39efd9ccc17a X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: pSPDqR3HIBuCak/pZgFOKd+SFCzIk99y/RgjG0ieAfAtzPnF8qb5K7gxTpulY402Ouc/j2RHzw7PQGW0nnOBMA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: CY8PR12MB8268 Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: permerror client-ip=2a01:111:f403:c101::7; envelope-from=nathanc@nvidia.com; helo=BL0PR03CU003.outbound.protection.outlook.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_NONE=0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: qemu development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @Nvidia.com) X-ZM-MESSAGEID: 1774290388649154100 Content-Type: text/plain; charset="utf-8" From: Nathan Chen Change accel SMMUv3 ATS property from bool to OnOffAuto. The 'auto' value is not implemented, as this commit is meant to set the property to the correct type and avoid breaking JSON/QMP when the auto mode is introduced. A future patch will implement resolution of the 'auto' value to match the host SMMUv3 ATS support. The conversion of the ATS property type to OnOffAuto is an incompatible change for JSON/QMP when a bool value is expected for "ats", but the "ats" property is new in 11.0 and this patch is submitted as a fix to the property type. Fixes: f7f5013a55a3 ("hw/arm/smmuv3-accel: Add support for ATS") Tested-by: Eric Auger Reviewed-by: Shameer Kolothum Tested-by: Shameer Kolothum Reviewed-by: Eric Auger Acked-by: Markus Armbruster Signed-off-by: Nathan Chen --- hw/arm/smmuv3-accel.c | 4 +++- hw/arm/smmuv3.c | 17 ++++++++++++++--- hw/arm/virt-acpi-build.c | 2 +- include/hw/arm/smmuv3.h | 4 +++- 4 files changed, 21 insertions(+), 6 deletions(-) diff --git a/hw/arm/smmuv3-accel.c b/hw/arm/smmuv3-accel.c index 2bb142c47f..f21a6a9997 100644 --- a/hw/arm/smmuv3-accel.c +++ b/hw/arm/smmuv3-accel.c @@ -827,7 +827,9 @@ void smmuv3_accel_idr_override(SMMUv3State *s) s->idr[3] =3D FIELD_DP32(s->idr[3], IDR3, RIL, s->ril); =20 /* QEMU SMMUv3 has no ATS. Advertise ATS if opt-in by property */ - s->idr[0] =3D FIELD_DP32(s->idr[0], IDR0, ATS, s->ats); + if (s->ats =3D=3D ON_OFF_AUTO_ON) { + s->idr[0] =3D FIELD_DP32(s->idr[0], IDR0, ATS, 1); + } =20 /* Advertise 48-bit OAS in IDR5 when requested (default is 44 bits). */ if (s->oas =3D=3D SMMU_OAS_48BIT) { diff --git a/hw/arm/smmuv3.c b/hw/arm/smmuv3.c index 068108e49b..a683402a0c 100644 --- a/hw/arm/smmuv3.c +++ b/hw/arm/smmuv3.c @@ -317,6 +317,11 @@ static void smmuv3_init_id_regs(SMMUv3State *s) smmuv3_accel_idr_override(s); } =20 +bool smmuv3_ats_enabled(SMMUv3State *s) +{ + return FIELD_EX32(s->idr[0], IDR0, ATS); +} + static void smmuv3_reset(SMMUv3State *s) { s->cmdq.base =3D deposit64(s->cmdq.base, 0, 5, SMMU_CMDQS); @@ -1966,12 +1971,17 @@ static bool smmu_validate_property(SMMUv3State *s, = Error **errp) } #endif =20 + if (s->ats =3D=3D ON_OFF_AUTO_AUTO) { + error_setg(errp, "ats auto mode is not supported"); + return false; + } + if (!s->accel) { if (!s->ril) { error_setg(errp, "ril can only be disabled if accel=3Don"); return false; } - if (s->ats) { + if (s->ats =3D=3D ON_OFF_AUTO_ON) { error_setg(errp, "ats can only be enabled if accel=3Don"); return false; } @@ -2128,7 +2138,7 @@ static const Property smmuv3_properties[] =3D { DEFINE_PROP_UINT64("msi-gpa", SMMUv3State, msi_gpa, 0), /* RIL can be turned off for accel cases */ DEFINE_PROP_BOOL("ril", SMMUv3State, ril, true), - DEFINE_PROP_BOOL("ats", SMMUv3State, ats, false), + DEFINE_PROP_ON_OFF_AUTO("ats", SMMUv3State, ats, ON_OFF_AUTO_OFF), DEFINE_PROP_UINT8("oas", SMMUv3State, oas, 44), DEFINE_PROP_UINT8("ssidsize", SMMUv3State, ssidsize, 0), }; @@ -2160,7 +2170,8 @@ static void smmuv3_class_init(ObjectClass *klass, con= st void *data) "Disable range invalidation support (for accel=3Don)"); object_class_property_set_description(klass, "ats", "Enable/disable ATS support (for accel=3Don). Please ensure host " - "platform has ATS support before enabling this"); + "platform has ATS support before enabling this. ats=3Dauto is not " + "supported."); object_class_property_set_description(klass, "oas", "Specify Output Address Size (for accel=3Don). Supported values " "are 44 or 48 bits. Defaults to 44 bits"); diff --git a/hw/arm/virt-acpi-build.c b/hw/arm/virt-acpi-build.c index 719d2f994e..591cfc993c 100644 --- a/hw/arm/virt-acpi-build.c +++ b/hw/arm/virt-acpi-build.c @@ -402,7 +402,7 @@ static int iort_smmuv3_devices(Object *obj, void *opaqu= e) =20 bus =3D PCI_BUS(object_property_get_link(obj, "primary-bus", &error_ab= ort)); sdev.accel =3D object_property_get_bool(obj, "accel", &error_abort); - sdev.ats =3D object_property_get_bool(obj, "ats", &error_abort); + sdev.ats =3D smmuv3_ats_enabled(ARM_SMMUV3(obj)); pbus =3D PLATFORM_BUS_DEVICE(vms->platform_bus_dev); sbdev =3D SYS_BUS_DEVICE(obj); sdev.base =3D platform_bus_get_mmio_addr(pbus, sbdev, 0); diff --git a/include/hw/arm/smmuv3.h b/include/hw/arm/smmuv3.h index 26b2fc42fd..ce51a5b9b4 100644 --- a/include/hw/arm/smmuv3.h +++ b/include/hw/arm/smmuv3.h @@ -70,7 +70,7 @@ struct SMMUv3State { uint64_t msi_gpa; Error *migration_blocker; bool ril; - bool ats; + OnOffAuto ats; uint8_t oas; uint8_t ssidsize; }; @@ -91,6 +91,8 @@ struct SMMUv3Class { ResettablePhases parent_phases; }; =20 +bool smmuv3_ats_enabled(struct SMMUv3State *s); + #define TYPE_ARM_SMMUV3 "arm-smmuv3" OBJECT_DECLARE_TYPE(SMMUv3State, SMMUv3Class, ARM_SMMUV3) =20 --=20 2.43.0 From nobody Fri Apr 3 16:04:12 2026 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; arc=pass (i=1 dmarc=pass fromdomain=nvidia.com); dmarc=pass(p=reject dis=none) header.from=nvidia.com ARC-Seal: i=2; a=rsa-sha256; t=1774290404; cv=pass; d=zohomail.com; s=zohoarc; b=ebYb259ujCYIYspxFgbRrPO4ANMei5CJfGlNSkIuoLHUcBxYZLweVjpFNwBuxxPwZDcqdfTXYk3HudjZjKnkvqgYH/c05F0BVzbGLSTEpsWRwj+ljf6Td1Ab70e0RDLxrOfYHrPzb25gzHj+zi/WIvsYhJplOHsxRjggnTwVykI= ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1774290404; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=lDVWvSyB2+dsmTbfmka6Ey+uR0C7I69YNwZxFaXkzVA=; b=nnJxU8MvLSZmaRMRK8lZbWnVG1AVBoHiCp7WwBF7hglRPtVLrgyuvajOkSul/DJ08L2Hvt9OZq5TuYsG9+EDlWX1XpMN9lvFXVQruAisdSdA7k2hVRKd9u0vgbQeqpg1uAzatnmalv4Ie3yS3Qw5JjnfG9o18NEsDoTEtvp3vFI= ARC-Authentication-Results: i=2; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; arc=pass (i=1 dmarc=pass fromdomain=nvidia.com); dmarc=pass header.from= (p=reject dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 177429040417216.59242650453723; Mon, 23 Mar 2026 11:26:44 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1w4jyF-00023S-Fc; Mon, 23 Mar 2026 14:25:49 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1w4jxm-0001pO-Tf; Mon, 23 Mar 2026 14:25:21 -0400 Received: from mail-eastusazlp170120007.outbound.protection.outlook.com ([2a01:111:f403:c101::7] helo=BL0PR03CU003.outbound.protection.outlook.com) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1w4jxi-00043g-Jt; Mon, 23 Mar 2026 14:25:16 -0400 Received: from DS2PR12MB9567.namprd12.prod.outlook.com (2603:10b6:8:27c::8) by CY8PR12MB8268.namprd12.prod.outlook.com (2603:10b6:930:6c::16) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9745.20; Mon, 23 Mar 2026 18:25:06 +0000 Received: from DS2PR12MB9567.namprd12.prod.outlook.com ([fe80::636:1b52:24ca:d7e5]) by DS2PR12MB9567.namprd12.prod.outlook.com ([fe80::636:1b52:24ca:d7e5%3]) with mapi id 15.20.9745.012; Mon, 23 Mar 2026 18:25:06 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=XsRHqdkTNI9LVSJLXltpsZZM+bh0MJ//xLDCszFN/VKwT5WHYlmz8IQMMVBIR39BhH73/mAXIvwyF0EX7/DimD+tJO3Up+HP2XOehk+xkVu5c3zLTDyFoowhfaujQ92/DTZU4SvN16BEyMi6v0VXvu6g8nn8t8IOhLSOis/rbLlHIQuQc/hLSGiMMfewwXHLVWqRSTRFqNfn+u0GNHgzcZTU44c9iD9fCWiLCmvLuzUw+kcAMN3yoQnEP1oyYheO2SS/zhf7S/GdI8Da0YDDCLe62GTYJTuEq+EEf/RGqBUL0rq9iPXC3OWnxM/5LN+4/kYtSqvMG6zYMQrFC+t9gQ== 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=lDVWvSyB2+dsmTbfmka6Ey+uR0C7I69YNwZxFaXkzVA=; b=FpNXRz1/wWI1AtjH3m0lD80vv45EUoxTzfeOhbN+EGNXtXD19ZAniEUtyFtCCQz+7fw0u3cosN0NsPzbouzqGJb4wS3sI87h+vmJq2SkIjVY02ee/c/FxAlehMDaB6qvB/AJiQea9N4U7pq/oatU7HWKpzEvt4pOJAF2TD10e0ng+xzud2OBiOO8DHIfIRqx4MyVw+iBBB/B8Mzfv/Zrhn0XALu6aqIF3DMennMZMgiRavz7EpboBOqQu9A6eAC/T4nlmBqXTaDNUP8NzLKUzJslV5yMEdcakUJ5FypCgN7QahjsTSfG5zin81Cr9MLF3IMTBjXCLbPkHivxAdbcRQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=nvidia.com; dmarc=pass action=none header.from=nvidia.com; dkim=pass header.d=nvidia.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=Nvidia.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=lDVWvSyB2+dsmTbfmka6Ey+uR0C7I69YNwZxFaXkzVA=; b=fwDu9tp74hj5m1xnQcf+/cxlwThxJJOXPrSwCRS0Gg/WLrDg0uj8BEMGQw2C/ZBTk3ycDcMX4gguX4hN1PrxTS1cBAy0ECAGwgYD7RQMAtVSGPXR7h09rUDfA6DBRbtOhKN8kH+9UHiQaYAw7fVzq+SLUDlJ3DSBSYQ3iB17lD5gt3bhD5xslYEu8UAmpNyL4CBwn+iO56/cuOkI/IF1e3nxqtLVT8sc2JuoyCRGPsxbiI1p1hjo67AFgqArnJ2lK20EnBu3klx/cTis1rZsSek/NixJK1MVlq8eXvAWB3O1mA1jWuk4qYUyMOz/dtzTEUmzDfvbCaDtzr0JnlDXqQ== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=nvidia.com; From: Nathan Chen To: qemu-arm@nongnu.org, qemu-devel@nongnu.org Cc: Eric Auger , Peter Maydell , "Michael S . Tsirkin" , Igor Mammedov , Ani Sinha , Shannon Zhao , Paolo Bonzini , =?UTF-8?q?Daniel=20P=20=2E=20Berrang=C3=A9?= , Eric Blake , Markus Armbruster , Shameer Kolothum , Matt Ochs , Nicolin Chen , Nathan Chen Subject: [PATCH v5 3/8] hw/arm/smmuv3-accel: Change "ril" property type to OnOffAuto Date: Mon, 23 Mar 2026 11:24:49 -0700 Message-ID: <20260323182454.1416110-4-nathanc@nvidia.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20260323182454.1416110-1-nathanc@nvidia.com> References: <20260323182454.1416110-1-nathanc@nvidia.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: BYAPR06CA0031.namprd06.prod.outlook.com (2603:10b6:a03:d4::44) To DS2PR12MB9567.namprd12.prod.outlook.com (2603:10b6:8:27c::8) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: DS2PR12MB9567:EE_|CY8PR12MB8268:EE_ X-MS-Office365-Filtering-Correlation-Id: c585fcef-8d5f-4835-99f6-08de890981fc X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; ARA:13230040|376014|366016|7416014|1800799024|18002099003|56012099003|22082099003; X-Microsoft-Antispam-Message-Info: DA9BQWQD4xLYQ8A2woH+MbIL6cZ+d7qPlTV/3jnAs8wcBOiEazQh30ZAYEk1Lk0OLqDpBC+xqi4+SSUZwsTPfjGlz1Z3B8pVZcnSCOooMiiN6rque8lcMlTejt0EheP9crPplzqjBSLI9TgvXzsCro6J6YijuZpK7XrSGFPWI2Z7H+E0h/hUI70rRDIfANBK44mTPmyujJNYp5FCkyzbUxoRtnPDm1asCGtCNxf+h3bBGARZ3a6HvjMDgWy52HaXAm21z/f3YHdB/8g8Ff0NkPwr9vHkoSXsSKsXWBJvqtJC0rIRjLy1KQiHhzG+wn7VAtnwUi+iuA6xOg5rZdPnT+uOkiJOdy3Mv5LRL42tvQhVIrcYE5LOUMK6fxoQ0mxuDGw6JRitighorYHiJlNOjjGZm54D3zVcnDsST9sWGwwvbreDW/7T3sXGpOVMFIp/RpKvwLgcHhhPvbkyAXYj0tIgNq0DHEkqXIyh9CV5oS02+FfLb4l0ajAzhe6DSi6Vg+aOefuO8r9paYGczN9ShwyCAIxhA1KizosVaeocS8nMwyotJ6o7iAypFNv72j+hYmd7gQTb7hEbjgytIG7UNOfW/2GEQW/zMO3zw9+qBEO2aOm3lDRslTrQ7Bbp1d9BqJn8s1bwE6huuSoDXIcVyFb2+3KeqYzf2FONBWA3iELuEIWtCCnoC+uLqNXEM+6UPdIHX04xIIx6pIZqL9yXdt6xe3YQGK1soXWMxRvGfPQ= X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:DS2PR12MB9567.namprd12.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230040)(376014)(366016)(7416014)(1800799024)(18002099003)(56012099003)(22082099003); DIR:OUT; SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?a2nPMEXps479uvwiW1Q62XQF07YbREulSrcnD1PuAfwwqv1xp+QlP6e6L0rF?= =?us-ascii?Q?8JQ4Zh24xvhf7q+xPoT8zePrOUWPD3yWNQtm6orSKMKIWh+FnMwAVCkDSkdB?= =?us-ascii?Q?D9ERVoLcvIOxmChztsm1cY1fxmk6TnzSif76VwmKWMRhpETcBODyUXSXndiP?= =?us-ascii?Q?fqQ+4TsGSAI4uPiVSu0evWPqoeyHxdROU/ldGdq8HrFcV/eeZNPnis82QRrn?= =?us-ascii?Q?QIaEp6N0VF4izKxXPgAJ48XuIcXVZAiR84IdGyDAAAxmSlDKYBRyvpPJynpJ?= =?us-ascii?Q?C2KNb1iaTDWI8GO/0BR0gLIe74A1MfN5YlhGqkHenrqfRAvCsK/gci3CTl6v?= =?us-ascii?Q?r+BHP42//fPt04nDGAO99Ro50nlsuoCEmq92uxffW4aAEKYTvuw8Joo/nkpf?= =?us-ascii?Q?mR1lchl3yvvp/5cKmJhXIYIy3p1WlVx+wRVe1Yrv9S0C1u9jqP0QPvOljQ9q?= =?us-ascii?Q?rMPHezyr43d51aQpZdEjOA+bQoOnX08E3FvKtW4c3KLnuAoOVda37VGsJNRY?= =?us-ascii?Q?1tPHai0srNP6n96IIqFMgaCGdRypzTpdTo7hk9mcVDGc/QxsyIGboszkXxnL?= =?us-ascii?Q?BnBz6aOAUyyN69SY1hQSmtcSimZVLgdzO1gdD9VofdY4hMQTO9WjwHzwoOdO?= =?us-ascii?Q?4mrfWGxb3tK03lV7gFxP3wxz7LurhL5+kt1LJdUcgj57U5mfZjXYMinDzUFD?= =?us-ascii?Q?lxvfAmB7GSJcjDK6C7smsxqtZ4Aem8hhEblP7sPLoPebZt9HRcWXBs1hFnUG?= =?us-ascii?Q?YY4+R+sdfB8Vnf+QcqfDBz1pNZUfTMCyFI3WxVyT1n3bplPYdavLqHU1+gss?= =?us-ascii?Q?nrcTZaBRbv0KYi7cgpe44PF2q/jbDsLmwkLXB5DRqY38REBbN1x50/HNQitU?= =?us-ascii?Q?ZlCsawJwl8VuyzLu0yXH+pzfZwG1prQvWsFUQeMPC9ddz0KiUXuuqkEms+9F?= =?us-ascii?Q?rn8lmL3BnveUcyrDT7IzVM5ER/A8lMK8I+SsZirEtVGIRrC12PMKGyafxkPF?= =?us-ascii?Q?LjKnboWVqOy3bdQsBTDhlFom26gJs7QpVxXVR3acqVgX6xxpJvKpogp/W8bb?= =?us-ascii?Q?N5cxhgs2ybxPAghe5VDj0ojV3ElkUGoXfuAl149IHY12RMI8UKakWnXPJpsh?= =?us-ascii?Q?488e0XgU+XkdkIkXYS9ObJWD8f3Qh0dGBTGIqT4HAsZHgov+9J78hBif1wUc?= =?us-ascii?Q?HyE4xHWxnY6AX7eOXn427MRrBuUVTQpzUr9Dxkfmucj4vBxPTcOhtdpSaTpu?= =?us-ascii?Q?/ZWRCRok7dMZt5ytAxcb5g5gealkXPQXcnFRL7aL0TUEYrVRsui6NchC6SpZ?= =?us-ascii?Q?QzctJkuX4NqDZ6IEMoL2sTTJtSzE1PqFUyU8TfWYVMMEhrC6BwXhaKUBu/dq?= =?us-ascii?Q?61j2fP0/8YPi2TRoVcgYunko3N6B4CmF9NXT0hXPD3gazt1RRWyKn3LmepCo?= =?us-ascii?Q?ozPFcYrl3LRGd2Tdqj88uNwVbqQlvViQjYrO+yjOW1jdaYjNTdeT2dcibwSy?= =?us-ascii?Q?aBn74javo/y4yC5ncnI6Ir4wIDntfNEB/2J2LlgwbplMekuxm3N6zeu4FvZX?= =?us-ascii?Q?IRSoEu3/900yMnzyPmgWXos+nyYCAkR1oUoCPKzt5NKNrig8zAxddxqv4RIP?= =?us-ascii?Q?nyaskId+tq3LbfQ0W15+1JEIm4QeU6UZuFA8Vbibqi/FcA1c4Ti9fpBGA2HZ?= =?us-ascii?Q?GjH3z4K5Qe4fCx382+lFAK2leTpefNQt2HMpM/CUx02L1h9bJFrSnlJxN+qN?= =?us-ascii?Q?cMgmwi+Gxg=3D=3D?= X-OriginatorOrg: Nvidia.com X-MS-Exchange-CrossTenant-Network-Message-Id: c585fcef-8d5f-4835-99f6-08de890981fc X-MS-Exchange-CrossTenant-AuthSource: DS2PR12MB9567.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 23 Mar 2026 18:25:06.3246 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 43083d15-7273-40c1-b7db-39efd9ccc17a X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: kQwenOMPnHmY6uAoBhyYyIcMfwvSvC4hdo6qk3aghIDRt6X3dK/dPx6ztMSmSWOlZaUpeTnOatCkghjTHyAYRg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: CY8PR12MB8268 Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: permerror client-ip=2a01:111:f403:c101::7; envelope-from=nathanc@nvidia.com; helo=BL0PR03CU003.outbound.protection.outlook.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_NONE=0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: qemu development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @Nvidia.com) X-ZM-MESSAGEID: 1774290406617154100 Content-Type: text/plain; charset="utf-8" From: Nathan Chen Change accel SMMUv3 RIL property from bool to OnOffAuto. The 'auto' value is not implemented, as this commit is meant to set the property to the correct type and avoid breaking JSON/QMP when the auto mode is introduced. A future patch will implement resolution of the 'auto' value to match the host SMMUv3 RIL support. The conversion of the RIL property type to OnOffAuto is an incompatible change for JSON/QMP when a bool value is expected for "ril", but the "ril" property is new in 11.0 and this patch is submitted as a fix to the property type. Fixes: bd715ff5bda9 ("hw/arm/smmuv3-accel: Add a property to specify RIL su= pport") Tested-by: Eric Auger Reviewed-by: Shameer Kolothum Tested-by: Shameer Kolothum Reviewed-by: Eric Auger Acked-by: Markus Armbruster Signed-off-by: Nathan Chen --- hw/arm/smmuv3-accel.c | 6 ++++-- hw/arm/smmuv3.c | 11 ++++++++--- include/hw/arm/smmuv3.h | 2 +- 3 files changed, 13 insertions(+), 6 deletions(-) diff --git a/hw/arm/smmuv3-accel.c b/hw/arm/smmuv3-accel.c index f21a6a9997..c31b64295e 100644 --- a/hw/arm/smmuv3-accel.c +++ b/hw/arm/smmuv3-accel.c @@ -823,8 +823,10 @@ void smmuv3_accel_idr_override(SMMUv3State *s) return; } =20 - /* By default QEMU SMMUv3 has RIL. Update IDR3 if user has disabled it= */ - s->idr[3] =3D FIELD_DP32(s->idr[3], IDR3, RIL, s->ril); + /* Only override RIL if user explicitly set OFF */ + if (s->ril =3D=3D ON_OFF_AUTO_OFF) { + s->idr[3] =3D FIELD_DP32(s->idr[3], IDR3, RIL, 0); + } =20 /* QEMU SMMUv3 has no ATS. Advertise ATS if opt-in by property */ if (s->ats =3D=3D ON_OFF_AUTO_ON) { diff --git a/hw/arm/smmuv3.c b/hw/arm/smmuv3.c index a683402a0c..ea285bdf64 100644 --- a/hw/arm/smmuv3.c +++ b/hw/arm/smmuv3.c @@ -1975,9 +1975,13 @@ static bool smmu_validate_property(SMMUv3State *s, E= rror **errp) error_setg(errp, "ats auto mode is not supported"); return false; } + if (s->ril =3D=3D ON_OFF_AUTO_AUTO) { + error_setg(errp, "ril auto mode is not supported"); + return false; + } =20 if (!s->accel) { - if (!s->ril) { + if (s->ril =3D=3D ON_OFF_AUTO_OFF) { error_setg(errp, "ril can only be disabled if accel=3Don"); return false; } @@ -2137,7 +2141,7 @@ static const Property smmuv3_properties[] =3D { /* GPA of MSI doorbell, for SMMUv3 accel use. */ DEFINE_PROP_UINT64("msi-gpa", SMMUv3State, msi_gpa, 0), /* RIL can be turned off for accel cases */ - DEFINE_PROP_BOOL("ril", SMMUv3State, ril, true), + DEFINE_PROP_ON_OFF_AUTO("ril", SMMUv3State, ril, ON_OFF_AUTO_ON), DEFINE_PROP_ON_OFF_AUTO("ats", SMMUv3State, ats, ON_OFF_AUTO_OFF), DEFINE_PROP_UINT8("oas", SMMUv3State, oas, 44), DEFINE_PROP_UINT8("ssidsize", SMMUv3State, ssidsize, 0), @@ -2167,7 +2171,8 @@ static void smmuv3_class_init(ObjectClass *klass, con= st void *data) "Enable SMMUv3 accelerator support. Allows host SMMUv3 to be " "configured in nested mode for vfio-pci dev assignment"); object_class_property_set_description(klass, "ril", - "Disable range invalidation support (for accel=3Don)"); + "Disable range invalidation support (for accel=3Don). ril=3Dauto " + "is not supported."); object_class_property_set_description(klass, "ats", "Enable/disable ATS support (for accel=3Don). Please ensure host " "platform has ATS support before enabling this. ats=3Dauto is not " diff --git a/include/hw/arm/smmuv3.h b/include/hw/arm/smmuv3.h index ce51a5b9b4..c35e599bbc 100644 --- a/include/hw/arm/smmuv3.h +++ b/include/hw/arm/smmuv3.h @@ -69,7 +69,7 @@ struct SMMUv3State { struct SMMUv3AccelState *s_accel; uint64_t msi_gpa; Error *migration_blocker; - bool ril; + OnOffAuto ril; OnOffAuto ats; uint8_t oas; uint8_t ssidsize; --=20 2.43.0 From nobody Fri Apr 3 16:04:12 2026 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; arc=pass (i=1 dmarc=pass fromdomain=nvidia.com); dmarc=pass(p=reject dis=none) header.from=nvidia.com ARC-Seal: i=2; a=rsa-sha256; t=1774290472; cv=pass; d=zohomail.com; s=zohoarc; b=ZrZw8BN2z35JxH/Icej6BLKW33VQ4SnaQDnDNuKosZlgCZPOKp7u500N7v8tvZ82PDt0fyH5PYjUGlks+TiJJ5a9ylwN4fzGhLyV9Mc14BNhglcoAc+j9h+tWEOLKAixBrLZd9HW6mk2+z/jO1Ew6TEXZU4F2waz2fMdhOyUmxM= ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1774290472; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=v77NCVw2HfT00qzKpUO9m/IhA/a42A8g6+grD0O5G7A=; b=l4kjEelyCFL6/1IahM+KGxtDHPa159HdF6VWR99nwP4qmpWBLC1e//FNqZ53DuQfAG51TZe6nswvy3UA/KBr7K4rPWGShfpabYv+BNWiQf9RS9eE0oBnL/WM/3Kq9J1E89HsTUazhNUx/Fx4qQh6HF5TeIRFFguszGXB0S2FFps= ARC-Authentication-Results: i=2; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; arc=pass (i=1 dmarc=pass fromdomain=nvidia.com); dmarc=pass header.from= (p=reject dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1774290472403708.4893117953941; Mon, 23 Mar 2026 11:27:52 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1w4jyL-000275-B7; Mon, 23 Mar 2026 14:25:53 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1w4jxr-0001r1-Cg; Mon, 23 Mar 2026 14:25:23 -0400 Received: from mail-eastusazlp170120007.outbound.protection.outlook.com ([2a01:111:f403:c101::7] helo=BL0PR03CU003.outbound.protection.outlook.com) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1w4jxn-00043g-IU; Mon, 23 Mar 2026 14:25:21 -0400 Received: from DS2PR12MB9567.namprd12.prod.outlook.com (2603:10b6:8:27c::8) by CY8PR12MB8268.namprd12.prod.outlook.com (2603:10b6:930:6c::16) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9745.20; Mon, 23 Mar 2026 18:25:09 +0000 Received: from DS2PR12MB9567.namprd12.prod.outlook.com ([fe80::636:1b52:24ca:d7e5]) by DS2PR12MB9567.namprd12.prod.outlook.com ([fe80::636:1b52:24ca:d7e5%3]) with mapi id 15.20.9745.012; Mon, 23 Mar 2026 18:25:09 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=eiqXZjgmD9ZOlKBpg1uLVItVsEFwn4WTs5N8WfMgLSZJJFQfexFFNY6oUkAZjtmpuJf1HIYoR309d6b2Vkyvy35rPdV84mW53N1fjUZCVZ8Rezx1pkjznAd1geZyRqGgcqhPd1p51QodvO1ZcrajKMsAxvHucG52kziBmoojmoNz8puwo1r0AsPFNCW3hrBxNgh4Py2Xh01BeEiheWiAnzye8i9HhsWob/7pHv8Cje187FfAQNARQva1ffcTN2C1ggYvFnjj19O0y/HvgHPpWSLCtvtKYF38nK3d9Dl1YtgC/SAU+GiyHoBNyuVlrDwRMSDkf/4Bqn6FSlBv7cKvEQ== 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=v77NCVw2HfT00qzKpUO9m/IhA/a42A8g6+grD0O5G7A=; b=PvcbaAHk5iCMc4uYbXUEADihfQaZIKV+3vw3K1D92uh3wEt+UJ4LST91Dv8tYxitSkEeumjMz/Qa9aH5bcvA9aSuXv215M2uS5K67uEjYzpO4B9pfzq2/j+D9yaoOitwhzQpsfbFRFS17hUpKzJE4R12s35tAmKLcbNZYXgpDmh2eoZXlPDwEuyOB6UTn0FGVNFviIQQFi4jROu61l9YAzCsANi1lb1NtPDNY76caaWPfUgbx5N4PRCZiOXq4gTWI0QULTFcb/VJg5uVC/8kfIOXtab6Z0EeTjKNQDQU0D+OBBRzbo27rhs9Ojtk9V0/yzWub432189faqwbeebNdg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=nvidia.com; dmarc=pass action=none header.from=nvidia.com; dkim=pass header.d=nvidia.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=Nvidia.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=v77NCVw2HfT00qzKpUO9m/IhA/a42A8g6+grD0O5G7A=; b=Ntq2FXIzRdlieHmb5a0E+ArCyDFwsQXUUEmiB5/vqzQuvgIYwENEFuJZtQ2KEJz09RimpSzfUkBSzOfbzmiE9mYa57LpIgMYdzxVtnFbtQ101xvbP5a08uJB8FWRZvwbFvdCtcNFyQL4fP75AMnwbNcCKOYfWmzqPeH7crUkagPAhMJFk/hOegAxf6WDqxCekjzvzSahnABAeZiHVCsSaS57Ey9QconWZtm5D07BBqDSXrxMeGq3cVfZQIkoB63Li96giE/tt6DxQkoskbteBaK3DD3kEdgt9+2uJP5L7+07QTq7Uh/pFANunuI5N6aJqwUpDjoiurAJkrr8K04gPw== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=nvidia.com; From: Nathan Chen To: qemu-arm@nongnu.org, qemu-devel@nongnu.org Cc: Eric Auger , Peter Maydell , "Michael S . Tsirkin" , Igor Mammedov , Ani Sinha , Shannon Zhao , Paolo Bonzini , =?UTF-8?q?Daniel=20P=20=2E=20Berrang=C3=A9?= , Eric Blake , Markus Armbruster , Shameer Kolothum , Matt Ochs , Nicolin Chen , Nathan Chen Subject: [PATCH v5 4/8] qdev: Add a SsidSizeMode property type Date: Mon, 23 Mar 2026 11:24:50 -0700 Message-ID: <20260323182454.1416110-5-nathanc@nvidia.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20260323182454.1416110-1-nathanc@nvidia.com> References: <20260323182454.1416110-1-nathanc@nvidia.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: BYAPR21CA0016.namprd21.prod.outlook.com (2603:10b6:a03:114::26) To DS2PR12MB9567.namprd12.prod.outlook.com (2603:10b6:8:27c::8) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: DS2PR12MB9567:EE_|CY8PR12MB8268:EE_ X-MS-Office365-Filtering-Correlation-Id: 7729830f-b098-48b2-28d4-08de890983b6 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; ARA:13230040|376014|366016|7416014|1800799024|18002099003|56012099003|22082099003; X-Microsoft-Antispam-Message-Info: 7G4aqVPRczNyn47HQ6HToC1oAEjpUhpM8vdRU4OhGBZ3JD5nd7ABUEdb0RVkdOHk5GN0ou13uShkKeqoI/oxwMqWdxQdWJDTD0Iyzqu1pwYWLXYluLFeGYU+wp5E/6CW36D7SQ3GxbV7qr5Yu1dGK5jGoTBTGxqdfqZLtT0huu+1T3j2AyGUpYw5VA5WeSOkdA9TrO+I3yZU8MGWHXLWTtWN56YNKDWkkNGxQwV/lb7V4zJkXwGViCr3pT2MJ/Gvcy1tVhnCEEBvA/lQf69IgohN90K3PJz6KnTK3kB4m4OYenodfIiawGviOpIQqvuVVPbcm1nRsDiJoM+6Qe2YyJgdB0JgyiY+7c/43k65xOYAysodvRD/pCOaPk8w7mUjVCMpJObX0paG9pwceoK0zUTadG6WMOMg/dBa7tQDgXrifIC8vxkVRrKycce/mFw1ECUMGs9ZBmIqVat9+0oe2OEIsI5uBDnFCnP1C70uipcEtu1SoPJ3wNaQww6d98/dyGLLYkycJ8r2XMx6/4VDDFzdscDGcAkfeOiHwD6nu5IzxDITHXy/SZzHaXfsDCNkVZ5E9GdBwKm3tFhQw/Y+3Lw7tnFRwBA9dTRxh4U/94KIeun2sxnwwAUsPjcYdM7sRn8hdfdcRLNmeuwuaPWxOVdgZJFNLstddZrzGP5QvrTC5TAv6d8PHsfnw0hlCs8WGcnAOw6a2rhtrSKcBxbeutnp6OLChej1+xgTaSV1Q6k= X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:DS2PR12MB9567.namprd12.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230040)(376014)(366016)(7416014)(1800799024)(18002099003)(56012099003)(22082099003); DIR:OUT; SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?94O4QzUv+kPswQNcCIGUgL2R6fINCmpWVSw/CMlaQzkjcvJowU0Mcx2tZxQ5?= =?us-ascii?Q?m5RRJROTi1WfvwQ7zuX2w/9zgEWPpzenLpXtphZcFrYKoUnOOD2JHPmcA6pR?= =?us-ascii?Q?W2ClO/Htw+4MSJC+6uZYNSxg2GuF41DqKf1ttJ0GyaCXBu15/q/rFSBGn5Pz?= =?us-ascii?Q?inKc9ShPsBmMRd3suqjMLLj31qEt59qSsLN+n+80HUnFdU4cGAW9DawyU9WU?= =?us-ascii?Q?YfFBrOrIARZeMG7o5M+IOzNUC1wXki4DZreMKh2PZ293qpKHrBdhAitjMakf?= =?us-ascii?Q?BlgHwP8FKl84pzuK0g2OaucZpygpQfI/8a5GptM3Ee0vtppjNNTNQni8Tz0Y?= =?us-ascii?Q?383iD9Jiw8u79fnbuxg9gtlIvL1oDyNRE0vDivCD4lRXO5pEnDbQGFR09z1x?= =?us-ascii?Q?dq0OAEP6bGsugz1wip7gRDiwce2Qvo8vrNrEmbLFTx8QhcyY9yDqGuYio2Ux?= =?us-ascii?Q?DJtfPW3uTKzeCd4+heVHL7Mw3mrPK3YZjlWxDkoRCUU+L0Kpctzn8M7c3bQv?= =?us-ascii?Q?iCd1P6Y6gyEdRyHaL6Anc7yXfELbBUFYWmX2PD/yido5NWYU7mNPniuEcQaR?= =?us-ascii?Q?YerMtyUOPQA+xQ4tmnTIAAjudPQZcvOjbHoNPEEKlisGkTjHGX+0LAY2I+lY?= =?us-ascii?Q?qByI2i8/NTqMVJIKpiJooaiIaq9V0dMfyu58NR7kc7jcC+zmEf+qrY/LvTRw?= =?us-ascii?Q?EZaNtzxjDRWzBzGXdlGi9cL2o74bh81DdCqtUD7icM1yHGFSRqUcuhXtLT5Q?= =?us-ascii?Q?U1jffJHFtrnDfGDbPrEMLzYx/ISW6mHgzcwdLK2BF/gAWlweH/6/PiW2qq95?= =?us-ascii?Q?SAIsiu2fZ2tBhkGPV+He9Pb1Zb5tPNxeBYPQOpqzX16St8JeE4AVIa9QQO1V?= =?us-ascii?Q?xy6HAjdgoT1tazo3CaMtIpnOoE3JdRl8+WMoRO3dcsb2sIgPQG+54Fq3fTCo?= =?us-ascii?Q?upy10xBfRA/4wYb/U6ALrwy+37u1hhtksdq2dmqPY51yiLaTghnmonQ8cvNz?= =?us-ascii?Q?ZwNfIdxqq7K3NtaiGivr/w54OBjrBMf94D/JwmDyD+R3wP4RH/LxYlZawnOn?= =?us-ascii?Q?ZBO0/Yj+6nYvtHOAMS5Px6irCiYXm0eUFbSYINY44eUoWt1GvSr6uj2iiNhk?= =?us-ascii?Q?G5RoLKN+ndIriE7UNKbAgN0AbUIGilkqk3DTP1mIqNv0P/nReHaGSPNH+m6v?= =?us-ascii?Q?dU9wu5Yr74BVlGkeenE76iQLOmx97KPyPIQssReUC5uwmgMRB/x/lLRJQQAh?= =?us-ascii?Q?Sw5+47EcWG2WoknAP4QA6kOXM1ueFP7SEk9i5NuX4xPThSMUI72bSPwY9xG5?= =?us-ascii?Q?b4u933qLMNo83EhXlzUsYczO1dlI68UU3vw+nhYozQ1gJQM/0mQ2VghldJUe?= =?us-ascii?Q?T2OPDSHB4PAxMyX2DLFnkOA7LOfeUKZxtHy1+xibEHUokIa52/y+34rY6Bon?= =?us-ascii?Q?cYXEc8yMDcvu/Z719gnNZiufA3JCnTg3HYop7szVT3CfP/5FmRBQTh6jZZP9?= =?us-ascii?Q?32PiuzQaAWhj5IhJV9CDbJi07ozza0cYci0mqKGpVGdqDEGZ0c5YYBRc9chL?= =?us-ascii?Q?lXLFR1GAUW32HEPlacibpI9+4LlFpy+qPS05f1kJtloAFuWa6N6vNOv6Hr4i?= =?us-ascii?Q?pREer7eRp8vkje3IKw1oGTNYcbDGBpVLa9zyjin6DAMtmqN4JabN4bu587rn?= =?us-ascii?Q?ZHFOXq0ZIXW1A5S70N56QuWs07z6FnIt5raHPxr+8DdllabZT2ypAZi8Rb0G?= =?us-ascii?Q?aAQF7pAZ/w=3D=3D?= X-OriginatorOrg: Nvidia.com X-MS-Exchange-CrossTenant-Network-Message-Id: 7729830f-b098-48b2-28d4-08de890983b6 X-MS-Exchange-CrossTenant-AuthSource: DS2PR12MB9567.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 23 Mar 2026 18:25:09.3934 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 43083d15-7273-40c1-b7db-39efd9ccc17a X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: KeiG4+HuxwSVhGOZFpEedOfbZ2bE3S/LciNaBVLy3xNLEZh+c0YAFK08E3AvFeBhQNiY6BhJFGTlyXcpBKuPHQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: CY8PR12MB8268 Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: permerror client-ip=2a01:111:f403:c101::7; envelope-from=nathanc@nvidia.com; helo=BL0PR03CU003.outbound.protection.outlook.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_NONE=0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: qemu development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @Nvidia.com) X-ZM-MESSAGEID: 1774290473425154100 Content-Type: text/plain; charset="utf-8" From: Nathan Chen Introduce a new enum type property allowing to set a Substream ID size for HW-accelerated smmuv3. Values are auto and 0..20. The auto value allows SSID size property to be derived from host IOMMU capabilities. A value of 0 disables SubstreamID, while non-zero values specify the SSID size in bits. Reviewed-by: Eric Auger Tested-by: Eric Auger Tested-by: Shameer Kolothum Acked-by: Markus Armbruster Signed-off-by: Nathan Chen --- hw/core/qdev-properties-system.c | 14 ++++++++++++++ include/hw/core/qdev-properties-system.h | 3 +++ qapi/misc-arm.json | 16 ++++++++++++++++ qapi/pragma.json | 1 + 4 files changed, 34 insertions(+) diff --git a/hw/core/qdev-properties-system.c b/hw/core/qdev-properties-sys= tem.c index a402321f42..4aca1d4326 100644 --- a/hw/core/qdev-properties-system.c +++ b/hw/core/qdev-properties-system.c @@ -18,6 +18,7 @@ #include "qapi/qapi-types-block.h" #include "qapi/qapi-types-machine.h" #include "qapi/qapi-types-migration.h" +#include "qapi/qapi-types-misc-arm.h" #include "qapi/qapi-visit-virtio.h" #include "qapi/qmp/qerror.h" #include "qemu/ctype.h" @@ -723,6 +724,19 @@ const PropertyInfo qdev_prop_zero_page_detection =3D { .set_default_value =3D qdev_propinfo_set_default_value_enum, }; =20 +/* --- SsidSizeMode --- */ + +QEMU_BUILD_BUG_ON(sizeof(SsidSizeMode) !=3D sizeof(int)); + +const PropertyInfo qdev_prop_ssidsize_mode =3D { + .type =3D "SsidSizeMode", + .description =3D "ssidsize mode: auto, 0-20", + .enum_table =3D &SsidSizeMode_lookup, + .get =3D qdev_propinfo_get_enum, + .set =3D qdev_propinfo_set_enum, + .set_default_value =3D qdev_propinfo_set_default_value_enum, +}; + /* --- Reserved Region --- */ =20 /* diff --git a/include/hw/core/qdev-properties-system.h b/include/hw/core/qde= v-properties-system.h index ec21732ce5..4708885164 100644 --- a/include/hw/core/qdev-properties-system.h +++ b/include/hw/core/qdev-properties-system.h @@ -14,6 +14,7 @@ extern const PropertyInfo qdev_prop_multifd_compression; extern const PropertyInfo qdev_prop_mig_mode; extern const PropertyInfo qdev_prop_granule_mode; extern const PropertyInfo qdev_prop_zero_page_detection; +extern const PropertyInfo qdev_prop_ssidsize_mode; extern const PropertyInfo qdev_prop_losttickpolicy; extern const PropertyInfo qdev_prop_blockdev_on_error; extern const PropertyInfo qdev_prop_bios_chs_trans; @@ -61,6 +62,8 @@ extern const PropertyInfo qdev_prop_virtio_gpu_output_lis= t; #define DEFINE_PROP_ZERO_PAGE_DETECTION(_n, _s, _f, _d) \ DEFINE_PROP_SIGNED(_n, _s, _f, _d, qdev_prop_zero_page_detection, \ ZeroPageDetection) +#define DEFINE_PROP_SSIDSIZE_MODE(_n, _s, _f, _d) \ + DEFINE_PROP_SIGNED(_n, _s, _f, _d, qdev_prop_ssidsize_mode, SsidSizeMo= de) #define DEFINE_PROP_LOSTTICKPOLICY(_n, _s, _f, _d) \ DEFINE_PROP_SIGNED(_n, _s, _f, _d, qdev_prop_losttickpolicy, \ LostTickPolicy) diff --git a/qapi/misc-arm.json b/qapi/misc-arm.json index f921d740f1..416b4240e2 100644 --- a/qapi/misc-arm.json +++ b/qapi/misc-arm.json @@ -45,3 +45,19 @@ # { "version": 3, "emulated": false, "kernel": true } = ] } ## { 'command': 'query-gic-capabilities', 'returns': ['GICCapability'] } + +## +# @SsidSizeMode: +# +# SMMUv3 SubstreamID size configuration mode. +# +# @auto: derive from host IOMMU capabilities +# +# Values 0-20: SSIDSIZE value in bits. 0 disables SubstreamID. +# +# Since: 11.0 +## +{ 'enum': 'SsidSizeMode', + 'data': [ 'auto', '0', '1', '2', '3', '4', '5', '6', '7', '8', '9', + '10', '11', '12', '13', '14', '15', '16', '17', '18', + '19', '20' ] } # order matters, see ssidsize_mode_to_value() diff --git a/qapi/pragma.json b/qapi/pragma.json index 193bc39059..24aebbe8f5 100644 --- a/qapi/pragma.json +++ b/qapi/pragma.json @@ -68,6 +68,7 @@ 'S390CpuEntitlement', 'S390CpuPolarization', 'S390CpuState', + 'SsidSizeMode', 'String', 'StringWrapper', 'SysEmuTarget', --=20 2.43.0 From nobody Fri Apr 3 16:04:12 2026 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; arc=pass (i=1 dmarc=pass fromdomain=nvidia.com); dmarc=pass(p=reject dis=none) header.from=nvidia.com ARC-Seal: i=2; a=rsa-sha256; t=1774290453; cv=pass; d=zohomail.com; s=zohoarc; b=bkhn/XrZGJAVHWVEqb4oduKuYix4Z3MAU0vglBciKgXFrnWt5lWmuP6p2yfenoJnUVWv4DWRIozTebgO1o7OXaZHqQDsumH4sJKzcXHazxuAa/WwdtVBjEC0iV1IQ32HCLsZ9hSRFXcLp+xYfFWPRrERIKI4OmZEO8A0amfFg1M= ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1774290453; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=vgsWL05e0lLKLZNf3USWh+C8WL7E9gD3Uj1DErbGrjg=; b=H3JADjbfPQG05gx1owPduZn8V47WdZK72fzk0y9y+i2IWc0kHRFfOgrwRnfEVB16OfvsYmzjgYXYHnUFiS2y1QqebFlly2SF0qUP3CmUbUnbPqU+c3yY5OpE/cVCt9DCKUOFBNPsE1BQVuj3KduojqDD01pRTi7stcmcd+timZU= ARC-Authentication-Results: i=2; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; arc=pass (i=1 dmarc=pass fromdomain=nvidia.com); dmarc=pass header.from= (p=reject dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1774290453188664.2339886311029; Mon, 23 Mar 2026 11:27:33 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1w4jyK-00025s-Lu; Mon, 23 Mar 2026 14:25:52 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1w4jxs-0001vd-V7; Mon, 23 Mar 2026 14:25:27 -0400 Received: from mail-northcentralusazlp170120005.outbound.protection.outlook.com ([2a01:111:f403:c105::5] helo=CH5PR02CU005.outbound.protection.outlook.com) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1w4jxp-0004GC-Pw; Mon, 23 Mar 2026 14:25:24 -0400 Received: from DS2PR12MB9567.namprd12.prod.outlook.com (2603:10b6:8:27c::8) by IA0PPF12042BF6F.namprd12.prod.outlook.com (2603:10b6:20f:fc04::bc8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9723.8; Mon, 23 Mar 2026 18:25:12 +0000 Received: from DS2PR12MB9567.namprd12.prod.outlook.com ([fe80::636:1b52:24ca:d7e5]) by DS2PR12MB9567.namprd12.prod.outlook.com ([fe80::636:1b52:24ca:d7e5%3]) with mapi id 15.20.9745.012; Mon, 23 Mar 2026 18:25:12 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=Mv+LkOxzjy3nE2B7Fem3m/ljlMyIGw3zOHIQy9svIpiuZ4YW19ZdjJNd9wwEwhqgHtJqm14RQx4F+dSZLw3HLYo2lYinCFGgCnc2prknHaDv+ikMYt/wHwZ0rGW8MhhgC0T9Jvr/FrZ0IrgP5iZVPZA5LsDwez+B2AqKzfdZJ/8UiQlhSYzsGIvMAGpRp+OURfqSFb63FiCyTYHK9fvAoPYIu1YziSRhfICJQo9+s2DW+opjqi9XKZ8HfhRrFdpI0gjVeq84wvgGkaXC9nDK1mbWcfeVLI1Neu1u4GTzB6c2vG/KgftB+0j3jS/ub9JTmPTQAmhXReBbY9eUcHYMEg== 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=vgsWL05e0lLKLZNf3USWh+C8WL7E9gD3Uj1DErbGrjg=; b=bbDxEX1PxZ5uuHFlIHPDCY4msH1D2h3Ls7Sj5qGTIYIXaRpzEg6Mjkj+nTAVUUw0sWsJfvj+FNtySUySUFBlSqfitTbYXGkQWyAx62BbHaHdCUVvdeP/U4voSbnNx13TL0azaAMyVMP0tTJ4Hxjtl43g5kzfXJS2vd9xkpGRkfuk6bXJ+ZXuLDVYvz/KOsjbrM2A3mW48LT3VmQR97VSwEn+IO2lsV3PbSSZk8+qSbBSbjgOkCm9++IX5vAVd5C9N0zQ3uWJcNbdxmEBO9i5xwVP5ItJgwXPckz6vGY80OecF1++SieAYchPrCGqT7W1yG+98CTCQm0hmyB4qMkEJQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=nvidia.com; dmarc=pass action=none header.from=nvidia.com; dkim=pass header.d=nvidia.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=Nvidia.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=vgsWL05e0lLKLZNf3USWh+C8WL7E9gD3Uj1DErbGrjg=; b=CkWQqt9VA9F/nOmVnaTwHfk67kmH8CKwWBstUL3tiItb11ee6KhKn7uCd0UVYjsTFWJo5h9ecC9BuMwSYe5+9mJ3sZyxIMpE2pqC9kXQIjpTYFZFfHDXIDMFM++0yKvL3S/jgDT6/3pPwY/yj9c3YPz/2OZZmIwldZ/R2wiqH4TDR/tvL4Drf2AEQFADIY0+Sc+fJDnQs+bFf9zjCmI/iaWTtNi8SZu6cZ/XNq803kG4Bk9QaIgdFPDcxjr3mbTJ1tAfIrn27/3w85XrAJUEvWyCA9YtgWyJhwgRKxxf4tnPek0oieU7AnsR7Hmxj6ZlWMrhwuWIwGakwNP83Jmj/w== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=nvidia.com; From: Nathan Chen To: qemu-arm@nongnu.org, qemu-devel@nongnu.org Cc: Eric Auger , Peter Maydell , "Michael S . Tsirkin" , Igor Mammedov , Ani Sinha , Shannon Zhao , Paolo Bonzini , =?UTF-8?q?Daniel=20P=20=2E=20Berrang=C3=A9?= , Eric Blake , Markus Armbruster , Shameer Kolothum , Matt Ochs , Nicolin Chen , Nathan Chen Subject: [PATCH v5 5/8] hw/arm/smmuv3-accel: Change "ssidsize" property type to SsidSizeMode Date: Mon, 23 Mar 2026 11:24:51 -0700 Message-ID: <20260323182454.1416110-6-nathanc@nvidia.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20260323182454.1416110-1-nathanc@nvidia.com> References: <20260323182454.1416110-1-nathanc@nvidia.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: SJ0PR05CA0209.namprd05.prod.outlook.com (2603:10b6:a03:330::34) To DS2PR12MB9567.namprd12.prod.outlook.com (2603:10b6:8:27c::8) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: DS2PR12MB9567:EE_|IA0PPF12042BF6F:EE_ X-MS-Office365-Filtering-Correlation-Id: a66b9cfb-a4f3-4279-8918-08de89098513 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; ARA:13230040|7416014|1800799024|376014|366016|18002099003|22082099003|56012099003; X-Microsoft-Antispam-Message-Info: CH2VpICTsEUXZnli7I10M6Qv8O+QHnEc8T+a1mnhlvX3e6K39Z5BgY0BhomrmUhke21QTtGRuo12FxKYPUJDNMEqv84XPcgBynXcWF/Pc3UZsYO01NsZwdApKjWDlMoyHD5NiwyJXGd7ri9lP37uN09pm/8s9t54a+vR0ewzR3ZxQXOyN2zMOhBMeFNss7LoLNMyxt4XDKtAal8FJznsp06kY6kpsqv0sBOq+QBgxjrWr8pSHifHTlWKex8Fth5qNyqx1AjAQG0LV+YhqsspJtSQWEtrVOxHy4o7t2T05S30DL3E3HV9l3j4VnCyKfiUPcmMQNeODmT0geAw8pTWL5WAMses79DZUnnewc+8SSo0ZX1FU8QmhiEQH72lbSFy9fQceBaoIe0yEcttc19nO16A9zxl20GE9isOacnGSttssGfnr6jrCa9zf0TezQiNspWk5V8H+xQrqqemyE29FqGDrNCKQsddN7N8AGalFUPcrc7Xh15JlSOmdv3bt/fxMlt0BKc+eRlG98ZUgUZTBJfyyIRCFs5vAqutv72H0aBp3H+SoGKSU4+zeDUpRvIkD6IORAfYqiSMNAmVajfFtp/ezrcKrwe11f1bgscvihdYTt8orJZ4pqUacdxUzCtB7v+TlPb8OxGKDOr2taIJ97yUbuZiTLwxFxYNderbst72R8VFcOOlGbAIJMKDzdmsRMs0/AHo08BYgBJqp0g15EnGRMsWZgfwedyL4P57j/c= X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:DS2PR12MB9567.namprd12.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230040)(7416014)(1800799024)(376014)(366016)(18002099003)(22082099003)(56012099003); DIR:OUT; SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?9c4Ivg0oK1g1+Q0sg+766Pkzq2x4DPZc2aKuq93QRGubYbxZYtVtKzQPXzLe?= =?us-ascii?Q?p1ZjyzWw1YXMNYK0jJxnnHt8CJnPNdQe90t2lU5qZfloW8vu0pbv4a9vcnCf?= =?us-ascii?Q?x8thxjBQtqqlqWiE5yKq3Pfz7Zsl9WmpWgewoqG7hbY06yVrGJd0zkMrKgHQ?= =?us-ascii?Q?oEVV+Npsjsx9k6mR3qzR08i+8PHM1nJa6tP870+ud9oDfW45APIzbA/d7JNU?= =?us-ascii?Q?pQDr18Ia94sS6IkabdIc96bnoW5aWMJK8y2iHGNzEoViPdmVHetM/Pqgr7lm?= =?us-ascii?Q?8pW/cCeLnYuo14Xgcyc8vqt5RK3JyR7qwptKe7wHm1tIDUs+zFz2I8vTkKD2?= =?us-ascii?Q?ObKWJWr1LCaeWsl0kO238MXrmH3O58O23/WkmtfB7KGz93X/SZMteLF8FCPT?= =?us-ascii?Q?38S7KOXaT9bf9KWjy7k0+FVwj41ZQ0c9WzKwjEFNb3kNDujn4SiATN2FOnl+?= =?us-ascii?Q?BEUYCzowhIWmhEOO1+BCnUPZq58K2Lmell2N4TL6p36XnqXAM45ChQkcoT8g?= =?us-ascii?Q?E8zgp+zziVMen84MoBqDjdLpvp5En0ngLkFVoOg0LAFtkJFMVljm1Sr0FqgM?= =?us-ascii?Q?9WzVXvngZ6IXGI481pzHzcO2iFeGKquQHYYpM4sk+c+1es2nN7G3IhyRp1WF?= =?us-ascii?Q?LC+DthIpGNItMEmHZNgqw1RN49UckRCU6IYJGgrKHLk52gx1UllKsVPMeiPq?= =?us-ascii?Q?AdXv7w9hqTuB8syRxHKEdYnHirygf86WOBfSq/Ua2+8FtBA78RHbXO/vk06K?= =?us-ascii?Q?0KQk3QPczg1xeV/ymvT5RIgzPj/UTy1LODG9RGXuvxRwdu5k55aJW56IZdPW?= =?us-ascii?Q?ZXLEg/sPXy6Y5oxoEF1wXA7KrAYXKjmcNFq9nBgCoWBFb5SMZ6GFy9Rx9OhU?= =?us-ascii?Q?4HmUbb24AjFiD2lZMcabBVDsjeMdUUY1Z8nEYsGNZhp6UCLqt9hIl1pkQpEg?= =?us-ascii?Q?DwfSm/M1cbl7RwG+SMqmUbHyVIxXckEo8gDz2HDXRNaWdbbPd2aE+XA/aYcB?= =?us-ascii?Q?n94cq/AM3zSILt+2eMzM7aeMNgYG3BJ27GYrUNRpkEkCOWoHcmgyTCD1OCNF?= =?us-ascii?Q?DdSYmrzbU2iS/n3viA5lvlMxJE5DxS71ACqJb6NLOUJ0UbiapyGR7jN5+KvR?= =?us-ascii?Q?3uUwwpv8wgUBNmEmSJXwflJXIcKMJ5oNkKi3pRMNgXBnaGcfUGw97yx4Nxr1?= =?us-ascii?Q?HA5tRte3D0RMTrlpaiRigQmYZUdAgIgSYSmK0eczjfENUg/r+ORzsgcliH5e?= =?us-ascii?Q?usd906WtMCjcKX8zSgjC8rLrGLkZUWdXT/AI7biN8cjEY1N4JAYvrgidJLTk?= =?us-ascii?Q?NW9p/Dm8qTcOPQmEl9Ok6XS2JnrkMU+RPLoiyqUwgKnygHhU7SunjpD7XBcZ?= =?us-ascii?Q?ZbWjy6uWrJy09eWtHFT9yivsu/jpRLvZbzwa+LYMW4wlPr/HL75kSa+ybGtf?= =?us-ascii?Q?WJ8dxR6A6uOf2jHPJphZeUKqE/4Te0J6VWqtonFp1LJCbVWUN87Z8m+JlBa2?= =?us-ascii?Q?+ZIfJ/i9RV4sWc8QNYAQQYHsrlrceXPQrEBqZ7OpZhO38dUDN0lonih0j0wX?= =?us-ascii?Q?VmZkBz9mQtdXG3Mt0ZfIePDpDrZHRQtkXUhI+O1b676w3bCKeqBvxcg5Y3Rg?= =?us-ascii?Q?6kNcz8ml9G7qXTnjFhT7Ms/qiEGvdwdmClvOcwXm+FppAd6Otp/DspUF0qEB?= =?us-ascii?Q?gDP1eYeYRioYz2RiQOjUTF7TH8rzeczZWmY/0Q1uixXIqFa7DLhzrozu30By?= =?us-ascii?Q?E7twmSMzHg=3D=3D?= X-OriginatorOrg: Nvidia.com X-MS-Exchange-CrossTenant-Network-Message-Id: a66b9cfb-a4f3-4279-8918-08de89098513 X-MS-Exchange-CrossTenant-AuthSource: DS2PR12MB9567.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 23 Mar 2026 18:25:12.1434 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 43083d15-7273-40c1-b7db-39efd9ccc17a X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: 3oiK1SkwvssY35u5fRd+QrGuNHrqst6oeDpE5yyC+yuN+8bQD6+hJNDewa7R2PoC/Pver9Ii9YBd5ZJqEXQpNw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: IA0PPF12042BF6F Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: permerror client-ip=2a01:111:f403:c105::5; envelope-from=nathanc@nvidia.com; helo=CH5PR02CU005.outbound.protection.outlook.com X-Spam_score_int: -10 X-Spam_score: -1.1 X-Spam_bar: - X-Spam_report: (-1.1 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FORGED_SPF_HELO=1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_PASS=-0.001, SPF_NONE=0.001 autolearn=no autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: qemu development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @Nvidia.com) X-ZM-MESSAGEID: 1774290454210158500 Content-Type: text/plain; charset="utf-8" From: Nathan Chen Change accel SMMUv3 SSIDSIZE property from uint8_t to SsidSizeMode. The 'auto' value is not implemented, as this commit is meant to set the property to the correct type and avoid breaking JSON/QMP when the auto mode is introduced. A future patch will implement resolution of 'auto' value to match the host SMMUv3 SSIDSIZE value. The conversion of the "ssidsize" property type to OnOffAuto is an incompatible change for JSON/QMP when a uint8_t value is expected for "ssidsize", but this property is new in 11.0 and this patch is submitted as a fix to the property type. Fixes: b8c6f8a69d27 ("hw/arm/smmuv3-accel: Make SubstreamID support configu= rable") Tested-by: Eric Auger Reviewed-by: Shameer Kolothum Reviewed-by: Eric Auger Tested-by: Shameer Kolothum Acked-by: Markus Armbruster Signed-off-by: Nathan Chen --- hw/arm/smmuv3-accel.c | 23 +++++++++++++++++++++-- hw/arm/smmuv3.c | 19 ++++++++++--------- include/hw/arm/smmuv3-common.h | 1 - include/hw/arm/smmuv3.h | 3 ++- 4 files changed, 33 insertions(+), 13 deletions(-) diff --git a/hw/arm/smmuv3-accel.c b/hw/arm/smmuv3-accel.c index c31b64295e..bc6cbfebc2 100644 --- a/hw/arm/smmuv3-accel.c +++ b/hw/arm/smmuv3-accel.c @@ -802,7 +802,7 @@ static uint64_t smmuv3_accel_get_viommu_flags(void *opa= que) SMMUState *bs =3D opaque; SMMUv3State *s =3D ARM_SMMUV3(bs); =20 - if (s->ssidsize) { + if (s->ssidsize > SSID_SIZE_MODE_0) { flags |=3D VIOMMU_FLAG_PASID_SUPPORTED; } return flags; @@ -817,6 +817,22 @@ static const PCIIOMMUOps smmuv3_accel_ops =3D { .get_msi_direct_gpa =3D smmuv3_accel_get_msi_gpa, }; =20 +/* + * This returns the value of a SsidSizeMode value offset by 1 to + * account for the enum values offset by 1 from actual values. + * + * SSID_SIZE_MODE_0 =3D 1, SSID_SIZE_MODE_1 =3D 2, etc. so return 0 + * if SSID_SIZE_MODE_0 is passed as input, return 1 if + * SSID_SIZE_MODE_1 is passed as input, etc. + */ +static uint8_t ssidsize_mode_to_value(SsidSizeMode mode) +{ + if (mode =3D=3D SSID_SIZE_MODE_AUTO) { + return 0; + } + return mode - 1; +} + void smmuv3_accel_idr_override(SMMUv3State *s) { if (!s->accel) { @@ -842,7 +858,10 @@ void smmuv3_accel_idr_override(SMMUv3State *s) * By default QEMU SMMUv3 has no SubstreamID support. Update IDR1 if u= ser * has enabled it. */ - s->idr[1] =3D FIELD_DP32(s->idr[1], IDR1, SSIDSIZE, s->ssidsize); + if (s->ssidsize > SSID_SIZE_MODE_0) { + s->idr[1] =3D FIELD_DP32(s->idr[1], IDR1, SSIDSIZE, + ssidsize_mode_to_value(s->ssidsize)); + } } =20 /* Based on SMUUv3 GPBA.ABORT configuration, attach a corresponding HWPT */ diff --git a/hw/arm/smmuv3.c b/hw/arm/smmuv3.c index ea285bdf64..79018f8d66 100644 --- a/hw/arm/smmuv3.c +++ b/hw/arm/smmuv3.c @@ -20,6 +20,7 @@ #include "qemu/bitops.h" #include "hw/core/irq.h" #include "hw/core/sysbus.h" +#include "hw/core/qdev-properties-system.h" #include "migration/blocker.h" #include "migration/vmstate.h" #include "hw/core/qdev-properties.h" @@ -625,7 +626,7 @@ static int decode_ste(SMMUv3State *s, SMMUTransCfg *cfg, } =20 /* Multiple context descriptors require SubstreamID support */ - if (!s->ssidsize && STE_S1CDMAX(ste) !=3D 0) { + if (s->ssidsize =3D=3D SSID_SIZE_MODE_0 && STE_S1CDMAX(ste) !=3D 0) { qemu_log_mask(LOG_UNIMP, "SMMUv3: multiple S1 context descriptors require Substream= ID support. " "Configure ssidsize > 0 (requires accel=3Don)\n"); @@ -1979,6 +1980,10 @@ static bool smmu_validate_property(SMMUv3State *s, E= rror **errp) error_setg(errp, "ril auto mode is not supported"); return false; } + if (s->ssidsize =3D=3D SSID_SIZE_MODE_AUTO) { + error_setg(errp, "ssidsize auto mode is not supported"); + return false; + } =20 if (!s->accel) { if (s->ril =3D=3D ON_OFF_AUTO_OFF) { @@ -1993,7 +1998,7 @@ static bool smmu_validate_property(SMMUv3State *s, Er= ror **errp) error_setg(errp, "OAS must be 44 bits when accel=3Doff"); return false; } - if (s->ssidsize) { + if (s->ssidsize > SSID_SIZE_MODE_0) { error_setg(errp, "ssidsize can only be set if accel=3Don"); return false; } @@ -2011,11 +2016,6 @@ static bool smmu_validate_property(SMMUv3State *s, E= rror **errp) error_setg(errp, "OAS can only be set to 44 or 48 bits"); return false; } - if (s->ssidsize > SMMU_SSID_MAX_BITS) { - error_setg(errp, "ssidsize must be in the range 0 to %d", - SMMU_SSID_MAX_BITS); - return false; - } =20 return true; } @@ -2144,7 +2144,8 @@ static const Property smmuv3_properties[] =3D { DEFINE_PROP_ON_OFF_AUTO("ril", SMMUv3State, ril, ON_OFF_AUTO_ON), DEFINE_PROP_ON_OFF_AUTO("ats", SMMUv3State, ats, ON_OFF_AUTO_OFF), DEFINE_PROP_UINT8("oas", SMMUv3State, oas, 44), - DEFINE_PROP_UINT8("ssidsize", SMMUv3State, ssidsize, 0), + DEFINE_PROP_SSIDSIZE_MODE("ssidsize", SMMUv3State, ssidsize, + SSID_SIZE_MODE_0), }; =20 static void smmuv3_instance_init(Object *obj) @@ -2185,7 +2186,7 @@ static void smmuv3_class_init(ObjectClass *klass, con= st void *data) "A value of N allows SSIDs in the range [0 .. 2^N - 1]. " "Valid range is 0-20, where 0 disables SubstreamID support. " "Defaults to 0. A value greater than 0 is required to enable " - "PASID support."); + "PASID support. ssidsize=3Dauto is not supported."); } =20 static int smmuv3_notify_flag_changed(IOMMUMemoryRegion *iommu, diff --git a/include/hw/arm/smmuv3-common.h b/include/hw/arm/smmuv3-common.h index 9f78bbe89e..7f0f992dfd 100644 --- a/include/hw/arm/smmuv3-common.h +++ b/include/hw/arm/smmuv3-common.h @@ -311,7 +311,6 @@ REG32(IDR1, 0x4) FIELD(IDR1, TABLES_PRESET, 30, 1) FIELD(IDR1, ECMDQ, 31, 1) =20 -#define SMMU_SSID_MAX_BITS 20 #define SMMU_IDR1_SIDSIZE 16 #define SMMU_CMDQS 19 #define SMMU_EVENTQS 19 diff --git a/include/hw/arm/smmuv3.h b/include/hw/arm/smmuv3.h index c35e599bbc..ddf472493d 100644 --- a/include/hw/arm/smmuv3.h +++ b/include/hw/arm/smmuv3.h @@ -21,6 +21,7 @@ =20 #include "hw/arm/smmu-common.h" #include "qom/object.h" +#include "qapi/qapi-types-misc-arm.h" =20 #define TYPE_SMMUV3_IOMMU_MEMORY_REGION "smmuv3-iommu-memory-region" =20 @@ -72,7 +73,7 @@ struct SMMUv3State { OnOffAuto ril; OnOffAuto ats; uint8_t oas; - uint8_t ssidsize; + SsidSizeMode ssidsize; }; =20 typedef enum { --=20 2.43.0 From nobody Fri Apr 3 16:04:12 2026 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; arc=pass (i=1 dmarc=pass fromdomain=nvidia.com); dmarc=pass(p=reject dis=none) header.from=nvidia.com ARC-Seal: i=2; a=rsa-sha256; t=1774290423; cv=pass; d=zohomail.com; s=zohoarc; b=MR/slcP3g2AtIfR/fBkjmFHM3ij/GJ5GBWJ478xSu+FcezAyetpZs9npCIF27FjtDdtQBPJ0rkJwx0iBWqnNwWsBNKXet9nwwiyoSKMdBcb6B5QZHozeUGBC2b62AIpdrlTKv0XQIxRh1obqf6b9uS0+Y0vnhJIX4XbHbGFdXqE= ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1774290423; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=S+H+6Z52paFu/N0+YZuWPj+Ko4oZe1Z+S9ri4XOlRAk=; b=DCcEgfJPDx5gpKK303dYixoJhlMcMtt3fcBozHmJ9dqaHE+lnVKDW4E+hyYUYrUORWCo/tFIeoQ8D23mld9HySewSWg4/Tfyb74BZHwShropNIoF26evvhgKg4mX1VMoQcFpcHlY63k8pwu8wm/R766M42AiyDHZMKsePHbhvg0= ARC-Authentication-Results: i=2; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; arc=pass (i=1 dmarc=pass fromdomain=nvidia.com); dmarc=pass header.from= (p=reject dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1774290423844951.0150340298305; Mon, 23 Mar 2026 11:27:03 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1w4jyJ-000259-Tq; Mon, 23 Mar 2026 14:25:51 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1w4jxv-0001yC-Fa; Mon, 23 Mar 2026 14:25:35 -0400 Received: from mail-northcentralusazlp170120005.outbound.protection.outlook.com ([2a01:111:f403:c105::5] helo=CH5PR02CU005.outbound.protection.outlook.com) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1w4jxt-0004GC-Gn; Mon, 23 Mar 2026 14:25:26 -0400 Received: from DS2PR12MB9567.namprd12.prod.outlook.com (2603:10b6:8:27c::8) by IA0PPF12042BF6F.namprd12.prod.outlook.com (2603:10b6:20f:fc04::bc8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9723.8; Mon, 23 Mar 2026 18:25:15 +0000 Received: from DS2PR12MB9567.namprd12.prod.outlook.com ([fe80::636:1b52:24ca:d7e5]) by DS2PR12MB9567.namprd12.prod.outlook.com ([fe80::636:1b52:24ca:d7e5%3]) with mapi id 15.20.9745.012; Mon, 23 Mar 2026 18:25:15 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=LbUJdS05iWiLQXtUob0EN5YCU/5qT6z71IEhCoeCvOAAPYR9K3yNISQ0zEbmuNz3Ec80toY9sG3nM34zW4g5OOKjFgcq7eMFmsL6/kqH35cuS4WGmR1DCx1uySxzWsT7slCpiy0wFyjRndPoY4O1ZrJEF85w+8fNeg6d5EOPbVQImKQeZaUEYKhVowHb8sIn2HHci23mRN8ilEtKnxSKJs8JE3qIyE5IR3ycEaXgnAAb837miHNW77WV8HL3DzLzgvQ9Jth3Hhg13jlgwXqvvkOupKBCGrxCktlPCT8Bng1VD9UpYM36n7kmkrr1oOILroyaKSQatJ4lhy4mI83XUA== 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=S+H+6Z52paFu/N0+YZuWPj+Ko4oZe1Z+S9ri4XOlRAk=; b=CUgoMu+lrMEmLGffxZ/fqskm6ySZxs8R8+46Z+sH53hmoOGp7omLJcXrFvHbHG1UOUdBXHSMLS4TgberoI5XzyqN1fd3LSsBiqjTY+mWeBexyzx48/OEWEh82pskQmdYtz2YTtqO6DpPkALxbLAns6XP9u3WHSyNx4xW99LEOIIpt0ZkU6ICHg2jGvH3xLu51hfjUJ6Lj20NGBLc5WJd3fHzluM4PQuWwamCAa8J5UzTADVBSPqNU9vdN+KfmSntl/j+EYakb5+k6+Zqu3bTIzdULrXqAZUKglJBcMh1Ab8TL5dIhl0ZNp5UuN8tNaztLPJNAfV3T7oejZtEG3w6WA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=nvidia.com; dmarc=pass action=none header.from=nvidia.com; dkim=pass header.d=nvidia.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=Nvidia.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=S+H+6Z52paFu/N0+YZuWPj+Ko4oZe1Z+S9ri4XOlRAk=; b=OQLCzCzlu276iDPYahDp50ZCbtR37HaPN/MPTM3IqlKFEUbnqct9DiLDa+XwabSfDvXzOX2D2uEkM19h4v0jPDs+c+Y2RueYaAVt2K3mRWbntkFq6cO4awgqkmJ441Ro0hwHIPXGIwmjlf5Hie5IyvMWKUAckJFInPO7RmvrTPnUk14H6ngZXcMGpHyVKH7nBvzWdST4E0/cbPeN95uleCXw/5CvOrfy/Ri5tKDR9fPt0XCvihP91mMGQmlKMxeswsAHUC+8gq7EbxO+sjjsyV/TRFTW1vw4jKxPLpXYU2uixY5lUUITdBBkZwFEqTBwUEi6S1x8/a3W4mjgI56pwA== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=nvidia.com; From: Nathan Chen To: qemu-arm@nongnu.org, qemu-devel@nongnu.org Cc: Eric Auger , Peter Maydell , "Michael S . Tsirkin" , Igor Mammedov , Ani Sinha , Shannon Zhao , Paolo Bonzini , =?UTF-8?q?Daniel=20P=20=2E=20Berrang=C3=A9?= , Eric Blake , Markus Armbruster , Shameer Kolothum , Matt Ochs , Nicolin Chen , Nathan Chen Subject: [PATCH v5 6/8] qdev: Add an OasMode property type Date: Mon, 23 Mar 2026 11:24:52 -0700 Message-ID: <20260323182454.1416110-7-nathanc@nvidia.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20260323182454.1416110-1-nathanc@nvidia.com> References: <20260323182454.1416110-1-nathanc@nvidia.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: BYAPR21CA0011.namprd21.prod.outlook.com (2603:10b6:a03:114::21) To DS2PR12MB9567.namprd12.prod.outlook.com (2603:10b6:8:27c::8) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: DS2PR12MB9567:EE_|IA0PPF12042BF6F:EE_ X-MS-Office365-Filtering-Correlation-Id: f3806120-666d-4137-7b5b-08de89098705 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; ARA:13230040|7416014|1800799024|376014|366016|18002099003|22082099003|56012099003; X-Microsoft-Antispam-Message-Info: sZVLFCgB9YCDpLgrmewfBb84W4kTZQadkIAqlOSXpfeQrv6vaV2SRlUexqAGQaZVHLmfy9KRqG9dfhRgTiuuFhkpldfQ1AXmpioJygQiaYQ/3YtJYQbh0lIR9mnm9+iFgXtNGziDoiFnbjtS+g7yM57p4pDdoWSENK7qJ1PAssjFTkvFvTkK93lqCAGnY3c0F+kfLbbDRHcdkyCA047p/VTyoC+/Pp7bf+XNVR8XuddoqfYXFW+qtWEoRe/U3R7BSthEvk1bngR3tFn9ezZSOTY6jA4tmD6j/LgKBkeNEUMbYdt2AuhqeT7OL1EoNHK01rKmoO9axZzMlqojWKyCMqqOHTFpn5JFC4p3wIZmSVBliHCSef+Q+tK0Ord6zj3Fm9DgPMSNPa9naRihbjGYHPEjL+QkV1OUwCkcc+8+iaeIaiVsOcRM29etrd8SSLStOmbU4ekZK0a/wl8BdJt0lhan3VFgMBPe8oc3lezQBj6w+PsyxaeZaVCAgB1dkIv0DUNM/8ac+AqJ5GbtVNC/97t/aycZ9wyciVAtqjZha7avy0Gs9lBURapS6w6W+2lY89or4LjVvZa0QKJTBm9PKEDoIm5wb4C7RUiEk2Tz0dnck0tSNiN+xG53I9tWLpi6MFIqSdJ5oD99g6gagjvWWYrKyInV44FvukrO7IpWwCctM9a84irpskcrLjftev4ubdamkjHQ+api+nGinoxOe5CJ6Forl58lYJE0A6AEjdE= X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:DS2PR12MB9567.namprd12.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230040)(7416014)(1800799024)(376014)(366016)(18002099003)(22082099003)(56012099003); DIR:OUT; SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?/tmhpgQY/G1FPuEvF9SDgT9UvGN3teELBNVlKGjqG73PHb2dJHxCGmu2wbWA?= =?us-ascii?Q?Zb6fxMAHkGwokpTGBEhgGgJnEXBwfw0sBBK0ZapXnVCUNwzDuZDxfLyBSpOR?= =?us-ascii?Q?LZkbeckwnBrMnzNVsadoUV45A9AdGwRZRCoHLSrtU5ip+bs9Gmj3fj9dxr3o?= =?us-ascii?Q?3LEHtswxhrLl617YoEQtUZi32ZbJH3IOUdauo19NNc2ahJS7OXa4fpk+tR90?= =?us-ascii?Q?0SmnrQUZWyf9CUnBb8PEdhLXgqxxOg9TKcAN56BWBR2zEVs7mTzcXIcnpjMn?= =?us-ascii?Q?BfNcN+YdG+2mP49ejWYJwDbHYmDfQNW2EQiq11PiDj4OF0XY2MM9/ABEwzH8?= =?us-ascii?Q?tAHD1HFsi0GUjL8IDwbZBzwroVLYx2AdIyJH2qAS/lGjRtIWsXadcXi8QS0v?= =?us-ascii?Q?jdfUMPkoMIe+e7qQOLJ2BjQml/UZeZWXphnTHv8na1c4aEtq6WLQz9cw4fPr?= =?us-ascii?Q?KJMYT9gZMQbnrE3O0gfvr1XyyZPBOgVVy33wwyWAzIwYqNSZz4aBFPoSVFDt?= =?us-ascii?Q?uRpdlAionB2ckLyXReEdOgDO5yHsRO/oggmjGgbkU9VivXYL4WyeGGdp0QEd?= =?us-ascii?Q?WLL0WtUx8TlBcuiQCXUfnQXRaGIXWmc2i5/z+QEe4gfTiBFOv1cxwungO08F?= =?us-ascii?Q?uG2aFkxFGarquooN59U0Jm7uWS5v/pmL41UuqRSjjOZCWRrHDxZqsPG0JPfT?= =?us-ascii?Q?0ft6mokyuqaNh3IX1IIAlwZ5Ywh19b8n9apKfeGTrJP/C7YuVF9vN+OVy280?= =?us-ascii?Q?NvkqtDpv78GM8SSKKsjdQbeObTmwNgRJpZGFEBR6+QMNlEynaJhYW6ujlsKA?= =?us-ascii?Q?e6J2mAzvcd8fF72CdXSJcIGDhjyFrqSpiKR4LRaeh64saO2TSR5kLrp8Mjzc?= =?us-ascii?Q?++0wCzTG007ofXW3JmVT6iNYbZVsRfSPeQhESBTrpHwrfNCZnv/ZH2zrs+A6?= =?us-ascii?Q?lETZtOUTweJflmgKdBl/weGsKNiTVaCZapjqy4RM1icY4cSuKon9LMtqBIlZ?= =?us-ascii?Q?WCzuhMf6j412CA8IMJfIbPigmDUuK1Wp4SibREIhGfbYHKxYCC6BYfU7dfVv?= =?us-ascii?Q?86uHidgavVq5o6t1IN9CG7VMuqXx1l8BTO5c5XiIsZW+zpZcwmo0onPQB8lI?= =?us-ascii?Q?4/3LM+k5LMV3PKzy97qMZpRFRKm4bn+i7bJVMqaL29mvcljCL3MOZ5I2wUm8?= =?us-ascii?Q?9F0X66Pj37e/sWaKiDINdXdfDKMFFAZxr3/d5F0QRekhG5ez7XUeD1I7uZW9?= =?us-ascii?Q?GowqanaKuuQqhVH7JMQ5T1uONoTvjNzupiShQwtKczMDKB2tuGuqYw3IqXtx?= =?us-ascii?Q?qeimdDfWTt+DyKcJk4HVp9xrinjTKeHuVZubiLJQmg+BgkkeO5KfaXmiaw3E?= =?us-ascii?Q?7iyslsDSqaElApR7Pf/O9sYV8MujmDQow5DmECQCBSPwlszQWttLq0oQXHoN?= =?us-ascii?Q?mxZN7Q1f+XVDLJB1hg7rae/vprkdq6ad5DuDyKPuP/SQPghe6w7CjbOkx9Dm?= =?us-ascii?Q?eZxPMU2ML1LY4fSW0t+M8wOE/hUzbRufrpS54w3YDwBddApI8F1ulKSvPQg2?= =?us-ascii?Q?Hm5RVFz3nCajLUD/xBFQTEHvraAW1erPODxvz9/bpRtf7faa3U31wfA9uhdA?= =?us-ascii?Q?v8pKlvsKL+7EiCUckA9RnZhnvYYBxzyPqzxZ7PH7LbTWAxxzm8e5EX+pCKtf?= =?us-ascii?Q?R9p8ZQAPJ9zwWVVCViiuAN/EFxL1NAHg2Sd1oImCgvKoixBb7vTr5g8nMITo?= =?us-ascii?Q?wTmYIRXAnw=3D=3D?= X-OriginatorOrg: Nvidia.com X-MS-Exchange-CrossTenant-Network-Message-Id: f3806120-666d-4137-7b5b-08de89098705 X-MS-Exchange-CrossTenant-AuthSource: DS2PR12MB9567.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 23 Mar 2026 18:25:15.2745 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 43083d15-7273-40c1-b7db-39efd9ccc17a X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: iZGfGxu/C9X59ZKWOz7lpxft6M/LjLRvVUA+7C8xBnKrK/cO61aZUF2LwUtWzIfuCa7rq7HKRwQHHRv9jCNOPg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: IA0PPF12042BF6F Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: permerror client-ip=2a01:111:f403:c105::5; envelope-from=nathanc@nvidia.com; helo=CH5PR02CU005.outbound.protection.outlook.com X-Spam_score_int: -10 X-Spam_score: -1.1 X-Spam_bar: - X-Spam_report: (-1.1 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FORGED_SPF_HELO=1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_PASS=-0.001, SPF_NONE=0.001 autolearn=no autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: qemu development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @Nvidia.com) X-ZM-MESSAGEID: 1774290448852154100 Content-Type: text/plain; charset="utf-8" From: Nathan Chen Introduce a new enum type property allowing to set an Output Address Size. Values are auto, 32, 36, 40, 42, 44, 48, 52, and 56, where a value of N specifies an N-bit OAS. Reviewed-by: Eric Auger Tested-by: Eric Auger Tested-by: Shameer Kolothum Acked-by: Markus Armbruster Signed-off-by: Nathan Chen --- hw/core/qdev-properties-system.c | 13 +++++++++++ include/hw/core/qdev-properties-system.h | 3 +++ qapi/misc-arm.json | 28 ++++++++++++++++++++++++ 3 files changed, 44 insertions(+) diff --git a/hw/core/qdev-properties-system.c b/hw/core/qdev-properties-sys= tem.c index 4aca1d4326..a805ee2e1f 100644 --- a/hw/core/qdev-properties-system.c +++ b/hw/core/qdev-properties-system.c @@ -737,6 +737,19 @@ const PropertyInfo qdev_prop_ssidsize_mode =3D { .set_default_value =3D qdev_propinfo_set_default_value_enum, }; =20 +/* --- OasMode --- */ + +QEMU_BUILD_BUG_ON(sizeof(OasMode) !=3D sizeof(int)); + +const PropertyInfo qdev_prop_oas_mode =3D { + .type =3D "OasMode", + .description =3D "oas mode: auto, 32, 36, 40, 42, 44, 48, 52, 56", + .enum_table =3D &OasMode_lookup, + .get =3D qdev_propinfo_get_enum, + .set =3D qdev_propinfo_set_enum, + .set_default_value =3D qdev_propinfo_set_default_value_enum, +}; + /* --- Reserved Region --- */ =20 /* diff --git a/include/hw/core/qdev-properties-system.h b/include/hw/core/qde= v-properties-system.h index 4708885164..2cbea16d61 100644 --- a/include/hw/core/qdev-properties-system.h +++ b/include/hw/core/qdev-properties-system.h @@ -15,6 +15,7 @@ extern const PropertyInfo qdev_prop_mig_mode; extern const PropertyInfo qdev_prop_granule_mode; extern const PropertyInfo qdev_prop_zero_page_detection; extern const PropertyInfo qdev_prop_ssidsize_mode; +extern const PropertyInfo qdev_prop_oas_mode; extern const PropertyInfo qdev_prop_losttickpolicy; extern const PropertyInfo qdev_prop_blockdev_on_error; extern const PropertyInfo qdev_prop_bios_chs_trans; @@ -64,6 +65,8 @@ extern const PropertyInfo qdev_prop_virtio_gpu_output_lis= t; ZeroPageDetection) #define DEFINE_PROP_SSIDSIZE_MODE(_n, _s, _f, _d) \ DEFINE_PROP_SIGNED(_n, _s, _f, _d, qdev_prop_ssidsize_mode, SsidSizeMo= de) +#define DEFINE_PROP_OAS_MODE(_n, _s, _f, _d) \ + DEFINE_PROP_SIGNED(_n, _s, _f, _d, qdev_prop_oas_mode, OasMode) #define DEFINE_PROP_LOSTTICKPOLICY(_n, _s, _f, _d) \ DEFINE_PROP_SIGNED(_n, _s, _f, _d, qdev_prop_losttickpolicy, \ LostTickPolicy) diff --git a/qapi/misc-arm.json b/qapi/misc-arm.json index 416b4240e2..4dc66d00e5 100644 --- a/qapi/misc-arm.json +++ b/qapi/misc-arm.json @@ -61,3 +61,31 @@ 'data': [ 'auto', '0', '1', '2', '3', '4', '5', '6', '7', '8', '9', '10', '11', '12', '13', '14', '15', '16', '17', '18', '19', '20' ] } # order matters, see ssidsize_mode_to_value() + +## +# @OasMode: +# +# SMMUv3 Output Address Size configuration mode. +# +# @auto: derive from host IOMMU capabilities +# +# @32: 32-bit output address size +# +# @36: 36-bit output address size +# +# @40: 40-bit output address size +# +# @42: 42-bit output address size +# +# @44: 44-bit output address size +# +# @48: 48-bit output address size +# +# @52: 52-bit output address size +# +# @56: 56-bit output address size +# +# Since: 11.0 +## +{ 'enum': 'OasMode', + 'data': [ 'auto', '32', '36', '40', '42', '44', '48', '52', '56' ] } --=20 2.43.0 From nobody Fri Apr 3 16:04:12 2026 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; arc=pass (i=1 dmarc=pass fromdomain=nvidia.com); dmarc=pass(p=reject dis=none) header.from=nvidia.com ARC-Seal: i=2; a=rsa-sha256; t=1774290388; cv=pass; d=zohomail.com; s=zohoarc; b=YBQEVSLSlFO8hrg+lKrzuM5+TrCUuYqINl5MT9oXmtnC5E1repJ1ttAQnHu0YYuwyiD+Sb7TGrfEfACXwqoXnUF/iC2XVlXTlL1+DeN2wUpGCcnW8RA6qucYYFQ1t2ii76IwGrRgUNkZn7wp/hOyqFmT21UmHqzDAU0BQBHK4jQ= ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1774290388; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=3cXpm2fNsxO5P+KOSahq7bO9I9tw1QCSyTxb4BzLokE=; b=GoqiMHUMJs6GtsyrTJ+iGauOd4Sisk1c6oebwdFGQ4oYs5Z2TgTJHe3oHDE0Q6MvzTgN4U5zBbpKHDheYEoJ75/3AX9ktQ7wG/i1Q4eynFP9GbD3uJUJrRN6zMtysKLC/HqklU37pnJmKIQydyFU4d6pxs49qpBsKl4D28YuIr0= ARC-Authentication-Results: i=2; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; arc=pass (i=1 dmarc=pass fromdomain=nvidia.com); dmarc=pass header.from= (p=reject dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1774290387970176.15323695399854; Mon, 23 Mar 2026 11:26:27 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1w4jyJ-00025A-V7; Mon, 23 Mar 2026 14:25:51 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1w4jxx-0001zT-PR; Mon, 23 Mar 2026 14:25:35 -0400 Received: from mail-northcentralusazlp170120005.outbound.protection.outlook.com ([2a01:111:f403:c105::5] helo=CH5PR02CU005.outbound.protection.outlook.com) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1w4jxw-0004GC-10; Mon, 23 Mar 2026 14:25:29 -0400 Received: from DS2PR12MB9567.namprd12.prod.outlook.com (2603:10b6:8:27c::8) by IA0PPF12042BF6F.namprd12.prod.outlook.com (2603:10b6:20f:fc04::bc8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9723.8; Mon, 23 Mar 2026 18:25:17 +0000 Received: from DS2PR12MB9567.namprd12.prod.outlook.com ([fe80::636:1b52:24ca:d7e5]) by DS2PR12MB9567.namprd12.prod.outlook.com ([fe80::636:1b52:24ca:d7e5%3]) with mapi id 15.20.9745.012; Mon, 23 Mar 2026 18:25:17 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=Cg2DoJrudFmzEToliO663IfHLWlKiWKo1wmGhJgJfDLpw9HSZ7aVmgXda3M0/fba9yzBSHZggPy4qIxGzj6yao8FCtZtJuK1wluFJTYCr+61/AzEticMStWN7KYigYpiRCbB/WEYrIT2qPcEPW3BqpsXCsOuEKkxTjYFeEdUIbhKNZwPP+NfrsYpJEp9CpdfAInLqalD2bbps9J4mJAZymxVY4hMJPfBivNPdCRC8tcRF1umykN+OADqqv6EJLsP1SEnUkMlgFSZZpeErybEziQwuUBa3rZ/YrWAhdKDS283laWbPYd2gAOW0iBjOIN4jUO8TDTHgiFyq7aobohfEw== 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=3cXpm2fNsxO5P+KOSahq7bO9I9tw1QCSyTxb4BzLokE=; b=Oh9wER3wH3BuXuPzhhCO4gFsh99qQKuiTo0xle6KlnIUZbEFGtAQUMmhEjWOn1ee6+LfnDY6dBvbeCefMCDk/d7KIGUDfCQ6C4hQdO48XMvw41qSAzvvUlpwQPwFUCXsuAT1b1m621XGd1v3OqWDYFKyJbARFpej9HQkX43Fhbdn5Za4+IADqUx9pTW/AP3RcrY51IU2Udexgwz7VMxb8VYbZ0jhKfKI6v09F76RmwPKiano04BqufPQRoyWnWA2ZSM9yDsqGuvD98K54a2PsqmpVt3z6RqjcVgw/jPNj+40fOa11PsN67rn1gOp7sOP2u/CBxX2/sZv5JThCB6QIg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=nvidia.com; dmarc=pass action=none header.from=nvidia.com; dkim=pass header.d=nvidia.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=Nvidia.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=3cXpm2fNsxO5P+KOSahq7bO9I9tw1QCSyTxb4BzLokE=; b=Sknu8hzf791iS0BXWRil2izljV84dJQIOM8P5NV3fJFZk9g3PMkQ3wa2C50mIkcqu5Qd5MaxUTJHC5vNqtB3DfsmXXXq+YWhcAOiDYE4auoLy8sUKqsFvXvQN5ssmXXXLTrCsQjgRfDhLX6zkME4JFxw0rGC8DVUHy+JHIFng12wcJ6w5i+DOzI6byT+XM1YRcXFzz/FkMxhjJmy5DVUnLwsd2unLfWofUu17pGffZOvydgSZHOGEFRSmGKBQCgFkZeo1TR2zdcI2wAc4D+HZJgNxFiDjnHp70EgPltX8ml6bnNM3jMIFMrrbErOXDPhEgRrkskn5xN//EI1D86MZw== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=nvidia.com; From: Nathan Chen To: qemu-arm@nongnu.org, qemu-devel@nongnu.org Cc: Eric Auger , Peter Maydell , "Michael S . Tsirkin" , Igor Mammedov , Ani Sinha , Shannon Zhao , Paolo Bonzini , =?UTF-8?q?Daniel=20P=20=2E=20Berrang=C3=A9?= , Eric Blake , Markus Armbruster , Shameer Kolothum , Matt Ochs , Nicolin Chen , Nathan Chen Subject: [PATCH v5 7/8] hw/arm/smmuv3-accel: Change "oas" property type to OasMode Date: Mon, 23 Mar 2026 11:24:53 -0700 Message-ID: <20260323182454.1416110-8-nathanc@nvidia.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20260323182454.1416110-1-nathanc@nvidia.com> References: <20260323182454.1416110-1-nathanc@nvidia.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: BYAPR21CA0020.namprd21.prod.outlook.com (2603:10b6:a03:114::30) To DS2PR12MB9567.namprd12.prod.outlook.com (2603:10b6:8:27c::8) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: DS2PR12MB9567:EE_|IA0PPF12042BF6F:EE_ X-MS-Office365-Filtering-Correlation-Id: de0d2bb2-ec10-4195-318b-08de890988b1 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; ARA:13230040|7416014|1800799024|376014|366016|18002099003|22082099003|56012099003; X-Microsoft-Antispam-Message-Info: a+vAG/pudBOcCUIMn0PkDbkBHafX9pbAOUDIzggrbF6Nca8aMXQRGGTFQRtGtT3SFvPW5xRyz+5xqyp80Sz8M0ZxbKTz0shywICIRXAAb6WUZyhmlC/j66UKeruFOOOpV2ovj8NGTvgB+1KNYtCfKHe3XgE3nKw1/z1v+cUtwlBswF/bskLlisFr65x3b2aC9KYqBznvr7F5ZKKV7chgS2ePO7TBwElVuqNowj49Y0sB1jwuHDaqYxU7yKjc3LNui0FOZGuSKolzUtUJ9Wvnqo+kl+cchK1ugn7mJsM7bf3+Hk/amftVqAMx1Ndp7nVyY0/+KicJBKSxbbcxDQhyqIbaFh/MxQXJJXoh6wPJlH2ZjzTPrqcV++6A7l6U/zHJSSpc/m8bV+E5avTz5ICTT0jdH7gb0pT80yVoy+iEVPRvNU2FECDAM+kk33M7wTYbSVbRcjUoj1N4UWZyl3Dqq4lvp/jRr+hGPbrv63oUXgTve8fAWM3xMkdZ9/4Q3J/K9dYLIhlG937Jfvq46pGSvlPktvo6vnCoonSBH0F+1TXgjrOlWMaFI0c9ZVZggZcm9Q/F+eKhXNz6BhhMX91Wp9Bp9pS01NNTe9LpC8hwiewoq6CFRtLgeaQP50K8ZxthT++OBJb/r1JVqqlVHNzHP6uz+i23s9Rlwf0Dj9qxrGCda4+L2HEyd3EKczNn+qk0yqa/NrieBWrvBRpLrmT7UnV7sJbMkDP0SJtQ/X9DpMo= X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:DS2PR12MB9567.namprd12.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230040)(7416014)(1800799024)(376014)(366016)(18002099003)(22082099003)(56012099003); DIR:OUT; SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?kVXNoCOLM4Y7uh1RFbfZiGyjBG+lPAq6aPqwh1RH58gvKd6lVN0AL0WbC1Np?= =?us-ascii?Q?Nn5BvTSD05NqoBZXhYlpkAUneocO9TE+O0+2d4ASaid19my9O/GCOfFzdHlY?= =?us-ascii?Q?H+MA1zYal3KaqIOs8jlWuOZKiC8zw2TZUnyR/S9CZR12rx4nBgDUizxFCkYS?= =?us-ascii?Q?RG6WI+S3VRtU+CGzz/Yfad3/A6c6lgb2YdEIbmr09lwflpirZMygn2G/TQHR?= =?us-ascii?Q?8PaSHZKdmqCwjUdfH9CW9lReidadf7EFgsTN92lbhzJycvUNCRL0pCryxYwr?= =?us-ascii?Q?V9lBPAff9DeAB2DQzuH0/+mRzZ9aD/+udL5sGB2VBrlhK+kSKifo1ZJLUrJG?= =?us-ascii?Q?jJ+lTDKIhEYJrSSQXqqOYJWA/7cXaw0POhf07zpiHBNGTN++m15/UksB6HwA?= =?us-ascii?Q?yJBFOWLPqFq9UFUFqm2L+H96p96IxonTRaZZgNB9Q7oqmr8oKGMDKenUbxg6?= =?us-ascii?Q?OPw0kHB1L2iVVk3QnrtOf+RDbYTTL4EPiD6zOPEPYGBtdPPiwvoRE4gfZ6Mc?= =?us-ascii?Q?n4hs3/ae9ecHCFmcAQBpcV128kqplMt5PWomW/lqvwahKYERo5+A+rLml9Gw?= =?us-ascii?Q?GZ4MGbujAooqBAyTP78JLi5gA3kt+tkxeahSm++idnft0sBRZulEd58F7krR?= =?us-ascii?Q?Mnn+g9BaOtC7jToMZ9FzsuI5+1mOQrlHcATFhrMVKvqIqJ0do+gaySXiT/mZ?= =?us-ascii?Q?qP+kdI3asEEaOlyz3N3xEksiz6adM3j8nkz40B4P+NrXATvN9rUHau4+gwkn?= =?us-ascii?Q?AojoHKzISrGuR+S1sYsT1s23KoxX2T2cysaap2uiO3MX5kOA2Cbc8XRFJAxT?= =?us-ascii?Q?YCAtXmDxsUFW9VX8SblVB/DKKQMLSQFd4n+Lcs76L15lbOGTITNIvdDtqUO0?= =?us-ascii?Q?9vp1eLIHmjGxOd/Rw4LdU4qzelpnqEHzAUA4xMJhtdVRv5KuSah3HMp77LqC?= =?us-ascii?Q?aqhhflHjYpbXVEp7aDsUvZu8o1l+tcIAhG125BgBAsk7IMRDJ0bnSocscJn5?= =?us-ascii?Q?1/CXINYAscXCZAVAZ+A5kPGfWuKrqb+xZZwC5P94YuAJ3rFYxjvC8GJ7VWn9?= =?us-ascii?Q?bE+REhnWTOa6TUVIUwIyJo4pZB+kiL0ELqNgAW59uyv5Xn1bEVzMzE98sLp/?= =?us-ascii?Q?KunoQWP/Ive3mjozwX7A/qIQDzJmn3Ham7OdM2AW8y35L3ZmH1baxWfRIb9v?= =?us-ascii?Q?n6iP2KBjlwLZEvGbrJJDJc0PN1nbHyjzug7Mq75gc68Z6FsDE6tV7b0+vKnh?= =?us-ascii?Q?0XNZj7koAJe3t8YFiGup2s3rBtvK9eZt/HyLVO2zLPdwn+8AnsXix05Cj6Y4?= =?us-ascii?Q?DKKnZ6zPOD3P0MSXQ5oStpSSEaz1wKWa4ikUt7vouPSYqtgs8yDTT2N6oo83?= =?us-ascii?Q?ybMg/aWBwzU5xgKmio8Pi2NjR6TOh2erSu7KRKFYaMor0i06dM31fVpIRZ8A?= =?us-ascii?Q?YPdC78d4UWAbWbGv1bCEXjnR1RvXsySgocqeGjCbrNV3jfWH9A2q4Xcn8tTZ?= =?us-ascii?Q?+2OqVa1wTBZBI7mPixne7oyo6TUpSRsF0nS1tG/qUYnIFwYNA3KNbizqpL3C?= =?us-ascii?Q?nuVAu0tly1AHCr3y2269fuCpXI7mLRPpiEA2JtTu0/Q2sB6ZaFGI3WIFjJXa?= =?us-ascii?Q?giJmSzXSCxnOzjb48O8frl1Yvkv99fSAd4hwczgwtp2VGIDmEQnGhOW70lNS?= =?us-ascii?Q?InbOeSYGh5QPSWHEbYuksvHcMuIa9xxwrGldC8TBchUZ2BojHT8W9Gayiztc?= =?us-ascii?Q?ACFjUDG5Zw=3D=3D?= X-OriginatorOrg: Nvidia.com X-MS-Exchange-CrossTenant-Network-Message-Id: de0d2bb2-ec10-4195-318b-08de890988b1 X-MS-Exchange-CrossTenant-AuthSource: DS2PR12MB9567.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 23 Mar 2026 18:25:17.5878 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 43083d15-7273-40c1-b7db-39efd9ccc17a X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: CyK7nruU+YiBSYVMFlLWGB2YrV9fkrNT1NheGtQ1w4Limd44b0WiWAZoezzCGf6pVfliDfBxYVu0OwbVyeWy8A== X-MS-Exchange-Transport-CrossTenantHeadersStamped: IA0PPF12042BF6F Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: permerror client-ip=2a01:111:f403:c105::5; envelope-from=nathanc@nvidia.com; helo=CH5PR02CU005.outbound.protection.outlook.com X-Spam_score_int: -10 X-Spam_score: -1.1 X-Spam_bar: - X-Spam_report: (-1.1 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FORGED_SPF_HELO=1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_PASS=-0.001, SPF_NONE=0.001 autolearn=no autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: qemu development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @Nvidia.com) X-ZM-MESSAGEID: 1774290390271158500 Content-Type: text/plain; charset="utf-8" From: Nathan Chen Change accel SMMUv3 OAS property from uint8_t to OasMode. The 'auto' value is not implemented, as this commit is meant to set the property to the correct type and avoid breaking JSON/QMP when the auto mode is introduced. A future patch will implement resolution of 'auto' value to match the host SMMUv3 OAS value. The conversion of the "oas" property type to OnOffAuto is an incompatible change for JSON/QMP when a uint8_t value is expected for "oas", but this property is new in 11.0 and this patch is submitted as a fix to the property type. Fixes: a015ac990fd3 ("hw/arm/smmuv3-accel: Add property to specify OAS bits= ") Tested-by: Eric Auger Reviewed-by: Shameer Kolothum Reviewed-by: Eric Auger Tested-by: Shameer Kolothum Acked-by: Markus Armbruster Signed-off-by: Nathan Chen --- hw/arm/smmuv3-accel.c | 2 +- hw/arm/smmuv3.c | 17 +++++++++-------- include/hw/arm/smmuv3-common.h | 2 -- include/hw/arm/smmuv3.h | 2 +- 4 files changed, 11 insertions(+), 12 deletions(-) diff --git a/hw/arm/smmuv3-accel.c b/hw/arm/smmuv3-accel.c index bc6cbfebc2..65c2f44880 100644 --- a/hw/arm/smmuv3-accel.c +++ b/hw/arm/smmuv3-accel.c @@ -850,7 +850,7 @@ void smmuv3_accel_idr_override(SMMUv3State *s) } =20 /* Advertise 48-bit OAS in IDR5 when requested (default is 44 bits). */ - if (s->oas =3D=3D SMMU_OAS_48BIT) { + if (s->oas =3D=3D OAS_MODE_48) { s->idr[5] =3D FIELD_DP32(s->idr[5], IDR5, OAS, SMMU_IDR5_OAS_48); } =20 diff --git a/hw/arm/smmuv3.c b/hw/arm/smmuv3.c index 79018f8d66..7fead1c3cf 100644 --- a/hw/arm/smmuv3.c +++ b/hw/arm/smmuv3.c @@ -1984,6 +1984,11 @@ static bool smmu_validate_property(SMMUv3State *s, E= rror **errp) error_setg(errp, "ssidsize auto mode is not supported"); return false; } + if (s->oas !=3D OAS_MODE_44 && s->oas !=3D OAS_MODE_48) { + error_setg(errp, "QEMU SMMUv3 model only implements 44 and 48 bit" + "OAS; other OasMode values are not supported"); + return false; + } =20 if (!s->accel) { if (s->ril =3D=3D ON_OFF_AUTO_OFF) { @@ -1994,7 +1999,7 @@ static bool smmu_validate_property(SMMUv3State *s, Er= ror **errp) error_setg(errp, "ats can only be enabled if accel=3Don"); return false; } - if (s->oas !=3D SMMU_OAS_44BIT) { + if (s->oas > OAS_MODE_44) { error_setg(errp, "OAS must be 44 bits when accel=3Doff"); return false; } @@ -2012,11 +2017,6 @@ static bool smmu_validate_property(SMMUv3State *s, E= rror **errp) return false; } =20 - if (s->oas !=3D SMMU_OAS_44BIT && s->oas !=3D SMMU_OAS_48BIT) { - error_setg(errp, "OAS can only be set to 44 or 48 bits"); - return false; - } - return true; } =20 @@ -2143,7 +2143,7 @@ static const Property smmuv3_properties[] =3D { /* RIL can be turned off for accel cases */ DEFINE_PROP_ON_OFF_AUTO("ril", SMMUv3State, ril, ON_OFF_AUTO_ON), DEFINE_PROP_ON_OFF_AUTO("ats", SMMUv3State, ats, ON_OFF_AUTO_OFF), - DEFINE_PROP_UINT8("oas", SMMUv3State, oas, 44), + DEFINE_PROP_OAS_MODE("oas", SMMUv3State, oas, OAS_MODE_44), DEFINE_PROP_SSIDSIZE_MODE("ssidsize", SMMUv3State, ssidsize, SSID_SIZE_MODE_0), }; @@ -2180,7 +2180,8 @@ static void smmuv3_class_init(ObjectClass *klass, con= st void *data) "supported."); object_class_property_set_description(klass, "oas", "Specify Output Address Size (for accel=3Don). Supported values " - "are 44 or 48 bits. Defaults to 44 bits"); + "are 44 or 48 bits. Defaults to 44 bits. oas=3Dauto is not " + "supported."); object_class_property_set_description(klass, "ssidsize", "Number of bits used to represent SubstreamIDs (SSIDs). " "A value of N allows SSIDs in the range [0 .. 2^N - 1]. " diff --git a/include/hw/arm/smmuv3-common.h b/include/hw/arm/smmuv3-common.h index 7f0f992dfd..4609975edf 100644 --- a/include/hw/arm/smmuv3-common.h +++ b/include/hw/arm/smmuv3-common.h @@ -342,8 +342,6 @@ REG32(IDR5, 0x14) FIELD(IDR5, VAX, 10, 2); FIELD(IDR5, STALL_MAX, 16, 16); =20 -#define SMMU_OAS_44BIT 44 -#define SMMU_OAS_48BIT 48 #define SMMU_IDR5_OAS_44 4 #define SMMU_IDR5_OAS_48 5 =20 diff --git a/include/hw/arm/smmuv3.h b/include/hw/arm/smmuv3.h index ddf472493d..82f18eb090 100644 --- a/include/hw/arm/smmuv3.h +++ b/include/hw/arm/smmuv3.h @@ -72,7 +72,7 @@ struct SMMUv3State { Error *migration_blocker; OnOffAuto ril; OnOffAuto ats; - uint8_t oas; + OasMode oas; SsidSizeMode ssidsize; }; =20 --=20 2.43.0 From nobody Fri Apr 3 16:04:12 2026 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; arc=pass (i=1 dmarc=pass fromdomain=nvidia.com); dmarc=pass(p=reject dis=none) header.from=nvidia.com ARC-Seal: i=2; a=rsa-sha256; t=1774290393; cv=pass; d=zohomail.com; s=zohoarc; b=GgJSQ2COtk3T1mTBoatDbAyDGkqjBLbZw4QzKA9HOu5p333ku8tPHtq0aRSSTcXmnjWC6onPgI8oavarlsxMM2346H6Il4W0S/bArKSTUujM35dae+F2pWZjwlj6orhZ28fnYAhdgF6dEMWw+QNeWg0M775Hq0AXzPEQDKZxit0= ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1774290393; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=eQ0t812iDZXqpQXsKjTlM2IJiZ7R+vqpVFaKnI8Ph5U=; b=goZQe63xT+i2KJUpDDOe7hWWDDrBvc78RRlN6GRX3nydM6nVtrrreLxZKU2Y2BblKMcFmDLifZkzX0Hm922PhRQSzh+wcYzcJxovP1kT1FJ61bYTY5b06PDZQWW8Bf6Hog4Zpk1FFL+FYCr3RPY0O9KjySj5N9DmJXjFvU1Mt+Y= ARC-Authentication-Results: i=2; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; arc=pass (i=1 dmarc=pass fromdomain=nvidia.com); dmarc=pass header.from= (p=reject dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1774290393957737.5076761021088; Mon, 23 Mar 2026 11:26:33 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1w4jyL-00027b-Ru; Mon, 23 Mar 2026 14:25:53 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1w4jxz-0001zc-Q6; Mon, 23 Mar 2026 14:25:35 -0400 Received: from mail-northcentralusazlp170120005.outbound.protection.outlook.com ([2a01:111:f403:c105::5] helo=CH5PR02CU005.outbound.protection.outlook.com) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1w4jxy-0004GC-A8; Mon, 23 Mar 2026 14:25:31 -0400 Received: from DS2PR12MB9567.namprd12.prod.outlook.com (2603:10b6:8:27c::8) by IA0PPF12042BF6F.namprd12.prod.outlook.com (2603:10b6:20f:fc04::bc8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9723.8; Mon, 23 Mar 2026 18:25:19 +0000 Received: from DS2PR12MB9567.namprd12.prod.outlook.com ([fe80::636:1b52:24ca:d7e5]) by DS2PR12MB9567.namprd12.prod.outlook.com ([fe80::636:1b52:24ca:d7e5%3]) with mapi id 15.20.9745.012; Mon, 23 Mar 2026 18:25:19 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=xq4DqgwZ1wMUYRAV4esf/qDh1rE0bwS+dLGLBoDPMskytyuRa3p+Zzf2pEk5o51Mw1tJo3D80ypOIbt+P/3hSrY9LwCFOQ77FZxhpKxdf3xSzQ/Qh8IirDQ7jc1h3qI/VhWZtRcKpziOc/VZ/x21f/w2nUSJYj4KAPKAwo7ku7yudtKlEFsMi2iL/bAT2gwKNnMv+II9o6aSUhy7aWFaiV9WHtyO3Nzfrl+goHoD/cjXf8UjMZY8RmDeHmunZ/QKfchnqJvaLm+LtF5qyB1cNC2g99Mvwx2CSlXBnrB53eEmuRv5+e7PI/op7m5unOUjn77mkrfcQgZuD+3fdYLwZA== 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=eQ0t812iDZXqpQXsKjTlM2IJiZ7R+vqpVFaKnI8Ph5U=; b=P/QmFYMq2jHXAb7Fz+kFV9BnZiCgcPbfiXS6ceY+ols5joSUrfuTbsNe05ueD7jac0EFh0OtoZ53Cp2mhtbb5sLZgVpRHVrJ2d5VuyTeYUDSo1m6AP44AetxY0VByzZpD1/ZS2TVDz9tpDcvGUZmhfHll9yOIhJGaHo2hs7ulklWUmxQSwimcnZeTtx5P+DwYZ182qjvkfuugdNy4l/KAft0NcjJkG9Bpfx+lGDZQkn41ve8IQpmu2VFdNEm8w7IJb7PfFWkJzpcXRkQdATVj/06jYHzc3M/w0Fyas7vFaiMmzhXJztyfBtrovhAEmUO8bQ91kUQ9EkPIUOG9tgl0w== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=nvidia.com; dmarc=pass action=none header.from=nvidia.com; dkim=pass header.d=nvidia.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=Nvidia.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=eQ0t812iDZXqpQXsKjTlM2IJiZ7R+vqpVFaKnI8Ph5U=; b=cnmSMWo9QFGUL5mSjPREIcmDb0cRtcp27DL0aTMm4l40jJ7qUnDrtFevyzWDUg2ViGchKQYJbvh0yPcaMk/1D4+TRasNqsZB9+N+mNrkJQL9NKHNBt8wHgBKvrsexzgEQSlv6JVpl0va3ZA8zGltbLX9PZw14B7darOgJDW3WaI3MFrv5TNCOP11TML1ik6XntbDwbC+aWdOEJTVPhGvkjSiUjh5laM2OEmtKh1gkdQfZ49461ckK1dX1MgQeKbaVlKKOkozL6QxFztI6ztMpHqc0Fg34ldxryA+d9i8s2YPvyMAkLIfgpUE5Z52LFqII8jOhTDdXtodumQhH0FoiA== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=nvidia.com; From: Nathan Chen To: qemu-arm@nongnu.org, qemu-devel@nongnu.org Cc: Eric Auger , Peter Maydell , "Michael S . Tsirkin" , Igor Mammedov , Ani Sinha , Shannon Zhao , Paolo Bonzini , =?UTF-8?q?Daniel=20P=20=2E=20Berrang=C3=A9?= , Eric Blake , Markus Armbruster , Shameer Kolothum , Matt Ochs , Nicolin Chen , Nathan Chen Subject: [PATCH v5 8/8] qemu-options.hx: Document arm-smmuv3 device's accel properties Date: Mon, 23 Mar 2026 11:24:54 -0700 Message-ID: <20260323182454.1416110-9-nathanc@nvidia.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20260323182454.1416110-1-nathanc@nvidia.com> References: <20260323182454.1416110-1-nathanc@nvidia.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: SJ0PR13CA0163.namprd13.prod.outlook.com (2603:10b6:a03:2c7::18) To DS2PR12MB9567.namprd12.prod.outlook.com (2603:10b6:8:27c::8) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: DS2PR12MB9567:EE_|IA0PPF12042BF6F:EE_ X-MS-Office365-Filtering-Correlation-Id: d879875b-1c2f-48c0-0f10-08de89098a03 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; ARA:13230040|7416014|1800799024|376014|366016|18002099003|22082099003|56012099003; X-Microsoft-Antispam-Message-Info: QYtuNNYoERymPBRF9zhgVmmwo4hoJj5SfZEfmwVEZtE7AgFmY1O8xDAFx4RQ/4FhA3MwQ7qEltiL/ZOWhxh0UtXJlhykAm+OtLu9q8ncz1GamM9my/k4yRdANMr+L32npif/eAsA5K34gZAOqtx/0DSRrG3HSJvM6umBwjiXMrTVBdr4VdPM9v+4gojOGZSNndFvl6da0jjnGlc9+DA8j6TTzQc4JlQ1S4AE4R8WLFk5fvvRdbtKjKoWshM5Bh/fZuCM4JpsCIfbeosL5Y/PTNflmgfF24hb/iIbUHj0NuZpnxp5w19SxB74W98/IRhw9pUTkkUWZdSPiSi3G4HwNlpeG/pAfDf5mzyFe8rwoWJP6xJGBAuZfcgcbSpSlIJ2jC5aMjxmF1ineCIr4LlnugPsOKgpqVUTDDOdQEmHQm72Tf9UD4AnfTcxwSDtSO9dmixnpkWNlUyFlIdTPC5AY217cPn/fldp+K9cYpNfTqepClG0IiLCtjFrdvGvCEASD8vk2KxIrEstpP54VdEiE7VzkhrfgTl87Us6zQG9G2Mmea2K77SpkN02wj0Pi4pU9Xq2/WuA+tF9ZOoIvdBe3LNzgY9l1wVX3fcoT51J+bHTIzscZu5qvr3GbfTfiMIfaBjnG125Efbs6xthM2TMl5L2c+G3TFuUDhCI2ZwWN/KRtVSZ73q1Qu7iRw7xz2Z5usE+5iEXTXmIn++6MigaG2GKMCm8+GOD48LqZawNLDA= X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:DS2PR12MB9567.namprd12.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230040)(7416014)(1800799024)(376014)(366016)(18002099003)(22082099003)(56012099003); DIR:OUT; SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?OOyqUJO45n9vJlWqoIR/E6VS5pC5JUwr8g+TZAf7y2Wdy+3YYgk0YXvlTmL9?= =?us-ascii?Q?SuaZkHD1fX3CPZd/lm368UnHbw33zGFMdAU5kN0PcaIaqJq2fh0rk1jb4LCQ?= =?us-ascii?Q?F7oOi2u/AQomdU0vFfExi/Qz58y4sOJZcXmWLEXw5C1QWtIqvVbfRWx9oSHO?= =?us-ascii?Q?pK5btxIAlEpog1CZRR9u0x7R6Dos0Oe9GSrqJDgY7NpiVnHuAxmx57ahM2Kw?= =?us-ascii?Q?f1Z3uK1R/q/2YOwuLXiNiJdQwW2Z1PTiRzJ9hpVWJoxD0HTdc5c5LV8zb2Zo?= =?us-ascii?Q?A+6jAzvDKJVeEKXNv0kovodL+r7eC/F3Qt0LLrq6BDXxSkBQnWSYkWGR/+s9?= =?us-ascii?Q?rwHrM2jK+Ed39GZ2IhU2NiBvBurm2YSsAFnV63vJXQOmlp8olOBf5CQiL+9H?= =?us-ascii?Q?wht8/aRvXNTd1T/LjlymgiTprRgD3/Xfg1GqVjiSwjYzz7D0KFyeCBAKbh2t?= =?us-ascii?Q?7CIFFQjBEp9BYcs36GATN0LrEEZHAW0HNjHlF5gH5lIy+66+eo1Z8HjGzoUR?= =?us-ascii?Q?IgGnG4CDA28Yxg2ZnEZYU/ygPJNTLPN1jdkCXDiseJvuie1ScE14/Dm9psmy?= =?us-ascii?Q?zjghsFiHYp/g5QNwGWENDGNUTvlW4l25Rzzz7lgltWpIDcDlOrMOXzTOAWWU?= =?us-ascii?Q?LHsS/20myrd15hqgHVM7nEIR0+m9a8nSdu63REsAEhB4FTJh06I7oyajhxW3?= =?us-ascii?Q?s1IzY6NNe0XTZ6gdWi1uDBciTmgZ7OAQ8F4u5DJrCVrWlrHadX5bZyyrvqsD?= =?us-ascii?Q?d4nSUbj9B4rDmnjra76I/tnjkc+7kTgaQGgETMH1RC8YmluklI/yZaJj2CGO?= =?us-ascii?Q?5RKRpj5riSX7rLswCgtGSC3HzmIYDBjRz6tpARbrTPGbGYHZnQQgARQvoRqg?= =?us-ascii?Q?42/wfDGu85gXA6ixFT41DHTK6pG3qEquVA6Td+bNpQy/YZxNLOvOaoB2tFwk?= =?us-ascii?Q?19KkgCbJUDg7hNe9Zt0wn/oimqMdyzMKjSBYw10sYt7Ev35DsOWWm/qUQ6Zt?= =?us-ascii?Q?K56HiWKK4fdqq6GQ4wD2hQ8QFOcTg+ng939iXDhQsRWLlgXm9p9OaZGB9LZP?= =?us-ascii?Q?f95R2UTCa95h4SKT5BU7zRpqJz+nfYOGW1V2jml1eTYxi40nkW++eG4MvM0E?= =?us-ascii?Q?MnJz7gcGRiEV/HsREtqj2RA7xH/xgYmanBWLe+ZnJ/CGSBtSkAv8HtuabulD?= =?us-ascii?Q?uMA9ECopbWIAbbneN7jN7vNUQSA7D63U34Jkt4b8Bed9aci8qlldsYsGtiZT?= =?us-ascii?Q?b7ZVX9y2AMsl/Kg9GCT7U+iL+EfYXmuqsj/nfYqwdXfYFViQKNiEED2MyOmW?= =?us-ascii?Q?rvkPTAAznmrmga7CmMVTqiunAAgk/9ybRdzbTlzxyG7jBP6bTcbNmGssx32+?= =?us-ascii?Q?3Tl6R3X1b/TpgIHakufBb5x8ILy4T4sn8Z9hsVyTuJS/WJ6jcm1Hk2nSjzlm?= =?us-ascii?Q?jDJgQbdOkg/gj/s/W121bERCHV9/V8gU8u4YrWA4ITxmQZDgMgkW4Az2/5on?= =?us-ascii?Q?M5EGmBCPXc3Bvrvlfg48AZFugwNYvywcRkvncEbPyTlZUIQcDOpokUsu4lEu?= =?us-ascii?Q?HgjwftxM6x17fc+4+RAEPsiMkXRzbPQjyfnr67LG8WHyWbZeEKQTYWSr4xpi?= =?us-ascii?Q?7aQ1StI9Sj0SX8g858MfNVTREVoV+/RNkr7pdsW12H0/RK5QlOWZMPpghd+W?= =?us-ascii?Q?AWNth2tjh5vNy0BviDADlXbOr4lBRJ27Ljx4bmjkBkWFHgzNKgy+lUxwOjEI?= =?us-ascii?Q?qk0APw6+8Q=3D=3D?= X-OriginatorOrg: Nvidia.com X-MS-Exchange-CrossTenant-Network-Message-Id: d879875b-1c2f-48c0-0f10-08de89098a03 X-MS-Exchange-CrossTenant-AuthSource: DS2PR12MB9567.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 23 Mar 2026 18:25:19.7427 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 43083d15-7273-40c1-b7db-39efd9ccc17a X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: IULCdGu5gPg5xW/NKZsfi557dqLVtVf/X2ikfeNmj4bitUOPVf3uauybCnJ9OOHGje1bs1vKsurqLE4fsUZIsA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: IA0PPF12042BF6F Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: permerror client-ip=2a01:111:f403:c105::5; envelope-from=nathanc@nvidia.com; helo=CH5PR02CU005.outbound.protection.outlook.com X-Spam_score_int: -10 X-Spam_score: -1.1 X-Spam_bar: - X-Spam_report: (-1.1 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FORGED_SPF_HELO=1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_PASS=-0.001, SPF_NONE=0.001 autolearn=no autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: qemu development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @Nvidia.com) X-ZM-MESSAGEID: 1774290396482154100 Content-Type: text/plain; charset="utf-8" From: Nathan Chen Document arm-smmuv3 properties for setting HW-acceleration, Range Invalidation, and Address Translation Services support, as well as setting Output Address size and Substream ID size. Reviewed-by: Eric Auger Tested-by: Eric Auger Reviewed-by: Shameer Kolothum Tested-by: Shameer Kolothum Signed-off-by: Nathan Chen --- qemu-options.hx | 32 +++++++++++++++++++++++++++++++- 1 file changed, 31 insertions(+), 1 deletion(-) diff --git a/qemu-options.hx b/qemu-options.hx index 69e5a874c1..f8da35513a 100644 --- a/qemu-options.hx +++ b/qemu-options.hx @@ -1279,13 +1279,43 @@ SRST ``aw-bits=3Dval`` (val between 32 and 64, default depends on machine) This decides the address width of the IOVA address space. =20 -``-device arm-smmuv3,primary-bus=3Did`` +``-device arm-smmuv3,primary-bus=3Did[,option=3D...]`` This is only supported by ``-machine virt`` (ARM). =20 ``primary-bus=3Did`` Accepts either the default root complex (pcie.0) or a pxb-pcie based root complex. =20 + ``accel=3Don|off`` (default: off) + Enables guest to leverage host SMMUv3 features for acceleration. + Enabling accel configures the host SMMUv3 in nested mode to support + vfio-pci passthrough. + + The following options are available when accel=3Don. + Note: 'auto' mode is not currently supported. + + ``ril=3Don|off`` (default: on) + Support for Range Invalidation, which allows the SMMUv3 driver to + invalidate TLB entries for a range of IOVAs at once instead of iss= uing + separate commands to invalidate each page. Must match with host SM= MUv3 + Range Invalidation support. + + ``ats=3Don|off`` (default: off) + Support for Address Translation Services, which enables PCIe devic= es to + cache address translations in their local TLB and reduce latency. = Host + SMMUv3 must support ATS in order to enable this feature for the vI= OMMU. + + ``oas=3Dval`` (supported values are 44 and 48. default: 44) + Sets the Output Address Size in bits. The value set here must be l= ess + than or equal to the host SMMUv3's supported OAS, so that the + intermediate physical addresses (IPA) consumed by host SMMU for st= age-2 + translation do not exceed the host's max supported IPA size. + + ``ssidsize=3Dval`` (val between 0 and 20. default: 0) + Sets the Substream ID size in bits. When set to a non-zero value, + PASID capability is advertised to the vIOMMU and accelerated use c= ases + such as Shared Virtual Addressing (SVA) are supported. + ``-device amd-iommu[,option=3D...]`` Enables emulation of an AMD-Vi I/O Memory Management Unit (IOMMU). Only available with ``-machine q35``, it supports the following option= s: --=20 2.43.0