On 16/11/2023 14:06, Rafał Miłecki wrote: > From: Rafał Miłecki <rafal@xxxxxxxxxx> > > This helps validating DTS files. > > Cc: Antoine Tenart <atenart@xxxxxxxxxx> > Signed-off-by: Rafał Miłecki <rafal@xxxxxxxxxx> > --- > .../crypto/inside-secure-safexcel.txt | 40 --------- > .../crypto/inside-secure-safexcel.yaml | 84 +++++++++++++++++++ > 2 files changed, 84 insertions(+), 40 deletions(-) > delete mode 100644 Documentation/devicetree/bindings/crypto/inside-secure-safexcel.txt > create mode 100644 Documentation/devicetree/bindings/crypto/inside-secure-safexcel.yaml > > diff --git a/Documentation/devicetree/bindings/crypto/inside-secure-safexcel.txt b/Documentation/devicetree/bindings/crypto/inside-secure-safexcel.txt > deleted file mode 100644 > index 3bbf144c9988..000000000000 > --- a/Documentation/devicetree/bindings/crypto/inside-secure-safexcel.txt > +++ /dev/null > @@ -1,40 +0,0 @@ > -Inside Secure SafeXcel cryptographic engine > - > -Required properties: > -- compatible: Should be "inside-secure,safexcel-eip197b", > - "inside-secure,safexcel-eip197d" or > - "inside-secure,safexcel-eip97ies". > -- reg: Base physical address of the engine and length of memory mapped region. > -- interrupts: Interrupt numbers for the rings and engine. > -- interrupt-names: Should be "ring0", "ring1", "ring2", "ring3", "eip", "mem". > - > -Optional properties: > -- clocks: Reference to the crypto engine clocks, the second clock is > - needed for the Armada 7K/8K SoCs. > -- clock-names: mandatory if there is a second clock, in this case the > - name must be "core" for the first clock and "reg" for > - the second one. > - > -Backward compatibility: > -Two compatibles are kept for backward compatibility, but shouldn't be used for > -new submissions: > -- "inside-secure,safexcel-eip197" is equivalent to > - "inside-secure,safexcel-eip197b". > -- "inside-secure,safexcel-eip97" is equivalent to > - "inside-secure,safexcel-eip97ies". > - > -Example: > - > - crypto: crypto@800000 { > - compatible = "inside-secure,safexcel-eip197b"; > - reg = <0x800000 0x200000>; > - interrupts = <GIC_SPI 34 IRQ_TYPE_LEVEL_HIGH>, > - <GIC_SPI 54 IRQ_TYPE_LEVEL_HIGH>, > - <GIC_SPI 55 IRQ_TYPE_LEVEL_HIGH>, > - <GIC_SPI 56 IRQ_TYPE_LEVEL_HIGH>, > - <GIC_SPI 57 IRQ_TYPE_LEVEL_HIGH>, > - <GIC_SPI 58 IRQ_TYPE_LEVEL_HIGH>; > - interrupt-names = "mem", "ring0", "ring1", "ring2", "ring3", > - "eip"; > - clocks = <&cpm_syscon0 1 26>; > - }; > diff --git a/Documentation/devicetree/bindings/crypto/inside-secure-safexcel.yaml b/Documentation/devicetree/bindings/crypto/inside-secure-safexcel.yaml > new file mode 100644 > index 000000000000..4dfd5ddd90bb > --- /dev/null > +++ b/Documentation/devicetree/bindings/crypto/inside-secure-safexcel.yaml Filename like compatible, so: inside-secure,safexcel.yaml > @@ -0,0 +1,84 @@ > +# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause > +%YAML 1.2 > +--- > +$id: http://devicetree.org/schemas/crypto/inside-secure-safexcel.yaml# > +$schema: http://devicetree.org/meta-schemas/core.yaml# > + > +title: Inside Secure SafeXcel cryptographic engine > + > +maintainers: > + - Antoine Tenart <atenart@xxxxxxxxxx> > + > +properties: > + compatible: > + oneOf: > + - const: inside-secure,safexcel-eip197b > + - const: inside-secure,safexcel-eip197d > + - const: inside-secure,safexcel-eip97ies > + - const: inside-secure,safexcel-eip197 > + description: Equivalent of inside-secure,safexcel-eip197b > + deprecated: true > + - const: inside-secure,safexcel-eip97 > + description: Equivalent of inside-secure,safexcel-eip97ies > + deprecated: true Wait, some new entries appear here and commit msg said nothing about changes in the binding. Commit says it is pure conversion. You must document all changes made. > + > + reg: > + maxItems: 1 > + > + interrupts: > + minItems: 6 Drop > + maxItems: 6 > + > + interrupt-names: > + items: > + - const: ring0 > + - const: ring1 > + - const: ring2 > + - const: ring3 > + - const: eip > + - const: mem > + > + clocks: > + minItems: 1 > + maxItems: 2 > + > + clock-names: > + minItems: 1 > + items: > + - const: core > + - const: reg > + > +allOf: > + - if: > + properties: > + clocks: > + minItems: 2 > + then: > + required: > + - clock-names Did you test that it actually works? Considering other patchset which you did not, I have doubts that this was... > + > +additionalProperties: false > + > +required: required goes just after properties:. > + - reg > + - interrupts > + - interrupt-names Best regards, Krzysztof