Skip to content

Commit bd35cbd

Browse files
author
Georgi Djakov
committed
Merge branch 'icc-sdx75' into icc-next
Add interconnect driver support for SDX75 platform. * icc-sdx75 dt-bindings: interconnect: Add compatibles for SDX75 interconnect: qcom: Add SDX75 interconnect provider driver Link: https://lore.kernel.org/r/1694614256-24109-1-git-send-email-quic_rohiagar@quicinc.com Signed-off-by: Georgi Djakov <djakov@kernel.org>anter a commit message to explain why this merge is necessary,
2 parents 9ee5214 + 3642b4e commit bd35cbd

6 files changed

Lines changed: 1409 additions & 0 deletions

File tree

Lines changed: 92 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,92 @@
1+
# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
2+
%YAML 1.2
3+
---
4+
$id: http://devicetree.org/schemas/interconnect/qcom,sdx75-rpmh.yaml#
5+
$schema: http://devicetree.org/meta-schemas/core.yaml#
6+
7+
title: Qualcomm RPMh Network-On-Chip Interconnect on SDX75
8+
9+
maintainers:
10+
- Rohit Agarwal <quic_rohiagar@quicinc.com>
11+
12+
description:
13+
RPMh interconnect providers support system bandwidth requirements through
14+
RPMh hardware accelerators known as Bus Clock Manager (BCM). The provider is
15+
able to communicate with the BCM through the Resource State Coordinator (RSC)
16+
associated with each execution environment. Provider nodes must point to at
17+
least one RPMh device child node pertaining to their RSC and each provider
18+
can map to multiple RPMh resources.
19+
20+
properties:
21+
compatible:
22+
enum:
23+
- qcom,sdx75-clk-virt
24+
- qcom,sdx75-dc-noc
25+
- qcom,sdx75-gem-noc
26+
- qcom,sdx75-mc-virt
27+
- qcom,sdx75-pcie-anoc
28+
- qcom,sdx75-system-noc
29+
30+
'#interconnect-cells': true
31+
32+
reg:
33+
maxItems: 1
34+
35+
clocks:
36+
maxItems: 1
37+
38+
required:
39+
- compatible
40+
41+
allOf:
42+
- $ref: qcom,rpmh-common.yaml#
43+
- if:
44+
properties:
45+
compatible:
46+
contains:
47+
enum:
48+
- qcom,sdx75-clk-virt
49+
- qcom,sdx75-mc-virt
50+
then:
51+
properties:
52+
reg: false
53+
else:
54+
required:
55+
- reg
56+
57+
- if:
58+
properties:
59+
compatible:
60+
contains:
61+
enum:
62+
- qcom,sdx75-clk-virt
63+
then:
64+
properties:
65+
clocks:
66+
items:
67+
- description: RPMH CC QPIC Clock
68+
required:
69+
- clocks
70+
else:
71+
properties:
72+
clocks: false
73+
74+
unevaluatedProperties: false
75+
76+
examples:
77+
- |
78+
#include <dt-bindings/clock/qcom,rpmh.h>
79+
80+
clk_virt: interconnect-0 {
81+
compatible = "qcom,sdx75-clk-virt";
82+
#interconnect-cells = <2>;
83+
qcom,bcm-voters = <&apps_bcm_voter>;
84+
clocks = <&rpmhcc RPMH_QPIC_CLK>;
85+
};
86+
87+
system_noc: interconnect@1640000 {
88+
compatible = "qcom,sdx75-system-noc";
89+
reg = <0x1640000 0x4b400>;
90+
#interconnect-cells = <2>;
91+
qcom,bcm-voters = <&apps_bcm_voter>;
92+
};

drivers/interconnect/qcom/Kconfig

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -182,6 +182,15 @@ config INTERCONNECT_QCOM_SDX65
182182
This is a driver for the Qualcomm Network-on-Chip on sdx65-based
183183
platforms.
184184

185+
config INTERCONNECT_QCOM_SDX75
186+
tristate "Qualcomm SDX75 interconnect driver"
187+
depends on INTERCONNECT_QCOM_RPMH_POSSIBLE
188+
select INTERCONNECT_QCOM_RPMH
189+
select INTERCONNECT_QCOM_BCM_VOTER
190+
help
191+
This is a driver for the Qualcomm Network-on-Chip on sdx75-based
192+
platforms.
193+
185194
config INTERCONNECT_QCOM_SM6350
186195
tristate "Qualcomm SM6350 interconnect driver"
187196
depends on INTERCONNECT_QCOM_RPMH_POSSIBLE

drivers/interconnect/qcom/Makefile

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,7 @@ qnoc-sdm670-objs := sdm670.o
2323
qnoc-sdm845-objs := sdm845.o
2424
qnoc-sdx55-objs := sdx55.o
2525
qnoc-sdx65-objs := sdx65.o
26+
qnoc-sdx75-objs := sdx75.o
2627
qnoc-sm6350-objs := sm6350.o
2728
qnoc-sm8150-objs := sm8150.o
2829
qnoc-sm8250-objs := sm8250.o
@@ -51,6 +52,7 @@ obj-$(CONFIG_INTERCONNECT_QCOM_SDM670) += qnoc-sdm670.o
5152
obj-$(CONFIG_INTERCONNECT_QCOM_SDM845) += qnoc-sdm845.o
5253
obj-$(CONFIG_INTERCONNECT_QCOM_SDX55) += qnoc-sdx55.o
5354
obj-$(CONFIG_INTERCONNECT_QCOM_SDX65) += qnoc-sdx65.o
55+
obj-$(CONFIG_INTERCONNECT_QCOM_SDX75) += qnoc-sdx75.o
5456
obj-$(CONFIG_INTERCONNECT_QCOM_SM6350) += qnoc-sm6350.o
5557
obj-$(CONFIG_INTERCONNECT_QCOM_SM8150) += qnoc-sm8150.o
5658
obj-$(CONFIG_INTERCONNECT_QCOM_SM8250) += qnoc-sm8250.o

0 commit comments

Comments
 (0)