xref: /freebsd/sys/contrib/device-tree/Bindings/crypto/ti,sa2ul.yaml (revision 77013d11e6483b970af25e13c9b892075742f7e5)
1# SPDX-License-Identifier: (GPL-2.0-only or BSD-2-Clause)
2%YAML 1.2
3---
4$id: http://devicetree.org/schemas/crypto/ti,sa2ul.yaml#
5$schema: http://devicetree.org/meta-schemas/core.yaml#
6
7title: K3 SoC SA2UL crypto module
8
9maintainers:
10  - Tero Kristo <t-kristo@ti.com>
11
12properties:
13  compatible:
14    enum:
15      - ti,j721e-sa2ul
16      - ti,am654-sa2ul
17      - ti,am64-sa2ul
18
19  reg:
20    maxItems: 1
21
22  power-domains:
23    maxItems: 1
24
25  dmas:
26    items:
27      - description: TX DMA Channel
28      - description: RX DMA Channel #1
29      - description: RX DMA Channel #2
30
31  dma-names:
32    items:
33      - const: tx
34      - const: rx1
35      - const: rx2
36
37  dma-coherent: true
38
39  "#address-cells":
40    const: 2
41
42  "#size-cells":
43    const: 2
44
45  ranges:
46    description:
47      Address translation for the possible RNG child node for SA2UL
48
49  clocks:
50    items:
51      - description: Clock used by PKA
52      - description: Main Input Clock
53      - description: Clock used by rng
54
55  clock-names:
56    items:
57      - const: pka_in_clk
58      - const: x1_clk
59      - const: x2_clk
60
61patternProperties:
62  "^rng@[a-f0-9]+$":
63    type: object
64    description:
65      Child RNG node for SA2UL
66
67required:
68  - compatible
69  - reg
70  - power-domains
71  - dmas
72  - dma-names
73
74if:
75  properties:
76    compatible:
77      enum:
78        - ti,j721e-sa2ul
79        - ti,am654-sa2ul
80then:
81  required:
82    - dma-coherent
83
84additionalProperties: false
85
86examples:
87  - |
88    #include <dt-bindings/soc/ti,sci_pm_domain.h>
89
90    main_crypto: crypto@4e00000 {
91        compatible = "ti,j721e-sa2ul";
92        reg = <0x4e00000 0x1200>;
93        power-domains = <&k3_pds 264 TI_SCI_PD_EXCLUSIVE>;
94        dmas = <&main_udmap 0xc000>, <&main_udmap 0x4000>,
95               <&main_udmap 0x4001>;
96        dma-names = "tx", "rx1", "rx2";
97        dma-coherent;
98    };
99