Skip to content

Commit 6dc66a3

Browse files
Merge branches 'hwspinlock-next', 'rpmsg-next' and 'rproc-next' into for-next
3 parents 8233130 + 2a6e483 + 3d8a186 commit 6dc66a3

19 files changed

+937
-253
lines changed

Documentation/devicetree/bindings/remoteproc/mtk,scp.yaml

Lines changed: 156 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,7 @@ properties:
2121
- mediatek,mt8188-scp
2222
- mediatek,mt8192-scp
2323
- mediatek,mt8195-scp
24+
- mediatek,mt8195-scp-dual
2425

2526
reg:
2627
description:
@@ -31,10 +32,7 @@ properties:
3132

3233
reg-names:
3334
minItems: 2
34-
items:
35-
- const: sram
36-
- const: cfg
37-
- const: l1tcm
35+
maxItems: 3
3836

3937
clocks:
4038
description:
@@ -58,6 +56,93 @@ properties:
5856
memory-region:
5957
maxItems: 1
6058

59+
cros-ec-rpmsg:
60+
$ref: /schemas/mfd/google,cros-ec.yaml
61+
description:
62+
This subnode represents the rpmsg device. The properties
63+
of this node are defined by the individual bindings for
64+
the rpmsg devices.
65+
66+
required:
67+
- mediatek,rpmsg-name
68+
69+
unevaluatedProperties: false
70+
71+
'#address-cells':
72+
const: 1
73+
74+
'#size-cells':
75+
const: 1
76+
77+
ranges:
78+
description:
79+
Standard ranges definition providing address translations for
80+
local SCP SRAM address spaces to bus addresses.
81+
82+
patternProperties:
83+
"^scp@[a-f0-9]+$":
84+
type: object
85+
description:
86+
The MediaTek SCP integrated to SoC might be a multi-core version.
87+
The other cores are represented as child nodes of the boot core.
88+
There are some integration differences for the IP like the usage of
89+
address translator for translating SoC bus addresses into address space
90+
for the processor.
91+
92+
Each SCP core has own cache memory. The SRAM and L1TCM are shared by
93+
cores. The power of cache, SRAM and L1TCM power should be enabled
94+
before booting SCP cores. The size of cache, SRAM, and L1TCM are varied
95+
on differnt SoCs.
96+
97+
The SCP cores do not use an MMU, but has a set of registers to
98+
control the translations between 32-bit CPU addresses into system bus
99+
addresses. Cache and memory access settings are provided through a
100+
Memory Protection Unit (MPU), programmable only from the SCP.
101+
102+
properties:
103+
compatible:
104+
enum:
105+
- mediatek,scp-core
106+
107+
reg:
108+
description: The base address and size of SRAM.
109+
maxItems: 1
110+
111+
reg-names:
112+
const: sram
113+
114+
interrupts:
115+
maxItems: 1
116+
117+
firmware-name:
118+
$ref: /schemas/types.yaml#/definitions/string
119+
description:
120+
If present, name (or relative path) of the file within the
121+
firmware search path containing the firmware image used when
122+
initializing sub cores of multi-core SCP.
123+
124+
memory-region:
125+
maxItems: 1
126+
127+
cros-ec-rpmsg:
128+
$ref: /schemas/mfd/google,cros-ec.yaml
129+
description:
130+
This subnode represents the rpmsg device. The properties
131+
of this node are defined by the individual bindings for
132+
the rpmsg devices.
133+
134+
required:
135+
- mediatek,rpmsg-name
136+
137+
unevaluatedProperties: false
138+
139+
required:
140+
- compatible
141+
- reg
142+
- reg-names
143+
144+
additionalProperties: false
145+
61146
required:
62147
- compatible
63148
- reg
@@ -87,23 +172,39 @@ allOf:
87172
reg:
88173
maxItems: 2
89174
reg-names:
175+
items:
176+
- const: sram
177+
- const: cfg
178+
- if:
179+
properties:
180+
compatible:
181+
enum:
182+
- mediatek,mt8192-scp
183+
- mediatek,mt8195-scp
184+
then:
185+
properties:
186+
reg:
187+
maxItems: 3
188+
reg-names:
189+
items:
190+
- const: sram
191+
- const: cfg
192+
- const: l1tcm
193+
- if:
194+
properties:
195+
compatible:
196+
enum:
197+
- mediatek,mt8195-scp-dual
198+
then:
199+
properties:
200+
reg:
90201
maxItems: 2
202+
reg-names:
203+
items:
204+
- const: cfg
205+
- const: l1tcm
91206

92-
additionalProperties:
93-
type: object
94-
description:
95-
Subnodes of the SCP represent rpmsg devices. The names of the devices
96-
are not important. The properties of these nodes are defined by the
97-
individual bindings for the rpmsg devices.
98-
properties:
99-
mediatek,rpmsg-name:
100-
$ref: /schemas/types.yaml#/definitions/string-array
101-
description:
102-
Contains the name for the rpmsg device. Used to match
103-
the subnode to rpmsg device announced by SCP.
104-
105-
required:
106-
- mediatek,rpmsg-name
207+
additionalProperties: false
107208

