Message ID | 20240607141242.2616580-20-avromanov@salutedevices.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | Support more Amlogic SoC families in crypto driver | expand |
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 <avromanov@salutedevices.com> > --- > .../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 >
Hello Rob, On Mon, Jun 10, 2024 at 04:32:19PM -0600, Rob Herring wrote: > 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. This is vendor design. In old SoC's power domain for crypto HW was not configurable, but in A1-series it is configurable. > > > > > Signed-off-by: Alexey Romanov <avromanov@salutedevices.com> > > --- > > .../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 > >
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:
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 <avromanov@salutedevices.com> --- .../bindings/crypto/amlogic,gxl-crypto.yaml | 21 +++++++++++++++++-- 1 file changed, 19 insertions(+), 2 deletions(-)