Message ID | 20240212135108.549755-17-avromanov@salutedevices.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | Support more Amlogic SoC families in crypto driver | expand |
On Mon, Feb 12, 2024 at 04:51:04PM +0300, Alexey Romanov wrote: > Now crypto module available at G12A/G12B/S4/A1/SM1/AXG. > > 1. Add new compatibles: > - amlogic,g12a-crypto > - amlogic,s4-crypto (uses g12a-crypto as fallback) > - amlogic,a1-crypto (uses g12a-crypto as fallback) > - amlogic,axg-crypto > > 2. All SoC's, exclude GXL, doesn't take a clock input for > Crypto IP. Make it required only for amlogic,gxl-crypto. > > 3. All SoC's, exclude GXL, uses only one interrupt flow > for Crypto IP. > > 4. Add power-domains in schema. > > Signed-off-by: Alexey Romanov <avromanov@salutedevices.com> > --- > .../bindings/crypto/amlogic,gxl-crypto.yaml | 43 ++++++++++++++++--- > 1 file changed, 36 insertions(+), 7 deletions(-) > > diff --git a/Documentation/devicetree/bindings/crypto/amlogic,gxl-crypto.yaml b/Documentation/devicetree/bindings/crypto/amlogic,gxl-crypto.yaml > index 948e11ebe4ee..41f0153d58c8 100644 > --- a/Documentation/devicetree/bindings/crypto/amlogic,gxl-crypto.yaml > +++ b/Documentation/devicetree/bindings/crypto/amlogic,gxl-crypto.yaml > @@ -11,20 +11,30 @@ maintainers: > > properties: > compatible: > - items: > - - const: amlogic,gxl-crypto > + oneOf: > + - items: > + - enum: > + - amlogic,a1-crypto > + - amlogic,s4-crypto > + - const: amlogic,g12a-crypto > + - enum: > + - amlogic,gxl-crypto > + - amlogic,axg-crypto > + - amlogic,g12a-crypto > > reg: > maxItems: 1 > > interrupts: > - items: > - - description: Interrupt for flow 0 > - - description: Interrupt for flow 1 > + minItems: 1 > + maxItems: 2 Just keep the descrptions here and add 'minItems: 1'. Then in the if/then schema, you only need minItems and maxItems to require 1 or 2 interrupts. > > clocks: > maxItems: 1 > > + power-domains: > + maxItems: 1 > + > clock-names: > const: blkmv > > @@ -32,8 +42,27 @@ required: > - compatible > - reg > - interrupts > - - clocks > - - clock-names New chips work without clocks? Cool! Rob
diff --git a/Documentation/devicetree/bindings/crypto/amlogic,gxl-crypto.yaml b/Documentation/devicetree/bindings/crypto/amlogic,gxl-crypto.yaml index 948e11ebe4ee..41f0153d58c8 100644 --- a/Documentation/devicetree/bindings/crypto/amlogic,gxl-crypto.yaml +++ b/Documentation/devicetree/bindings/crypto/amlogic,gxl-crypto.yaml @@ -11,20 +11,30 @@ maintainers: properties: compatible: - items: - - const: amlogic,gxl-crypto + oneOf: + - items: + - enum: + - amlogic,a1-crypto + - amlogic,s4-crypto + - const: amlogic,g12a-crypto + - enum: + - amlogic,gxl-crypto + - amlogic,axg-crypto + - amlogic,g12a-crypto reg: maxItems: 1 interrupts: - items: - - description: Interrupt for flow 0 - - description: Interrupt for flow 1 + minItems: 1 + maxItems: 2 clocks: maxItems: 1 + power-domains: + maxItems: 1 + clock-names: const: blkmv @@ -32,8 +42,27 @@ required: - compatible - reg - interrupts - - clocks - - clock-names + +allOf: + - if: + properties: + compatible: + contains: + const: amlogic,gxl-crypto + then: + required: + - clocks + - clock-names + properties: + interrupts: + items: + - description: Interrupt for flow 0 + - description: Interrupt for flow 1 + else: + properties: + interrupts: + items: + - description: Interrupt for flow 0 additionalProperties: false
Now crypto module available at G12A/G12B/S4/A1/SM1/AXG. 1. Add new compatibles: - amlogic,g12a-crypto - amlogic,s4-crypto (uses g12a-crypto as fallback) - amlogic,a1-crypto (uses g12a-crypto as fallback) - amlogic,axg-crypto 2. All SoC's, exclude GXL, doesn't take a clock input for Crypto IP. Make it required only for amlogic,gxl-crypto. 3. All SoC's, exclude GXL, uses only one interrupt flow for Crypto IP. 4. Add power-domains in schema. Signed-off-by: Alexey Romanov <avromanov@salutedevices.com> --- .../bindings/crypto/amlogic,gxl-crypto.yaml | 43 ++++++++++++++++--- 1 file changed, 36 insertions(+), 7 deletions(-)