Message ID | 20240820145623.3500864-19-avromanov@salutedevices.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | Support more Amlogic SoC families in crypto driver | expand |
On Tue, Aug 20, 2024 at 05:56:18PM +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. > This is specific vendor design: in old SoC's power domain for > crypto HW was not configurable, but in A1-series it is configurable. You added this in the previous patch. So I withdraw my Reviewed-by. > > 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 7300328de1d5..106a9d1fed69 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 > @@ -33,6 +41,15 @@ required: > - interrupts > - clocks > > +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 7300328de1d5..106a9d1fed69 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 @@ -33,6 +41,15 @@ required: - interrupts - clocks +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. This is specific 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(-)