[PATCH v6 0/2] arm/hvf: Add SME2 support

Manos Pitsidianakis posted 2 patches 1 month, 1 week ago
Patches applied successfully (tree, apply log)
git fetch https://github.com/patchew-project/qemu tags/patchew/20260303-sme2-hvf-v6-0-b473702d8287@linaro.org
Maintainers: Alexander Graf <agraf@csgraf.de>, Peter Maydell <peter.maydell@linaro.org>
There is a newer version of this series
target/arm/hvf/hvf.c           | 312 +++++++++++++++++++++++++++++++++++++++--
target/arm/hvf/hvf_sme_stubs.h | 158 +++++++++++++++++++++
target/arm/hvf/sysreg.c.inc    |   8 ++
target/arm/hvf_arm.h           |  41 ++++++
target/arm/machine.c           |   2 +-
5 files changed, 505 insertions(+), 16 deletions(-)
[PATCH v6 0/2] arm/hvf: Add SME2 support
Posted by Manos Pitsidianakis 1 month, 1 week ago
M4/M5 Macs support SME2, and HVF exposes this functionality in its
public API.

Add support for it in QEMU.

This was tested by running an SME2 benchmark from Arm [0]. savevm and
loadvm during the benchmark's run were used to verify migration works.

[0]:
https://learn.arm.com/learning-paths/cross-platform/multiplying-matrices-with-sme2/1-get-started/

Signed-off-by: Manos Pitsidianakis <manos.pitsidianakis@linaro.org>
---
Changes in v6:
- Remove host isar adjustment (thanks Richard)
- Link to v5: https://lore.kernel.org/qemu-devel/20260227-sme2-hvf-v5-0-1c60a92910c8@linaro.org

Changes in v5:
- Fix NEON registers getting zeroed when loading vmstate by setting SVCR first
- Link to v4: https://lore.kernel.org/qemu-devel/20260227-sme2-hvf-v4-0-3dae31a1876d@linaro.org

Changes in v4:
- Set cpu->sme_vq.supported in hvf_arm_set_cpu_features_from_host (thanks Richard)
- Removed two rogue lines that were smuggled in by git-rebase (thanks Mohamed)
- Link to v3: https://lore.kernel.org/qemu-devel/20260226-sme2-hvf-v3-0-ea5763dbeba2@linaro.org

Changes in v3:
- Rebased against master now that it supports SME-without-SVE setups for
  gdbstub
- Link to v2: https://lore.kernel.org/qemu-devel/20260115-sme2-hvf-v2-0-2eca481bd7ee@linaro.org

Changes in v2:
- Added stubs if hvf 15.2 headers are not available (suggested by agraf)
- Link to v1: https://lore.kernel.org/qemu-devel/20260114-sme2-hvf-v1-0-ce9599596736@linaro.org

---
Manos Pitsidianakis (2):
      hvf/arm: handle FEAT_SME2 migration
      hvf/arm: expose FEAT_SME2 to guest if available

 target/arm/hvf/hvf.c           | 312 +++++++++++++++++++++++++++++++++++++++--
 target/arm/hvf/hvf_sme_stubs.h | 158 +++++++++++++++++++++
 target/arm/hvf/sysreg.c.inc    |   8 ++
 target/arm/hvf_arm.h           |  41 ++++++
 target/arm/machine.c           |   2 +-
 5 files changed, 505 insertions(+), 16 deletions(-)
---
base-commit: d8a9d97317d03190b34498741f98f22e2a9afe3e
change-id: 20260114-sme2-hvf-105767189521

--
γαῖα πυρί μιχθήτω


Re: [PATCH v6 0/2] arm/hvf: Add SME2 support
Posted by Richard Henderson 1 month, 1 week ago
On 3/3/26 18:42, Manos Pitsidianakis wrote:
> Manos Pitsidianakis (2):
>        hvf/arm: handle FEAT_SME2 migration
>        hvf/arm: expose FEAT_SME2 to guest if available
> 
>   target/arm/hvf/hvf.c           | 312 +++++++++++++++++++++++++++++++++++++++--
>   target/arm/hvf/hvf_sme_stubs.h | 158 +++++++++++++++++++++
>   target/arm/hvf/sysreg.c.inc    |   8 ++
>   target/arm/hvf_arm.h           |  41 ++++++
>   target/arm/machine.c           |   2 +-
>   5 files changed, 505 insertions(+), 16 deletions(-)
> ---

Reviewed-by: Richard Henderson <richard.henderson@linaro.org>

r~
Re: [PATCH v6 0/2] arm/hvf: Add SME2 support
Posted by Peter Maydell 1 month, 1 week ago
On Tue, 3 Mar 2026 at 07:46, Richard Henderson
<richard.henderson@linaro.org> wrote:
>
> On 3/3/26 18:42, Manos Pitsidianakis wrote:
> > Manos Pitsidianakis (2):
> >        hvf/arm: handle FEAT_SME2 migration
> >        hvf/arm: expose FEAT_SME2 to guest if available
> >
> >   target/arm/hvf/hvf.c           | 312 +++++++++++++++++++++++++++++++++++++++--
> >   target/arm/hvf/hvf_sme_stubs.h | 158 +++++++++++++++++++++
> >   target/arm/hvf/sysreg.c.inc    |   8 ++
> >   target/arm/hvf_arm.h           |  41 ++++++
> >   target/arm/machine.c           |   2 +-
> >   5 files changed, 505 insertions(+), 16 deletions(-)
> > ---
>
> Reviewed-by: Richard Henderson <richard.henderson@linaro.org>



Applied to target-arm.next, thanks.

-- PMM