All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] arm64: Document boot requirements for FEAT_SME_FA64
@ 2021-10-25 12:48 Mark Brown
  2021-10-26  9:29 ` Will Deacon
  0 siblings, 1 reply; 3+ messages in thread
From: Mark Brown @ 2021-10-25 12:48 UTC (permalink / raw)
  To: Catalin Marinas, Will Deacon; +Cc: linux-arm-kernel, Mark Brown

The EAC1 release of the SME specification adds the FA64 feature which
requires enablement at higher ELs before lower ELs can use it. Document
what we require from higher ELs in our boot requirements.

Signed-off-by: Mark Brown <broonie@kernel.org>
---
 Documentation/arm64/booting.rst | 10 ++++++++++
 1 file changed, 10 insertions(+)

diff --git a/Documentation/arm64/booting.rst b/Documentation/arm64/booting.rst
index 3f9d86557c5e..0047d3b42d5c 100644
--- a/Documentation/arm64/booting.rst
+++ b/Documentation/arm64/booting.rst
@@ -340,6 +340,16 @@ Before jumping into the kernel, the following conditions must be met:
     - SMCR_EL2.LEN must be initialised to the same value for all CPUs the
       kernel will execute on.
 
+  For CPUs with the Scalable Matrix Extension FA64 feature (FEAT_SME_FA64)
+
+  - If EL3 is present:
+
+    - SMCR_EL3.FA64 (bit 31) must be initialised to to 0b1.
+
+ - If the kernel is entered at EL1 and EL2 is present:
+
+    - SMCR_EL2.FA64 (bit 31) must be initialised to to 0b1.
+
 The requirements described above for CPU mode, caches, MMUs, architected
 timers, coherency and system registers apply to all CPUs.  All CPUs must
 enter the kernel in the same exception level.  Where the values documented
-- 
2.30.2


_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

^ permalink raw reply related	[flat|nested] 3+ messages in thread

* Re: [PATCH] arm64: Document boot requirements for FEAT_SME_FA64
  2021-10-25 12:48 [PATCH] arm64: Document boot requirements for FEAT_SME_FA64 Mark Brown
@ 2021-10-26  9:29 ` Will Deacon
  2021-10-26 10:33   ` Mark Brown
  0 siblings, 1 reply; 3+ messages in thread
From: Will Deacon @ 2021-10-26  9:29 UTC (permalink / raw)
  To: Mark Brown; +Cc: Catalin Marinas, linux-arm-kernel

On Mon, Oct 25, 2021 at 01:48:22PM +0100, Mark Brown wrote:
> The EAC1 release of the SME specification adds the FA64 feature which
> requires enablement at higher ELs before lower ELs can use it. Document
> what we require from higher ELs in our boot requirements.
> 
> Signed-off-by: Mark Brown <broonie@kernel.org>
> ---
>  Documentation/arm64/booting.rst | 10 ++++++++++
>  1 file changed, 10 insertions(+)
> 
> diff --git a/Documentation/arm64/booting.rst b/Documentation/arm64/booting.rst
> index 3f9d86557c5e..0047d3b42d5c 100644
> --- a/Documentation/arm64/booting.rst
> +++ b/Documentation/arm64/booting.rst
> @@ -340,6 +340,16 @@ Before jumping into the kernel, the following conditions must be met:
>      - SMCR_EL2.LEN must be initialised to the same value for all CPUs the
>        kernel will execute on.
>  
> +  For CPUs with the Scalable Matrix Extension FA64 feature (FEAT_SME_FA64)
> +
> +  - If EL3 is present:
> +
> +    - SMCR_EL3.FA64 (bit 31) must be initialised to to 0b1.
> +
> + - If the kernel is entered at EL1 and EL2 is present:
> +
> +    - SMCR_EL2.FA64 (bit 31) must be initialised to to 0b1.

"to to"

With the second bullet, does that mean KVM is in violation of our own
documentation?

Will

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [PATCH] arm64: Document boot requirements for FEAT_SME_FA64
  2021-10-26  9:29 ` Will Deacon
@ 2021-10-26 10:33   ` Mark Brown
  0 siblings, 0 replies; 3+ messages in thread
From: Mark Brown @ 2021-10-26 10:33 UTC (permalink / raw)
  To: Will Deacon; +Cc: Catalin Marinas, linux-arm-kernel


[-- Attachment #1.1: Type: text/plain, Size: 572 bytes --]

On Tue, Oct 26, 2021 at 10:29:25AM +0100, Will Deacon wrote:
> On Mon, Oct 25, 2021 at 01:48:22PM +0100, Mark Brown wrote:

> > + - If the kernel is entered at EL1 and EL2 is present:
> > +
> > +    - SMCR_EL2.FA64 (bit 31) must be initialised to to 0b1.

> With the second bullet, does that mean KVM is in violation of our own
> documentation?

No worse than it was before - we already document the requirements for
baseline SME which we don't ourselves satisfy, no guest will be able to
get as far as noticing that FA64 isn't enabled since all SME operations
will trap.

[-- Attachment #1.2: signature.asc --]
[-- Type: application/pgp-signature, Size: 488 bytes --]

[-- Attachment #2: Type: text/plain, Size: 176 bytes --]

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2021-10-26 10:34 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-10-25 12:48 [PATCH] arm64: Document boot requirements for FEAT_SME_FA64 Mark Brown
2021-10-26  9:29 ` Will Deacon
2021-10-26 10:33   ` Mark Brown

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.