From nobody Wed Sep 23 03:56:54 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=gmail.com ARC-Seal: i=1; a=rsa-sha256; t=1785943930; cv=none; d=zohomail.com; s=zohoarc; b=Z8KHDm7h8Wq/qye6Ljd1krFUehOJpf7Nw+NjpSvW3GVCgC8SgKOgXcS/CohA256qUqWRurCl4NXY8t9i7ofFiUsu2uL+h0yz05pQL8P3KAOaOz6uu+vjbcu/BAFveJRs6GlDgfYImLhnrj6CaT+3AzHijrIHB5DPul3QIt+zyD0= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1785943930; 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=gOu86j/s+4k/C1Vcjz8sgwYcvvMNp55MwKcmmYQitoI=; b=AVQl7hSUvm5fdU6KysgWrZVGvMzJcYSHJNSINMWEqtjSWReAw33SIIVr1qUNndThSpvQv9CytnnlglREf6DhDfVshHzsgfbPPl2EI2o8BK0mLmc0B9OokaUWlPicw/na5I3fCzNVmPwd43MrCbaJt7GxVOyqheVt7euqrWjG1IM= 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 lists1p.gnu.org (lists1p.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1785943930193908.2230348713439; Wed, 5 Aug 2026 08:32:10 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists1p.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1wrdZO-0005mH-FI; Wed, 05 Aug 2026 11:30:14 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists1p.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1wrdZM-0005lM-Tr for qemu-devel@nongnu.org; Wed, 05 Aug 2026 11:30:12 -0400 Received: from mail-oi1-x22b.google.com ([2607:f8b0:4864:20::22b]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1wrdZK-0007bn-Gs for qemu-devel@nongnu.org; Wed, 05 Aug 2026 11:30:12 -0400 Received: by mail-oi1-x22b.google.com with SMTP id 5614622812f47-495c49f8eccso753152b6e.3 for ; Wed, 05 Aug 2026 08:30:10 -0700 (PDT) Received: from HPE-2MQ6131DV6.ams.hpecorp.net ([170.85.99.9]) by smtp.gmail.com with ESMTPSA id 5614622812f47-4afae75ce1bsm2185614b6e.15.2026.08.05.08.30.07 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 05 Aug 2026 08:30:08 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1785943809; x=1786548609; 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:content-type; bh=gOu86j/s+4k/C1Vcjz8sgwYcvvMNp55MwKcmmYQitoI=; b=I/L6e0hf5U/0/mwtjWfJkJNnsAh/ju0e3YxGfn5/15ECblat+vbqDU8F2fizRC06Xl DW59fk6Gmg/AF6k8meiJ+o4TIZF2odbT8K9nGA8uVOt+zBub7XlNs0ygtWc0JRvodARz 3gO0NC2NqssljbjYxuC7nuJpsvrmH8gouVUSzjhxpbNY+4zOpveAEa6LRQKebZWzE/E8 brMqChQeod9B/ZMoBeFaCtbRwb/zM7M3gaH2rDqIBEX+YKT1nIzJ4zAFeyli+kFM97dt 9QxGjZTND32Rb7h9zVgAiX8Ny+PcT1g7jyiTDzf/a0ejIeTOM8e5xxWk3CX5xfGPMmVX DwsQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1785943809; x=1786548609; 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:content-type; bh=gOu86j/s+4k/C1Vcjz8sgwYcvvMNp55MwKcmmYQitoI=; b=M+esX7lvovo49VvldVpmoOtgnBVeEbavPvnsRXkaCDvcgLCdtg29KMeQ67pcH0a2Bm VPWal1fQ4mRVzSngZ+dr93DpAdqNp4JLdF7XtB+1YKwFkDGNjHLMn5372HM+mn7Cqe51 VMynrx7fWwfapWCWQatAQV/xa5TIwpRleRfXIlcKYrxxOVMLiijeFaW+cUkLsE/I2qLf t4CxG1i/AewK3hVk7+GqKK/KzXqUk1YHHV5HeNLqjs8B5I6YG7XdwQwgV8Naie37ULZ/ 0nIhZf8udDia+yLVmTWIrt5p6tzqh43xkutaq8FUWvd+azviXqG/vark/OnbQPjMvmUc Ur7Q== X-Gm-Message-State: AOJu0YymIKu3Z1TmnQS0czknp5mGN+eJ3Sqfrc/gNct1i2oihqt6LrwW WH3v75StZsWGQCU8DaHbCM3JqUWs3nEXK6ptHczJZeGJY711KW7tPFbEYUbVQeUz X-Gm-Gg: AR+sD13WCdLH4ZOkel5Sw9y1VnN+qMCsJ5UMTHmiqqXk/9sNkUB8nUDNjaP/eNbGXnR grXUuaNESjsK5JfMjR8oWlXPXd1/tQ7weLt6CokErviwzgZ5+KhZfRv9sE+pWw/pxoFZ2mhCOwn 4FObv0wdtjBpY808Q57IVSbzH2FDeUgQtrfd4xQJ+MwfUziMHWiCvK4NrT5hv4eMfFGEZho8GXB G88bqdUcdjPIrxaBWed53WxZ04otIYCV5QMf5TdJIezRaHwWmiX77KjzfORhjgWwPSmJouz/vM5 aod7Bn98jUzJkQbdzV68XzD1RtI/dfkick3L/f2Lje+Tb9EtxpFeJRCfFzsBiu2uxYjYIJtgjNh RZGCcPh4Slcw+9kWNnb6n6GuMSnUTaRfSDnXTy9PxYWQ10N4uBSe6f74B4gXHPkTrVjBS4eriHa IJ0Fvo531GAEQhXWkipZX0wsKgilZBl4cxVm4mxiV2lF4pBpYvwC4nsrZo57AE0KH2EOEy/u2x3 +6QJUBYkynr X-Received: by 2002:a05:6808:5384:b0:493:a850:d93a with SMTP id 5614622812f47-4afadf13c46mr4411643b6e.6.1785943809066; Wed, 05 Aug 2026 08:30:09 -0700 (PDT) From: Simon Xu To: qemu-devel@nongnu.org Cc: qemu-arm@nongnu.org, Owen Giles , Peter Maydell , Pierrick Bouvier , Robert Elliott , Simon Xu Subject: [PATCH v2 1/9] target/arm/tcg/cpu-v7m.c: add cortex-m85 model Date: Wed, 5 Aug 2026 10:29:57 -0500 Message-ID: <20260805153005.9989-2-simonxhy0404@gmail.com> X-Mailer: git-send-email 2.53.0 In-Reply-To: <20260805153005.9989-1-simonxhy0404@gmail.com> References: <20260805153005.9989-1-simonxhy0404@gmail.com> 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=lists1p.gnu.org; Received-SPF: pass client-ip=2607:f8b0:4864:20::22b; envelope-from=simonxhy0404@gmail.com; helo=mail-oi1-x22b.google.com X-Spam_score_int: -17 X-Spam_score: -1.8 X-Spam_bar: - X-Spam_report: (-1.8 / 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, FREEMAIL_ENVFROM_END_DIGIT=0.25, FREEMAIL_FROM=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=unavailable 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 @gmail.com) X-ZM-MESSAGEID: 1785943933136158500 Content-Type: text/plain; charset="utf-8" Add Arm Cortex-M85 CPU, modeld after the existing M55 CPU. The new M85 feature PACBTI is not implemented in QEMU and the midr value is based off the r1p1 product revision identifier. Arm Cortex-M85 TRM: https://developer.arm.com/documentation/101924/0101/ Reviewed-by: Owen Giles Reviewed-by: Robert Elliott Signed-off-by: Simon Xu --- target/arm/tcg/cpu-v7m.c | 41 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 41 insertions(+) diff --git a/target/arm/tcg/cpu-v7m.c b/target/arm/tcg/cpu-v7m.c index dc249ce1f1..a1e62a20f8 100644 --- a/target/arm/tcg/cpu-v7m.c +++ b/target/arm/tcg/cpu-v7m.c @@ -237,6 +237,45 @@ static void cortex_m55_initfn(Object *obj) cpu->ctr =3D 0x8303c003; } =20 +static void cortex_m85_initfn(Object *obj) +{ + ARMCPU *cpu =3D ARM_CPU(obj); + ARMISARegisters *isar =3D &cpu->isar; + + /* QEMU currently does not support the PACBTI feature */ + set_feature(&cpu->env, ARM_FEATURE_V8); + set_feature(&cpu->env, ARM_FEATURE_V8_1M); + set_feature(&cpu->env, ARM_FEATURE_M); + set_feature(&cpu->env, ARM_FEATURE_M_MAIN); + set_feature(&cpu->env, ARM_FEATURE_M_SECURITY); + set_feature(&cpu->env, ARM_FEATURE_THUMB_DSP); + cpu->midr =3D 0x411fd231; /* r1p1 */ + cpu->revidr =3D 0; + cpu->pmsav7_dregion =3D 16; + cpu->sau_sregion =3D 8; + /* These are the MVFR* values for the FPU + full MVE configuration */ + cpu->isar.mvfr0 =3D 0x10110221; + cpu->isar.mvfr1 =3D 0x12100211; + cpu->isar.mvfr2 =3D 0x00000040; + SET_IDREG(isar, ID_PFR0, 0x20000030); + SET_IDREG(isar, ID_PFR1, 0x00000230); + SET_IDREG(isar, ID_DFR0, 0x10200000); + SET_IDREG(isar, ID_AFR0, 0x00000000); + SET_IDREG(isar, ID_MMFR0, 0x00111040); + SET_IDREG(isar, ID_MMFR1, 0x00000000); + SET_IDREG(isar, ID_MMFR2, 0x01000000); + SET_IDREG(isar, ID_MMFR3, 0x00000011); + SET_IDREG(isar, ID_ISAR0, 0x01103110); + SET_IDREG(isar, ID_ISAR1, 0x02212000); + SET_IDREG(isar, ID_ISAR2, 0x20232232); + SET_IDREG(isar, ID_ISAR3, 0x01111131); + SET_IDREG(isar, ID_ISAR4, 0x01310132); + SET_IDREG(isar, ID_ISAR5, 0x00000000); + SET_IDREG(isar, ID_ISAR6, 0x00000000); + SET_IDREG(isar, CLIDR, 0x00000000); /* caches not implemented */ + cpu->ctr =3D 0x8303c003; +} + static const TCGCPUOps arm_v7m_tcg_ops =3D { /* ARM processors have a weak memory model */ .guest_default_memory_order =3D 0, @@ -290,6 +329,8 @@ static const ARMCPUInfo arm_v7m_cpus[] =3D { .class_init =3D arm_v7m_class_init }, { .name =3D "cortex-m55", .initfn =3D cortex_m55_initfn, .class_init =3D arm_v7m_class_init }, + { .name =3D "cortex-m85", .initfn =3D cortex_m85_initfn, + .class_init =3D arm_v7m_class_init }, }; =20 static void arm_v7m_cpu_register_types(void) --=20 2.53.0