Skip to content

Commit c19bcc7

Browse files
konradybcioGeorgi Djakov
authored andcommitted
dt-bindings: interconnect: qcom: Fix and separate out SDM660
Separate out SDM660 icc bindings from the common file and fix the clocks description by removing the wrong internal RPM bus clock representation that we've been carrying for years. Signed-off-by: Konrad Dybcio <konrad.dybcio@linaro.org> Link: https://lore.kernel.org/r/20230721-topic-icc_bindings-v2-3-e33d5acbf3bd@linaro.org Signed-off-by: Georgi Djakov <djakov@kernel.org>
1 parent 5d4268b commit c19bcc7

2 files changed

Lines changed: 108 additions & 40 deletions

File tree

Documentation/devicetree/bindings/interconnect/qcom,rpm.yaml

Lines changed: 0 additions & 40 deletions
Original file line numberDiff line numberDiff line change
@@ -37,12 +37,6 @@ properties:
3737
- qcom,qcs404-bimc
3838
- qcom,qcs404-pcnoc
3939
- qcom,qcs404-snoc
40-
- qcom,sdm660-a2noc
41-
- qcom,sdm660-bimc
42-
- qcom,sdm660-cnoc
43-
- qcom,sdm660-gnoc
44-
- qcom,sdm660-mnoc
45-
- qcom,sdm660-snoc
4640

4741
'#interconnect-cells':
4842
description: |
@@ -123,10 +117,6 @@ allOf:
123117
- qcom,qcs404-bimc
124118
- qcom,qcs404-pcnoc
125119
- qcom,qcs404-snoc
126-
- qcom,sdm660-bimc
127-
- qcom,sdm660-cnoc
128-
- qcom,sdm660-gnoc
129-
- qcom,sdm660-snoc
130120

131121
then:
132122
properties:
@@ -146,7 +136,6 @@ allOf:
146136
contains:
147137
enum:
148138
- qcom,msm8996-mnoc
149-
- qcom,sdm660-mnoc
150139

151140
then:
152141
properties:
@@ -209,35 +198,6 @@ allOf:
209198
- description: Aggregate2 NoC UFS AXI Clock
210199
- description: UFS AXI Clock
211200

212-
- if:
213-
properties:
214-
compatible:
215-
contains:
216-
enum:
217-
- qcom,sdm660-a2noc
218-
219-
then:
220-
properties:
221-
clock-names:
222-
items:
223-
- const: bus
224-
- const: bus_a
225-
- const: ipa
226-
- const: ufs_axi
227-
- const: aggre2_ufs_axi
228-
- const: aggre2_usb3_axi
229-
- const: cfg_noc_usb2_axi
230-
231-
clocks:
232-
items:
233-
- description: Bus Clock.
234-
- description: Bus A Clock.
235-
- description: IPA Clock.
236-
- description: UFS AXI Clock.
237-
- description: Aggregate2 UFS AXI Clock.
238-
- description: Aggregate2 USB3 AXI Clock.
239-
- description: Config NoC USB2 AXI Clock.
240-
241201
- if:
242202
not:
243203
properties:
Lines changed: 108 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,108 @@
1+
# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
2+
%YAML 1.2
3+
---
4+
$id: http://devicetree.org/schemas/interconnect/qcom,sdm660.yaml#
5+
$schema: http://devicetree.org/meta-schemas/core.yaml#
6+
7+
title: Qualcomm SDM660 Network-On-Chip interconnect
8+
9+
maintainers:
10+
- Konrad Dybcio <konradybcio@kernel.org>
11+
12+
description: |
13+
The Qualcomm SDM660 interconnect providers support adjusting the
14+
bandwidth requirements between the various NoC fabrics.
15+
16+
properties:
17+
compatible:
18+
enum:
19+
- qcom,sdm660-a2noc
20+
- qcom,sdm660-bimc
21+
- qcom,sdm660-cnoc
22+
- qcom,sdm660-gnoc
23+
- qcom,sdm660-mnoc
24+
- qcom,sdm660-snoc
25+
26+
reg:
27+
maxItems: 1
28+
29+
clock-names:
30+
minItems: 1
31+
maxItems: 5
32+
33+
clocks:
34+
minItems: 1
35+
maxItems: 5
36+
37+
required:
38+
- compatible
39+
- reg
40+
41+
unevaluatedProperties: false
42+
43+
allOf:
44+
- $ref: qcom,rpm-common.yaml#
45+
- if:
46+
properties:
47+
compatible:
48+
const: qcom,sdm660-mnoc
49+
50+
then:
51+
properties:
52+
clocks:
53+
items:
54+
- description: CPU-NoC High-performance Bus Clock.
55+
56+
clock-names:
57+
const: iface
58+
59+
- if:
60+
properties:
61+
compatible:
62+
const: qcom,sdm660-a2noc
63+
64+
then:
65+
properties:
66+
clocks:
67+
items:
68+
- description: IPA Clock.
69+
- description: UFS AXI Clock.
70+
- description: Aggregate2 UFS AXI Clock.
71+
- description: Aggregate2 USB3 AXI Clock.
72+
- description: Config NoC USB2 AXI Clock.
73+
74+
clock-names:
75+
items:
76+
- const: ipa
77+
- const: ufs_axi
78+
- const: aggre2_ufs_axi
79+
- const: aggre2_usb3_axi
80+
- const: cfg_noc_usb2_axi
81+
82+
examples:
83+
- |
84+
#include <dt-bindings/clock/qcom,gcc-sdm660.h>
85+
#include <dt-bindings/clock/qcom,mmcc-sdm660.h>
86+
#include <dt-bindings/clock/qcom,rpmcc.h>
87+
88+
bimc: interconnect@1008000 {
89+
compatible = "qcom,sdm660-bimc";
90+
reg = <0x01008000 0x78000>;
91+
#interconnect-cells = <1>;
92+
};
93+
94+
a2noc: interconnect@1704000 {
95+
compatible = "qcom,sdm660-a2noc";
96+
reg = <0x01704000 0xc100>;
97+
#interconnect-cells = <1>;
98+
clocks = <&rpmcc RPM_SMD_IPA_CLK>,
99+
<&gcc GCC_UFS_AXI_CLK>,
100+
<&gcc GCC_AGGRE2_UFS_AXI_CLK>,
101+
<&gcc GCC_AGGRE2_USB3_AXI_CLK>,
102+
<&gcc GCC_CFG_NOC_USB2_AXI_CLK>;
103+
clock-names = "ipa",
104+
"ufs_axi",
105+
"aggre2_ufs_axi",
106+
"aggre2_usb3_axi",
107+
"cfg_noc_usb2_axi";
108+
};

0 commit comments

Comments
 (0)