108209
examples:
109210
- |
@@ -118,7 +219,42 @@ examples:
118219
clocks = <&infracfg CLK_INFRA_SCPSYS>;
119220
clock-names = "main";
120221
121-
cros_ec {
222+
cros-ec-rpmsg {
223+
compatible = "google,cros-ec-rpmsg";
122224
mediatek,rpmsg-name = "cros-ec-rpmsg";
123225
};
124226
};
227+
228+
- |
229+
scp@10500000 {
230+
compatible = "mediatek,mt8195-scp-dual";
231+
reg = <0x10720000 0xe0000>,
232+
<0x10700000 0x8000>;
233+
reg-names = "cfg", "l1tcm";
234+
235+
#address-cells = <1>;
236+
#size-cells = <1>;
237+
ranges = <0 0x10500000 0x100000>;
238+
239+
scp@0 {
240+
compatible = "mediatek,scp-core";
241+
reg = <0x0 0xa0000>;
242+
reg-names = "sram";
243+
244+
cros-ec-rpmsg {
245+
compatible = "google,cros-ec-rpmsg";
246+
mediatek,rpmsg-name = "cros-ec-rpmsg";
247+
};
248+
};
249+
250+
scp@a0000 {
251+
compatible = "mediatek,scp-core";
252+
reg = <0xa0000 0x20000>;
253+
reg-names = "sram";
254+
255+
cros-ec-rpmsg {
256+
compatible = "google,cros-ec-rpmsg";
257+
mediatek,rpmsg-name = "cros-ec-rpmsg";
258+
};
259+
};
260+
};

Documentation/devicetree/bindings/remoteproc/qcom,adsp.yaml

Lines changed: 2 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -66,7 +66,9 @@ allOf:
6666
- qcom,msm8953-adsp-pil
6767
- qcom,msm8974-adsp-pil
6868
- qcom,msm8996-adsp-pil
69+
- qcom,msm8996-slpi-pil
6970
- qcom,msm8998-adsp-pas
71+
- qcom,msm8998-slpi-pas
7072
- qcom,sdm845-adsp-pas
7173
- qcom,sdm845-cdsp-pas
7274
- qcom,sdm845-slpi-pas
@@ -79,24 +81,6 @@ allOf:
7981
items:
8082
- const: xo
8183

82-
- if:
83-
properties:
84-
compatible:
85-
contains:
86-
enum:
87-
- qcom,msm8996-slpi-pil
88-
- qcom,msm8998-slpi-pas
89-
then:
90-
properties:
91-
clocks:
92-
items:
93-
- description: XO clock
94-
- description: AGGRE2 clock
95-
clock-names:
96-
items:
97-
- const: xo
98-
- const: aggre2
99-
10084
- if:
10185
properties:
10286
compatible:

Documentation/devicetree/bindings/remoteproc/qcom,msm8996-mss-pil.yaml

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -220,7 +220,6 @@ allOf:
220220
- description: GCC MSS GPLL0 clock
221221
- description: GCC MSS SNOC_AXI clock
222222
- description: GCC MSS MNOC_AXI clock
223-
- description: RPM PNOC clock
224223
- description: RPM QDSS clock
225224
clock-names:
226225
items:
@@ -231,7 +230,6 @@ allOf:
231230
- const: gpll0_mss
232231
- const: snoc_axi
233232
- const: mnoc_axi
234-
- const: pnoc
235233
- const: qdss
236234
glink-edge: false
237235
required:

Documentation/devicetree/bindings/remoteproc/qcom,sc7180-pas.yaml

Lines changed: 56 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@ description:
1616
properties:
1717
compatible:
1818
enum:
19+
- qcom,sc7180-adsp-pas
1920
- qcom,sc7180-mpss-pas
2021
- qcom,sc7280-mpss-pas
2122

@@ -30,26 +31,6 @@ properties:
3031
items:
3132
- const: xo
3233

33-
interrupts:
34-
minItems: 6
35-
36-
interrupt-names:
37-
minItems: 6
38-
39-
power-domains:
40-
minItems: 2
41-
items:
42-
- description: CX power domain
43-
- description: MX power domain
44-
- description: MSS power domain
45-
46-
power-domain-names:
47-
minItems: 2
48-
items:
49-
- const: cx
50-
- const: mx
51-
- const: mss
52-
5334
memory-region:
5435
maxItems: 1
5536
description: Reference to the reserved-memory for the Hexagon core
@@ -71,6 +52,40 @@ required:
7152

7253
allOf:
7354
- $ref: /schemas/remoteproc/qcom,pas-common.yaml#
55+
- if:
56+
properties:
57+
compatible:
58+
enum:
59+
- qcom,sc7180-adsp-pas
60+
then:
61+
properties:
62+
interrupts:
63+
maxItems: 5
64+
interrupt-names:
65+
maxItems: 5
66+
else:
67+
properties:
68+
interrupts:
69+
minItems: 6
70+
interrupt-names:
71+
minItems: 6
72+
73+
- if:
74+
properties:
75+
compatible:
76+
enum:
77+
- qcom,sc7180-adsp-pas
78+
then:
79+
properties:
80+
power-domains:
81+
items:
82+
- description: LCX power domain
83+
- description: LMX power domain
84+
power-domain-names:
85+
items:
86+
- const: lcx
87+
- const: lmx
88+
7489
- if:
7590
properties:
7691
compatible:
@@ -79,15 +94,31 @@ allOf:
7994
then:
8095
properties:
8196
power-domains:
82-
minItems: 3
97+
items:
98+
- description: CX power domain
99+
- description: MX power domain
100+
- description: MSS power domain
83101
power-domain-names:
84-
minItems: 3
85-
else:
102+
items:
103+
- const: cx
104+
- const: mx
105+
- const: mss
106+
107+
- if:
108+
properties:
109+
compatible:
110+
enum:
111+
- qcom,sc7280-mpss-pas
112+
then:
86113
properties:
87114
power-domains:
88-
maxItems: 2
115+
items:
116+
- description: CX power domain
117+
- description: MX power domain
89118
power-domain-names:
90-
maxItems: 2
119+
items:
120+
- const: cx
121+
- const: mx
91122

92123
unevaluatedProperties: false
93124

0 commit comments

Comments
 (0)