Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
torvalds
GitHub Repository: torvalds/linux
Path: blob/master/Documentation/devicetree/bindings/edac/apm,xgene-edac.yaml
29282 views
1
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2
%YAML 1.2
3
---
4
$id: http://devicetree.org/schemas/edac/apm,xgene-edac.yaml#
5
$schema: http://devicetree.org/meta-schemas/core.yaml#
6
7
title: APM X-Gene SoC EDAC
8
9
maintainers:
10
- Khuong Dinh <khuong@os.amperecomputing.com>
11
12
description: >
13
EDAC node is defined to describe on-chip error detection and correction.
14
15
The following error types are supported:
16
17
memory controller - Memory controller
18
PMD (L1/L2) - Processor module unit (PMD) L1/L2 cache
19
L3 - L3 cache controller
20
SoC - SoC IPs such as Ethernet, SATA, etc
21
22
properties:
23
compatible:
24
const: apm,xgene-edac
25
26
reg:
27
items:
28
- description: CPU bus (PCP) resource
29
30
'#address-cells':
31
const: 2
32
33
'#size-cells':
34
const: 2
35
36
ranges: true
37
38
interrupts:
39
description: Interrupt-specifier for MCU, PMD, L3, or SoC error IRQ(s).
40
items:
41
- description: MCU error IRQ
42
- description: PMD error IRQ
43
- description: L3 error IRQ
44
- description: SoC error IRQ
45
minItems: 1
46
47
regmap-csw:
48
description: Regmap of the CPU switch fabric (CSW) resource.
49
$ref: /schemas/types.yaml#/definitions/phandle
50
51
regmap-mcba:
52
description: Regmap of the MCB-A (memory bridge) resource.
53
$ref: /schemas/types.yaml#/definitions/phandle
54
55
regmap-mcbb:
56
description: Regmap of the MCB-B (memory bridge) resource.
57
$ref: /schemas/types.yaml#/definitions/phandle
58
59
regmap-efuse:
60
description: Regmap of the PMD efuse resource.
61
$ref: /schemas/types.yaml#/definitions/phandle
62
63
regmap-rb:
64
description: Regmap of the register bus resource (optional for compatibility).
65
$ref: /schemas/types.yaml#/definitions/phandle
66
67
required:
68
- compatible
69
- regmap-csw
70
- regmap-mcba
71
- regmap-mcbb
72
- regmap-efuse
73
- reg
74
- interrupts
75
76
# Child-node bindings
77
patternProperties:
78
'^edacmc@':
79
description: Memory controller subnode
80
type: object
81
additionalProperties: false
82
83
properties:
84
compatible:
85
const: apm,xgene-edac-mc
86
87
reg:
88
maxItems: 1
89
90
memory-controller:
91
description: Instance number of the memory controller.
92
$ref: /schemas/types.yaml#/definitions/uint32
93
maximum: 3
94
95
required:
96
- compatible
97
- reg
98
- memory-controller
99
100
101
'^edacpmd@':
102
description: PMD subnode
103
type: object
104
additionalProperties: false
105
106
properties:
107
compatible:
108
const: apm,xgene-edac-pmd
109
110
reg:
111
maxItems: 1
112
113
pmd-controller:
114
description: Instance number of the PMD controller.
115
$ref: /schemas/types.yaml#/definitions/uint32
116
maximum: 3
117
118
required:
119
- compatible
120
- reg
121
- pmd-controller
122
123
'^edacl3@':
124
description: L3 subnode
125
type: object
126
additionalProperties: false
127
128
properties:
129
compatible:
130
enum:
131
- apm,xgene-edac-l3
132
- apm,xgene-edac-l3-v2
133
134
reg:
135
maxItems: 1
136
137
required:
138
- compatible
139
- reg
140
141
'^edacsoc@':
142
description: SoC subnode
143
type: object
144
additionalProperties: false
145
146
properties:
147
compatible:
148
enum:
149
- apm,xgene-edac-soc
150
- apm,xgene-edac-soc-v1
151
152
reg:
153
maxItems: 1
154
155
required:
156
- compatible
157
- reg
158
159
additionalProperties: false
160
161
examples:
162
- |
163
bus {
164
#address-cells = <2>;
165
#size-cells = <2>;
166
167
edac@78800000 {
168
compatible = "apm,xgene-edac";
169
reg = <0x0 0x78800000 0x0 0x100>;
170
#address-cells = <2>;
171
#size-cells = <2>;
172
ranges;
173
interrupts = <0x0 0x20 0x4>, <0x0 0x21 0x4>, <0x0 0x27 0x4>;
174
175
regmap-csw = <&csw>;
176
regmap-mcba = <&mcba>;
177
regmap-mcbb = <&mcbb>;
178
regmap-efuse = <&efuse>;
179
regmap-rb = <&rb>;
180
181
edacmc@7e800000 {
182
compatible = "apm,xgene-edac-mc";
183
reg = <0x0 0x7e800000 0x0 0x1000>;
184
memory-controller = <0>;
185
};
186
187
edacpmd@7c000000 {
188
compatible = "apm,xgene-edac-pmd";
189
reg = <0x0 0x7c000000 0x0 0x200000>;
190
pmd-controller = <0>;
191
};
192
193
edacl3@7e600000 {
194
compatible = "apm,xgene-edac-l3";
195
reg = <0x0 0x7e600000 0x0 0x1000>;
196
};
197
198
edacsoc@7e930000 {
199
compatible = "apm,xgene-edac-soc-v1";
200
reg = <0x0 0x7e930000 0x0 0x1000>;
201
};
202
};
203
};
204
205