Re: [PATCH 3/9] dt-bindings: crypto: Convert fsl,sec-2.0 binding to YAML

J. Neuschäfer
2025-01-29T15:43:30Z

On Sun, Jan 26, 2025 at 10:41:28PM -0600, Rob Herring wrote:
> On Sun, Jan 26, 2025 at 07:58:58PM +0100, J. Neuschäfer wrote:
> > Convert the Freescale security engine (crypto accelerator) binding from
> > text form to YAML. The list of compatible strings reflects what was
> > previously described in prose; not all combinations occur in existing
> > devicetrees.
> >
> > Signed-off-by: J. Neuschäfer <j.ne@posteo.net>
> > ---
> > .../devicetree/bindings/crypto/fsl,sec2.0.yaml | 139 +++++++++++++++++++++
> > .../devicetree/bindings/crypto/fsl-sec2.txt | 65 ----------
> > 2 files changed, 139 insertions(+), 65 deletions(-)
[...]
> > +properties:
> > + compatible:
> > + description: |
>
> Don't need '|'. I imagine there are more in the series, but will let you
> find the rest.

Yes

> > + fsl,num-channels:
> > + $ref: /schemas/types.yaml#/definitions/uint32
> > + description: An integer representing the number of channels available.
>
> minimum: 1
> maximum: ?

According to existing usage (and a cursory study of datasheets),
possible values are 1 or 4.

>
> > +
> > + fsl,channel-fifo-len:
> > + $ref: /schemas/types.yaml#/definitions/uint32
> > + description: |
> > + An integer representing the number of descriptor pointers each channel
> > + fetch fifo can hold.
>
> Constraints?

Current usage shows a typical value of 24, although I wasn't able to
find any information in the datasheets. I'll add plausible limits.

>
> > +
> > + fsl,exec-units-mask:
> > + $ref: /schemas/types.yaml#/definitions/uint32
> > + description: |
> > + The bitmask representing what execution units (EUs) are available.
> > + EU information should be encoded following the SEC's Descriptor Header
> > + Dword EU_SEL0 field documentation, i.e. as follows:
> > +
> > + bit 0 = reserved - should be 0
> > + bit 1 = set if SEC has the ARC4 EU (AFEU)
> > + bit 2 = set if SEC has the DES/3DES EU (DEU)
> > + bit 3 = set if SEC has the message digest EU (MDEU/MDEU-A)
> > + bit 4 = set if SEC has the random number generator EU (RNG)
> > + bit 5 = set if SEC has the public key EU (PKEU)
> > + bit 6 = set if SEC has the AES EU (AESU)
> > + bit 7 = set if SEC has the Kasumi EU (KEU)
> > + bit 8 = set if SEC has the CRC EU (CRCU)
> > + bit 11 = set if SEC has the message digest EU extended alg set (MDEU-B)
> > +
> > + remaining bits are reserved for future SEC EUs.
>
> So:
>
> maximum: 0xfff

Will add.

Thank you for your reviews.

Best regards,
J. Neuschäfer