Skip to content

Commit d03374a

Browse files
konradybcioGeorgi Djakov
authored andcommitted
dt-bindings: interconnect: qcom: Fix and separate out MSM8996
Separate out MSM8996 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-4-e33d5acbf3bd@linaro.org Signed-off-by: Georgi Djakov <djakov@kernel.org>
1 parent c19bcc7 commit d03374a

2 files changed

Lines changed: 126 additions & 81 deletions

File tree

Lines changed: 126 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,126 @@
1+
# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
2+
%YAML 1.2
3+
---
4+
$id: http://devicetree.org/schemas/interconnect/qcom,msm8996.yaml#
5+
$schema: http://devicetree.org/meta-schemas/core.yaml#
6+
7+
title: Qualcomm MSM8996 Network-On-Chip interconnect
8+
9+
maintainers:
10+
- Konrad Dybcio <konradybcio@kernel.org>
11+
12+
description: |
13+
The Qualcomm MSM8996 interconnect providers support adjusting the
14+
bandwidth requirements between the various NoC fabrics.
15+
16+
properties:
17+
compatible:
18+
enum:
19+
- qcom,msm8996-a0noc
20+
- qcom,msm8996-a1noc
21+
- qcom,msm8996-a2noc
22+
- qcom,msm8996-bimc
23+
- qcom,msm8996-cnoc
24+
- qcom,msm8996-mnoc
25+
- qcom,msm8996-pnoc
26+
- qcom,msm8996-snoc
27+
28+
reg:
29+
maxItems: 1
30+
31+
clock-names:
32+
minItems: 1
33+
maxItems: 3
34+
35+
clocks:
36+
minItems: 1
37+
maxItems: 3
38+
39+
power-domains:
40+
maxItems: 1
41+
42+
required:
43+
- compatible
44+
- reg
45+
46+
unevaluatedProperties: false
47+
48+
allOf:
49+
- $ref: qcom,rpm-common.yaml#
50+
- if:
51+
properties:
52+
compatible:
53+
const: qcom,msm8996-a0noc
54+
55+
then:
56+
properties:
57+
clocks:
58+
items:
59+
- description: Aggregate0 System NoC AXI Clock.
60+
- description: Aggregate0 Config NoC AHB Clock.
61+
- description: Aggregate0 NoC MPU Clock.
62+
63+
clock-names:
64+
items:
65+
- const: aggre0_snoc_axi
66+
- const: aggre0_cnoc_ahb
67+
- const: aggre0_noc_mpu_cfg
68+
69+
required:
70+
- power-domains
71+
72+
- if:
73+
properties:
74+
compatible:
75+
const: qcom,msm8996-mnoc
76+
77+
then:
78+
properties:
79+
clocks:
80+
items:
81+
- description: CPU-NoC High-performance Bus Clock.
82+
83+
clock-names:
84+
const: iface
85+
86+
- if:
87+
properties:
88+
compatible:
89+
const: qcom,msm8996-a2noc
90+
91+
then:
92+
properties:
93+
clocks:
94+
items:
95+
- description: Aggregate2 NoC UFS AXI Clock
96+
- description: UFS AXI Clock
97+
98+
clock-names:
99+
items:
100+
- const: aggre2_ufs_axi
101+
- const: ufs_axi
102+
103+
examples:
104+
- |
105+
#include <dt-bindings/clock/qcom,gcc-msm8996.h>
106+
#include <dt-bindings/clock/qcom,mmcc-msm8996.h>
107+
#include <dt-bindings/clock/qcom,rpmcc.h>
108+
109+
bimc: interconnect@408000 {
110+
compatible = "qcom,msm8996-bimc";
111+
reg = <0x00408000 0x5a000>;
112+
#interconnect-cells = <1>;
113+
};
114+
115+
a0noc: interconnect@543000 {
116+
compatible = "qcom,msm8996-a0noc";
117+
reg = <0x00543000 0x6000>;
118+
#interconnect-cells = <1>;
119+
clocks = <&gcc GCC_AGGRE0_SNOC_AXI_CLK>,
120+
<&gcc GCC_AGGRE0_CNOC_AHB_CLK>,
121+
<&gcc GCC_AGGRE0_NOC_MPU_CFG_AHB_CLK>;
122+
clock-names = "aggre0_snoc_axi",
123+
"aggre0_cnoc_ahb",
124+
"aggre0_noc_mpu_cfg";
125+
power-domains = <&gcc AGGRE0_NOC_GDSC>;
126+
};

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

Lines changed: 0 additions & 81 deletions
Original file line numberDiff line numberDiff line change
@@ -26,14 +26,6 @@ properties:
2626
- qcom,msm8939-bimc
2727
- qcom,msm8939-pcnoc
2828
- qcom,msm8939-snoc
29-
- qcom,msm8996-a0noc
30-
- qcom,msm8996-a1noc
31-
- qcom,msm8996-a2noc
32-
- qcom,msm8996-bimc
33-
- qcom,msm8996-cnoc
34-
- qcom,msm8996-mnoc
35-
- qcom,msm8996-pnoc
36-
- qcom,msm8996-snoc
3729
- qcom,qcs404-bimc
3830
- qcom,qcs404-pcnoc
3931
- qcom,qcs404-snoc
@@ -109,11 +101,6 @@ allOf:
109101
- qcom,msm8939-bimc
110102
- qcom,msm8939-pcnoc
111103
- qcom,msm8939-snoc
112-
- qcom,msm8996-a1noc
113-
- qcom,msm8996-bimc
114-
- qcom,msm8996-cnoc
115-
- qcom,msm8996-pnoc
116-
- qcom,msm8996-snoc
117104
- qcom,qcs404-bimc
118105
- qcom,qcs404-pcnoc
119106
- qcom,qcs404-snoc
@@ -130,74 +117,6 @@ allOf:
130117
- description: Bus Clock
131118
- description: Bus A Clock
132119

133-
- if:
134-
properties:
135-
compatible:
136-
contains:
137-
enum:
138-
- qcom,msm8996-mnoc
139-
140-
then:
141-
properties:
142-
clock-names:
143-
items:
144-
- const: bus
145-
- const: bus_a
146-
- const: iface
147-
148-
clocks:
149-
items:
150-
- description: Bus Clock.
151-
- description: Bus A Clock.
152-
- description: CPU-NoC High-performance Bus Clock.
153-
154-
- if:
155-
properties:
156-
compatible:
157-
contains:
158-
enum:
159-
- qcom,msm8996-a0noc
160-
161-
then:
162-
properties:
163-
clock-names:
164-
items:
165-
- const: aggre0_snoc_axi
166-
- const: aggre0_cnoc_ahb
167-
- const: aggre0_noc_mpu_cfg
168-
169-
clocks:
170-
items:
171-
- description: Aggregate0 System NoC AXI Clock.
172-
- description: Aggregate0 Config NoC AHB Clock.
173-
- description: Aggregate0 NoC MPU Clock.
174-
175-
required:
176-
- power-domains
177-
178-
- if:
179-
properties:
180-
compatible:
181-
contains:
182-
enum:
183-
- qcom,msm8996-a2noc
184-
185-
then:
186-
properties:
187-
clock-names:
188-
items:
189-
- const: bus
190-
- const: bus_a
191-
- const: aggre2_ufs_axi
192-
- const: ufs_axi
193-
194-
clocks:
195-
items:
196-
- description: Bus Clock
197-
- description: Bus A Clock
198-
- description: Aggregate2 NoC UFS AXI Clock
199-
- description: UFS AXI Clock
200-
201120
- if:
202121
not:
203122
properties:

0 commit comments

Comments
 (0)