2024-06-07 14:15:32

by Alexey Romanov

[permalink] [raw]
Subject: [PATCH v8 19/23] dt-bindings: crypto: meson: support new SoC's

Now crypto module available at G12A/G12B/S4/A1/SM1/AXG.

1. Add new compatibles:
- amlogic,g12a-crypto
- amlogic,axg-crypto
- amlogic,a1-crypto
- amlogic,s4-crypto (uses a1-crypto as fallback)

Difference between this compatibles:
* Different registers offset and the number of setup descriptors.
* GXL doesn't support hashing like the others.
* G12A/B and A1/S4 crypto HW don't support 192 AES key.
* GXL, G12A/B and AXG require a reverse IV key before processing.

2. Add power-domains in schema, which is required only for A1.

Signed-off-by: Alexey Romanov <[email protected]>
---
.../bindings/crypto/amlogic,gxl-crypto.yaml | 21 +++++++++++++++++--
1 file changed, 19 insertions(+), 2 deletions(-)

diff --git a/Documentation/devicetree/bindings/crypto/amlogic,gxl-crypto.yaml b/Documentation/devicetree/bindings/crypto/amlogic,gxl-crypto.yaml
index aff6f3234dc9..a8344de71b4a 100644
--- a/Documentation/devicetree/bindings/crypto/amlogic,gxl-crypto.yaml
+++ b/Documentation/devicetree/bindings/crypto/amlogic,gxl-crypto.yaml
@@ -11,8 +11,16 @@ maintainers:

properties:
compatible:
- items:
- - const: amlogic,gxl-crypto
+ oneOf:
+ - items:
+ - enum:
+ - amlogic,s4-crypto
+ - const: amlogic,a1-crypto
+ - enum:
+ - amlogic,gxl-crypto
+ - amlogic,axg-crypto
+ - amlogic,g12a-crypto
+ - amlogic,a1-crypto

reg:
maxItems: 1
@@ -37,6 +45,15 @@ required:
- clocks
- clock-names

+allOf:
+ - if:
+ properties:
+ compatible:
+ const: amlogic,a1-crypto
+ then:
+ required:
+ - power-domains
+
additionalProperties: false

examples:
--
2.34.1



2024-06-10 22:32:27

by Rob Herring (Arm)

[permalink] [raw]
Subject: Re: [PATCH v8 19/23] dt-bindings: crypto: meson: support new SoC's

On Fri, Jun 07, 2024 at 05:12:38PM +0300, Alexey Romanov wrote:
> Now crypto module available at G12A/G12B/S4/A1/SM1/AXG.
>
> 1. Add new compatibles:
> - amlogic,g12a-crypto
> - amlogic,axg-crypto
> - amlogic,a1-crypto
> - amlogic,s4-crypto (uses a1-crypto as fallback)
>
> Difference between this compatibles:
> * Different registers offset and the number of setup descriptors.
> * GXL doesn't support hashing like the others.
> * G12A/B and A1/S4 crypto HW don't support 192 AES key.
> * GXL, G12A/B and AXG require a reverse IV key before processing.
>
> 2. Add power-domains in schema, which is required only for A1.

You added it in the prior patch, was that supposed to be done here? Kind
of strange for h/w to optionally have a power-domain... It either has
one or it doesn't. OTOH, making required is an ABI break.

>
> Signed-off-by: Alexey Romanov <[email protected]>
> ---
> .../bindings/crypto/amlogic,gxl-crypto.yaml | 21 +++++++++++++++++--
> 1 file changed, 19 insertions(+), 2 deletions(-)
>
> diff --git a/Documentation/devicetree/bindings/crypto/amlogic,gxl-crypto.yaml b/Documentation/devicetree/bindings/crypto/amlogic,gxl-crypto.yaml
> index aff6f3234dc9..a8344de71b4a 100644
> --- a/Documentation/devicetree/bindings/crypto/amlogic,gxl-crypto.yaml
> +++ b/Documentation/devicetree/bindings/crypto/amlogic,gxl-crypto.yaml
> @@ -11,8 +11,16 @@ maintainers:
>
> properties:
> compatible:
> - items:
> - - const: amlogic,gxl-crypto
> + oneOf:
> + - items:
> + - enum:
> + - amlogic,s4-crypto
> + - const: amlogic,a1-crypto
> + - enum:
> + - amlogic,gxl-crypto
> + - amlogic,axg-crypto
> + - amlogic,g12a-crypto
> + - amlogic,a1-crypto
>
> reg:
> maxItems: 1
> @@ -37,6 +45,15 @@ required:
> - clocks
> - clock-names
>
> +allOf:
> + - if:
> + properties:
> + compatible:
> + const: amlogic,a1-crypto
> + then:
> + required:
> + - power-domains
> +
> additionalProperties: false
>
> examples:
> --
> 2.34.1
>