Re: [RFC v1 5/5] dt-bindings: riscv: document vector crypto requirements

Clément Léger
2024-10-03T07:59:49Z

On 02/10/2024 18:10, Conor Dooley wrote:
> From: Conor Dooley <conor.dooley@microchip.com>
>
> Section 35.2. Extensions Overview of [1] says:
> | The Zvknhb and Zvbc Vector Crypto Extensions --and accordingly the composite extensions Zvkn and
> | Zvks-- (sic) require a Zve64x base, or application ("V") base Vector Extension.
> | All of the other Vector Crypto Extensions can be built on any embedded (Zve*) or application ("V") base
> | Vector Extension
>
> Apply these rules in the binding, so that invalid combinations can be
> avoided.
>
> Link: https://github.com/riscv/riscv-isa-manual/releases/tag/riscv-isa-release-698e64a-2024-09-09 [1]
> Signed-off-by: Conor Dooley <conor.dooley@microchip.com>
> ---
> .../devicetree/bindings/riscv/extensions.yaml | 32 +++++++++++++++++++
> 1 file changed, 32 insertions(+)
>
> diff --git a/Documentation/devicetree/bindings/riscv/extensions.yaml b/Documentation/devicetree/bindings/riscv/extensions.yaml
> index abf2579171c5b..02b822bbf341d 100644
> --- a/Documentation/devicetree/bindings/riscv/extensions.yaml
> +++ b/Documentation/devicetree/bindings/riscv/extensions.yaml
> @@ -651,6 +651,38 @@ properties:
> - contains:
> const: zve64f
>
> + - if:
> + contains:
> + anyOf:
> + - const: zvbc
> + - const: zvkn
> + - const: zvknhb
> + - const: zvks

Hey Conor,

Shouldn't zvksed and zvksh be part odf this list ? My understanding of
the spec might be wrong but "Zvks--" seems like a poor-man's wildcard
for Zvks* extensions ?

Thanks,

Clément

> + then:
> + contains:
> + anyOf:
> + - const: v
> + - const: zve64x
> +
> + - if:
> + contains:
> + anyOf:
> + - const: zvbb
> + - const: zvkb
> + - const: zvkg
> + - const: zvkned
> + - const: zvknha
> + - const: zvksed
> + - const: zvksh
> + - const: zvknc
> + - const: zvkng
> + - const: zvkt
> + then:
> + contains:
> + anyOf:
> + - const: v
> + - const: zve32x
> +
> allOf:
> # Zcf extension does not exist on rv64