From nobody Mon Apr 6 21:34:17 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=1773772849; cv=pass; d=zohomail.com; s=zohoarc; b=BWjtmHwuqbYBDM9rjyJmstBYmG/CIgOJ5apZy8HxYs+qjEp6tiU0jH5xqgxCluuL/bXIxgwxaMChBtUNomrWH0GN823Ir6RhaUfp3u3hrYomYphIiXVVnHgutq5BWTDlKJHW1flkKu6Yeu7BAgsQ7jLB77kI72G97dFrwq7w/aU= ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1773772849; 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=OQg5HFCEQgzfJypJep7H9aV4LMJahMa34nJjvvaz6Dk=; b=DwZZCik81rjXquk7jxqF0ruGnhI8bk9k0jz+eIIFDQVHmhg3ctQN9CSdtLOHEp7V7jTYaf3RvrJ2ytQjNX0b1IOfhp8/PguZJecN64yKogOw23/3uP6cDx3+eyEywZ14t+GCcJBew9ieZ8V7rvKt8xvtS439+wiU+kFIHZjx4DQ= 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 1773772849958294.6555428194521; Tue, 17 Mar 2026 11:40:49 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1w2ZJc-00041F-SB; Tue, 17 Mar 2026 14:38: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 1w2ZJa-00040j-SJ; Tue, 17 Mar 2026 14:38:51 -0400 Received: from mail-westus2azlp170120002.outbound.protection.outlook.com ([2a01:111:f403:c007::2] helo=MW6PR02CU001.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 1w2ZJN-0002se-Sd; Tue, 17 Mar 2026 14:38:40 -0400 Received: from DS2PR12MB9567.namprd12.prod.outlook.com (2603:10b6:8:27c::8) by SN7PR12MB7452.namprd12.prod.outlook.com (2603:10b6:806:299::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9723.16; Tue, 17 Mar 2026 18:38:24 +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.9723.018; Tue, 17 Mar 2026 18:38:24 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=UTNYWt71rMOLIkvsCHOA/ZdqYkAW8h48TKJ6AHDlWxQAQ2pDWHXkCFBgdgEY1d4OXXCGtEFvWtFfaBQkW8jl2T/NSXAlCNs9amwTkr/ycN6b5e9ZVxCrFOFWtwZIJu1JwNIqkI8j/NjMkHTZapO2C8rGzzv8eDRu+c2nh96qExcuEUD4ZV1Z7KJjzYo4pXumO3GBMDMTgZzNyjlcKruKUpzFCnGl2FXF4AVU8C8AI9vG+27VNzjuy5AqxC5z0YYOjGvx5w8+xIB4JsLO26++4VbjdexNBT8KLbOmNVOfGrIaTBp1+SXEcUZIDYl+pKRuP7Kd3vz+eY74SEJWUskfbQ== 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=OQg5HFCEQgzfJypJep7H9aV4LMJahMa34nJjvvaz6Dk=; b=koGG9KAVihNO4byyKaEpPL4Yx8sYbH6guLrClii3qOAzYUuR3p86MQ/UNgLr5CA/ezi1wMtqhS86BV7lZzyqcozTUBM7UcsTlik8hbj7LcNmULiHenJ5pR1j1CNIQrbQw2a0dzLaAkJBztnRvPdlut935ReM9gdF26OfFix5M0uq7Ti9J8EqxiLbvsBV5DDLAJeMCY9cLgS0gIx7PH9R45pI50trbqkeASm2Oxy1/t8vsPGKt0CQWbVIrRrFrgB9CveUmw7bJfNucmRG9kX273ZAX1gOrdMIAVJi0RRwUmFkUS0guJ3HM3tECVjYVpaVBz+suj4dYQP72m3/3fd6gg== 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=OQg5HFCEQgzfJypJep7H9aV4LMJahMa34nJjvvaz6Dk=; b=b3xN6VMHqBPlUJ+XVqYquECEn7ssfjDH3hughi/wNDdtoRgEf15p6K1zsb+vMPXcx6Zu68bUIGJGOa4tPpYGgEEG6Kp5GpGw4tv3hPPKbzijQkSLR5l/Pliu/blsG6vKIOVcuB0X2yYhZWjIeAdM3g0dD0XwUzEW0wEuSHEMMnKQsVpKQHqLH+Yj9A252WFLHoo2AxuNONPaIvKpp1iqGUFusgK59uTKe28oSV351viCzCiAtTo7HhNTpZKDO5u4Rg1LkvlhYCQrfdMzgD3CAp5n2ostSojEM1uhq9gZhSyFN7+V2O/Rqb0t9qQDv45zPye8IYDsO5Q9YdQmm3lCRg== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=nvidia.com; From: Nathan Chen To: qemu-devel@nongnu.org, qemu-arm@nongnu.org Cc: Eric Auger , Peter Maydell , Shannon Zhao , "Michael S . Tsirkin" , Igor Mammedov , Ani Sinha , 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 v3 1/8] hw/arm/smmuv3-accel: Check ATS compatibility between host and guest Date: Tue, 17 Mar 2026 11:37:48 -0700 Message-ID: <20260317183755.3721625-2-nathanc@nvidia.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20260317183755.3721625-1-nathanc@nvidia.com> References: <20260317183755.3721625-1-nathanc@nvidia.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: BY5PR17CA0021.namprd17.prod.outlook.com (2603:10b6:a03:1b8::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_|SN7PR12MB7452:EE_ X-MS-Office365-Filtering-Correlation-Id: be4a22c3-d9d6-464a-cc8f-08de84545f6b X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; ARA:13230040|366016|1800799024|376014|7416014|18002099003|56012099003|22082099003; X-Microsoft-Antispam-Message-Info: LQiCcTdjBFP6Vg/tV85oFLcQvnjmxReonvumBy6Gt3Z9Ojy8jq3QZTv85gi/sU6NJZa7lKmpD8a/wdcU6jw5QbnHsPKwGe21ghzXYtxRRkGxXzAnc3tHnO7XfUzJqKYNauzJnvlCZd24XuFhAEZpkXvaDxJQ2HdfjNU0KTzqMwtRGatNEMwAfD0Rqlr+d/1S5jSxFzSwkzYEpIuneklXrFXXRRZ13omAaMQIaDY/eCq2ZU3HQV1Loc1LHpA4lwbdcWrQqwdmbnMJ5+qEhY+D4YKhB4OWYDDF+GqQoFWGjvjnx37eNT+Q8m+ONK8m9Vn5Z/7UmwZt/dcdno7vUGUGEwJEEC9jM0IKmIb1HDgZ5yECOnoCWOCWxw6tn/BhHHVjzX2q795Jfp/rkixt9nPZ/NDVUoc0PFqjzBaXxH9nDmO89Ctcizm9P3tppvfWM9NlDf7zMLL0dCAkh+xDRCoWTFYMw634BjWg8sJHz4Vu+sxoAAlIWFJugMT/E7NrjHcaaS8lvy7DoaqrSnabpq1kmaOcRjS19PscV+C/Ok+lFc8JealTQl4kznfp828fc14hcy0lzTkIiLscg6o42euulEJTHNhDGtRotrDKLXsNvPsa0jtyntLeJ80AgnPo1xKaMV7JKYkItJbOuVCybmr9YsC4cLghrO0ygPS44NMRWcQZvxTTAHpypq8R1PxueiXzWJwfFB5VUqf7Nmr/3IGMiiUgL38IcRxxZ0scxaaSHlY= 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)(366016)(1800799024)(376014)(7416014)(18002099003)(56012099003)(22082099003); DIR:OUT; SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?93cAcvJeY6yL9JLHvESnG6vl6NfVPKqfc0ShqLApGMlg7pmF73Cg1057Dc9l?= =?us-ascii?Q?xC5/RXxClk1i214+kCsn/q25Q6/eJcrAEE5BkGOOWzwksdKJSvoZVFSop+3U?= =?us-ascii?Q?hZrOX7vgQVaYmmbA8hdZJ2lZdL5btNS6OGj013fhKhr70JJyTsyon2k2iSqU?= =?us-ascii?Q?KhY4MMtJQOf4mbPXdzMycf+i26mm+DJ0X84ejcdnOuS9HE/VPbbdG7nxMG8e?= =?us-ascii?Q?+tMWMPgjwqjtHElfG8AHlH8RwphTFnw9jHJetjbEXCMkwHPyHBciJbeK9qNu?= =?us-ascii?Q?dPglwsEErN25uuxk6nOOWW2HF6qwWoNmg2gm26LIUaP1G5fVPCC9o1mKHGnH?= =?us-ascii?Q?2VStF1TpctHKT6OzT5o+41EQ4PiotX/Q40vnSslq7O3kyCt44RMtCLgLMYG0?= =?us-ascii?Q?qScc7RX+kKFhtsrEvc+uXqvMj/q1eOvqDt+er/F7LE3HPmBvRgDmjWf5ZsUH?= =?us-ascii?Q?92EFCeeXhpqztNVlh04oZ+Hqi2jHi+wQr6GPdWVEH+vf1jaQq4gx67s+9gOC?= =?us-ascii?Q?7pIJ5M0wHR2/9hV9q5ffBoLW6p6m02d5v/I0I34rXKirA1cGb7zOm97gBjwr?= =?us-ascii?Q?4kftwaSFYDBSvT9JNgNsnTBIUy1I7MGg5eqDd1YJ9oO9nAKBrvZKORDT89Kt?= =?us-ascii?Q?Y48rX1e7IGLN4t3149IuEw+dyKnn/SLwp9mqUvQaElAD6E9Kb+llNdL1wCF2?= =?us-ascii?Q?eSrp/2ABunTqAg8T45EmXqaHM8v5a1FG+blGbHChX3ql7wPHA6uaxUWj40xR?= =?us-ascii?Q?Uxju/FsH9l8ZYe6bE9EKdeyo0BGhyoZm6x0yAsSaskxOxdRIkXiNixqNvOhd?= =?us-ascii?Q?ZcjSo9LNDu1EZjUcFTuaCKlJ1mflCaLt5xjEHfR6I/1urCO7dkT16vyAYDAN?= =?us-ascii?Q?ev2z1UJihYVZsFc1TBEAVpnWqm58y7BOrOcI5XlA4+ye9umLaLjEr3G1KYX2?= =?us-ascii?Q?kF4hmU/dIY+x+Bz603N101ZZ+lmyyaNjN+yWG0a+iYU+9FPQMMyxFQDkuiHQ?= =?us-ascii?Q?3K2z5UVcRihC+4CGNuaOhwIpJpuM6b0a6eHXKyivgMHGbU3z7f8PqqoXdSZX?= =?us-ascii?Q?okPKGq7Au2SgmXAvg/17HpZNJwFYg0G4kXnVrIz8HSNWK26hw1DW3CRUiXAS?= =?us-ascii?Q?aGpaj4QyOckliZADDtbrAM2ZjtXsqhVNYv3DQ3VCtGeefjc6gl/PRNgMvUfk?= =?us-ascii?Q?6ZuoTNNqmu1+g+87yUW9EtGGY/lvHwyQWsesHOcm1o4kYoSHUPExDeyLiZ6t?= =?us-ascii?Q?XNpBJyEwejosyevULbzoFGzlYttUNLJAO8elkpMlwCwFuQJhGOOFBZKOClot?= =?us-ascii?Q?Y47CzB6wwr4KCfGRdFrz+K6DN8sc/Wbj8ENJ8NGkInXoE9YQ/YjHgfEvbkZl?= =?us-ascii?Q?9+UNRx8C3Ep4rK9hHr3AIuULTnzc0ajbQBh5oj2fcov6GKPGaTAPNrOo79tt?= =?us-ascii?Q?6x6bJcHusFIHrrQ70V+9Eg5fIxbmsGvAJ0C05N4sSlZ6jteciMLWIuKTTokG?= =?us-ascii?Q?blHqm4qPODBN6vMXmlNYYwAm4F0nZmOP6fDXezillo/DYMVBdIq+wwhLucvQ?= =?us-ascii?Q?L8A6dVe66mjXM7JZT/TjPgf9RFrEiyLg62Nz+/xyp1iULT0NLA2FQvOGrfF3?= =?us-ascii?Q?wVy8WbIqrYuqQ9Tj5SqA/bbgs48Oe6aw1qqsXWfvGxBoicdP5ykD8fsGxKsn?= =?us-ascii?Q?vcAWYJG+BIX2H16k08c4er9XrjmdKWu1ZCy4Les+dQUMXYHENidwVMtMqrkP?= =?us-ascii?Q?E4u8j+RXqw=3D=3D?= X-OriginatorOrg: Nvidia.com X-MS-Exchange-CrossTenant-Network-Message-Id: be4a22c3-d9d6-464a-cc8f-08de84545f6b X-MS-Exchange-CrossTenant-AuthSource: DS2PR12MB9567.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 17 Mar 2026 18:38:24.7745 (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: 56mRe2Ijfeud/dKPJUufKDp7SRiw7og1GXz9IYUu+/Ej05Q9Rui8cQgHazxvkKbr6Gc2ChfSUXNCVpXkhZAuqA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: SN7PR12MB7452 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:c007::2; envelope-from=nathanc@nvidia.com; helo=MW6PR02CU001.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, 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: 1773772851756154100 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 Signed-off-by: Nathan Chen Reviewed-by: Shameer Kolothum Tested-by: Eric Auger --- 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 Mon Apr 6 21:34:17 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=1773772835; cv=pass; d=zohomail.com; s=zohoarc; b=ciBTlHlkTlWlaSAN4WhmbeF8uGcYiMDf2nv4bH4t4vKxbcjS0Y2Mc7q8pycIpfLLi/F+nqjInjYZE9An4YyRcJvwhR+BgH6a39ns7GZ7MF704bqj/fIPaNaBw9/nj6+FWkaWIMvbv91fM4CYd9nzZeRz9u8WdBcS+93rPlZeTP4= ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1773772835; 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=2AX029rXffkheo/ZA86aABv+cbWRlT02vFQMCkN5OMc=; b=iEIkKSo9zdCMwRDA6stlfuHDbO6yO4KtIYCIs7DKY8uBhLDYylf3a2lznL04GMsR57fOSDo+xgAVqF+BKueC1g77wtXnaVA11aI6pqDPCVQ3JfWa93XXjSg1V3iPU5gP/GsDJaZyFGYZf/OhnnjGJmDfNp/w7m923qhq0q5Ng8o= 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 1773772835745111.98311970377517; Tue, 17 Mar 2026 11:40:35 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1w2ZJh-00043C-55; Tue, 17 Mar 2026 14:38:57 -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 1w2ZJf-00042N-VT; Tue, 17 Mar 2026 14:38:56 -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 1w2ZJb-0002wk-2v; Tue, 17 Mar 2026 14:38:55 -0400 Received: from DS2PR12MB9567.namprd12.prod.outlook.com (2603:10b6:8:27c::8) by SN7PR12MB7452.namprd12.prod.outlook.com (2603:10b6:806:299::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9723.16; Tue, 17 Mar 2026 18:38:27 +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.9723.018; Tue, 17 Mar 2026 18:38:27 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=ojVcLS4F+5ORympS9hsO0R9MQ20RAzqnyfIv+9iYDBqTfpR6AZAjCddFGoknIiZ6pitT68omxeVwaJawIOB0N2OwrSkBOZhWOIRo3S/K19OtzvHfK7qyLda6dJWabDX6I2JKWY0CkaM948DqcgYpBnaQGV5aulUW75JTEZ3w7249d8+besIUQPR11pYExW0B8COOX33tGNG00V3rykQiD5F6BjZN/eYFonHkRYLcKzFUVlxm/3rs9AnGkyVbEwcV2P6aYjJ4VZeypE2SbbyE5ppIQPAzVbXuiGfm379EX3FkzQ4YKU1CBT4dFLV1Qo+Y4U38s1kxiSB8UBabiJSkuQ== 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=2AX029rXffkheo/ZA86aABv+cbWRlT02vFQMCkN5OMc=; b=oklWNK46RYCYfYh5v2e9vH3gwws4qDia4DGtt710om90+v3odtIAMe7YMQZS92gV1BYl2Y2NmM45VgZi8r2n2m7Vw2ElSnjMDNendE/UA5kIQMmYUchO2lV52XHobeqBQ1g0S+nFeB68Z/bWORxKZzNwqngcpasvnFj41DVlD5ZsEFU/Un0wNopgAZrvZdUyHjAYSHAMFPyj54sANYwiRy/YEI4C01l70GQugdimq1l3QIl/N0LAKcq4If+ONnImhU8wWpBgTjgXYHx6YzBVechYthbB+KMajVhqcnVjJDC9rPsR2q889jb4PnqUOy0qPlYJINsSZv4vkk7QNucp0w== 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=2AX029rXffkheo/ZA86aABv+cbWRlT02vFQMCkN5OMc=; b=FzEB20iiTIwurzVdFAggWdVoq8yjKzVVBCLtnIArZJxcvjvkjhPVQ5ql4kTOmgcIC/XrVcs6N/I/g3i+X2prVkNzUUOBMmCuTLDgujgkLQHppOmRsmQNCOtwfGLxMixV6yORWag8rX+kZP3m4b3xTcHHab5qVRiMg7mZlIn2CapiwdWlB7gIpvLmF8s94oTk+JWR8/+D6x+aXSmWPg1pCyFVtqK9W7DioP8v5iS/Mgy1VaDFDSt1AiHLO4x6GoT/kXM0r0BD/hHvArdd74Am+Zvy8u79X241eM5NvrlLeya++o6QkHO5XCtOoGimtQYgHxvW4Ykz41S7G9RfocmQNg== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=nvidia.com; From: Nathan Chen To: qemu-devel@nongnu.org, qemu-arm@nongnu.org Cc: Eric Auger , Peter Maydell , Shannon Zhao , "Michael S . Tsirkin" , Igor Mammedov , Ani Sinha , 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 v3 2/8] hw/arm/smmuv3-accel: Change ATS property to OnOffAuto Date: Tue, 17 Mar 2026 11:37:49 -0700 Message-ID: <20260317183755.3721625-3-nathanc@nvidia.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20260317183755.3721625-1-nathanc@nvidia.com> References: <20260317183755.3721625-1-nathanc@nvidia.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: BYAPR08CA0056.namprd08.prod.outlook.com (2603:10b6:a03:117::33) To DS2PR12MB9567.namprd12.prod.outlook.com (2603:10b6:8:27c::8) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: DS2PR12MB9567:EE_|SN7PR12MB7452:EE_ X-MS-Office365-Filtering-Correlation-Id: a6aca428-7488-424f-13d1-08de84546103 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; ARA:13230040|366016|1800799024|376014|7416014|18002099003|56012099003|22082099003; X-Microsoft-Antispam-Message-Info: 5minKwOv6MIOvN+oeJq/bcciwOwxbZrcTy4GbtrD9a1yNMzveMx1WodwrnJ79NYMbx0YwMBx7JeTV9mDLofhOMWwjr40BaT1JSmO188fikQ5fo/jBQDjQ5/vxra8KvX79sulcTmQUn4RW6qymL25ddNcwjdrb+obpepLl/gjCdh609PdGO8CSTyG1BT6IaQ8Ek9+pFcGtkom2VsJNv5iedBQjH/G3dPgwiUvar7qChvSC58YWlHVPdkkB2P+WW2S9l9oM6Cw1npHf/DQzUgpUblIfIcPMMEbkIwI4cRmmYq4G8VdN+gjLYSWBkzrCNf5z6mjbQJ4KSyct7yK7ASK1ejwUSQf1MEMi8/hHscrCLQQBgRHazSOuX4rPZ/cjG4GYoQGFnBRXN1cdygnrlk6GBwNkfibgEphna57zUxG1v+kIWzrlCymc+fOMwaMbS/cwCiQYyBQfL+TkLsq188W7xPM0oPNeUvNRV+iBG4QeWmk/Dwvv7CclcCY0LOUdmldFdWpDnCVtIMffONldvFB01QnuDYsxLJjfWql0lv6pP06IdjN9v4qmhj6aCKu6DKKHeEmPAgrlO1mizv+6Qno1UjQpIqFIrvQ3k77fUc8BimTlsT2oZkmpP0zZVqFmxxSW2mG/GNPEDxvVjwM69RNGIrvx1thiHaaJMnIQZStrVkfgZKxNgwSj/uHvroz1EEiGGLy1asOGdlAlCla04ophUFvkUUOb6ctJNj3+edQhME= 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)(366016)(1800799024)(376014)(7416014)(18002099003)(56012099003)(22082099003); DIR:OUT; SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?rGkmqnHMmmmNWSbjry8LCF+rdc6oDsRxoAVo8mZWNPQGw4+Rvdy5BKKA61EI?= =?us-ascii?Q?tGNcwyCuTxRIpazzZZJNkrWXNcoap0MikscAUhcEwe05OHHVXoAmYXpeiSnx?= =?us-ascii?Q?vxM893Z38SxMYpinPTOtVWo2Blwqk3iKNY2tY/6UNguf09DyQ28dmJy00qdW?= =?us-ascii?Q?fvgPCIC2WrSuRtr179XUQtZtRPBPbTHNDgHDUohRnj48gZMk+68Ck5Fn1NNG?= =?us-ascii?Q?rbZZjBcD7eFUtttfzTosPM7bAUBvx7sR77h+MNNKpAVYatOzozJZKa49wNZG?= =?us-ascii?Q?tnle0UrRDA3sHrosUoopFROl/MRzNuicod41XtR5RP3/hOLwtAz7d9TKytkp?= =?us-ascii?Q?sayxkH+B/yUtTjeUSZZG6/ngso+FAzXsEldazbcNwzfAGozrPsW2rflMiQDK?= =?us-ascii?Q?TPw6ScpOKxfXYc+0Gkunz9qKTzP17MnWxmTi5UQ6lWXYv/TD/uFEgubBahDd?= =?us-ascii?Q?peRPdaOfXxnqne0CCBhM3HDaTis468CgfHpxUUd3w4BMCIl3MfWCO/LdN+vk?= =?us-ascii?Q?NAAwmycHNxAZ94Jkrn0/t2Km2gD2XKdz2ZVaDzT9c8yv1YM8L3+dkAMZX1l9?= =?us-ascii?Q?dAMEwEkEje9Fa4yleiTs1VQ6IaSg6eOXf94TBvtufINC7XrlItqsKd3eZx2h?= =?us-ascii?Q?OpMHePITNHZvIdePiWFneLDeh3hwzTcrVKh7kFaUBXYhxTakWfe9PDm1xajI?= =?us-ascii?Q?hw/Fhu0SAe250yV6k0ETtQVuypUJWy6glnuuvVxR3IqzaJ7qQ4YGwjlFjJtI?= =?us-ascii?Q?kFC9BMEwctmyd2QZuHd/LXzNoKspj32OzQTXPqvmQ0Q4E1xYU4tz1sgcw1CU?= =?us-ascii?Q?9DeOjhGVY0LQ7zzVNHX/sXJxJWRkYUFGKGwQsAEpsNGriyE4cgbZTMpl/U6j?= =?us-ascii?Q?AnTmBDmaOaffBPbVHv7wWx5u7f42F8oqwOhazgDNZQKScFAu9r22TVczKRmu?= =?us-ascii?Q?HBlWs+ZG/C/mVukSzu46fV7FoYL/PrORB4DSPG61DbMJXO7JsIiXylk78Y/w?= =?us-ascii?Q?TliDClwcH8z9Wi136aKdKF8x108r+mjPIQzRdEvvF/dXfOMBwQMusYBMQA8u?= =?us-ascii?Q?4VXrZHp0O/CBMDOd9z5yI0ZYvOYPYMH/yZ6jItXyoDzU9tMxjozUm7Pi6YpK?= =?us-ascii?Q?UreVN+C4Z1C8rVnJvApkb2OCAa/MuN9ouBQGRxaotBDkCB23cE/bVinwzqCN?= =?us-ascii?Q?BcleVMzKcIsgnFJBfDdPxCespoRYnD9pZN82BB0GT3F8SjRMBWqfi41Y/noX?= =?us-ascii?Q?TEGVBQW0e3JDsxY6toBJ79TYT1kxlqPdj9TbrYqGgUt+Fre0ee8a6ySdke4K?= =?us-ascii?Q?G1G2CVrwU7zVMsJUZajgBL7R6QLsaZQNjrS3g5LSeiF5LsuO4Z+/POUe9uAF?= =?us-ascii?Q?GeVj7kJOhHS5vkNCItZvZgehhOr3nvRdk98kB+dF8JwPCjPWhRdy2o+DPIwC?= =?us-ascii?Q?2ywfAxp2vn+/hN7ejMZ8/fhFylVkX8iVA7V/mqxleeRQ4+aAyVTzWqDzOy1F?= =?us-ascii?Q?FmE4PwA8vcxYm5+C0bLmOsB5rH2vRgy7My7a/cIVNqG1AeQ5jauDbM1OXpzu?= =?us-ascii?Q?xg2yKKI+ZQJ72M73njbt2i67YCDEvdtdlc3Js9wb2Wfv4XE/TzUXLSaXSrN0?= =?us-ascii?Q?61IJBP/Fzibo+59IYEa5tkUp6s7NAW9JCNZESIQE2IYOZXIC/kl1UuWK2jfO?= =?us-ascii?Q?y865HeBR9oWzbKO2omTSbaq+ggyZv0W8tXLnudeastjJQy0l4XAHIMqKnPiL?= =?us-ascii?Q?XVBUlBbaaA=3D=3D?= X-OriginatorOrg: Nvidia.com X-MS-Exchange-CrossTenant-Network-Message-Id: a6aca428-7488-424f-13d1-08de84546103 X-MS-Exchange-CrossTenant-AuthSource: DS2PR12MB9567.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 17 Mar 2026 18:38:27.4117 (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: LG3xlE92mI2jLq7AW4zfhz+SUaOh+nmRn/W7CYPyrYih/uNkGBO+DHsIzs4Oc89c9KefWzgdk8f0TM0LQdJ/Wg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: SN7PR12MB7452 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: 1773772836314158500 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. Fixes: f7f5013a55a3 ("hw/arm/smmuv3-accel: Add support for ATS") Signed-off-by: Nathan Chen Tested-by: Eric Auger --- hw/arm/smmuv3-accel.c | 6 ++++-- hw/arm/smmuv3.c | 14 ++++++++++++-- hw/arm/virt-acpi-build.c | 2 +- include/hw/arm/smmuv3.h | 4 +++- 4 files changed, 20 insertions(+), 6 deletions(-) diff --git a/hw/arm/smmuv3-accel.c b/hw/arm/smmuv3-accel.c index 2bb142c47f..621ac531a5 100644 --- a/hw/arm/smmuv3-accel.c +++ b/hw/arm/smmuv3-accel.c @@ -826,8 +826,10 @@ void smmuv3_accel_idr_override(SMMUv3State *s) /* 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); =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); + /* Only override ATS if user explicitly set ON */ + 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..3dead0bcd3 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); @@ -1971,7 +1976,7 @@ static bool smmu_validate_property(SMMUv3State *s, Er= ror **errp) 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; } @@ -1993,6 +1998,11 @@ static bool smmu_validate_property(SMMUv3State *s, E= rror **errp) return false; } =20 + if (s->ats =3D=3D ON_OFF_AUTO_AUTO) { + error_setg(errp, "ats cannot be set to auto"); + return false; + } + 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; @@ -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), }; 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 Mon Apr 6 21:34:17 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=1773772826; cv=pass; d=zohomail.com; s=zohoarc; b=NrZCFYYGkgDK+gAwBCWvDRKySUZPUkFxNOlADoccv7BGcxaRI+aBYDQaYSozFPJOAl07xdJ+8Ruk4uGv56Ga0wZL3XDIYUW19MpnHPRHMi5Gng0r+RXT88DvrgxMiSKOwnSQvI2n2E5MrtP3k1zJvIgTZitlmBi2C4Svhw7bJAk= ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1773772826; 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=3Y2k/dR2W3fjEHG6QwvmZDke2DFzs5Ak8XTckBXVy2c=; b=YKG8EXpzGfx5KqkcbPxfziGUsmDMvYzFE+a20ija8CXxJWeFUw00M1dEQn3R5ohMh3PsNsI/yRXYzRBMGEqShUx8vrMg6l2aFuNEJUzAa8TsRE28rcpr1J0pyF6wbDQOuqOHrAuifCRL/bXsciZ1n6e9QDBUzWsIw78k4i6VPc0= 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 1773772826722958.2135631677069; Tue, 17 Mar 2026 11:40:26 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1w2ZJi-00043W-31; Tue, 17 Mar 2026 14:38:58 -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 1w2ZJf-00042M-V2; Tue, 17 Mar 2026 14:38:56 -0400 Received: from mail-westus2azlp170120002.outbound.protection.outlook.com ([2a01:111:f403:c007::2] helo=MW6PR02CU001.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 1w2ZJb-0002se-IL; Tue, 17 Mar 2026 14:38:55 -0400 Received: from DS2PR12MB9567.namprd12.prod.outlook.com (2603:10b6:8:27c::8) by SN7PR12MB7452.namprd12.prod.outlook.com (2603:10b6:806:299::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9723.16; Tue, 17 Mar 2026 18:38:30 +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.9723.018; Tue, 17 Mar 2026 18:38:30 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=U90EznEyX37EJ1Iv5LYRXoiInPy6Bp8D4+ok/NfwnWjKsaE9QVH1RTjee7nA0kgwLRygiAFSSYQz19Sh/KjKSoA+kQhBnDhq97YoD/njnvBm1V8YpQMVAxpu1U6DZWtLWMhaKsFjXbc9VYfvWGASBJkmPUUexDc95QbTvhVikLhmm99TH0WYolvMuaDxNMa8/UrY5J5hd9OuQBEWYFN5rJhrslLGu033E/ZmKW5zbEz6uJjZn97Rwcu+RYLkE0lqwhDphv5pSjBOUbTvQytjXwngaXKHCoBQD0FbzvWAyISDnJXxecNlpREhKf8Aa0654+e1ZIcU1nSA6/abSzeg3g== 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=3Y2k/dR2W3fjEHG6QwvmZDke2DFzs5Ak8XTckBXVy2c=; b=uScBwvDDMb5LsgSFj5q3iKt1ysb6RIH9+lbq58u9CzW4zedh7idZG6pB3+hWR1lC15TrpQUFkSldRj52STwfJS13nEUWv536oDgNXQ1YRKa4GyI1STl8QLfCVB1mB1bLexOvv+CD3O5GYjCASlmQRHgNo1At3DosZoed+IioSpqFGLf97eez3Jl0LooImryn0OBmnE6/gSTNwrFgc6omlkWbGD9SlsFepNLhR6UEYfLwGBDsLwUKQFTHewupda6p5eB2aOdcU8atBNfCO7CgywdcIhPT8N6xqMfN/Cm3toOrQdZcVrGfe9h3eDablRXe96rz2bENi6UkaKNPXEa2CA== 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=3Y2k/dR2W3fjEHG6QwvmZDke2DFzs5Ak8XTckBXVy2c=; b=gkJHljCIH7KhRtGe0LWS5UsvZP46RSv1Ed/IEUvk9sqQL83mbUMAsjPV4umqDfQ2hs2WM0Edrp3MP/yMLd3lg80LM3fyRFJ4Vj6/pWnUneKBosQajUPhcXben1m2YKRNvV3/m/I63ld4Q7CRTWaegR6PqVWLZSwcUpxtjrvkU3RQcqviOAKUWgY58NcmWYGlIIqQ33P1MKjG/iJsnDuyZFXIE1cNzHb9QaE0R+VHrTuM3d0XAkTwW4uhGemS2Arorx3L2zLAiVQFINZwrJ5V/7koH0cX2YVlvA6UufyidIcolg9BGRWh1IVYAmZKmfyONoLAS1PPQxtCXSeOqFrbcw== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=nvidia.com; From: Nathan Chen To: qemu-devel@nongnu.org, qemu-arm@nongnu.org Cc: Eric Auger , Peter Maydell , Shannon Zhao , "Michael S . Tsirkin" , Igor Mammedov , Ani Sinha , 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 v3 3/8] hw/arm/smmuv3-accel: Change RIL property to OnOffAuto Date: Tue, 17 Mar 2026 11:37:50 -0700 Message-ID: <20260317183755.3721625-4-nathanc@nvidia.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20260317183755.3721625-1-nathanc@nvidia.com> References: <20260317183755.3721625-1-nathanc@nvidia.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: SJ0PR13CA0160.namprd13.prod.outlook.com (2603:10b6:a03:2c7::15) To DS2PR12MB9567.namprd12.prod.outlook.com (2603:10b6:8:27c::8) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: DS2PR12MB9567:EE_|SN7PR12MB7452:EE_ X-MS-Office365-Filtering-Correlation-Id: 2b3a571f-a3a4-42de-a46f-08de845462cb X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; ARA:13230040|366016|1800799024|376014|7416014|18002099003|56012099003|22082099003; X-Microsoft-Antispam-Message-Info: kun/7Tz+xpFrCkdE5ke72YLnzdo9MsKV6BiZeNbFb+IjsSSkrJW6wfGMcAQkI0S71eWExbqkLjhC4PA92meJJxVDjiL7b2HtMA0xQCyuEPvS4vKAaAVgqoRB3msN+YutZtaqlLLxzw8OAU+gETEHAwo63O+8dwV2v19mVKQiiLYcky1Zq7PzFbrCdte7WuBf8OpGYHmV+Ur3tTVvj2Ach7tSqNdpAXHYre7tQa8lCKimGG8s86Yv6e2ry2mpRlxhvlY5DE6f+/mzFbNa4uOsU6ywpfoXj2PEdajgC5Lu35BIb3HT1elSUKU0NZVD8xg18fq0OKa8VQpWLWwW1JYCz7HUqUr4J3hdPomC7lGF4biNeK/Yr8Kq04FGlgmw/YnlY1xlx2Q9gPym/ETnBoOEIgcZoqkudGaMs854bX23SFItB7aBeczQJoQRitVeAcemDd+KUUfdWbrCRf5L0bxU/g4s9INrQjj86Iq8SwIWCxpJjafscedQElSGV31+HM9oW/8HGuUQ+exsSKwQQC+c24GdMsVfx/k1I2yIhIRUsqEUqGf53OeQX0dZ7pNfRkxNl8BMyZdUcPRmgI1BVfFoRpAoHjTEYwkAZiFIjqJKBkbtJNOU+OXUnWLa77GpqkUguIb2e4+Di496Q/+aD2Ebbzjuxu0HOiHQfTvjoSnv6KBSDy6EYC7YqOlIzbxN2/vpH8Vx+oEnM1Wa3pIVs0r9AATzqQw3NS+a2U97lnGVvnM= 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)(366016)(1800799024)(376014)(7416014)(18002099003)(56012099003)(22082099003); DIR:OUT; SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?vI+HWkQd/NBUqi8MBaoWXd0kBXe4NXyiJ//n8hnHmPh4Tl6q+oroi+XWVBIw?= =?us-ascii?Q?c82JUFWJyBTlm1avIM4N/GLSx2YcXmJmuG1wPSsDUQtTICvyCR5xfOB5y3y+?= =?us-ascii?Q?6632Msoy5esi5QLzc2Z0Zcj2fM9NpxBe5ySMwjkCSok2eY8mUHdUbqFVHNPr?= =?us-ascii?Q?YMqI3py07mr80gGhGgNKtZFhdVadYjPOSjQmbnqjEjrn+VrAmsfSsVAh/ObG?= =?us-ascii?Q?vY7jujC0gAHzGh1OZB35rctbozwfr9+jphSXnp9iQ8cGVdM54487INojYzNk?= =?us-ascii?Q?13W6++ydgNJdyhybNqXkBjSQ9vDNUYYO8n22b4gUIuAc5gG1obFr1Tt1XxwM?= =?us-ascii?Q?EH5d/ur6tC0C5CcuzR80v4p6QAuRyGkMwDijYj/S7XsVn6ViBaW5EqNEOyhc?= =?us-ascii?Q?R4OrirA0SG6k9llPIpTehNKxdr21jmgmVPIq6/yj5wD+OW2RYW6f0GFTKB49?= =?us-ascii?Q?Ij2HmG3bCPXJ7SfZGUGgfaNyd9qDXSofQPxsJ0V4+/1I+uW2iUVwdReYB8Kb?= =?us-ascii?Q?r9uMOC4dWGN3wg2v94AI39/2pduuMH96s5DguAFu7nx2kRScTBEr6X5uuYCK?= =?us-ascii?Q?FXjIzqhUAlMa7w8fDfgirYzvwQuWJe8r3ELP2wp+TtDxZ8IKcVGSfxZZQ3Q6?= =?us-ascii?Q?Ip7bG56NWkX753zmRa5WVLP+C3GMqgHDOi3r1MamFO+dTIUn/mDzBcI2femX?= =?us-ascii?Q?UtM+bcfdXlip/ugUf3B/jrvZfqs9JDLe/+Vs0FqJjq3bu9m9xFvW7lnSaPaj?= =?us-ascii?Q?ca+NGpv9ohhg2rNPajrlwHY7iNJmITKwNx06yA4WdyC/d7Cq++eObRxRv+mA?= =?us-ascii?Q?dyzC0dJgB6B/gqI3JCy4e/gp6r2f31Jhr2vcnkEPsk+lx2DZMTkUVSdFneiJ?= =?us-ascii?Q?GD+b7WJmDS4bDms9t+Tw3/6LkyK5tvijWOBxidSmI/Z/8TiWq7XyqyJJhbAa?= =?us-ascii?Q?ZbhuKM3OUhu1IB3TKEQlIpnzy8kJMnWkgDNAvD2SpU3crkLq/X3emlHlRzEe?= =?us-ascii?Q?OaNnko8OfzFi5vsGNMv7LbvkIvSyhbYEfUwTbRNPT1BZzQeIssvHjJKD7UVT?= =?us-ascii?Q?BWqUL8eZMH0umHLTyAFY0XIG4hThBP4lTz93IWroOlXq7/r4BnNcWcbrSlfB?= =?us-ascii?Q?BLImEXT3YwBUfuTTVNVR/FMi0arFEewBEigElUnMUhFGtlnppnxJot+x9AIB?= =?us-ascii?Q?nMwWNqbMIHFwDaBxlL5zMN7JcwwK2VHJkKdnBd1TLvZ87oa5D5D/xXNd1nb8?= =?us-ascii?Q?i9QV6Zx1mlw4bnEqDkv0uBXntF613qeqYleFhqVbCm0qiQZXCFJjzopyY8q2?= =?us-ascii?Q?f5Yps1LHAPWujW5i4invHxqugTmSvgOFBdDxO8+LyeITNQk201YcE2UF4gNj?= =?us-ascii?Q?tlBErQf/YdQKJV9AyE6FQwtnmVHOVfS3hGon9NhweiYY9khl+SaZg5gc2ZDN?= =?us-ascii?Q?K2XFKTMG+DpQGWHMF1V5ZZ5EwO11wW7CN0NnFkw+jykz07E2SNnau+4EZjaA?= =?us-ascii?Q?obh/Nu/ogYwMv4ut6gMmWlTGIvhvN3/MOlJXdm3c3sXJMDO68anWjgwTTLOP?= =?us-ascii?Q?pK2Hl0Ho/JjwSd0eLXbvbUAb4MRozFsXVIiIb4hA+jvEmnPtl3r8xCgGfFz4?= =?us-ascii?Q?X2YtXopxWGtstFsZgaI+0J8MgyXdRAb//aw5iFXryIlvBLoYPq4E6C6xuPNx?= =?us-ascii?Q?fOv12Ua0X86GB9rCEy2rRPEnugCskMBIhWJs5VB2NUbflGL6Z9D1nqsLoWhN?= =?us-ascii?Q?bOyVOS6y2w=3D=3D?= X-OriginatorOrg: Nvidia.com X-MS-Exchange-CrossTenant-Network-Message-Id: 2b3a571f-a3a4-42de-a46f-08de845462cb X-MS-Exchange-CrossTenant-AuthSource: DS2PR12MB9567.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 17 Mar 2026 18:38:30.3958 (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: T4xKVUYFTTYbsma0IMEF0Dy8vrI9fimGR6vUBlhpcnZHb6zWaioAxUbtES/ScU1jXVCAn5Z4zkKX6BTU11MNLA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: SN7PR12MB7452 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:c007::2; envelope-from=nathanc@nvidia.com; helo=MW6PR02CU001.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, 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: 1773772828242158500 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. Fixes: bd715ff5bda9 ("hw/arm/smmuv3-accel: Add a property to specify RIL su= pport") Signed-off-by: Nathan Chen Tested-by: Eric Auger --- hw/arm/smmuv3-accel.c | 6 ++++-- hw/arm/smmuv3.c | 9 +++++++-- include/hw/arm/smmuv3.h | 2 +- 3 files changed, 12 insertions(+), 5 deletions(-) diff --git a/hw/arm/smmuv3-accel.c b/hw/arm/smmuv3-accel.c index 621ac531a5..ddd927fa80 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 /* Only override ATS if user explicitly set ON */ if (s->ats =3D=3D ON_OFF_AUTO_ON) { diff --git a/hw/arm/smmuv3.c b/hw/arm/smmuv3.c index 3dead0bcd3..40d6aca83e 100644 --- a/hw/arm/smmuv3.c +++ b/hw/arm/smmuv3.c @@ -1972,7 +1972,7 @@ static bool smmu_validate_property(SMMUv3State *s, Er= ror **errp) #endif =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; } @@ -2003,6 +2003,11 @@ static bool smmu_validate_property(SMMUv3State *s, E= rror **errp) return false; } =20 + if (s->ril =3D=3D ON_OFF_AUTO_AUTO) { + error_setg(errp, "ril cannot be set to auto"); + return false; + } + 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; @@ -2137,7 +2142,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), 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 Mon Apr 6 21:34:17 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=1773772846; cv=pass; d=zohomail.com; s=zohoarc; b=kdE3mITrr3WLIl3oIAcpkwSYq3fDKo/qxyM5Yod2lcaDNKSRAySp6QAcDGmtdnREpCeGNcOKv1fy1roGsT246N9ebSJwobrAy6G0GQuUvsGNoBCqNCkGo3cR2B7q9+Kdl6P7hqhGiEfvEUCDdp3PI2t7QKJSmr08nd5Ip2LR7LI= ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1773772846; 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=U5BJGJNKpTNCsPMMpOFJcDHh74TseA3YKa3/LyDWeZc=; b=lqsMTj8GzT622bu3bpRqUURfF/mpVqTzagWETI3sw+noOt4N9Yp0EgOoj/nEH/aQDwewYW7KS0sv8phr8w0S/WoVDOqG6KjGo/C4au/Sjj2NTJmWMriM0RQjoMT5hTdQky2bcZeU5GroiRBXAYrUMe+hMbAUjJPLUvaKQNX9iRY= 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 1773772846489768.9743078819681; Tue, 17 Mar 2026 11:40:46 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1w2ZJl-00045x-9Y; Tue, 17 Mar 2026 14:39:01 -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 1w2ZJj-00044x-PW; Tue, 17 Mar 2026 14:38:59 -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 1w2ZJg-0002wk-Gy; Tue, 17 Mar 2026 14:38:59 -0400 Received: from DS2PR12MB9567.namprd12.prod.outlook.com (2603:10b6:8:27c::8) by SN7PR12MB7452.namprd12.prod.outlook.com (2603:10b6:806:299::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9723.16; Tue, 17 Mar 2026 18:38:32 +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.9723.018; Tue, 17 Mar 2026 18:38:32 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=SYj4/eo5x9lrIZfHJEoIdMXnKlqUfnmOSgJYX/MDNhz9sjKOvOW18MtHQ75VX1dAVPLsbwIFVWbwptTMPNvsFn7dY/lePvio91FzkRJZOPk8aT1Z1V4FQetzmVlraWKFa0hOOPlPPVLDU9wI9EPWdAFuLeQJAWj4in3M6heaQz6ns6z6TpmM5dI88zgWUBTbGEDhTHVlIJP7RbmrysSvjNatCs9VgF6+AnDrmBcr3holjFBpz2YWNedIN1rfywFAzc80nTdWU97tcNvWpRS1Z9zH57W6lw66K2VdORPQbzXo7yz3FSN/bMBhPwzsa8+h9U9s0uubMcyA+Oh5P7TTUg== 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=U5BJGJNKpTNCsPMMpOFJcDHh74TseA3YKa3/LyDWeZc=; b=m1pGEtgvL67DhyEgknRGLs/X7upg5chOcyDWyxDjz1pAFdnlooUbivGN8SupDC0VADSVz4JiZgB5vejmFFBOqddphqBZ/GH0tTsnd8UUch9Me2D2z5AyDrGeuzpR8T7awuenhBy55SkkWB2dPjHdERebeF6kWBJLgmfo+UCFOles4yqGkqy3NRMB2SFur04r0PfqJ/OJRlU8/kKPAWRhtv4KYq2IK9Q36TAx16CERmp/VV9D7tBaNnAFBHYIhwNPs9b5WiEIz2sjQwy0VjRa1jAJRt93gaj1dRB8P6bMSEn9skunUo3h/bkQyQAEhchjC6eNLic/RfbhK7xaRQ03XA== 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=U5BJGJNKpTNCsPMMpOFJcDHh74TseA3YKa3/LyDWeZc=; b=S3MrO7dFCFbc19pknEmaHQtOjMYCp1jBujPiXptgQ0hd3UNC8slLk9LEZUzCQNd0hP0IVAnNDxsr61vfWlwDUc5SqAvbepBPsCk0MkOCxx1NbBQ8SIc8sqNdhEAl/5h12IWXhTtHtiYzLCcbUNkTJNMQD7Fe1juug1SFzNwt+vmzDRphYPXwbYxU+i7KiOhzxHkZMXTrwmrUF/SoMR7fH13DOszTnoP/xz3HlIKvJAGC4/07mgjEXHO6GYpg4f/cLSUF7kkWMWvXsDCOyHiMZ/72nNxYiuyoFroVg4mZoIQrpCf+8KX3wszLS16iQAB1z3AGjAEYrwsgKlbt2hZMgg== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=nvidia.com; From: Nathan Chen To: qemu-devel@nongnu.org, qemu-arm@nongnu.org Cc: Eric Auger , Peter Maydell , Shannon Zhao , "Michael S . Tsirkin" , Igor Mammedov , Ani Sinha , 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 v3 4/8] qdev: Add a SsidSizeMode property Date: Tue, 17 Mar 2026 11:37:51 -0700 Message-ID: <20260317183755.3721625-5-nathanc@nvidia.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20260317183755.3721625-1-nathanc@nvidia.com> References: <20260317183755.3721625-1-nathanc@nvidia.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: SJ0PR05CA0045.namprd05.prod.outlook.com (2603:10b6:a03:33f::20) To DS2PR12MB9567.namprd12.prod.outlook.com (2603:10b6:8:27c::8) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: DS2PR12MB9567:EE_|SN7PR12MB7452:EE_ X-MS-Office365-Filtering-Correlation-Id: 77724820-1a47-4d1a-ed79-08de845463f5 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; ARA:13230040|366016|1800799024|376014|7416014|18002099003|56012099003|22082099003; X-Microsoft-Antispam-Message-Info: Dq7m0mb/2xqv7FCuzMLagG/SOarS7jWTit+fogY3fa9GxO/6VIiobOlTSsu8v4W/RwoK3fCV34ObsDrK8WM0UQ4a0hIQ7/j4m+Tp3FpgMkxNtdrqG7LT71iyyg0o03jkafXNc9QWaK+qzpuJ7Ewq2sRzftH0FnUzA9J8HaIbnPH9HrQ5BTUyu5ctjUeHJ/IXTmZrarqcjsjFJqHBbZs+wcpDV0fXseWvjfMuoUgJAla9nDmff8Xq6O+TB2Qe/GJQShMB57qft1OkzSck/f86B0RtxIsdoN4R8zKDvWQCNoR+0/fuh+1MLozEH5ATKuXL35JqmzO50HluDUIA7xiUZtex4wV9qyFN0jSy6NFtNWAR9uzSm2by6PMmEgw1bNHUVh8VpG3F0kFNmuFLKHn2LmvZjyuMqU/zhZ/NfA0kJKm2crLNEGJCHlGBHusbW+qCIsaIPgBBroN8fM75amYIm9oNtofm5UM9P8grBfiJG0ZyZmYcreWu6mgSAwyk8vR3aKFnR2UXZeDPJbhQlCQkaYGdXw7DqqEpZgCfrbmPpUU+iVyh5tCwC/fhv5yFnqw+fIx3X58dXM/1hQX/coCyL6jIJeM5c1RdXSXWgk+G6zImjYODc/U59N9oLMaCAm/vfz47lMep67pdKHTDMHmE2U87hg8hfvmRc/brTtPc8X8ZZxiwpn5VBbgZQGfzp48ERIM+rglNtFCldeVUMrD0OwoTmNEPqK502/8Nm+3eKXI= 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)(366016)(1800799024)(376014)(7416014)(18002099003)(56012099003)(22082099003); DIR:OUT; SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?CWDu5uRpMa7zCeAzi1GuJSFbqLekYk/cQPMv7R+aQbtukAnMYpRTn9ORCVNt?= =?us-ascii?Q?XhvKK1JHgoEJj2PQ8TQBx6Qlrr6NBzZHJX6RQjs+ijNidBh8RiFsYYlsiYfO?= =?us-ascii?Q?DCPaFVtAucztjHPLgL8gvrIKVRYHn8nW0adrXnOWuvHCcHVrrF5vUn4Jx2Kv?= =?us-ascii?Q?AX3RxuQ0ouZCgo+cztxlNIYlYXDG/KkdAS1E5VmubGXiMSJNoabNf7FGM2ZU?= =?us-ascii?Q?aku6E2q/Njaz00Y60zcnqjQ2e1jd6huIfsYDiWi/hI1BWldKPPqnuaLeN3ee?= =?us-ascii?Q?LTZVYjfzbssSUUShCkbksu2DOOqiWzjEapIz0Q2k28zdbMhErzwBPAiRDZ8s?= =?us-ascii?Q?CujidAtHYT3DYC+D0tkLLk3m5DjtMPV9f9hfIXRSg3aZR2Yb6xE+31r9jUyl?= =?us-ascii?Q?rjPENO2NMvzO5eW3BxxRYTKuPpQTPpFJHPwE5u0ABNhPoZZyMBSGhn6tK4yM?= =?us-ascii?Q?zfPzlHj7JPMY7BI3mmAOta4ya8+phd3+orFx7s/jvf9PqdgS5xMnpTAXNUae?= =?us-ascii?Q?1BaTl8aNfdiSNIH0Nmlg12mZJTs/ysfrNilwrYpE1U8IgQN/Xt2sFnzzYPS4?= =?us-ascii?Q?Bn0osE+JBBI6XHsWzBAwYEKm22K6dQABVST0BRlSrDL/4/DZM6g5hhjCe4BK?= =?us-ascii?Q?jtMGhp2Cv5qurLh5MTH5PyizUL7EM/lldaFiBUzrrCj64bUGikyDS1x01vB+?= =?us-ascii?Q?+BZ9eR66jWMgSYf5z5k2MN3Ukw0sZKcUwLuz89b1S2q/xWZda+xJif9bVsmL?= =?us-ascii?Q?73DzCm3jKhLFjFaL5ANndAxuCyE4Y+Q4m6IrElIq6IONWXnBvk7MxFPzpzIi?= =?us-ascii?Q?RQBuiySZW82VyhdmTiTWxXi86asKtbKau0R4TyJHXZpYmyvuIwEk8ErKEaX2?= =?us-ascii?Q?qObnM3kGFgVfVEfbp7wBiNXRPsAa1mdCAYVJI5jbM7WJXmusgyJfm4CbtBtX?= =?us-ascii?Q?Zb3lPCijXBcdm9abVqTnqkTi2kjC/1WesVZSMmU6K7amcM3KbgYLWT/OBGIJ?= =?us-ascii?Q?Gyy8FBs42kn74qkGPUuP+qC53RUvBNoiRYoPz3FmSo3I+QKT6mkVDIGmLIFu?= =?us-ascii?Q?9uuCFpudORbPV6LUEU7Kj5FnCAwPzvgwwWIfgUjSjkitRw3nKV0RIjibSk2V?= =?us-ascii?Q?uQrqFVVZpmtOiIYVsw6xI11dbw1iWhKQ1FSsGHfXs0e6urZn4LybVtTwfsrz?= =?us-ascii?Q?V8od7z24opw0KOZh4Lc651n5Lgpq7O8zNPAMHXHNqWOaylVF5LRYgF0xJLkV?= =?us-ascii?Q?RCxvN9kMmCL/C23hfMPKOqyNsWf4+IhHNe8yH6vw2G6MRnSP2O97qHGliJwP?= =?us-ascii?Q?1RfK5uourIRyaIr9OMg5EgtjuMIwhCzzP2iFqvnFNu/hJ7YKrwAfbYbvzgJu?= =?us-ascii?Q?BEczw7FKQukvwa9NEfsObdT6qpD7nGsnzRc7F+90wdtxIXMhZd14yJiOhaaS?= =?us-ascii?Q?FjncWCW/1yZCPk5qqQzDu1uVkw5fzbGHXZjVw4sHusODEoVlx9CF+iPSume/?= =?us-ascii?Q?OY4E30QLMQ9IO9FD7tLZPqOJKb8/7X8rPQ9UPzEsNHfwUh0V7FWbouBwuuef?= =?us-ascii?Q?nxxDiJp0HmcZNqyc1kFMZKie60BWTjDoVPjVKVT7ic8HPqZfJCOMP+TfPEdq?= =?us-ascii?Q?GlryAtNvEElTLm5Hrf/kmFP/rmS8wuFfalx5EsbX00HZjKhj0i1NCliY9cK8?= =?us-ascii?Q?EIRPCTnzXG+Fx+JSuNdP6bklm7rp27Pa9vFFkIS2FM7yVRSJIHE2Rn7r49E8?= =?us-ascii?Q?qmVFZdWuqQ=3D=3D?= X-OriginatorOrg: Nvidia.com X-MS-Exchange-CrossTenant-Network-Message-Id: 77724820-1a47-4d1a-ed79-08de845463f5 X-MS-Exchange-CrossTenant-AuthSource: DS2PR12MB9567.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 17 Mar 2026 18:38:32.4831 (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: WGjXeVyOv++BkIxND0kRdDzVsmtTLPOnXQRLNBm/B1IWgCbYjb7o6euFA8lEqYwigmOVkIt49yBDPU3tEwY/ew== X-MS-Exchange-Transport-CrossTenantHeadersStamped: SN7PR12MB7452 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: 1773772848371158500 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 Signed-off-by: Nathan Chen Tested-by: Eric Auger --- 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..76ea0a09fa 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 ssid_size_mode_auto() 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 Mon Apr 6 21:34:17 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=1773772810; cv=pass; d=zohomail.com; s=zohoarc; b=FXQCkWomi4XvpSrvBtFMj8G0y0Rw16lYOALgkzok7Sive11Y+S7aAdJlnOiFM1RQlu7lLlA+ccijWly6kOIAGR4O+suubSHquozsAO8ptHwxwLqlyZmY4So0172aOaggJBpZSsEY1tEqTci5oXdkFK6w39MOyZFTAeB/uQRLFvY= ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1773772810; 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=yMTE5DO3vLis8+bWdnBr3fGcUfJHQ+Trm+OJn5b5FOU=; b=IL8tt0GoCcChD/SplxS8w/hXGASiJY0MTb5k6tU2EHwou1gI7s9JMHWI3gJIhGZO3GwNX3yVaHG1HRgWEiME8DOdWxTfjx6pg/5VZJLIN4mRqja6FiEbCrYE/nUSII+y4qg+uQcDil6g37DYdsGsg8FqaBWydWP+09RSa+j1D04= 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 1773772810306835.4900388470555; Tue, 17 Mar 2026 11:40:10 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1w2ZJl-000462-T9; Tue, 17 Mar 2026 14:39:01 -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 1w2ZJj-00044y-PN; Tue, 17 Mar 2026 14:38:59 -0400 Received: from mail-westus2azlp170120002.outbound.protection.outlook.com ([2a01:111:f403:c007::2] helo=MW6PR02CU001.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 1w2ZJg-0002se-Ka; Tue, 17 Mar 2026 14:38:59 -0400 Received: from DS2PR12MB9567.namprd12.prod.outlook.com (2603:10b6:8:27c::8) by SN7PR12MB7452.namprd12.prod.outlook.com (2603:10b6:806:299::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9723.16; Tue, 17 Mar 2026 18:38:34 +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.9723.018; Tue, 17 Mar 2026 18:38:34 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=oNqtcpQbm2tFH9xTJf59lWnSHokkUhjzDUjGrngzkNufrX0cFTLDmtUKJrz7Xopgv7La0oey7k1GKCJ3WjK1uVWDTjft3GzLPXcq0U6t6c9b0IlPQZVJvPEGMfu4ulXyE9MEoWXoXwt3ri320hlLIBfa6kR5zK7b43HTLunrtzDHdimgxP5XUQeAPLzC+coDt+wBaZRKzPgQPETCDfjuG/D+rTL/DTctnYy40QSpKw2ISsJcaUegpKPVa+/E1EIc3tfNZB17yFYt8VuRc8EipIVRPuZ+KNSKd5YHxwJwJuIyHNAmoRNniNitm1vayeFGz2FAhKoMuiUfYirusXcXuw== 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=yMTE5DO3vLis8+bWdnBr3fGcUfJHQ+Trm+OJn5b5FOU=; b=GpsUwG5/BjH22094/fvn5i3ONjLTZIWQpGVwM9oN6U3GONePlYVvMk1JZRGGC6fjli/HmoxHoHIrTQUWI1SVQEsXFDYBOXr4T6aL0s6xHww8r6srVpYxWtytxM0ZHPPVBcebXlci/WBXGKJADUGBQh/y3YyNIv/knS84Bhs7cSJcepz1vzJ9gY+cGDH3g8JP7wSomnzPCZnCipphkHGLrJCLN4PdF2SG4KPgCpSOW855ooSt2qxI2Bd1oEeaW7e+QBrHWzMeyTngvFWCnfAGKFc7OydjdLUNtxOrfL5vQiyTdvhnTL6/28SqLiRoW+kYfZqNj5j7tqX4StLPUIoKPw== 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=yMTE5DO3vLis8+bWdnBr3fGcUfJHQ+Trm+OJn5b5FOU=; b=E50pdQi5Gd1fIHdEO4/0iHgl7BWV+RaVhLdvNEjTyjfaNEppYxtDtWd8A/R+fqb7O1iADUox64hObiKRHyjjaHGYFGfq/QyAcOxa4is92gP+Fi6LSXb7boEtR8XSBz7iT2RrGNIwtqhlSykhQZkB+HGNdC3yCHx/Ld8BnWEk1IhA9FBlc8Nh0ZGWOJJvfBO0z+WCKfZDOQVC8o73xGEsZWNUXCps6J7l++k1tyAdUtKWoFGf9zWuWCpXUYUVlnanuJJGSqMjToRnxTCF2iv0N3w4JN2Em4MJd6vdEacogspwTGSbq1U46oq3EOM396CgG2CO9KA5Z81alTV5NCa/Cg== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=nvidia.com; From: Nathan Chen To: qemu-devel@nongnu.org, qemu-arm@nongnu.org Cc: Eric Auger , Peter Maydell , Shannon Zhao , "Michael S . Tsirkin" , Igor Mammedov , Ani Sinha , 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 v3 5/8] hw/arm/smmuv3-accel: Change SSIDSIZE property to SsidSizeMode Date: Tue, 17 Mar 2026 11:37:52 -0700 Message-ID: <20260317183755.3721625-6-nathanc@nvidia.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20260317183755.3721625-1-nathanc@nvidia.com> References: <20260317183755.3721625-1-nathanc@nvidia.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: BYAPR03CA0008.namprd03.prod.outlook.com (2603:10b6:a02:a8::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_|SN7PR12MB7452:EE_ X-MS-Office365-Filtering-Correlation-Id: a80ce673-883f-424c-7ee0-08de8454653a X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; ARA:13230040|366016|1800799024|376014|7416014|18002099003|56012099003|22082099003; X-Microsoft-Antispam-Message-Info: OalyPKU5fBnkyWlYQQ3d/R5ZuxUtwuHilZZc27Y2ZSVj6ZcKvTEilkO2n322VVIhZxnAT1FpAp0RqC4Ra1MLAIyyUembnBKWQZHnZ3Po9UTzgvOfvh000YRb7PjGvbj3T4YXwPfbgOpCE2PSWgpkgXtQMdkCQQwmryf1jq901f40OfBFGJl1pTQsTbxYbGicZ8qGo0lQN1xLGXFD2wARYfPRA3EhCWLbJw/J9oozxkzF0jAdVmnBlZM3Zm5RP3wO2TtMNCxbe686cwBYwmwlIg9Ug5eT7wvl8FdB/nDowZFeAyO27uSb+wUsxx93jCgM+ubb7/kGx1alubzr3eMi2ZCKM5PyhifZF28ROa/5GO2LHJRGEpj//XNtjihRSU7O99QS5CNCDewTusHlKc127ucJTqfcCEsltej8NpxaORHLkSl+CY1vtby5G4cJGwcycDyYfR3aURDPW3oqukhSFrAz27fLKH1kT11eqqlAs9293MZI2hNtRmCj/81IpiZgXioyEyOmXYOf6DQg6/mpcAXBHPjzY8/bjPbQEzIBQK8TmQaDDLpIO8ctLZPWuXEX7o4Sxs80+aeDcenY/co7JCwB6sZc/nVSq/PXFhhDJNT8aPnghi9rzfrkGaPfoKKU23oIvcBl4QMYFrP8LjdBtFMSeQ3HXaqvQy6RBRIQg6q8LMEb6RMUJYFvi10u1pQe5wcJL9Yl19cEnnuJJ/NUVLeB2s9q0jL0DcU0r0oPSG0= 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)(366016)(1800799024)(376014)(7416014)(18002099003)(56012099003)(22082099003); DIR:OUT; SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?59MkELvz7jYxSdEsamEFvCAuxpnBVm8cHYVlvX8TbF+Lr6kSjXU84/q80E4t?= =?us-ascii?Q?XI9c0Cu3F5L+sFlh+i6ayzr4YynECGjIEu5OH0qxtkISP2hjVJ6ux0LcDM89?= =?us-ascii?Q?PddpVzr/VEvMz5aeiQhTghendrNKxXu2iM9huiz1XVRVNz9PGSfPOB5D3FDP?= =?us-ascii?Q?aOleTj3UStELxk8UkJbV9/hNAnyFrkDujJQsmj89bGzT+bXAjfa+UaL1zozw?= =?us-ascii?Q?0P1kHyO+O0a9v1tkxfisan8DIqZyhugKdWaXfz6Z00SpSSBj6FiGy28RU3zv?= =?us-ascii?Q?CCVEW1VLYF90FxiwDHwANeqhz/RB0CdUFeVz/eDAoKJBVt9Pm96I+t32ntvP?= =?us-ascii?Q?VBI5L9N27awpBVi8snLVfqqxJLTMHOZER93qrUfVY5GF1PIAGgspiOVaOrS2?= =?us-ascii?Q?aYxIBqYpHdZm0XeCre6i8Ej8FmKiKIcOERjxxuy3mq/lD/kR1BYNPMk/9diB?= =?us-ascii?Q?FWZsaY29rWenkc6QnbYjJaSxPCpjJ1u+6OnmF/v94AUiPZKZjSYaXmKtc7Ui?= =?us-ascii?Q?MQeqRC1AOxSZuGgaaQH/76T7HxSN+bHbuoFKcqU5DUA1sY7OwhohaZlpTAv6?= =?us-ascii?Q?Bd/DCapBJ+DJwCUjzWWIjJ/xiusH1SZ0Zl7z0UX/iFQrAFUL/JOi67vI9vxN?= =?us-ascii?Q?zdBH39SDUBXKEe0zUCHGmAlD1Huv1IhBDf13x4Cq79oT1oMAuRgYvhgwkrFA?= =?us-ascii?Q?JjouDzk19deNiPVgizw7sWTPQD60Lvyq52p3sCzQhvTO6pS86BZDmEkmuUBd?= =?us-ascii?Q?1RBfrK4vUTxmBLsW40qaEOxUPTmOACMLgblEiTcNqt6dAUXmY2Mb2LEA5LTP?= =?us-ascii?Q?LCRXr7AsNRefSmeVqM+pv2DbcVW9g+UqB9SNv4IkQ+ar6R8iBEu6IqaaDmVP?= =?us-ascii?Q?HvhpzsWsFtnS8xJ25y4wZAiJY57EDOuoUKivDOVvBqlGfLxbp1trXSMdUj+y?= =?us-ascii?Q?/ZRr4SaH0NcfGgvhkmRFgGAoHkiyWRBZvY8QoCdC4uBbLFH72MN+x4whS50s?= =?us-ascii?Q?8/PfQOHfjYdRgzr1c7kRfgAfxQN1W8oTLy6yTAGpwL/TIQd+f1lIwF7m2qmN?= =?us-ascii?Q?kjNZFufoHHXKnvH6IAiDL1F2sAeJ6E2J+cXwz7vOjsZW2LyDfJRLbb0D6owU?= =?us-ascii?Q?3veCr9XZlxImBecEe1rb8xJRKgbDPFMltsH8+2R4Pl+Lke5W9UwffIJuf3cN?= =?us-ascii?Q?DPfqAG3W7l3knRoGFS8v4JK0naRm6DaW+WNwp7gEWhAv4DOa/tNnBC7VhaQm?= =?us-ascii?Q?c2F413STudgZhpiFsCeH1KUYDJ4b3PRalVM6Tx5sE6FpHhNjIGbg5pZGuIEz?= =?us-ascii?Q?PaGUUl0SUKBqMGlpBoPAmOc13/gYfeYNJWPZKtb//XlQIfTPb2EDkm1vxZdz?= =?us-ascii?Q?2ELVBKs/GZfbdyXZaopBF3veQbSujECEdOS+w7zVFzjs0+rdYWgmQArlVfUM?= =?us-ascii?Q?NMlA8Ic+XwPA4ddZTbS7/2fug4XRrXgg40CXAtr4EjtIQ+rejYHsCKpGQqt/?= =?us-ascii?Q?WTTSEH4PgCCYBor84IwzPJvFXVwFrAS+MUJOSMZOHM7kfsIjah7JFNgiusRF?= =?us-ascii?Q?WfTDe+0URDL/Lq2AzTmVa8YMY8gAo89b/OHGW/Qwxu8hxb7aH9geQ7LingIU?= =?us-ascii?Q?KqANgas5KpXva2Y9FtRrUBuBLxiuyMCm9PV7+ckqEYrgS7IlGddyEquT6qMF?= =?us-ascii?Q?TFAelkw0R0MhZcw+/i0WWOlpzXbH85xoaAoUt9KU/oOTu97muSWe3MCfOSJ2?= =?us-ascii?Q?JsYZI6sHSw=3D=3D?= X-OriginatorOrg: Nvidia.com X-MS-Exchange-CrossTenant-Network-Message-Id: a80ce673-883f-424c-7ee0-08de8454653a X-MS-Exchange-CrossTenant-AuthSource: DS2PR12MB9567.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 17 Mar 2026 18:38:34.4981 (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: Vg9neZ6oz8E9jOthQR76p/i0LLyhJtwoHdVxNlJt4+p8fPoAUXuPxqeMEyVe5HBSICYhF/1Qu/H3XFipp5Lpog== X-MS-Exchange-Transport-CrossTenantHeadersStamped: SN7PR12MB7452 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:c007::2; envelope-from=nathanc@nvidia.com; helo=MW6PR02CU001.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, 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: 1773772812344158500 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. Fixes: b8c6f8a69d27 ("hw/arm/smmuv3-accel: Make SubstreamID support configu= rable") Signed-off-by: Nathan Chen Tested-by: Eric Auger --- hw/arm/smmuv3-accel.c | 23 +++++++++++++++++++++-- hw/arm/smmuv3.c | 18 ++++++++++-------- include/hw/arm/smmuv3.h | 3 ++- 3 files changed, 33 insertions(+), 11 deletions(-) diff --git a/hw/arm/smmuv3-accel.c b/hw/arm/smmuv3-accel.c index ddd927fa80..c90fa9f5bb 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 40d6aca83e..e7fec7a69e 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"); @@ -1984,7 +1985,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; } @@ -2008,13 +2009,13 @@ static bool smmu_validate_property(SMMUv3State *s, = Error **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"); + if (s->ssidsize =3D=3D SSID_SIZE_MODE_AUTO) { + error_setg(errp, "ssidsize cannot be set to auto"); 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); + + 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; } =20 @@ -2145,7 +2146,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) 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 Mon Apr 6 21:34:17 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=1773772854; cv=pass; d=zohomail.com; s=zohoarc; b=IGxsilJPwJkvEjc+WQ/g3qS5SjShCOEC4HgqK1E9lKSANxHlXAcnnAggbRpxCo7F+3B2mHKJdYnjvzBBRKepbhLQC1Z/A7hhdUPVp+meGtVLIHEgOD1EYeHmhQK1J3ntIfOF05AYofTWbHeKBy7KOkiT4bwOU1jHcIH/xyvdswQ= ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1773772854; 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=QtRhmAefhqW4InoubQRgR1tkUAgghoY58XCJCYSvIBg=; b=R2+Zc9how/OBSJkaomI/toPjKQw2SuCB02RG7wJBKwV4wh9m3kTC37cLOQHH3HFy0L9+YVyq36gHpQSMCXQRTnubGnSczfYoeHyX5qXQU6p44i1hxtCV7tevSWYuOJaBO9o7WGswTrqNS8Vp7hl6tADmTjH4jUajacRj7YFFHA0= 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 1773772854821672.8802220545618; Tue, 17 Mar 2026 11:40:54 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1w2ZJo-00047r-5l; Tue, 17 Mar 2026 14:39:04 -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 1w2ZJm-00046I-B3; Tue, 17 Mar 2026 14:39:02 -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 1w2ZJk-0002wk-O5; Tue, 17 Mar 2026 14:39:02 -0400 Received: from DS2PR12MB9567.namprd12.prod.outlook.com (2603:10b6:8:27c::8) by SN7PR12MB7452.namprd12.prod.outlook.com (2603:10b6:806:299::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9723.16; Tue, 17 Mar 2026 18:38:36 +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.9723.018; Tue, 17 Mar 2026 18:38:36 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=h/B6bGkDboC/hg6owHJslSVluNcDz+7b/3LA6diffGsxLe1yt7yuS6UHUX8RZDl9CEKmAKhWDFsY21nECDq7rquH7Q05HVj1MLFy7DgVqLPS9KO8+k/sqFXIcFl2KzNWZkQwx0d70FISKbfxMpaAoQVDHvvf9MC+nxcRpbvGefLEu/oBVQxDGldrJRmHJurKGZxWuxFDk1SG6TEsqAuIoS6kfXG4nwORCF3P+6B9DGPS5dnTPTSVySA9Uqd1g9i+rC/ZiNB/nxiAyTyqCWuPW+sP8ncrJZQmUZpjQkZ/XtPlzHpAE12AChxDO52x39Qi9Lxtngk0ai3tXuSns5RGrA== 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=QtRhmAefhqW4InoubQRgR1tkUAgghoY58XCJCYSvIBg=; b=PrUO1d6ipqV2LrETL2Kpv7XunEvqTQhAVAJTnrxdoTR6RiOzfLzqJMFE5V8iLjYBtAwqAl80oD+xL0vwQzrlqb67BuSyfcw8GP5Y532JifPdqt+apSXfyr816Ijt1jVosTIymeSD/BjxnWiaKQ37pcYxbg7mCf51TinZpQc3LAkjXqGiE6OdSMEEGOQSgUvWu+6CRRsDn2NrPtu5mDn516kSdKmOW9oaCyq32xg2voEla/3RUD/jF1NK1hvWO+Ifw71G9xwsUnBWeZllhH8XtqD6ZkonY6palTDwhu51eFenQrXLVdL2RT/vk/V4MHLlr1EBqLXihvyLcuJSwsLKCQ== 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=QtRhmAefhqW4InoubQRgR1tkUAgghoY58XCJCYSvIBg=; b=iFvZ3JdsacB8EHDeh/WZTrrbPkLy6UxhRMFWXl0dyZarvdl4dd1sIsAsE7O7rnhI+kubqVSYW4oyCXMMqGlJV78HEht8hqhGQPVtoo0divqg0gMSjakokgx6T4EVmgf7MUvObvaTD6pc7XPJQ+tJFIl8VCWd7gsEmXrCGVFyfig/Dzk1UCXv0OoEs1CZQs3qjCxdxA0A4xNM3i7n/uolPM3+IdSN2uA1tTZAkhnlh/b4EUWhgRNuS5qzg3aFe4KKVQ0LS71pMlj2CjeaTZzF+l2t4IZ11sK5QnhwlvaYazds/bOKkS77F3D5kPDJf+uJD0TjX2g7VTCXHuG3SCcoYw== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=nvidia.com; From: Nathan Chen To: qemu-devel@nongnu.org, qemu-arm@nongnu.org Cc: Eric Auger , Peter Maydell , Shannon Zhao , "Michael S . Tsirkin" , Igor Mammedov , Ani Sinha , 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 v3 6/8] qdev: Add an OasMode property Date: Tue, 17 Mar 2026 11:37:53 -0700 Message-ID: <20260317183755.3721625-7-nathanc@nvidia.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20260317183755.3721625-1-nathanc@nvidia.com> References: <20260317183755.3721625-1-nathanc@nvidia.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: BYAPR03CA0014.namprd03.prod.outlook.com (2603:10b6:a02:a8::27) To DS2PR12MB9567.namprd12.prod.outlook.com (2603:10b6:8:27c::8) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: DS2PR12MB9567:EE_|SN7PR12MB7452:EE_ X-MS-Office365-Filtering-Correlation-Id: 0232a769-3728-4fe1-2732-08de84546658 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; ARA:13230040|366016|1800799024|376014|7416014|18002099003|56012099003|22082099003; X-Microsoft-Antispam-Message-Info: i9gHDS7rDD9mYh7oPsxnXdBocv3A35fSGx3X6AEqfopl3kP+cDm2p1O9X/s8PW3vBxHmrxgLLplYpm4O/nyJ/x4pwfnIkLTAaSpJR8YK3cAeCXP3+qyiUxWJ6C4j1U8VlB7h81JuodhezwwP19+nS9ISn6caXIwloTBgrbEy5nPUHQOutrM9jRESMlAmdlTq5dv8y4w0rGWz4A3e+/4wLVkytiSkLw5GorakecYhdR73hC7+k4jjfX7vxd3XRoouaEnknSq8qE5LXAvsPP51fnO5NvB0XwXUkoTy14HPeEtzJROoGJsiQxwc2cM2ISoMoqU1xsVpZAoDGAjlAoInyzgltcDaITgE1vCUtpxBMLE37s0UFtEndq1v3KenvyflE8cDf3JOwHX6d2TdU571q7P4zdK74SE3rWOaDhTazeSmd05ZET6h5Vt2Kti0wJPOCQqcHGLy90oBEY1UtWxKa6hf0yYiZclHrZ3YnZA1G3V2A5OGO2B3ww4Xfc+s3e+n9TB5bzpzoNxSf89iI8t1uBucaHz7I99uFBwVesMpnWePORdUMsaj7zzrKmPOFrw11CEkYE8T90JIdee0tlFQPtUUPo7jAAbZjabaM6dDYStVLFET0iRWcbB35vazobAIp7ctV6uZX3Hr50jHdBTpk2dl3xPnr73UJ722wmpeqpT51pvc6fZFJhbgjw1Vgdnpy2HIQqIpd4Sw0NX3Yoo0JtHLJO/0H8N8/mL/tnB5BhE= 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)(366016)(1800799024)(376014)(7416014)(18002099003)(56012099003)(22082099003); DIR:OUT; SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?uALINdwJPF735+elq3FyEUv/v39TweWSMYtk6P9jie+7D66ueQRymLb13m0a?= =?us-ascii?Q?OUyr0k5119atDt76ZuZt4CphrPT5AXzWC7kfd5dX2H2wWLXTu60nkhiywMTb?= =?us-ascii?Q?fISlbcM7+h8awsI+5CdvJsqdslL9bDTIGJfD5YkOzcud00jUl5V31J22aLZw?= =?us-ascii?Q?bNv/DdWUNrEH4joFUenmcIlb5R5MM27mYbyff4C12EOeXtUkuuMAY4KcyMHE?= =?us-ascii?Q?nXMbSqEZXtaHme+2UqOBiaQk4qxm1nNB1t8XTBF3JtDvgAE226hSkCcrUWRk?= =?us-ascii?Q?V51hkzwq65WjU8u3HMipvSya3/B47SfWcBzRFrG36/UimKknfvKGDb8y7ee6?= =?us-ascii?Q?wCNmU3+NaOTW+EU18VKDkqwtFjmSQzD3nfNAhfC2N0YCTyFqDr5yoIhfluKN?= =?us-ascii?Q?AdgQOlvRTyXzFTN8XDCHvYs0iaL0G4xmdMkt2nHKoEdXoMaVUIneOXU4uB+n?= =?us-ascii?Q?5xZIUFtHad2Mh7hLqaN2PQNa8mES8DiiCV3wOaN62SVfuCS8LRNOjLj2gUSJ?= =?us-ascii?Q?+I2DOzOr0kOBvBU8yDyt9E1Cmq2MxGcDldqRLbItmmQ9+lZEQGPxkWGGLyZZ?= =?us-ascii?Q?LKR9Gf8s/Sbw0NU6F+p7ydcCEOwzlx45R8kWFOUbcMHzJZjVahICsujXVjzd?= =?us-ascii?Q?IYkV1RhyyF/j5gnQIifYYinoa5EionECqR3mPxtDfwmGiPeb0dIn8UkAaKbK?= =?us-ascii?Q?SVPQc1RDRtIu/ue0XzjTxWWpIk7PKAYZE7MHkqK5utV0rrhHoOTOx0LZlfv8?= =?us-ascii?Q?qX0qrEPeURjPkEnBp0xoUbYEx4putW1QQ9GbMMtv1cjYlLnBL9/RhizfPgDH?= =?us-ascii?Q?Yri/1K7FOuGjfV9GkBB2c/2YmcereruZ9PJ8c1dhXINld+EH6cZgXzDuSyrj?= =?us-ascii?Q?McBUlyrUdFpZ3HY5Yst3Ra38+rNR+Nic9OJSo5zYcbP+0+pqVBpnRJPU6VxY?= =?us-ascii?Q?1064Iny7cgzpzjPHCexOKWfr+NyhLHnZ8HktKsuArMs1UMeGa6fhHhWOdrJA?= =?us-ascii?Q?Z9BGGmqnOxYWYXp35etm4lewHZuRfobhPc7bTfpCKSCJoCk/WXTeWjP8SOT3?= =?us-ascii?Q?3dcU+lAcqtzzj64HfvBgvAml9DOIX00Zg2DGUf6Gna1eUJz0xVbRtk4h11Qj?= =?us-ascii?Q?6apaz+3bH/sCHO0UV1uY9Q/kpEXNS8+CkY1psCo1574/Twb9W1jULAN9kF0s?= =?us-ascii?Q?tYFX8iudoH1FkW11VRBO6TAPI4VtqQDi6Z8GGmNPU5SILQ9oyRhx8mbTpG5J?= =?us-ascii?Q?LXxpsQaDRkqLVOtvnjL+h2koiiXinNcE06IIj19HBRAUceTJOVZaXXQDeKxh?= =?us-ascii?Q?MgjVdSHDcZYlVUV9Vd9r4Z+VDyebvHKYruiTlX0jWbQfi8DFitFWulOJRAFt?= =?us-ascii?Q?MnEShdAZ4zA3WkLYDVft8qjUU6HWK0uIbliO7cAunq0PjrUJxt38VXE4Zhg5?= =?us-ascii?Q?Mi+GOwR8zNeOfZ3JiKeZ9Qyd98+I1UfqUR9TPSz54Jp4JPZjkEOO4uzstHmg?= =?us-ascii?Q?I0r/PaBYbXOsnqPpFZI9qydRqN/NRo//LiWeZq8bOX8Ye1/5SO5UnZPLAnzD?= =?us-ascii?Q?IBVHbJ8sZDe74O2doLk22wq9zLCNVcLu5Iy4SG27VgTb0g2TrHw7dT5oLGiW?= =?us-ascii?Q?7BKO3y77ZPXgf61Y4EjmrFZDF1rs0hN3pyeWGW/K0mg2itfflY8+YcdT7bIR?= =?us-ascii?Q?Ad7etKBvZQUWxoY9Bi0WPYfVn+MJ5C0E3OK4akeNkopaRBGSjSINMz9xakLR?= =?us-ascii?Q?/bJs4nNRpw=3D=3D?= X-OriginatorOrg: Nvidia.com X-MS-Exchange-CrossTenant-Network-Message-Id: 0232a769-3728-4fe1-2732-08de84546658 X-MS-Exchange-CrossTenant-AuthSource: DS2PR12MB9567.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 17 Mar 2026 18:38:36.3647 (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: dk0NwgohltXjxcD8hPNQisVVo1qeQ59Y1d7aUf4a1mrA71F7gOovJ6+9t3NO33noMNUa7JLfvK/PYCYOmfYAtg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: SN7PR12MB7452 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: 1773772856336158500 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 Signed-off-by: Nathan Chen Tested-by: Eric Auger --- 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 76ea0a09fa..5dbb4add91 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 ssid_size_mode_auto() + +## +# @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 Mon Apr 6 21:34:17 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=1773772810; cv=pass; d=zohomail.com; s=zohoarc; b=hBta6WgNYoEpYtxuwzfxt0NZeyxe5E6I9l1Twk4rCUZaBabSXkYAtzEf6lkRfsvHGfplbSr/7d9qeeULbTKlP0Mvzj+owNRUKypk97qH35gl52gJi68H30tNLSuNSHfKSIoLmk0owxzduH8rTGLpYHqx2+0QGdWYgDDixNqOFeo= ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1773772810; 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=ruAHb2+xJxG3IOlRy+8UgPHu4B8jvGytKiHWNzmc0vU=; b=DfVRcayhODgbWdq0z8Mf8+NiwBB/73aObYgaXC5OBPQRdgdACRovrnr7TT4pmBclUMAPJuPuSnE/axBTagJYJOewSBInpHYMA7k1Ei6Cc0pQhu9//9Lfg70glaE+F9iSBBF4Yg88M1+aGsew7Tth18dr/23OXi456yVYkmSTlxU= 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 1773772810694821.7592614110523; Tue, 17 Mar 2026 11:40:10 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1w2ZJi-000440-Iz; Tue, 17 Mar 2026 14:38:58 -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 1w2ZJf-00042O-Uv; Tue, 17 Mar 2026 14:38:55 -0400 Received: from mail-westus2azlp170120002.outbound.protection.outlook.com ([2a01:111:f403:c007::2] helo=MW6PR02CU001.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 1w2ZJb-0002xI-3p; Tue, 17 Mar 2026 14:38:55 -0400 Received: from DS2PR12MB9567.namprd12.prod.outlook.com (2603:10b6:8:27c::8) by SA5PPF06C91DA0C.namprd12.prod.outlook.com (2603:10b6:80f:fc04::8c4) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9723.6; Tue, 17 Mar 2026 18:38:38 +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.9723.018; Tue, 17 Mar 2026 18:38:38 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=H5f1wnZ5y07QlhzFOWhqxq7qyA8VwvpDWtMAdZb9AlUPkzSOTbQrP4AqDIuXlRhk38S7r4RI8woJZzm9zChn75U+MQTCz918TcLP4DqsjptMWT19oXEDD3zb+kA2wzRHFjoEY0hGNE3VCQKFQ2hEcXDBHurJWydxL7bAugkg/Cn1gnu/ynFShIcYxeGbQbvBYjFPdEJD/SWGrgMg5ugRBs8OeynQYtgeWh4dUod4KuwL5zU4Cn5qea9a1FsOH8Qg5ZlYx9/rnncOoKVv7af5182GXNn9SQmJPuEb0yfAIsEInLDx0jjU9kKGiv44N86v9NevZlZXJaVNdV56lDb6ug== 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=ruAHb2+xJxG3IOlRy+8UgPHu4B8jvGytKiHWNzmc0vU=; b=Bxo1P7+ab9nFzyuMZkwlwLOzJf1693hZLL4VQAB8hYapgKb1N8iNc060Pszj0d+EbunacYRivEQda4/qml2O7DUY/X7M2/VUmto/g22SNsk42AcIveMjuJb0rvXkfL1jOU0r73aVU969UcWtT8V42Pb7tiKkvDLQwmM+sXtw0xu5T06ZqJpIEA6WcoCJuLwKOJSSGca9hHzUkq/b4SSgHinI+I007nF+F2iACtahA+UhR6dZEORPj87zpccblyE/2GsZn7fzKqULgtaPZmjAAVYxTWAS57RiOP0ni3oQGJekCFPbhyZf7xeevsZQ0NZMthamz9x3Etqem/lbzBxMqQ== 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=ruAHb2+xJxG3IOlRy+8UgPHu4B8jvGytKiHWNzmc0vU=; b=hX7FOBaGwbz9rfSLc2QWJY2e8f7w1mTM9QOXhTT88eXkhAbMod1GHwJsZFhVdqrQZb5j+YSWXC1f2ARvz5xJPqhJnaPKcCTiaZEThndyRmJnVARGr8q4maV94GsHeeKo1NIWbjE2iMZfldExBCXno127bCnitHHI7vcjjJ+RIHcEsZ+wwyyVbbAAt7b/CdSSScBfnSPbl9dR7+tM40SCHo3eLztph7M60EZlNtgJBM/GBtgwsKgki23zhNiTTk+qaqqzqsoZNAC2ZgRhsKBZScC+tFxbP4XvtLBdCYhM87AZRZtm6n4YitSIjFl24p9I0CF55vscwmdGlZnkT4t+Aw== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=nvidia.com; From: Nathan Chen To: qemu-devel@nongnu.org, qemu-arm@nongnu.org Cc: Eric Auger , Peter Maydell , Shannon Zhao , "Michael S . Tsirkin" , Igor Mammedov , Ani Sinha , 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 v3 7/8] hw/arm/smmuv3-accel: Change OAS property to OasMode Date: Tue, 17 Mar 2026 11:37:54 -0700 Message-ID: <20260317183755.3721625-8-nathanc@nvidia.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20260317183755.3721625-1-nathanc@nvidia.com> References: <20260317183755.3721625-1-nathanc@nvidia.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: BYAPR11CA0092.namprd11.prod.outlook.com (2603:10b6:a03:f4::33) To DS2PR12MB9567.namprd12.prod.outlook.com (2603:10b6:8:27c::8) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: DS2PR12MB9567:EE_|SA5PPF06C91DA0C:EE_ X-MS-Office365-Filtering-Correlation-Id: 7ea2a79b-4dd1-4522-22c8-08de8454676b X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; ARA:13230040|7416014|376014|1800799024|366016|56012099003|22082099003|18002099003; X-Microsoft-Antispam-Message-Info: RWksCOMYJqS/3GruVwmLgIsCRqJNqlYNSv5DEhwwIP9H5eSiEpmrxQWjIfNnswVu1iVMVnFHSry/zeXlyUW8DLHv+jkuxH0SqmE5n/8YMsFAofh6c269wJtrG5aGV9RA1riYSTayX/fnzCCoMr96jL1YXsxq6vl9zg5xpXy2JBFCLoQlmZLCDFQrdAZ8cY/Zp9Qe+u0bZZb9WT6lUXbraDE2S6TuGv/B59t2PjOlAk6ItsL+4mG2530J41PQYeSupb6YAA/kTDtL2FkAk0ZfHMz5w3si4xY/CY5NEMkUCa2Y09FJy2Pd/h+qSb+TqaaYff7Kp9rfm+YeRVlmsBjCCnTnNfLl0gLh4v0P4uV/8fCPD7r6SmEX/qnoiU0lV4P2JZAZfptkaSif9il412j1hA1+QxdPyWUykWO/KgSo8u7wjcsheyfPqAVwtWCY9Y3HfR821GcdGZLcUvCqaWmlNtqipeRlOBhsbrcuPYAxTBEf12EaYirZ4Ww8Fapu/9Pg1FcG8rKhQ0kaj215mtZP1BLqFlo+qp42G7V3EH70WF6OypyhoIR6PDca/Caulu1cva09f/R21UadlbnYhf0M4Rk176dInda3Y8aqhQlBDPyz94j82xvDlYiL8k7I7lCmiVJFtj565jsx5cYJNs0vP4CvoApe85xqKVpaSBd4WI33IzpmQIPE0QkkfClxYZw6z5MnHw0m3gCF3QUGZ/vi0L3RFiuuQMlbJZx6JYwroW0= 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)(376014)(1800799024)(366016)(56012099003)(22082099003)(18002099003); DIR:OUT; SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?m69VzWHscmf8pnnJI1HqGKRDFzCq3uch8iQ733DTPgdQeQdD2mpbRReJgT0T?= =?us-ascii?Q?B5ZWuywX1/l+MryfF53IYWWsAPIfy4TLbvTZ7IMq+rNrd8goMcJ0FdSB++30?= =?us-ascii?Q?Qr2Z3npx3n4vTJnJmT8tdG9ZfdxRMc6vj67rlJC2SQfGoc6QONaYZVdw9vCr?= =?us-ascii?Q?4BQAuRl4bOBpMYEJoQMbxbBM2fynZzIFA4ndj69F2ffnBy0+uxex/pRFB2y+?= =?us-ascii?Q?zjF6/rSoGxzIsbQOgOGxt+cRHDH6fk/PL6Ywa79q5o4yfx0gv7RI/OnoDgTK?= =?us-ascii?Q?13p7y+ClVcqHAfDAsppqa+PgnUFdN4DxhZxB4JxBxleOkI+XByeOTrGl9Er8?= =?us-ascii?Q?PGdczw17Py6IEBNHAAtGIT+8wKSdy4WYRgJ55jVsma3rGqmmUiHNS20EtnaC?= =?us-ascii?Q?HDBsMSPIjyCfcK4JtXqknkCEW7i69XPp1Df9e6CEUD/ILUQFgJAtbmtEnV+9?= =?us-ascii?Q?pGSox1kAx/Ng8KrSMosNw7Up1zitgVpceY3m1nGsqjIeUu41PZrTXQKusACa?= =?us-ascii?Q?R5LKcvBG2OvkEQgk5oU4lW2xcop/TIYHrYmqdf5lTFAvWFHZoVHRytTIoGA7?= =?us-ascii?Q?5DxFgRaiSY3/1E0W0rCuJa5+wV3wuAm7iAwhJnscH55d7EmaWmsTy8D5k6A+?= =?us-ascii?Q?Dh/iE9WPXurP8Z+fsFny48Hl6eYV4rHj4mt0GPrabS0EK9BnIdUeo7tuHo2H?= =?us-ascii?Q?lWMjkum1OBtnx1b9JkNWCWAXx25KU3SBdpiEy39i5/p2/khQbOXGIfNkW4o8?= =?us-ascii?Q?lZGzRcSSp18xOWSDsHfxxZ1h49sC0qv6ONN941XMgDjpPBfFd0uBeKITQZhF?= =?us-ascii?Q?cdYt82Z8TQGRFazTsClRWmb98uCIcf/q7FnlK/4YBaJHCKfnhB19n5y/6CKg?= =?us-ascii?Q?o4WGzaP6mnY5O4hk4VsGQnKxn2Y8woNsSfaae7vNYwepyQMREO/c3fricuEC?= =?us-ascii?Q?uxR+4kluBrT3FJ+PU5OXN/VfYMmtYZqlN3TA859g3NGxWyycXxMchpH9WY1J?= =?us-ascii?Q?Tm52MXNEo4I7ODhB+Xd3bcOgfK32gXg/k4/Gq1Ud7v0IMjNIUJHAGQciU9fI?= =?us-ascii?Q?xYW9en+kh5AV41P6mA0EKjo+kwYQiJp+P/hEowo3AbrE/5KlL5BP+SQAA5IO?= =?us-ascii?Q?J85wU3ZbR/1lsqAvieiKD3aftO7KgiQj9OfPOR/W2dJAMG9j3H9VIL/mcJLz?= =?us-ascii?Q?7CdJErhMcvyGY8YxlgTHxAVs41jPAPvHrz4XkkNJe7ty9bcZely3OuKVhPh5?= =?us-ascii?Q?DaWDKMhusUT8hCFbFsRCM29dVf/G5GXtbmc0dedVdY7ma9bsehPGjGBZZXWR?= =?us-ascii?Q?tcrosuKGkH7WXBLNJ7NFOmy7H78JrvOmvx3LAZTt2uDLPl8rBF5gyxDBwM/R?= =?us-ascii?Q?c+VFNP6BtpO/SaVhcgSPLpl6r8P0LHPj+1v5Mawl5+cqjTnKYolt5CAW+j+g?= =?us-ascii?Q?m9wqa1LcFxjXMft/H9Ea8le3rLzAwO48WUk50YTVSc/kusRi673UaLShXXnr?= =?us-ascii?Q?HbScWm68NS1sxg5jV5Q7WEPNQB/pnWDmMuJBif+JFLCL3oFgRlpfRyhH8lMx?= =?us-ascii?Q?dkF63yQvRUpUTHKw6UrrluYxnabshtvaiWYmMph01gtsDoqm3jrOyrWuH9sg?= =?us-ascii?Q?42oCYq/zbIHVuMud8Ng+YHRpjRdlJ7tC86FJ2DPBNsoD/iuGbqGQd8CAylvW?= =?us-ascii?Q?2Wx8MKHOkqGUwBBGrRXshxX/1h07/PqeRR/e8d3RsD4/MmxfeREsz2sDEpCW?= =?us-ascii?Q?XmoqPGAxqA=3D=3D?= X-OriginatorOrg: Nvidia.com X-MS-Exchange-CrossTenant-Network-Message-Id: 7ea2a79b-4dd1-4522-22c8-08de8454676b X-MS-Exchange-CrossTenant-AuthSource: DS2PR12MB9567.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 17 Mar 2026 18:38:38.1846 (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: LLHI7+5s+oP9jR3P+TT2xefoboqGy0hm4WS/8YA3t0lStVS3kvoH9yPYTvfDHs18mO1culAoeYQsnJe+ZugUKw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: SA5PPF06C91DA0C 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:c007::2; envelope-from=nathanc@nvidia.com; helo=MW6PR02CU001.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, 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: 1773772813150154100 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. Fixes: a015ac990fd3 ("hw/arm/smmuv3-accel: Add property to specify OAS bits= ") Signed-off-by: Nathan Chen Tested-by: Eric Auger --- hw/arm/smmuv3-accel.c | 2 +- hw/arm/smmuv3.c | 6 +++--- include/hw/arm/smmuv3.h | 2 +- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/hw/arm/smmuv3-accel.c b/hw/arm/smmuv3-accel.c index c90fa9f5bb..08a4e2a1c8 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 e7fec7a69e..5b85247606 100644 --- a/hw/arm/smmuv3.c +++ b/hw/arm/smmuv3.c @@ -1981,7 +1981,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; } @@ -2014,7 +2014,7 @@ static bool smmu_validate_property(SMMUv3State *s, Er= ror **errp) return false; } =20 - if (s->oas !=3D SMMU_OAS_44BIT && s->oas !=3D SMMU_OAS_48BIT) { + if (s->oas !=3D OAS_MODE_44 && s->oas !=3D OAS_MODE_48) { error_setg(errp, "OAS can only be set to 44 or 48 bits"); return false; } @@ -2145,7 +2145,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), }; 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 Mon Apr 6 21:34:17 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=1773772781; cv=pass; d=zohomail.com; s=zohoarc; b=el7bxXwenZgB62wfTYBAidv73CzzpubnZht8LSH3/cxXMURruGj2zFWMKQLYvaehXvqJZr/xa1hM6ZWAu/W/wLnmzNL3OOi+o0G3SChvBcYI7c2ZenZ9kPDCIzsaUtLwLe2OS63GNBX+uKq7YFAdgoYP1zAqz8AiL88ji9DCkk4= ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1773772781; 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=uG+2H53YN9jdd3s7fipu4DxkNVL/TwFnA7FwcbyOpeM=; b=S57Y8ZsLZBRZ2cODw49FOUMkxaQs05r8pjjY0pw4iltbK1NiJnds3xWPl93jYMXWOZYMKeRTMgs+esUdycYo1BW5lgJ/QFQiL/ikyhIQKpp7e6BO9/Cbh2Aijj7XNmf/ApR9yAbYPKWq6WKDzWa+PBeluVRLEGmAZmhQcLiwbw8= 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 1773772781530347.1775122240575; Tue, 17 Mar 2026 11:39:41 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1w2ZJm-00046X-Sz; Tue, 17 Mar 2026 14:39:02 -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 1w2ZJk-00045J-6V; Tue, 17 Mar 2026 14:39:00 -0400 Received: from mail-westus2azlp170120002.outbound.protection.outlook.com ([2a01:111:f403:c007::2] helo=MW6PR02CU001.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 1w2ZJg-0002xI-Kx; Tue, 17 Mar 2026 14:38:59 -0400 Received: from DS2PR12MB9567.namprd12.prod.outlook.com (2603:10b6:8:27c::8) by SA5PPF06C91DA0C.namprd12.prod.outlook.com (2603:10b6:80f:fc04::8c4) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9723.6; Tue, 17 Mar 2026 18:38:40 +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.9723.018; Tue, 17 Mar 2026 18:38:40 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=jBly+on6IsWiVpJNjVPwxAwwVhSTwYp0W4Xf3jt90UszXi2MfCkq4HhbKx2e9Hsq9FpV1WPPDWsi4c73N2V+KZ2GbAIefybbs8Vaz4pshQFcr9vr4mWEPyqbOoMHt1DD9TtONKLlwUo3ccZqLeqQYzsrgq1WAyE7D8a2AMaDt0ucVSlqkV+VYp/4GHBfPIxpbmBzgGb/fXhm6NJcGSe5PDcDqe5FjLC0ZuSea7967PE+J4ImrvPvTNhrxjAlb4KljcT0XVaw5PbiSo39G7A3vRjs/gcRipHFt2QerLLKVrby++28Ic8pYa5/hE0uBuQOgHEms3Wbhkx9S7GmrpmOgA== 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=uG+2H53YN9jdd3s7fipu4DxkNVL/TwFnA7FwcbyOpeM=; b=DnFVgKI7Y1JDh4eVxyOIuMnMXuuFHOYS/NPt/N/gTOZjV38wMsrxEcjEjTvzmUZGPaNiO/6l9cuLZAtjIfAlFwS+GPDnRuCE1uoEtEOMOyLGlyeScPBwVtUKkQg7HRj+4GefG+h4fVmXs1XZvrlgmm/X6l1lJlMIkuL8O0360iilwPr7217omdr3wl1cqtTwvLuRQEi5F/UfwbWICqDsDCihlxIGYYTWBsEU6u+M8Iki73UdAN0FtSmd1BXnwqb/fFQSDv5CQgDhwGPcnJziTNIYq4wgwqxMUNv5/fxQjxsqBc0OhXHEPPYqw9y+SW0NTRLHB09Rc2Gt93Ds0Jh9rg== 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=uG+2H53YN9jdd3s7fipu4DxkNVL/TwFnA7FwcbyOpeM=; b=t6cQ1AY6NDP12NS4TzMfQYEVLy5fN3Gl08hDzciAgLh81RqE41icArc4jDKB457/ZymyuFi6MstGST7Dv1aYZj1PHLggGu8ToBema0LSsLIfwzj5om/rWxRGefZ46fHCN6YCmml5tKJSmr+qXXZkC+R2XmKK22iQgQXYQR0MdZyTK69YQ+apV44etWXboPZclLhMyetIhdVS9cyblNy/LPsdjFFeLrU/uVpA2E7p1hBWbYcHlGzx5sLv07cPtg9EBKqUHySbYMg23xwMszIaA1CFXTG5q0iySJpQw5IQA6POJ9ef4ct/IWQWAZZF2zgr64MA/pva8mlCaNGW+rXGfA== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=nvidia.com; From: Nathan Chen To: qemu-devel@nongnu.org, qemu-arm@nongnu.org Cc: Eric Auger , Peter Maydell , Shannon Zhao , "Michael S . Tsirkin" , Igor Mammedov , Ani Sinha , 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 v3 8/8] qemu-options.hx: Document arm-smmuv3 device's accel properties Date: Tue, 17 Mar 2026 11:37:55 -0700 Message-ID: <20260317183755.3721625-9-nathanc@nvidia.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20260317183755.3721625-1-nathanc@nvidia.com> References: <20260317183755.3721625-1-nathanc@nvidia.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: BYAPR07CA0043.namprd07.prod.outlook.com (2603:10b6:a03:60::20) To DS2PR12MB9567.namprd12.prod.outlook.com (2603:10b6:8:27c::8) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: DS2PR12MB9567:EE_|SA5PPF06C91DA0C:EE_ X-MS-Office365-Filtering-Correlation-Id: e44e07cd-6366-43e3-9640-08de845468b5 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; ARA:13230040|7416014|376014|1800799024|366016|56012099003|22082099003|18002099003; X-Microsoft-Antispam-Message-Info: zJ82v5zkHAucdEcFKtW6DLtMc4VWov3JPpMiVNsTrmMGkgvDFEq7YyRYtFaTHCCCo96NtDsNYMa4YVnsGkw90nsvtg3V1hr0HX236mB2UO5uA0epTjYqRwedGKvIXfrZSRdjWVprK5OINZkj5vSngLm8j68yNgDau+3/i3P1+K2XPXc3U/WYC97CzANtzW03eFPO9rbLsueIXhBoFJrz8TWEB0lZ/a2zxsHy6gCKY46UOZ4WOdKhXCW3yYJE68loz3QAST+YjlpgoE1oSgS3qzsM/AYK4jwppBeVdiMl9JiQ85H6s3kr6yileyNdwPCY7btB4zkiq0SXDymS49aVvarTUXWudPqgMoZtTN4c6nfqjkPGnAaRN2KhCO86k7zwTOVjZrfkK4KJWNsL6b4HtOWOemGbOT5o2xR3jFhIZk8kiKM/o3P/H/VIbpnD2R5NTWQCllUOtYtkVRlsw0Kk2yofjm9R3XmWC+VDm7tbCLYQJwTYMFepq7nEMYvem1CIgTGJl+1FjWKRisziIkeoDkZf55/sLRrGTK08kPkEzbc3l/moXPL2b4yHPW8RittMx1tPi5pajdBaMHIRSmnEIOOGvftm9gZw2BFMLFNfJWL/mYbDv9E1+1Dp92Evty4O6l6sek2Ev5EW5jr28I3gobIV4At1LLjaRM/y/eA4g7PDoa593EAdvayGgmkx8+E79btIkQaS/xzGpZqFtls7bIMqeKrXRcM1vqOs9cUErHY= 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)(376014)(1800799024)(366016)(56012099003)(22082099003)(18002099003); DIR:OUT; SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?mP0LPHfb/WhnruCu/HaUoEFAPsxHhR6NMYofyrJn55WV/OSvRM/nwdgZojeW?= =?us-ascii?Q?1HtVd+VQ7sqPV4P4xE1Pbog87fJgrCWGs9myNXkE7wMMsH1wqU8AUoy3+jeG?= =?us-ascii?Q?d5KiaHFZanwR67ZE3Acb3HJx25jrhG2hPSEG28rQEAwFDEUrVKSmIkSZyZkT?= =?us-ascii?Q?94+H7hEpbLF7H+ZnilqXbhzNS0ybEQgIIWUSGP5AA2LndtBXmgnKTRN5BXR7?= =?us-ascii?Q?uYvBRgMaMG5/0YWlV8Kd0glcaMz+L9K9dpH/9kF17uOh3lv5KS7TcOczI0Fg?= =?us-ascii?Q?voh9mkzWbWPApaLJnqbi06xEGmeQo33E+QW1TgznDm2Oeu5BNYyoufKGOg3j?= =?us-ascii?Q?z2IfP+PsP6d24TGHzMk640Hsl6ZaGUTjDimhvmHijeggD4hDpAuRvyO7Qlrt?= =?us-ascii?Q?+DI4JWvtVtSwJIbi5/QIjrAEOIdj9tbZKZA7WSS/ymR04KS2ulGUgkui4sMG?= =?us-ascii?Q?LvxPj8gUG8dUYqKSwf2Hr4G3Pb9P5gOYc3zNu0ODx7qYC7ackYIrxxN+Y3og?= =?us-ascii?Q?30IU8Ci2OGjePcJSQviD4uWfbZqlWw37WtVxMtdZkkF3pbd76/L9H0jzmWN9?= =?us-ascii?Q?c4sj/ef0wAviQ/fLquX1cYlQRrDlJJdpXqjEwUIWjAVrICc+CHk+nWmCO33H?= =?us-ascii?Q?ZxElW5il5kIdH1e3M5+c2puMIhfIFS2FgS0O/h+YHY/qATa+9vKsRe6OeLKP?= =?us-ascii?Q?71JIJ+mN+kX7J/J47kAvw255DunXpmc9nbFiYm5g4TWXESRfkeyEx7o8Dbgb?= =?us-ascii?Q?aditDUvhVXnWLGlnKwLn48iWyD9lYQM50JpBEsZXwyQmJ7jampk4+NNdgMnw?= =?us-ascii?Q?BKdq/Qn5QleHtErjWuRxWdW+03HtPQXHnCGudoYHw6unviWrETQIp5yPzzIH?= =?us-ascii?Q?U+UfC3iqKaJ6rIJmoQxds/Su96pBW+WWg4xu3p4lZLIAlfkDF/O6Ec37qp5l?= =?us-ascii?Q?BCbZbzooKdopYkyBB5WCkXenfViLmI4Y/c7gent8Uzkn77TvKy39BvQbHMVZ?= =?us-ascii?Q?DmCIbCYBbqEXwl797/QTTGdUBwMuArt4zSUOmQQLhYmvF94FyFjbzZxbxcit?= =?us-ascii?Q?sm3FAn2OFNlVSwnnQ3tpY/iMw1DEFRbWha8ALKOhA4kSSBUbexXO94ed8rnt?= =?us-ascii?Q?P70kVYdHk8d9suIcmcWVu914lQGSBvIOdDA3yLHoVqPNtlkSHmNJl0SBbUal?= =?us-ascii?Q?9rt3imgR0dphGFeF7KfYsUfjdO0axabLt/jaAewX7rwkO+hsfsyJZi5jA9HN?= =?us-ascii?Q?2kPtAZUox3LUgjwSulLuLTY7X3yz5h9mkW90xforUR7tdz0Sigd9dUvxLFBB?= =?us-ascii?Q?vuJqAWuyCarx+O25NnukDmTHyqwHxwCB8yh0+yvi86bvZ0wcPhlKL7pavkdU?= =?us-ascii?Q?h3qgyna2wqXwS3BHS5xYy+8olD8Z0GMn6vK2fG8oIeGaozawOha0RVTLPhW5?= =?us-ascii?Q?oKwUL84h155t7Sj3cvKsougI7uVlJFa1gzRnoY59mJR2dq4CtCd/e0ofjXak?= =?us-ascii?Q?LSWL9yE0BydFvjvG9SBu4RvbVu014bYOCYqzcKdFvbDF9q5eS4d+y9hp6W39?= =?us-ascii?Q?BMeg5cnR3xk7DsRffe1tkRgy7z3I4QzA42me8f2f6iZT++9bzt2eCS5A+kw2?= =?us-ascii?Q?LakH+MU881+a/MfKkh5FGQIUB9xFNIupyBtQG5UOBw9VLs2nB2Kr9NJkr9UH?= =?us-ascii?Q?xggxHfDJiOpntfjxUTsSr0Bp+fp9MfibvrgT6xAN9XTUHucQjy31CUU46X3U?= =?us-ascii?Q?1tSCSGUZ7g=3D=3D?= X-OriginatorOrg: Nvidia.com X-MS-Exchange-CrossTenant-Network-Message-Id: e44e07cd-6366-43e3-9640-08de845468b5 X-MS-Exchange-CrossTenant-AuthSource: DS2PR12MB9567.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 17 Mar 2026 18:38:40.3495 (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: Umybkf/6U0baqnpn4M2F/zh60WS9Bh3DdsiSjNqFnKTkxarn21wgZDcZqcAsdmjdlkviJguMFArBUSWeD8EM1w== X-MS-Exchange-Transport-CrossTenantHeadersStamped: SA5PPF06C91DA0C 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:c007::2; envelope-from=nathanc@nvidia.com; helo=MW6PR02CU001.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, 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: 1773772782757154100 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 Signed-off-by: Nathan Chen Reviewed-by: Shameer Kolothum Tested-by: Eric Auger --- qemu-options.hx | 35 ++++++++++++++++++++++++++++++++++- 1 file changed, 34 insertions(+), 1 deletion(-) diff --git a/qemu-options.hx b/qemu-options.hx index 69e5a874c1..0ba8322695 100644 --- a/qemu-options.hx +++ b/qemu-options.hx @@ -1279,13 +1279,46 @@ 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. + + ``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. Only applicable when accel=3Don. Setti= ng + 'auto' is currently not supported. + + ``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. + Only applicable when accel=3Don. Setting 'auto' is currently not + supported. + + ``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. + Only applicable when accel=3Don. Setting 'auto' is currently not + supported. + + ``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. Only applic= able + when accel=3Don. Setting 'auto' is currently not 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