From nobody Mon Feb 9 04:27:53 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; dmarc=pass(p=none dis=none) header.from=linaro.org ARC-Seal: i=1; a=rsa-sha256; t=1763643580; cv=none; d=zohomail.com; s=zohoarc; b=Jaax1eL9fn/U+6nRdQIdXsb89CLc5FLgMGy6i6PkS3wVmjyuBjzk0rUkNYio+qllmcXU9fGkseZDLoqFjZdhrarHlFnhrIYd+tPziZrOn/MCaJFmdn/9iQB5kgUJPqwnxaaqBlIyNmPYfoeJ7cZhSA6xs9SIpMW6em8l5hkkv4g= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1763643580; h=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=3pWIda8e2UrEXXWq+lxi04bS+9Uhurh/4yQC9gLnIYs=; b=a0yFFyXL5gtit32AQXosy7/Ozsvf5Ww2x4jvvaCxzhsfnQbkNiDOfzF507akKmY9nrtScl1Tjpsw/e8Q4Wv0SAbGrJ5Bm/CGSCFiuwL8jEw3WlXuSzjceRHgvAEyaxKpp8HMUGrpHnIH2mGtXxMeOCjvOo1pZQ17dXTgCJMDzNk= ARC-Authentication-Results: i=1; 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; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1763643580827310.76781938976126; Thu, 20 Nov 2025 04:59:40 -0800 (PST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1vM4Fe-0008JZ-So; Thu, 20 Nov 2025 07:59:07 -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 1vM4Fb-0008J9-UT for qemu-devel@nongnu.org; Thu, 20 Nov 2025 07:59:03 -0500 Received: from mail-wm1-x32a.google.com ([2a00:1450:4864:20::32a]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1vM4FY-0006Jv-Nr for qemu-devel@nongnu.org; Thu, 20 Nov 2025 07:59:02 -0500 Received: by mail-wm1-x32a.google.com with SMTP id 5b1f17b1804b1-4779aa4f928so8807895e9.1 for ; Thu, 20 Nov 2025 04:58:59 -0800 (PST) Received: from jimm-x1.. ([2a10:d582:31e:0:1328:3324:f0af:9332]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-477b831421fsm46082145e9.10.2025.11.20.04.58.58 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 20 Nov 2025 04:58:58 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1763643539; x=1764248339; darn=nongnu.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=3pWIda8e2UrEXXWq+lxi04bS+9Uhurh/4yQC9gLnIYs=; b=OebhfLYaHxJEKsgVIjzo+BWpmy+zPozqpzFN+N+b7GeOX+5gDFLvXoEtZD0VIOjGaR WnJcQUELIYfaTMueSiHTN8RqfofHSWdoNlvWUZ72y3B42JHMnsrobeFCgQ7XuD31iIOh d1iHuY2hz/WljgxiMV4vaPQxVecyozEh/2093yciagA0XZo9n7EB/05XranpEE+WzvfC Dj/aKtU52yWJcMWiprIHZj2igbC6oVHf0vzq0Ld34pPn/JUhuclv2DrznSceMS8dYwvX xx+HqNNpVhcL/H3BgHjMIGmOTm49XWGL8FQ2ENJ70JnhQTq/E3TBFwTJWWnxJ+KDeqpe EPQg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1763643539; x=1764248339; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=3pWIda8e2UrEXXWq+lxi04bS+9Uhurh/4yQC9gLnIYs=; b=B+8ReT3nP5AyQvgROzpwbvyP/vI+tNGvuoZZwAn29XGmvc699c20cCwal/ItAQ1IrW lzhBeDnRzaraPIQLxcGyFb0GNU1Tu/Zc7BNBSZkR1HaRbXY5RFTAYCuj+H69z0maxMXp oEyLvBZnDd33f2l6S6leRGGDkkTussGzbmBKvHbRtT1yM6/SeVqT+VtZoh0+yFiEoQ3Z F9P3DVez1ktj/KTdbmdyscMxvlC+Vga+n1tmLwsLAcOQ4+jMlLqpoB4EbMRm8HLQ0lz/ smzBSYRMcYpCFsketpcnpgORGY69gj/exCxYf82ibbVcYbyOGIrdr+b7yhxd1nwbeI7e i5fw== X-Gm-Message-State: AOJu0YxjvCzzNC1Z7Un9mek31sOD85TqNl6DsEh955Jojf6wuXW6VpYX pUXCw8moY13e4DWHBnNBPKVF3C7vtlZqvAk4LKM8eVMJdMkISDyR9L4YUNfanmYU+c1UfUsVbdC HVfBDV2Q= X-Gm-Gg: ASbGncv7Kn8w5vMzavTZ4QNeAiEO0iByfbPoeve6O+T3UT84kmwqfpi7IdjIlbSuN9+ q5xs5fS/OIEAwaNLBNG9fkMbF62Vk+Gfv2alpdtpthBNuRCLgOTpbVS5/3u0Vr97uqWbq+6IUIN 7Fdf/j5Z+xaCbM3aMwdZYB0LzVv6lEQeK196OGX92tAyYt8z8hqmkfjQm9JT0PlLaeXc05gccZR SxFtxzcJa+8p2R7cXhAtHYi7yzP313T4Y8ArME/r0X3Y7MMgJ8ue17YHt+cwasFQsmHruQv7E5u 5oqbXIjgsZRnxrqB0CMgLpkcQ3mmgGIdR08ODeitiht8Q+yT1iNIMgOuk+WnYUUig80NYWO/34i dUVP8HMYDkxvnezYeTScvvFm4UaRg5TG+9Tr+DxMGV9/q8a5IPe/RHPhNhzi0lECg1ftwuJu/nv J+DFrtBIUkeUE0 X-Google-Smtp-Source: AGHT+IGTwDVQoT7mM3aRvhCrZj7yqdNtffNPWSyZ+e9AG9g2XgcW98WThY+QRfpyS5a8Mv18Hp1dPg== X-Received: by 2002:a05:600c:4694:b0:465:a51d:d4 with SMTP id 5b1f17b1804b1-477b8954873mr25015895e9.6.1763643538827; Thu, 20 Nov 2025 04:58:58 -0800 (PST) From: Jim MacArthur To: qemu-devel@nongnu.org Cc: Jim MacArthur Subject: [PATCH 1/3] target/arm: Enable ID_AA64MMFR4_EL1 register. Date: Thu, 20 Nov 2025 12:54:14 +0000 Message-ID: <20251120125833.123813-2-jim.macarthur@linaro.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20251120125833.123813-1-jim.macarthur@linaro.org> References: <20251120125833.123813-1-jim.macarthur@linaro.org> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable 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 client-ip=2a00:1450:4864:20::32a; envelope-from=jim.macarthur@linaro.org; helo=mail-wm1-x32a.google.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, 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_PASS=-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: 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 @linaro.org) X-ZM-MESSAGEID: 1763643582645018900 Content-Type: text/plain; charset="utf-8" Signed-off-by: Jim MacArthur Reviewed-by: Alex Benn=C3=A9e Reviewed-by: Richard Henderson --- target/arm/cpu-sysregs.h.inc | 1 + target/arm/helper.c | 4 ++-- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/target/arm/cpu-sysregs.h.inc b/target/arm/cpu-sysregs.h.inc index 2bb2861c62..2ba49d8478 100644 --- a/target/arm/cpu-sysregs.h.inc +++ b/target/arm/cpu-sysregs.h.inc @@ -14,6 +14,7 @@ DEF(ID_AA64MMFR0_EL1, 3, 0, 0, 7, 0) DEF(ID_AA64MMFR1_EL1, 3, 0, 0, 7, 1) DEF(ID_AA64MMFR2_EL1, 3, 0, 0, 7, 2) DEF(ID_AA64MMFR3_EL1, 3, 0, 0, 7, 3) +DEF(ID_AA64MMFR4_EL1, 3, 0, 0, 7, 4) DEF(ID_PFR0_EL1, 3, 0, 0, 1, 0) DEF(ID_PFR1_EL1, 3, 0, 0, 1, 1) DEF(ID_DFR0_EL1, 3, 0, 0, 1, 2) diff --git a/target/arm/helper.c b/target/arm/helper.c index 27ebc6f29b..c20334fa65 100644 --- a/target/arm/helper.c +++ b/target/arm/helper.c @@ -6566,11 +6566,11 @@ void register_cp_regs_for_features(ARMCPU *cpu) .access =3D PL1_R, .type =3D ARM_CP_CONST, .accessfn =3D access_aa64_tid3, .resetvalue =3D GET_IDREG(isar, ID_AA64MMFR3) }, - { .name =3D "ID_AA64MMFR4_EL1_RESERVED", .state =3D ARM_CP_STA= TE_AA64, + { .name =3D "ID_AA64MMFR4_EL1", .state =3D ARM_CP_STATE_AA64, .opc0 =3D 3, .opc1 =3D 0, .crn =3D 0, .crm =3D 7, .opc2 =3D = 4, .access =3D PL1_R, .type =3D ARM_CP_CONST, .accessfn =3D access_aa64_tid3, - .resetvalue =3D 0 }, + .resetvalue =3D GET_IDREG(isar, ID_AA64MMFR4) }, { .name =3D "ID_AA64MMFR5_EL1_RESERVED", .state =3D ARM_CP_STA= TE_AA64, .opc0 =3D 3, .opc1 =3D 0, .crn =3D 0, .crm =3D 7, .opc2 =3D = 5, .access =3D PL1_R, .type =3D ARM_CP_CONST, --=20 2.43.0 From nobody Mon Feb 9 04:27:53 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; dmarc=pass(p=none dis=none) header.from=linaro.org ARC-Seal: i=1; a=rsa-sha256; t=1763643568; cv=none; d=zohomail.com; s=zohoarc; b=mJpgI79/UwzsNC3d95yVolB4dmnwM0yici0YLGSkBIyQghsAGpDcZWhZ+UdMFjSW8OP8dYWCNP80lta++W2M/FEeIISqnQ1FPfyaJ0F9Wi06OEbcmeDUWOH2cSu9Oto1xcMQOPNAP6QYHAtYilIpGxuCH55LHKKHwPq2Boy6g9U= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1763643568; h=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=AtF24qAlWQOoDeMvYCKIIi54CEpEOaFUzDD/yLc7IWw=; b=U0abD3Wj4kSOxpzt74YO0CdwmwJYaKlTqZgpI/fK6H5XgxnRdPXyRGCdklOVYBLLApaD56e4hXwEp3Vf/LZ4lu0hxkPE2XDSyqhFRSNOT+Y26JEml59pYjh5Gv+rLW5Wk4nL6Ijg1ckbeuWh+c+Y/u5GkvVwyH7eOlWMRaOPT4s= ARC-Authentication-Results: i=1; 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; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1763643568304840.1637111452105; Thu, 20 Nov 2025 04:59:28 -0800 (PST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1vM4Fh-0008Jl-QH; Thu, 20 Nov 2025 07:59:09 -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 1vM4Fb-0008J8-To for qemu-devel@nongnu.org; Thu, 20 Nov 2025 07:59:03 -0500 Received: from mail-wm1-x32c.google.com ([2a00:1450:4864:20::32c]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1vM4FZ-0006K3-Gv for qemu-devel@nongnu.org; Thu, 20 Nov 2025 07:59:02 -0500 Received: by mail-wm1-x32c.google.com with SMTP id 5b1f17b1804b1-477770019e4so8495235e9.3 for ; Thu, 20 Nov 2025 04:59:01 -0800 (PST) Received: from jimm-x1.. ([2a10:d582:31e:0:1328:3324:f0af:9332]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-477b831421fsm46082145e9.10.2025.11.20.04.58.59 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 20 Nov 2025 04:58:59 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1763643540; x=1764248340; darn=nongnu.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=AtF24qAlWQOoDeMvYCKIIi54CEpEOaFUzDD/yLc7IWw=; b=S2vQo7Y0nTcqJQTevI7vvf5MHERO00tQmdc74M7ztvGvIbHahvnpY681/6qE/XcnZl 930CSyOpWV4awS8ofM50HLUmRpm5Lh6DTGSvuPda+DR5o6WWWO6VAscgQv8qfaZQRHM2 6UaTfmVELdjY67rYcILC76ksnQmfx/5G6ZbcQiPy0mhTFW9gUZ6D0DFFVSxKa3A0F2RN 7M+o8rR0+p4F9/9sX1QGp/XqnTs2aO1BImrgbPwlQpS7n74EGuJ5vdmBpVdXZZowpnlD c1bVJ4AgQp+u/Pqmy+D/aG7xa4BVpltxCClLa8yxCAhbcA4POGQ3oWNF+AqcaVbfIWzJ 5VwQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1763643540; x=1764248340; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=AtF24qAlWQOoDeMvYCKIIi54CEpEOaFUzDD/yLc7IWw=; b=ht8qhgMr4/jL+KJrqc/piBifRqXq64/nNbe2S+jqjhOLeUzJBo864iz7sI0k2J1NPq 7bE/GOzH7wmsDZH/j2Tesb1EfjtmiFb8/ed2CqZb3ClP4CqqzUHT6inIYAbpyLsCf7CV ybPDg4S3X633odO4pHOy843CQcRktHWI4GIDXVoGsD4JGIlKNbHYleyawbaC/vbvpRm7 SU6gcGgwKWhVQYzX+Z8CEJZ9W875/jVdal5p+Q0V22adclf4Gw3FOAbpJ5zghB5+lN+z LBh73Ew2qtwq1yv2nu6BcB8hNkPM+6Vmpah4SGQWQ8rIuFZjfUTwKR1XIOPd2Gg2PbjW VYQg== X-Gm-Message-State: AOJu0Yxg5+VwFsUguJjs92NkVi75EcWQMDnZFdMBAaMwRxP2lB+kOGBs e0ivWWLY6f7UwrjATD434Ys7Dm5CX83TiSDxshdYf4nK9sGGdFBJBtYtPwU7q5ebKFEfXpMqQUb SF+176U4= X-Gm-Gg: ASbGncvg5vQS4nIQC6VQ4Y7kQoxZY7PCx/i9RZEW1V/aH52jEw58KY1B5QcvA4/Wn/7 bQcp5aZ0pCWxzfQEtQY7nbHa0nWeA+dqRKOQmvFLb+tPJmQa5lO0e6QV0F858fPPsUJzdwvLmnr saLqcH5S0wpM7tvxjGkLh3M9AtUWlanNNJ2i+8jiwCdlFm8uboUlNeVkgknjtmpaN5u55Bb7jgw XsmZLE+gMeanODV9yrubVa7awALvu1A1tP5YbRKoCTq9N8CMiK2mb0Mk06HB4/6kPuX30pQ0/Zd 2ka7TnExt7wFjl18BpaqIH3pqbvxyPRZUgRjtWCaTjlqBmsa4DSu5+hOXJG8ttgfittqu2XT36I Olb5rsXF0a0IopbB2MMU80k/Id6qDX9YgyYG21syRsl8T0hrTpjL3/0Q3STjYWbWLa0PgM6/9Up 3J6eoUAgEsFkF+wYTIT7UBXR0= X-Google-Smtp-Source: AGHT+IFCecowj+AJTIhrlYVVx1WGfA0ROQyujO7OWcNTCy4FHQ1kjd/gGnvXp8y+vbRMJpuJfKYirQ== X-Received: by 2002:a05:600c:4fc4:b0:477:7f4a:44b0 with SMTP id 5b1f17b1804b1-477b8d8ed39mr31449865e9.33.1763643540041; Thu, 20 Nov 2025 04:59:00 -0800 (PST) From: Jim MacArthur To: qemu-devel@nongnu.org Cc: Jim MacArthur Subject: [PATCH 2/3] target/arm: Enable ASID2 for cpu_max, allow writes to FNG1, FNG0, A2 Date: Thu, 20 Nov 2025 12:54:15 +0000 Message-ID: <20251120125833.123813-3-jim.macarthur@linaro.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20251120125833.123813-1-jim.macarthur@linaro.org> References: <20251120125833.123813-1-jim.macarthur@linaro.org> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable 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 client-ip=2a00:1450:4864:20::32c; envelope-from=jim.macarthur@linaro.org; helo=mail-wm1-x32c.google.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, 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_PASS=-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: 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 @linaro.org) X-ZM-MESSAGEID: 1763643570654018900 Content-Type: text/plain; charset="utf-8" This just allows read/write of three feature bits. ASID is still ignored. Any writes to TTBR0_EL0 and TTBR1_EL0, including changing the ASID, will still cause a complete flush of the TLB. Signed-off-by: Jim MacArthur Reviewed-by: Alex Benn=C3=A9e Reviewed-by: Richard Henderson --- target/arm/cpu-features.h | 7 +++++++ target/arm/helper.c | 6 ++++++ target/arm/tcg/cpu64.c | 4 ++++ 3 files changed, 17 insertions(+) diff --git a/target/arm/cpu-features.h b/target/arm/cpu-features.h index 579fa8f8f4..d56bda9ce0 100644 --- a/target/arm/cpu-features.h +++ b/target/arm/cpu-features.h @@ -346,6 +346,8 @@ FIELD(ID_AA64MMFR3, SDERR, 52, 4) FIELD(ID_AA64MMFR3, ADERR, 56, 4) FIELD(ID_AA64MMFR3, SPEC_FPACC, 60, 4) =20 +FIELD(ID_AA64MMFR4, ASID2, 8, 4) + FIELD(ID_AA64DFR0, DEBUGVER, 0, 4) FIELD(ID_AA64DFR0, TRACEVER, 4, 4) FIELD(ID_AA64DFR0, PMUVER, 8, 4) @@ -1369,6 +1371,11 @@ static inline bool isar_feature_aa64_aie(const ARMIS= ARegisters *id) return FIELD_EX64_IDREG(id, ID_AA64MMFR3, AIE) !=3D 0; } =20 +static inline bool isar_feature_aa64_asid2(const ARMISARegisters *id) +{ + return FIELD_EX64_IDREG(id, ID_AA64MMFR4, ASID2) !=3D 0; +} + static inline bool isar_feature_aa64_mec(const ARMISARegisters *id) { return FIELD_EX64_IDREG(id, ID_AA64MMFR3, MEC) !=3D 0; diff --git a/target/arm/helper.c b/target/arm/helper.c index c20334fa65..7812a82bab 100644 --- a/target/arm/helper.c +++ b/target/arm/helper.c @@ -6102,6 +6102,9 @@ static void tcr2_el1_write(CPUARMState *env, const AR= MCPRegInfo *ri, if (cpu_isar_feature(aa64_aie, cpu)) { valid_mask |=3D TCR2_AIE; } + if (cpu_isar_feature(aa64_asid2, cpu)) { + valid_mask |=3D TCR2_FNG1 | TCR2_FNG0 | TCR2_A2; + } value &=3D valid_mask; raw_write(env, ri, value); } @@ -6121,6 +6124,9 @@ static void tcr2_el2_write(CPUARMState *env, const AR= MCPRegInfo *ri, if (cpu_isar_feature(aa64_mec, cpu)) { valid_mask |=3D TCR2_AMEC0 | TCR2_AMEC1; } + if (cpu_isar_feature(aa64_asid2, cpu)) { + valid_mask |=3D TCR2_FNG1 | TCR2_FNG0 | TCR2_A2; + } value &=3D valid_mask; raw_write(env, ri, value); } diff --git a/target/arm/tcg/cpu64.c b/target/arm/tcg/cpu64.c index 6871956382..ef4c0c8d73 100644 --- a/target/arm/tcg/cpu64.c +++ b/target/arm/tcg/cpu64.c @@ -1334,6 +1334,10 @@ void aarch64_max_tcg_initfn(Object *obj) t =3D FIELD_DP64(t, ID_AA64MMFR3, AIE, 1); /* FEAT_AIE */ SET_IDREG(isar, ID_AA64MMFR3, t); =20 + t =3D GET_IDREG(isar, ID_AA64MMFR4); + t =3D FIELD_DP64(t, ID_AA64MMFR4, ASID2, 1); /* FEAT_ASID2 */ + SET_IDREG(isar, ID_AA64MMFR4, t); + t =3D GET_IDREG(isar, ID_AA64ZFR0); t =3D FIELD_DP64(t, ID_AA64ZFR0, SVEVER, 2); /* FEAT_SVE2p1 */ t =3D FIELD_DP64(t, ID_AA64ZFR0, AES, 2); /* FEAT_SVE_PMULL128 */ --=20 2.43.0 From nobody Mon Feb 9 04:27:53 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; dmarc=pass(p=none dis=none) header.from=linaro.org ARC-Seal: i=1; a=rsa-sha256; t=1763643572; cv=none; d=zohomail.com; s=zohoarc; b=WWFdPftB/2vVwDV4+Ow0CspyG/dQ7yTZ2zn4Ni5Xl/VEbOSgnFmCDbszGXgSPBgObSlQ6+VyAKok8a8EUQUMPVOAqNkZzpZF3ShOcPkMLZC3Z9KMHIQmqVk/gdzVpnPGb0FPUBbQCFPzoeAlBoveROftzV55AX2FzpyGtOZh8r8= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1763643572; h=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=T1HltNTxDcXeiGq7vyFlKSycQx69En1sBeoERy2dcAA=; b=mCb9pj+TorQXPTY8lOSCzlsHiAPX2jyDRVcSf8/RNzkD7FA96I7e5NukSHbKSc0C2yQ9GClVj50j+2WYBhFPuBGXyXol32BzgbVLxpFw3esx7hXsFmGsZAGKUekH4Xi1nXNtjHYhkTOUJROh1/YE2hF6hGMYtpSajIkNrpiQ2SY= ARC-Authentication-Results: i=1; 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; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1763643572532338.8873350586965; Thu, 20 Nov 2025 04:59:32 -0800 (PST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1vM4Fi-0008Mq-Mh; Thu, 20 Nov 2025 07:59:10 -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 1vM4Fe-0008JT-6G for qemu-devel@nongnu.org; Thu, 20 Nov 2025 07:59:06 -0500 Received: from mail-wr1-x42c.google.com ([2a00:1450:4864:20::42c]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1vM4Fb-0006KC-MI for qemu-devel@nongnu.org; Thu, 20 Nov 2025 07:59:05 -0500 Received: by mail-wr1-x42c.google.com with SMTP id ffacd0b85a97d-42bb288c1bfso559095f8f.2 for ; Thu, 20 Nov 2025 04:59:02 -0800 (PST) Received: from jimm-x1.. ([2a10:d582:31e:0:1328:3324:f0af:9332]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-477b831421fsm46082145e9.10.2025.11.20.04.59.00 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 20 Nov 2025 04:59:00 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1763643541; x=1764248341; darn=nongnu.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=T1HltNTxDcXeiGq7vyFlKSycQx69En1sBeoERy2dcAA=; b=mYDJDcyeL1AxP8RTjqJa5AkypZR8XUKiUn6gPTZIgsgGl/caI2+Ufc9OVNmUijaoHw Q9lQOjVAHLkXV7pS/bRT+gtU5CY4n29cofdP0kHQPFeU7Te9Gpeh6OqICDk4FFUbEXaL 4Y3B3L5U4GS8+pk07OFCgNdrbm/3RlKd+pFpKUKjWtBaA/fw0WnVqqxnLWIY0SZjs/fO aMM5FkGNtxaQNML6mPgV6m5xWMccIUHIxUlWIHpNNzGA2D5UXrB8+LsIB/TsFbnjcodC 4QRZD/Utsvdmaw3SuGXzXCaVGYWRceP5+fNfJGSzXh8/7RuxWyds5Pe1O4BUPhmkxQzN vPew== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1763643541; x=1764248341; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=T1HltNTxDcXeiGq7vyFlKSycQx69En1sBeoERy2dcAA=; b=Ul/mZpz9w/YVzbnrd7qlYBWQko+IQ241cM/FrVVgXjA6l5mLbh4dk/k+Tx0rPzieal kyVPwWn1U5VZxHaplHrdietLcoayGKcPb2iY9fGZMt7CvcMpP/yLp++WE47nvjWOrOpc /apRHrzfWWluv4Y4pJwfWoMskVkVmE/yZnyk6dD9AhwcmfQ0SUELF7wUSWoINz/J4L4r xwGCOD807Is+jAZlr1fRLdGoGzymPkYD7ttR5s0Nnsc/8Fs8BzTYcrAogNV2/O/u1xo/ Qo0AtNiCB51dtItEamvoTO3imVpXpF1gp6zi0ra6Zg6/pLV7wHkhYYM7qmncLfTWEvYH npeA== X-Gm-Message-State: AOJu0Yyi/cY3BuAV3XrS1Z3DBWvohO+abg6UrfyRmQE8juzxNaafUwxO PTyTNcTQ77BadXi8s9AEtnNTnr1rotYJRv7ZJJfKIub++JB7KcsrvbjbTFhHtRvzINZY4SdWxgG kEKOgOUw= X-Gm-Gg: ASbGncsHxlR/TF2z4Q2LoawUAI5NXtF+9WMnTgemphhNQcFAdduIyKcT35NfIRTV3uS OOxPClNekBQfoucnZZxBkt362JVGeP/WXRqu59SvtReIt4rzMerhT9LbnfgJezVq6ClcnTLLN5K 9MtA+FC4wwQk8Ud1YFJwwg+TBIJuYXq32Pz86flCD3558ybz7RKI9zQ/ERCIwyfcdnUyISvl5UZ ppAVmtl/wu91vrXZofk3Pzs1apOWaetV9fcDo2TfIpic01uRmhGfpXryz63tprjUVyU0/da/F/0 JxheUGDzuRJaXtnimD4f1EH86XMoKtYOBTngSqtPrLO+JEvmNMFOZu3EDDBM1myVOZV4HyYcPJe lih/8NbvpbI66KfaQIOFVWUTft10DModJ4uMfFXXguX4wXjSfqUDN4HKbPPNIbmzwHh2JX5RQnS j9knQ2dleTJFcXOKY0fvSdKkY= X-Google-Smtp-Source: AGHT+IGXkFuEcDjABO5rJR8uEBtSRVgTHAfrr2Jf0BEmdTwImgqQMaG6AcV57zlSI1dcdUlClSImkw== X-Received: by 2002:a05:600c:4695:b0:477:73cc:82c2 with SMTP id 5b1f17b1804b1-477b8953aa8mr27783615e9.9.1763643541047; Thu, 20 Nov 2025 04:59:01 -0800 (PST) From: Jim MacArthur To: qemu-devel@nongnu.org Cc: Jim MacArthur Subject: [PATCH 3/3] tests: Add test for ASID2 and write/read of feature bits Date: Thu, 20 Nov 2025 12:54:16 +0000 Message-ID: <20251120125833.123813-4-jim.macarthur@linaro.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20251120125833.123813-1-jim.macarthur@linaro.org> References: <20251120125833.123813-1-jim.macarthur@linaro.org> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable 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 client-ip=2a00:1450:4864:20::42c; envelope-from=jim.macarthur@linaro.org; helo=mail-wr1-x42c.google.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, 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_PASS=-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: 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 @linaro.org) X-ZM-MESSAGEID: 1763643574536018900 Content-Type: text/plain; charset="utf-8" Tests ASID2 is present and FNG1, FNG0, and A2 are writable, and read value shows the update. Signed-off-by: Jim MacArthur Reviewed-by: Alex Benn=C3=A9e --- tests/tcg/aarch64/system/asid2.c | 53 ++++++++++++++++++++++++++++++++ 1 file changed, 53 insertions(+) create mode 100644 tests/tcg/aarch64/system/asid2.c diff --git a/tests/tcg/aarch64/system/asid2.c b/tests/tcg/aarch64/system/as= id2.c new file mode 100644 index 0000000000..cfe69db2ae --- /dev/null +++ b/tests/tcg/aarch64/system/asid2.c @@ -0,0 +1,53 @@ +/* + * ASID2 Feature presence and enabled TCR2_EL1 bits test + * + * Copyright (c) 2025 Linaro Ltd + * + * SPDX-License-Identifier: GPL-2.0-or-later + */ + +#include +#include + +#define ID_AA64MMFR4_EL1 "S3_0_C0_C7_4" +#define TCR2_EL1 "S3_0_C2_C0_3" + +int main() +{ + /* + * Test for presence of ASID2 and three feature bits enabled by it: + * https://developer.arm.com/documentation/109697/2025_09/Feature-desc= riptions/The-Armv9-5-architecture-extension + * Bits added are FNG1, FNG0, and A2. These should be RES0 if A2 is + * not enabled and read as the written value if A2 is enabled. + */ + + uint64_t out; + uint64_t idreg; + + /* Mask is FNG1, FNG0, and A2 */ + const uint64_t feature_mask =3D (1ULL << 18 | 1ULL << 17 | 1ULL << 16); + const uint64_t in =3D feature_mask; + + asm("mrs %[x1], " ID_AA64MMFR4_EL1 "\n\t" + : [x1] "=3Dr" (idreg)); + if ((idreg & 0xF00) !=3D 0) { + /* ASID2 is enabled */ + } else { + ml_printf("FAIL: ASID2 not present in ID_AA64MMFR4 (%lx)\n", idreg= ); + return 1; + } + + asm("msr " TCR2_EL1 ", %[x0]\n\t" + "mrs %[x1], " TCR2_EL1 "\n\t" + : [x1] "=3Dr" (out) + : [x0] "r" (in)); + + if ((out & feature_mask) =3D=3D in) { + ml_printf("OK\n"); + return 0; + } else { + ml_printf("FAIL: read value %lx !=3D written value %lx\n", + out & feature_mask, in); + return 1; + } +} --=20 2.43.0