From nobody Mon Feb 9 09:33:45 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=1768161557; cv=pass; d=zohomail.com; s=zohoarc; b=oHmkafkZ0J5k8DAjg+rmRWbD3x19zWJ9PUOC8VnBKzbSFLk/rcGLkvYkcvs65TofL//CufqFtyhbcjh3NmZj+tzgkbjFXzpStqQ4jUQiry260s7q5k3SMUZLNPUbErQOEYhhlxQ0p2Wz1KHpdJG/aBlGyfojxrvaIociu2+xv5I= ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1768161557; 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=kZ+67CXJWMGqlQqKnv/3nilkw+KRuQ8yVApJTssCros=; b=GE3t76pgOBnMrCPYlJMgzgt+e9HsdI5sLbtgTMiy8hBjE5TvOziZc0zhnTI9wn4TF5F4gS048mqXUb6TGGQK/jwrNZwjE0CDbX2o+pSDHD+h8cgzfS8CxLAQT1BNaF7ATER7T3Anr35dylyVEv++EK3qqIcbBevOJw5sg8B6zog= 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 17681615577771020.4469430311057; Sun, 11 Jan 2026 11:59:17 -0800 (PST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1vf1ZB-0000gu-51; Sun, 11 Jan 2026 14:57:37 -0500 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 1vf1Z8-0000aW-Rc; Sun, 11 Jan 2026 14:57:34 -0500 Received: from mail-southcentralusazlp170110003.outbound.protection.outlook.com ([2a01:111:f403:c10d::3] helo=SN4PR0501CU005.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 1vf1Z7-00043f-9S; Sun, 11 Jan 2026 14:57:34 -0500 Received: from SN6PR08CA0026.namprd08.prod.outlook.com (2603:10b6:805:66::39) by SA1PR12MB6775.namprd12.prod.outlook.com (2603:10b6:806:25a::10) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9499.7; Sun, 11 Jan 2026 19:57:26 +0000 Received: from SN1PEPF00026367.namprd02.prod.outlook.com (2603:10b6:805:66:cafe::56) by SN6PR08CA0026.outlook.office365.com (2603:10b6:805:66::39) with Microsoft SMTP Server (version=TLS1_3, cipher=TLS_AES_256_GCM_SHA384) id 15.20.9499.5 via Frontend Transport; Sun, 11 Jan 2026 19:57:25 +0000 Received: from mail.nvidia.com (216.228.117.160) by SN1PEPF00026367.mail.protection.outlook.com (10.167.241.132) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9520.1 via Frontend Transport; Sun, 11 Jan 2026 19:57:26 +0000 Received: from rnnvmail201.nvidia.com (10.129.68.8) by mail.nvidia.com (10.129.200.66) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.2562.20; Sun, 11 Jan 2026 11:57:25 -0800 Received: from NV-2Y5XW94.nvidia.com (10.126.231.35) by rnnvmail201.nvidia.com (10.129.68.8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.2562.20; Sun, 11 Jan 2026 11:57:21 -0800 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=dxcIbWdA099gqsGuFNt2uxstPkSJumANLI8g2fMtzn0moCV4DBJ1JcypbSEtDtCQz2NUli5883PyCb4cDKsANKf7qP15dBSANAqIsUx1YQoDgT8XBQ7EcgWZr/2Y40cWMNijWI7875qRWNPLQ/eBF/Io6Vv53hQVtZxqrUg/MPVQMVAx9675Ya3s3hCD4uzjjb2urd0pe6rRtbJODSvlOK+0SSsglbGol71ZwFUkZhobkoHSC3qo1GoRO9aTLlKOiS4fDEyLuTMHRHg4Vd5JCi9J/CRPGZq3Z5fHZQjq6VshHPm3wL7876EHfKYMZi9qILLpZVUk1KpC9++NCj+raQ== 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=kZ+67CXJWMGqlQqKnv/3nilkw+KRuQ8yVApJTssCros=; b=BZjNisKPFAsGpbGt2/LWA2OvI2aQxkWP/ol5XtAkoQk/liqDUwYi8RH0V3M5SMSR5BMV5zRMP0DZAa95eAv3arKdAou+gosFa7Fyl1gSxjbAE5Mi7j2jTGs2QQtLrqZNW3krGP1tAILGRBCQvZqS2euKpF7mj4CYlPrVcJQT4iJWxPrhrC7QqFcW19Y1ankgkKXYnEJzGcBIDzMHlyurBBFJiUA5GOV9WE9mxM1BMJ3xYNwB2kXZDbpMubhDAKphmpnIzb1ph01yp72tcorwL31sFYSvb/b7BzZFgC3KDHhChL09V4UU8sBYdnZJ/ir4m5JV8KJPux5Fo+ienkRBkQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 216.228.117.160) smtp.rcpttodomain=nongnu.org smtp.mailfrom=nvidia.com; dmarc=pass (p=reject sp=reject pct=100) action=none header.from=nvidia.com; dkim=none (message not signed); arc=none (0) 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=kZ+67CXJWMGqlQqKnv/3nilkw+KRuQ8yVApJTssCros=; b=I9ljbIGOXiB+rStBvSYKzF3dv9zUkBXkC4oFtk1Qn3o+GSq6f228ZSGqh0edWns7YRY3Tq10QYZnCjwQ6ZOgnFnrUc82gfq+300qs/vsCshEumzCdzOjCnFMTLqsC3zN1E/Qz5rTkpJRPcZUXtXDZZZ9CviJRXQLVO55a4GLN+Fl/TzGq/k1WQxE7Ya52I/fCqvxtPWsIH4mLB7ZDcp8rep29HI6Jf9FGVdlV8CNe78T2ti6BX/sr28UqLkcBBc9oCuUNfaXEyOu/I9pGLLekxBdHzESs57mmjmVflZnxVsK5KhDCYy41/R1lBQhrBbjhsuNGPdZMekf5U7vwawujA== X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 216.228.117.160) smtp.mailfrom=nvidia.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=nvidia.com; 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: 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: Pass (protection.outlook.com: domain of nvidia.com designates 216.228.117.160 as permitted sender) receiver=protection.outlook.com; client-ip=216.228.117.160; helo=mail.nvidia.com; pr=C From: Shameer Kolothum To: , CC: , , , , , , , , , , , , , , , , , Subject: [PATCH v7 19/36] hw/arm/smmuv3: Initialize ID registers early during realize() Date: Sun, 11 Jan 2026 19:53:05 +0000 Message-ID: <20260111195508.106943-20-skolothumtho@nvidia.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20260111195508.106943-1-skolothumtho@nvidia.com> References: <20260111195508.106943-1-skolothumtho@nvidia.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-Originating-IP: [10.126.231.35] X-ClientProxiedBy: rnnvmail202.nvidia.com (10.129.68.7) To rnnvmail201.nvidia.com (10.129.68.8) X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SN1PEPF00026367:EE_|SA1PR12MB6775:EE_ X-MS-Office365-Filtering-Correlation-Id: 711f9b89-6ef0-4b89-29c0-08de514ba4fa X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; ARA:13230040|1800799024|82310400026|36860700013|7416014|376014; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?sRUuGFv/TA/P4TPJIcWPZEklqSupJwXTxK+uYcVNcvQwJz/PAIBkrwlTz9dd?= =?us-ascii?Q?dvRvPokZLaTs/PKBU+wSMpDWvt0REDEbi8UxUJ3n3zyPT+gIOmnBrYHbBotV?= =?us-ascii?Q?vfp4ZwVrKEQGzyrqpQVFnJgQhcgLQyipkxlpwiNzC4lGMZe/nyCXqkjiIwqi?= =?us-ascii?Q?NmMIXQtl6zZx07GrLXOUOnCPKBwHtMykYBsDKbUiAvyFV66AHlfCRZQ4OUn5?= =?us-ascii?Q?4ikgZtzgHaWqK26qaE/XgLUg1P7BxRlQVTIxCnrkT3ZCySfY1D39iyKqWdd7?= =?us-ascii?Q?p5N6qLlWeBlvnAhf6iC6hRJWWJ4v0czWlYKI9GugsTL/H3XdZmg9ufKxLBHq?= =?us-ascii?Q?u39v3vdbFFNQtRGgZkiZppEnfKdi+vj/4HEeMwxm8I77LkUHE8rSm8m5vCwT?= =?us-ascii?Q?vXJLA8soV7EJHjDFjNsWakvBjx9SYLq0xdk3uV/YHIJlSAt2gPLb0gYVNP4Q?= =?us-ascii?Q?512dWhOflUOXzLrkcE9cpPjsgQ9+tOr0P8KVR5FESGUQjcrAJL5Ch5QMC3OP?= =?us-ascii?Q?BBQcutwMIGz7U2Vg7w6S64NqUTC/rR7VcxbynbSY1XAmvYAKs4ZfYiVZlzxp?= =?us-ascii?Q?lyYBtMnOZalT8adk5fqeGmS3K9G6cpOoS9yDOpnF9Q1W0BdOkGUqr70Rfdrc?= =?us-ascii?Q?DyBtaawkKm9irYJ2VVgE6S1n0HIBzg4uqtVIgAlwqJWGpv2/UT+9NuqMrJG2?= =?us-ascii?Q?ebI3+1XBoYZcoRAZ9oxmy1/E9ilhUdiIxYkUOXqwxl2Ri6baxf6wGnuQqHhO?= =?us-ascii?Q?OjFyNXn5eBjSeFThSnk7XbkKQzJK+gvTickc7PBM3LcF6B8XVS/4se7f4nzZ?= =?us-ascii?Q?aso0iQx4pvgkEh/bsisWY3SsQDlghLLlwiJMPJ8u2aKMMPWxbE6ak5rPqaYU?= =?us-ascii?Q?osyrtM0oaf2+UIbn+O+fEqeptaFzcW1Ps+2bpAo/0qNrKGqxeWvF4Njw02jr?= =?us-ascii?Q?+x/lax/0w3mZSJciBeUy/b92JN0RA2F/D7Yk2yevf5sEpZIDhbjmOAqkyHpd?= =?us-ascii?Q?rfW2qKjqMPoCRSsQcR/Vy8lZJ3iDYq/kyP8nmYkV4IJYfkjyIoRuIVR6DDjf?= =?us-ascii?Q?jpf5v7ZWriX2jTpC5NKmKwz6s6QMsO637eo6sEcwIl2i5K1X3YxdWzLm7Xf3?= =?us-ascii?Q?AWIKSJ73xPr5tsFnh7vGDp+PEbHTrLk+o5NfQkipWpKRIWPDzHKya/ty/D03?= =?us-ascii?Q?hSBjGDq+LTzcXbjYeZHxsQWws/sEvQWNiiD3ywc4tuGHSxmiQJCsHVjmez7g?= =?us-ascii?Q?Ctm5HR8NcIqDpz8kq2iewj2Kl7jHfCTdhoPymktYGVm6c0+ATUJCeie8///v?= =?us-ascii?Q?CVdLCEklYMu2A4hLrQEp2bh807ZWpo/kdzc3O/u03fI99ze+KzKDxcY6jby/?= =?us-ascii?Q?BKxxnCltl0v/J0v6LWrpWwYrFVXmIoa127Jg9CQ0f2frhYWm7QpjZ0fB0FGK?= =?us-ascii?Q?EbaF6xN277yaElxYESkeu1KUdoggHJOkFE/uc8XW43OjdzBq7ayXWJmav3dJ?= =?us-ascii?Q?ocXfkuC1N8mOJm1cSap27hQEkyjjCU9YYGXFpILHSUh0LnwgYjExFtFvdDor?= =?us-ascii?Q?bgS2sgHIp/klkDwtYfk=3D?= X-Forefront-Antispam-Report: CIP:216.228.117.160; CTRY:US; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:mail.nvidia.com; PTR:dc6edge1.nvidia.com; CAT:NONE; SFS:(13230040)(1800799024)(82310400026)(36860700013)(7416014)(376014); DIR:OUT; SFP:1101; X-OriginatorOrg: Nvidia.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 11 Jan 2026 19:57:26.4054 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 711f9b89-6ef0-4b89-29c0-08de514ba4fa X-MS-Exchange-CrossTenant-Id: 43083d15-7273-40c1-b7db-39efd9ccc17a X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=43083d15-7273-40c1-b7db-39efd9ccc17a; Ip=[216.228.117.160]; Helo=[mail.nvidia.com] X-MS-Exchange-CrossTenant-AuthSource: SN1PEPF00026367.namprd02.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: SA1PR12MB6775 Received-SPF: permerror client-ip=2a01:111:f403:c10d::3; envelope-from=skolothumtho@nvidia.com; helo=SN4PR0501CU005.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: 1768161558814158500 Content-Type: text/plain; charset="utf-8" Factor out ID register init into smmuv3_init_id_regs() and call it from realize(). This ensures ID registers are initialized early for use in the accelerated SMMUv3 path and will be utilized in subsequent patch. Other registers remain initialized in smmuv3_reset(). Reviewed-by: Nicolin Chen Reviewed-by: Jonathan Cameron Reviewed-by: Eric Auger Signed-off-by: Shameer Kolothum --- hw/arm/smmuv3.c | 15 ++++++++++++--- 1 file changed, 12 insertions(+), 3 deletions(-) diff --git a/hw/arm/smmuv3.c b/hw/arm/smmuv3.c index 4efef73373..e301bb467d 100644 --- a/hw/arm/smmuv3.c +++ b/hw/arm/smmuv3.c @@ -258,7 +258,12 @@ void smmuv3_record_event(SMMUv3State *s, SMMUEventInfo= *info) info->recorded =3D true; } =20 -static void smmuv3_init_regs(SMMUv3State *s) +/* + * Called during realize(), as the ID registers will be accessed early in = the + * SMMUv3 accel path for feature compatibility checks. The remaining regis= ters + * are initialized later in smmuv3_reset(). + */ +static void smmuv3_init_id_regs(SMMUv3State *s) { /* Based on sys property, the stages supported in smmu will be adverti= sed.*/ if (s->stage && !strcmp("2", s->stage)) { @@ -298,7 +303,11 @@ static void smmuv3_init_regs(SMMUv3State *s) s->idr[5] =3D FIELD_DP32(s->idr[5], IDR5, GRAN4K, 1); s->idr[5] =3D FIELD_DP32(s->idr[5], IDR5, GRAN16K, 1); s->idr[5] =3D FIELD_DP32(s->idr[5], IDR5, GRAN64K, 1); + s->aidr =3D 0x1; +} =20 +static void smmuv3_reset(SMMUv3State *s) +{ s->cmdq.base =3D deposit64(s->cmdq.base, 0, 5, SMMU_CMDQS); s->cmdq.prod =3D 0; s->cmdq.cons =3D 0; @@ -310,7 +319,6 @@ static void smmuv3_init_regs(SMMUv3State *s) =20 s->features =3D 0; s->sid_split =3D 0; - s->aidr =3D 0x1; s->cr[0] =3D 0; s->cr0ack =3D 0; s->irq_ctrl =3D 0; @@ -1903,7 +1911,7 @@ static void smmu_reset_exit(Object *obj, ResetType ty= pe) c->parent_phases.exit(obj, type); } =20 - smmuv3_init_regs(s); + smmuv3_reset(s); smmuv3_accel_reset(s); } =20 @@ -1935,6 +1943,7 @@ static void smmu_realize(DeviceState *d, Error **errp) sysbus_init_mmio(dev, &sys->iomem); =20 smmu_init_irq(s, dev); + smmuv3_init_id_regs(s); } =20 static const VMStateDescription vmstate_smmuv3_queue =3D { --=20 2.43.0