Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
torvalds
GitHub Repository: torvalds/linux
Path: blob/master/Documentation/devicetree/bindings/crypto/fsl,sec2.0.yaml
26308 views
1
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2
%YAML 1.2
3
---
4
$id: http://devicetree.org/schemas/crypto/fsl,sec2.0.yaml#
5
$schema: http://devicetree.org/meta-schemas/core.yaml#
6
7
title: Freescale SoC SEC Security Engines versions 1.x-2.x-3.x
8
9
maintainers:
10
- J. Neuschäfer <j.ne@posteo.net>
11
12
properties:
13
compatible:
14
description:
15
Should contain entries for this and backward compatible SEC versions,
16
high to low. Warning - SEC1 and SEC2 are mutually exclusive.
17
oneOf:
18
- items:
19
- const: fsl,sec3.3
20
- const: fsl,sec3.1
21
- const: fsl,sec3.0
22
- const: fsl,sec2.4
23
- const: fsl,sec2.2
24
- const: fsl,sec2.1
25
- const: fsl,sec2.0
26
- items:
27
- const: fsl,sec3.1
28
- const: fsl,sec3.0
29
- const: fsl,sec2.4
30
- const: fsl,sec2.2
31
- const: fsl,sec2.1
32
- const: fsl,sec2.0
33
- items:
34
- const: fsl,sec3.0
35
- const: fsl,sec2.4
36
- const: fsl,sec2.2
37
- const: fsl,sec2.1
38
- const: fsl,sec2.0
39
- items:
40
- const: fsl,sec2.4
41
- const: fsl,sec2.2
42
- const: fsl,sec2.1
43
- const: fsl,sec2.0
44
- items:
45
- const: fsl,sec2.2
46
- const: fsl,sec2.1
47
- const: fsl,sec2.0
48
- items:
49
- const: fsl,sec2.1
50
- const: fsl,sec2.0
51
- items:
52
- const: fsl,sec2.0
53
- items:
54
- const: fsl,sec1.2
55
- const: fsl,sec1.0
56
- items:
57
- const: fsl,sec1.0
58
59
reg:
60
maxItems: 1
61
62
interrupts:
63
maxItems: 1
64
65
fsl,num-channels:
66
$ref: /schemas/types.yaml#/definitions/uint32
67
enum: [ 1, 4 ]
68
description: An integer representing the number of channels available.
69
70
fsl,channel-fifo-len:
71
$ref: /schemas/types.yaml#/definitions/uint32
72
maximum: 100
73
description:
74
An integer representing the number of descriptor pointers each channel
75
fetch fifo can hold.
76
77
fsl,exec-units-mask:
78
$ref: /schemas/types.yaml#/definitions/uint32
79
maximum: 0xfff
80
description: |
81
The bitmask representing what execution units (EUs) are available.
82
EU information should be encoded following the SEC's Descriptor Header
83
Dword EU_SEL0 field documentation, i.e. as follows:
84
85
bit 0 = reserved - should be 0
86
bit 1 = set if SEC has the ARC4 EU (AFEU)
87
bit 2 = set if SEC has the DES/3DES EU (DEU)
88
bit 3 = set if SEC has the message digest EU (MDEU/MDEU-A)
89
bit 4 = set if SEC has the random number generator EU (RNG)
90
bit 5 = set if SEC has the public key EU (PKEU)
91
bit 6 = set if SEC has the AES EU (AESU)
92
bit 7 = set if SEC has the Kasumi EU (KEU)
93
bit 8 = set if SEC has the CRC EU (CRCU)
94
bit 11 = set if SEC has the message digest EU extended alg set (MDEU-B)
95
96
remaining bits are reserved for future SEC EUs.
97
98
fsl,descriptor-types-mask:
99
$ref: /schemas/types.yaml#/definitions/uint32
100
description: |
101
The bitmask representing what descriptors are available. Descriptor type
102
information should be encoded following the SEC's Descriptor Header Dword
103
DESC_TYPE field documentation, i.e. as follows:
104
105
bit 0 = SEC supports descriptor type aesu_ctr_nonsnoop
106
bit 1 = SEC supports descriptor type ipsec_esp
107
bit 2 = SEC supports descriptor type common_nonsnoop
108
bit 3 = SEC supports descriptor type 802.11i AES ccmp
109
bit 4 = SEC supports descriptor type hmac_snoop_no_afeu
110
bit 5 = SEC supports descriptor type srtp
111
bit 6 = SEC supports descriptor type non_hmac_snoop_no_afeu
112
bit 7 = SEC supports descriptor type pkeu_assemble
113
bit 8 = SEC supports descriptor type aesu_key_expand_output
114
bit 9 = SEC supports descriptor type pkeu_ptmul
115
bit 10 = SEC supports descriptor type common_nonsnoop_afeu
116
bit 11 = SEC supports descriptor type pkeu_ptadd_dbl
117
118
..and so on and so forth.
119
120
required:
121
- compatible
122
- reg
123
- fsl,num-channels
124
- fsl,channel-fifo-len
125
- fsl,exec-units-mask
126
- fsl,descriptor-types-mask
127
128
unevaluatedProperties: false
129
130
examples:
131
- |
132
/* MPC8548E */
133
crypto@30000 {
134
compatible = "fsl,sec2.1", "fsl,sec2.0";
135
reg = <0x30000 0x10000>;
136
interrupts = <29 2>;
137
interrupt-parent = <&mpic>;
138
fsl,num-channels = <4>;
139
fsl,channel-fifo-len = <24>;
140
fsl,exec-units-mask = <0xfe>;
141
fsl,descriptor-types-mask = <0x12b0ebf>;
142
};
143
144
...
145
146