xref: /freebsd/sys/contrib/device-tree/Bindings/crypto/inside-secure,safexcel-eip93.yaml (revision 8ccc0d235c226d84112561d453c49904398d085c)
1*8ccc0d23SEmmanuel Vadot# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2*8ccc0d23SEmmanuel Vadot%YAML 1.2
3*8ccc0d23SEmmanuel Vadot---
4*8ccc0d23SEmmanuel Vadot$id: http://devicetree.org/schemas/crypto/inside-secure,safexcel-eip93.yaml#
5*8ccc0d23SEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml#
6*8ccc0d23SEmmanuel Vadot
7*8ccc0d23SEmmanuel Vadottitle: Inside Secure SafeXcel EIP-93 cryptographic engine
8*8ccc0d23SEmmanuel Vadot
9*8ccc0d23SEmmanuel Vadotmaintainers:
10*8ccc0d23SEmmanuel Vadot  - Christian Marangi <ansuelsmth@gmail.com>
11*8ccc0d23SEmmanuel Vadot
12*8ccc0d23SEmmanuel Vadotdescription: |
13*8ccc0d23SEmmanuel Vadot  The Inside Secure SafeXcel EIP-93 is a cryptographic engine IP block
14*8ccc0d23SEmmanuel Vadot  integrated in varios devices with very different and generic name from
15*8ccc0d23SEmmanuel Vadot  PKTE to simply vendor+EIP93. The real IP under the hood is actually
16*8ccc0d23SEmmanuel Vadot  developed by Inside Secure and given to license to vendors.
17*8ccc0d23SEmmanuel Vadot
18*8ccc0d23SEmmanuel Vadot  The IP block is sold with different model based on what feature are
19*8ccc0d23SEmmanuel Vadot  needed and are identified with the final letter. Each letter correspond
20*8ccc0d23SEmmanuel Vadot  to a specific set of feature and multiple letter reflect the sum of the
21*8ccc0d23SEmmanuel Vadot  feature set.
22*8ccc0d23SEmmanuel Vadot
23*8ccc0d23SEmmanuel Vadot  EIP-93 models:
24*8ccc0d23SEmmanuel Vadot    - EIP-93i: (basic) DES/Triple DES, AES, PRNG, IPsec ESP, SRTP, SHA1
25*8ccc0d23SEmmanuel Vadot    - EIP-93ie: i + SHA224/256, AES-192/256
26*8ccc0d23SEmmanuel Vadot    - EIP-93is: i + SSL/DTLS/DTLS, MD5, ARC4
27*8ccc0d23SEmmanuel Vadot    - EIP-93ies: i + e + s
28*8ccc0d23SEmmanuel Vadot    - EIP-93iw: i + AES-XCB-MAC, AES-CCM
29*8ccc0d23SEmmanuel Vadot
30*8ccc0d23SEmmanuel Vadotproperties:
31*8ccc0d23SEmmanuel Vadot  compatible:
32*8ccc0d23SEmmanuel Vadot    oneOf:
33*8ccc0d23SEmmanuel Vadot      - items:
34*8ccc0d23SEmmanuel Vadot          - const: airoha,en7581-eip93
35*8ccc0d23SEmmanuel Vadot          - const: inside-secure,safexcel-eip93ies
36*8ccc0d23SEmmanuel Vadot      - items:
37*8ccc0d23SEmmanuel Vadot          - not: {}
38*8ccc0d23SEmmanuel Vadot            description: Need a SoC specific compatible
39*8ccc0d23SEmmanuel Vadot          - enum:
40*8ccc0d23SEmmanuel Vadot              - inside-secure,safexcel-eip93i
41*8ccc0d23SEmmanuel Vadot              - inside-secure,safexcel-eip93ie
42*8ccc0d23SEmmanuel Vadot              - inside-secure,safexcel-eip93is
43*8ccc0d23SEmmanuel Vadot              - inside-secure,safexcel-eip93iw
44*8ccc0d23SEmmanuel Vadot
45*8ccc0d23SEmmanuel Vadot  reg:
46*8ccc0d23SEmmanuel Vadot    maxItems: 1
47*8ccc0d23SEmmanuel Vadot
48*8ccc0d23SEmmanuel Vadot  interrupts:
49*8ccc0d23SEmmanuel Vadot    maxItems: 1
50*8ccc0d23SEmmanuel Vadot
51*8ccc0d23SEmmanuel Vadotrequired:
52*8ccc0d23SEmmanuel Vadot  - compatible
53*8ccc0d23SEmmanuel Vadot  - reg
54*8ccc0d23SEmmanuel Vadot  - interrupts
55*8ccc0d23SEmmanuel Vadot
56*8ccc0d23SEmmanuel VadotadditionalProperties: false
57*8ccc0d23SEmmanuel Vadot
58*8ccc0d23SEmmanuel Vadotexamples:
59*8ccc0d23SEmmanuel Vadot  - |
60*8ccc0d23SEmmanuel Vadot    #include <dt-bindings/interrupt-controller/arm-gic.h>
61*8ccc0d23SEmmanuel Vadot
62*8ccc0d23SEmmanuel Vadot    crypto@1e004000 {
63*8ccc0d23SEmmanuel Vadot      compatible = "airoha,en7581-eip93", "inside-secure,safexcel-eip93ies";
64*8ccc0d23SEmmanuel Vadot      reg = <0x1fb70000 0x1000>;
65*8ccc0d23SEmmanuel Vadot
66*8ccc0d23SEmmanuel Vadot      interrupts = <GIC_SPI 44 IRQ_TYPE_LEVEL_HIGH>;
67*8ccc0d23SEmmanuel Vadot    };
68