linux-arm-kernel.lists.infradead.org archive mirror
 help / color / mirror / Atom feed
From: Marc Zyngier <maz@kernel.org>
To: kvmarm@lists.linux.dev, linux-arm-kernel@lists.infradead.org,
	kvm@vger.kernel.org
Cc: James Morse <james.morse@arm.com>,
	Suzuki K Poulose <suzuki.poulose@arm.com>,
	Oliver Upton <oliver.upton@linux.dev>,
	Zenghui Yu <yuzenghui@huawei.com>, Fuad Tabba <tabba@google.com>,
	Joey Gouly <joey.gouly@arm.com>, Mark Brown <broonie@kernel.org>
Subject: [PATCH 0/7] KVM: arm64: Add support for FP8
Date: Mon,  8 Jul 2024 16:44:31 +0100	[thread overview]
Message-ID: <20240708154438.1218186-1-maz@kernel.org> (raw)

Although FP8 support was merged in 6.9, the KVM side was dropped, with
no sign of it being picked up again. Given that its absence is getting
in the way of NV upstreaming (HCRX_EL2 needs fleshing out), here's a
small series addressing it.

The support is following the save/restore model established for the
rest of the FP code, with FPMR being tied to it. The sole additions
are the handling of traps in a nested context, and the corresponding
ID registers being made writable. As an extra cleanup, SVCR and FPMR
are moved into the sysreg array.

Patches are on top of kvmarm/next, as this would otherwise majorly
conflict. Note that this is compile-tested only, as I have no access
to FP8 HW or model (and running NV in a model is not something I wish
to entertain ever again).

Also, this is *not* 6.11 material. 6.12 if we're lucky.

Marc Zyngier (7):
  KVM: arm64: Move SVCR into the sysreg array
  KVM: arm64: Move FPMR into the sysreg array
  KVM: arm64: Add save/restore support for FPMR
  KVM: arm64: Honor trap routing for FPMR
  KVM: arm64: Expose ID_AA64FPFR0_EL1 as a writable ID reg
  KVM: arm64: Enable FP8 support when available and configured
  KVM: arm64: Expose ID_AA64PFR2_EL1 to userspace and guests

 arch/arm64/include/asm/kvm_host.h  | 16 ++++++++++--
 arch/arm64/kvm/emulate-nested.c    |  8 ++++++
 arch/arm64/kvm/fpsimd.c            |  5 ++--
 arch/arm64/kvm/hyp/nvhe/hyp-main.c |  4 +++
 arch/arm64/kvm/hyp/nvhe/switch.c   | 10 +++++++
 arch/arm64/kvm/hyp/vhe/switch.c    |  4 +++
 arch/arm64/kvm/sys_regs.c          | 42 +++++++++++++++++++++++++++---
 7 files changed, 82 insertions(+), 7 deletions(-)

-- 
2.39.2



             reply	other threads:[~2024-07-08 15:46 UTC|newest]

Thread overview: 16+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-07-08 15:44 Marc Zyngier [this message]
2024-07-08 15:44 ` [PATCH 1/7] KVM: arm64: Move SVCR into the sysreg array Marc Zyngier
2024-07-08 15:53   ` Mark Brown
2024-07-08 15:44 ` [PATCH 2/7] KVM: arm64: Move FPMR " Marc Zyngier
2024-07-08 15:44 ` [PATCH 3/7] KVM: arm64: Add save/restore support for FPMR Marc Zyngier
2024-07-08 17:34   ` Mark Brown
2024-07-08 17:47     ` Marc Zyngier
2024-07-08 17:53       ` Marc Zyngier
2024-07-09  9:06         ` Marc Zyngier
2024-07-09 15:43           ` Mark Brown
2024-07-12 15:28           ` Mark Brown
2024-07-08 15:44 ` [PATCH 4/7] KVM: arm64: Honor trap routing " Marc Zyngier
2024-07-08 15:44 ` [PATCH 5/7] KVM: arm64: Expose ID_AA64FPFR0_EL1 as a writable ID reg Marc Zyngier
2024-07-08 15:44 ` [PATCH 6/7] KVM: arm64: Enable FP8 support when available and configured Marc Zyngier
2024-07-08 15:44 ` [PATCH 7/7] KVM: arm64: Expose ID_AA64PFR2_EL1 to userspace and guests Marc Zyngier
2024-07-08 17:53 ` [PATCH 0/7] KVM: arm64: Add support for FP8 Mark Brown

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20240708154438.1218186-1-maz@kernel.org \
    --to=maz@kernel.org \
    --cc=broonie@kernel.org \
    --cc=james.morse@arm.com \
    --cc=joey.gouly@arm.com \
    --cc=kvm@vger.kernel.org \
    --cc=kvmarm@lists.linux.dev \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=oliver.upton@linux.dev \
    --cc=suzuki.poulose@arm.com \
    --cc=tabba@google.com \
    --cc=yuzenghui@huawei.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).