Skip to content

Commit 5542b0b

Browse files
committed
Merge tag 'qcom-clk-for-6.14' of https://git.kernel.org/pub/scm/linux/kernel/git/qcom/linux into clk-qcom
Pull Qualcomm clk driver updates from Bjorn Andersson: - Support for various Qualcomm clk controllers: IPQ CMN PLL, SM6115 LPASS, SM750 global, tcsr, rpmh, and display. X Plus GPU and global. QCS615 rpmh and MSM8937 and MSM8940 RPM. - Support for Qualcomm Pongo and Taycan Alpha PLLs - Describe Qualcomm X Elite Titan GDSC relationships - Mark Qualcomm SM8550 and SM8650 PCIe GDSCs and X Elite USB GDSC as retention/on - Allow Qualcomm SDM845 general purpose clk to have arbitrary frequencies - Add Qualcomm IPQ5424 NoC-related interconnect clks * tag 'qcom-clk-for-6.14' of https://git.kernel.org/pub/scm/linux/kernel/git/qcom/linux: (63 commits) clk: qcom: Select CLK_X1E80100_GCC in config CLK_X1P42100_GPUCC dt-bindings: clock: move qcom,x1e80100-camcc to its own file clk: qcom: smd-rpm: Add clocks for MSM8940 dt-bindings: clock: qcom,rpmcc: Add MSM8940 compatible clk: qcom: smd-rpm: Add clocks for MSM8937 dt-bindings: clock: qcom,rpmcc: Add MSM8937 compatible clk: qcom: ipq5424: Use icc-clk for enabling NoC related clocks dt-bindings: interconnect: Add Qualcomm IPQ5424 support clk: qcom: Add SM6115 LPASSCC dt-bindings: clock: Add Qualcomm SM6115 LPASS clock controller clk: qcom: gcc-sdm845: Do not use shared clk_ops for QUPs clk: qcom: gcc-sdm845: Add general purpose clock ops clk: qcom: clk-rcg2: split __clk_rcg2_configure function clk: qcom: clk-rcg2: document calc_rate function clk: qcom: gcc-x1e80100: Do not turn off usb_2 controller GDSC clk: qcom: ipq5424: add gcc_xo_clk dt-bindings: clock: qcom: gcc-ipq5424: add gcc_xo_clk macro dt-bindings: clock: qcom: gcc-ipq5424: remove apss_dbg clock macro clk: qcom: ipq5424: remove apss_dbg clock dt-bindings: clock: qcom,sdm845-camcc: add sdm670 compatible ...
2 parents 40384c8 + 5e41903 commit 5542b0b

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

57 files changed

+11254
-145
lines changed
Lines changed: 77 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,77 @@
1+
# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
2+
%YAML 1.2
3+
---
4+
$id: http://devicetree.org/schemas/clock/qcom,ipq9574-cmn-pll.yaml#
5+
$schema: http://devicetree.org/meta-schemas/core.yaml#
6+
7+
title: Qualcomm CMN PLL Clock Controller on IPQ SoC
8+
9+
maintainers:
10+
- Bjorn Andersson <[email protected]>
11+
- Luo Jie <[email protected]>
12+
13+
description:
14+
The CMN (or common) PLL clock controller expects a reference
15+
input clock. This reference clock is from the on-board Wi-Fi.
16+
The CMN PLL supplies a number of fixed rate output clocks to
17+
the devices providing networking functions and to GCC. These
18+
networking hardware include PPE (packet process engine), PCS
19+
and the externally connected switch or PHY devices. The CMN
20+
PLL block also outputs fixed rate clocks to GCC. The PLL's
21+
primary function is to enable fixed rate output clocks for
22+
networking hardware functions used with the IPQ SoC.
23+
24+
properties:
25+
compatible:
26+
enum:
27+
- qcom,ipq9574-cmn-pll
28+
29+
reg:
30+
maxItems: 1
31+
32+
clocks:
33+
items:
34+
- description: The reference clock. The supported clock rates include
35+
25000000, 31250000, 40000000, 48000000, 50000000 and 96000000 HZ.
36+
- description: The AHB clock
37+
- description: The SYS clock
38+
description:
39+
The reference clock is the source clock of CMN PLL, which is from the
40+
Wi-Fi. The AHB and SYS clocks must be enabled to access CMN PLL
41+
clock registers.
42+
43+
clock-names:
44+
items:
45+
- const: ref
46+
- const: ahb
47+
- const: sys
48+
49+
"#clock-cells":
50+
const: 1
51+
52+
required:
53+
- compatible
54+
- reg
55+
- clocks
56+
- clock-names
57+
- "#clock-cells"
58+
59+
additionalProperties: false
60+
61+
examples:
62+
- |
63+
#include <dt-bindings/clock/qcom,ipq-cmn-pll.h>
64+
#include <dt-bindings/clock/qcom,ipq9574-gcc.h>
65+
66+
cmn_pll: clock-controller@9b000 {
67+
compatible = "qcom,ipq9574-cmn-pll";
68+
reg = <0x0009b000 0x800>;
69+
clocks = <&cmn_pll_ref_clk>,
70+
<&gcc GCC_CMN_12GPLL_AHB_CLK>,
71+
<&gcc GCC_CMN_12GPLL_SYS_CLK>;
72+
clock-names = "ref", "ahb", "sys";
73+
#clock-cells = <1>;
74+
assigned-clocks = <&cmn_pll CMN_PLL_CLK>;
75+
assigned-clock-rates-u64 = /bits/ 64 <12000000000>;
76+
};
77+
...

Documentation/devicetree/bindings/clock/qcom,mmcc.yaml

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -78,6 +78,7 @@ allOf:
7878
then:
7979
properties:
8080
clocks:
81+
minItems: 8
8182
items:
8283
- description: Board PXO source
8384
- description: PLL 3 clock
@@ -87,8 +88,10 @@ allOf:
8788
- description: DSI phy instance 2 dsi clock
8889
- description: DSI phy instance 2 byte clock
8990
- description: HDMI phy PLL clock
91+
- description: LVDS PLL clock
9092

9193
clock-names:
94+
minItems: 8
9295
items:
9396
- const: pxo
9497
- const: pll3
@@ -98,6 +101,7 @@ allOf:
98101
- const: dsi2pll
99102
- const: dsi2pllbyte
100103
- const: hdmipll
104+
- const: lvdspll
101105

102106
- if:
103107
properties:
Lines changed: 59 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,59 @@
1+
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2+
%YAML 1.2
3+
---
4+
$id: http://devicetree.org/schemas/clock/qcom,qcs615-gcc.yaml#
5+
$schema: http://devicetree.org/meta-schemas/core.yaml#
6+
7+
title: Qualcomm Global Clock & Reset Controller on QCS615
8+
9+
maintainers:
10+
- Taniya Das <[email protected]>
11+
12+
description: |
13+
Qualcomm global clock control module provides the clocks, resets and power
14+
domains on QCS615.
15+
16+
See also: include/dt-bindings/clock/qcom,qcs615-gcc.h
17+
18+
properties:
19+
compatible:
20+
const: qcom,qcs615-gcc
21+
22+
clocks:
23+
items:
24+
- description: Board XO source
25+
- description: Board active XO source
26+
- description: Sleep clock source
27+
28+
clock-names:
29+
items:
30+
- const: bi_tcxo
31+
- const: bi_tcxo_ao
32+
- const: sleep_clk
33+
34+
required:
35+
- compatible
36+
- clocks
37+
- clock-names
38+
- '#power-domain-cells'
39+
40+
allOf:
41+
- $ref: qcom,gcc.yaml#
42+
43+
unevaluatedProperties: false
44+
45+
examples:
46+
- |
47+
#include <dt-bindings/clock/qcom,rpmh.h>
48+
clock-controller@100000 {
49+
compatible = "qcom,qcs615-gcc";
50+
reg = <0x00100000 0x1f0000>;
51+
clocks = <&rpmhcc RPMH_CXO_CLK>,
52+
<&rpmhcc RPMH_CXO_CLK_A>,
53+
<&sleep_clk>;
54+
clock-names = "bi_tcxo", "bi_tcxo_ao", "sleep_clk";
55+
#clock-cells = <1>;
56+
#reset-cells = <1>;
57+
#power-domain-cells = <1>;
58+
};
59+
...

Documentation/devicetree/bindings/clock/qcom,rpmcc.yaml

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,8 @@ properties:
3333
- qcom,rpmcc-msm8916
3434
- qcom,rpmcc-msm8917
3535
- qcom,rpmcc-msm8936
36+
- qcom,rpmcc-msm8937
37+
- qcom,rpmcc-msm8940
3638
- qcom,rpmcc-msm8953
3739
- qcom,rpmcc-msm8974
3840
- qcom,rpmcc-msm8976
@@ -110,6 +112,8 @@ allOf:
110112
- qcom,rpmcc-msm8916
111113
- qcom,rpmcc-msm8917
112114
- qcom,rpmcc-msm8936
115+
- qcom,rpmcc-msm8937
116+
- qcom,rpmcc-msm8940
113117
- qcom,rpmcc-msm8953
114118
- qcom,rpmcc-msm8974
115119
- qcom,rpmcc-msm8976

Documentation/devicetree/bindings/clock/qcom,rpmhcc.yaml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@ description: |
1717
properties:
1818
compatible:
1919
enum:
20+
- qcom,qcs615-rpmh-clk
2021
- qcom,qdu1000-rpmh-clk
2122
- qcom,sa8775p-rpmh-clk
2223
- qcom,sar2130p-rpmh-clk
@@ -37,6 +38,7 @@ properties:
3738
- qcom,sm8450-rpmh-clk
3839
- qcom,sm8550-rpmh-clk
3940
- qcom,sm8650-rpmh-clk
41+
- qcom,sm8750-rpmh-clk
4042
- qcom,x1e80100-rpmh-clk
4143

4244
clocks:

Documentation/devicetree/bindings/clock/qcom,sc7280-lpasscorecc.yaml

Lines changed: 17 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -18,25 +18,31 @@ description: |
1818
include/dt-bindings/clock/qcom,lpassaudiocc-sc7280.h
1919
2020
properties:
21-
clocks: true
22-
23-
clock-names: true
24-
25-
reg: true
26-
2721
compatible:
2822
enum:
2923
- qcom,sc7280-lpassaoncc
3024
- qcom,sc7280-lpassaudiocc
3125
- qcom,sc7280-lpasscorecc
3226
- qcom,sc7280-lpasshm
3327

34-
power-domains:
35-
maxItems: 1
28+
reg:
29+
minItems: 1
30+
maxItems: 2
31+
32+
clocks:
33+
minItems: 1
34+
maxItems: 3
35+
36+
clock-names:
37+
minItems: 1
38+
maxItems: 3
3639

3740
'#clock-cells':
3841
const: 1
3942

43+
power-domains:
44+
maxItems: 1
45+
4046
'#power-domain-cells':
4147
const: 1
4248

@@ -57,8 +63,6 @@ required:
5763
- '#clock-cells'
5864
- '#power-domain-cells'
5965

60-
additionalProperties: false
61-
6266
allOf:
6367
- if:
6468
properties:
@@ -125,6 +129,9 @@ allOf:
125129

126130
reg:
127131
maxItems: 1
132+
133+
additionalProperties: false
134+
128135
examples:
129136
- |
130137
#include <dt-bindings/clock/qcom,rpmh.h>

Documentation/devicetree/bindings/clock/qcom,sdm845-camcc.yaml

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,11 @@ allOf:
2020

2121
properties:
2222
compatible:
23-
const: qcom,sdm845-camcc
23+
oneOf:
24+
- items:
25+
- const: qcom,sdm670-camcc
26+
- const: qcom,sdm845-camcc
27+
- const: qcom,sdm845-camcc
2428

2529
clocks:
2630
items:
Lines changed: 46 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,46 @@
1+
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2+
%YAML 1.2
3+
---
4+
$id: http://devicetree.org/schemas/clock/qcom,sm6115-lpasscc.yaml#
5+
$schema: http://devicetree.org/meta-schemas/core.yaml#
6+
7+
title: Qualcomm LPASS Core & Audio Clock Controller on SM6115
8+
9+
maintainers:
10+
- Konrad Dybcio <[email protected]>
11+
- Srinivas Kandagatla <[email protected]>
12+
13+
description: |
14+
Qualcomm LPASS core and audio clock controllers provide audio-related resets
15+
on SM6115 and its derivatives.
16+
17+
See also::
18+
include/dt-bindings/clock/qcom,sm6115-lpasscc.h
19+
20+
properties:
21+
compatible:
22+
enum:
23+
- qcom,sm6115-lpassaudiocc
24+
- qcom,sm6115-lpasscc
25+
26+
reg:
27+
maxItems: 1
28+
29+
'#reset-cells':
30+
const: 1
31+
32+
required:
33+
- compatible
34+
- reg
35+
- '#reset-cells'
36+
37+
additionalProperties: false
38+
39+
examples:
40+
- |
41+
lpass_audiocc: clock-controller@a6a9000 {
42+
compatible = "qcom,sm6115-lpassaudiocc";
43+
reg = <0x0a6a9000 0x1000>;
44+
#reset-cells = <1>;
45+
};
46+
...

Documentation/devicetree/bindings/clock/qcom,sm8450-camcc.yaml

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,6 @@ description: |
1919
include/dt-bindings/clock/qcom,sm8450-camcc.h
2020
include/dt-bindings/clock/qcom,sm8550-camcc.h
2121
include/dt-bindings/clock/qcom,sm8650-camcc.h
22-
include/dt-bindings/clock/qcom,x1e80100-camcc.h
2322
2423
properties:
2524
compatible:
@@ -29,7 +28,6 @@ properties:
2928
- qcom,sm8475-camcc
3029
- qcom,sm8550-camcc
3130
- qcom,sm8650-camcc
32-
- qcom,x1e80100-camcc
3331

3432
clocks:
3533
items:

Documentation/devicetree/bindings/clock/qcom,sm8450-gpucc.yaml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,7 @@ properties:
3232
- qcom,sm8550-gpucc
3333
- qcom,sm8650-gpucc
3434
- qcom,x1e80100-gpucc
35+
- qcom,x1p42100-gpucc
3536

3637
clocks:
3738
items:

Documentation/devicetree/bindings/clock/qcom,sm8550-dispcc.yaml

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,11 +12,12 @@ maintainers:
1212

1313
description: |
1414
Qualcomm display clock control module provides the clocks, resets and power
15-
domains on SM8550.
15+
domains on SM8550, SM8650, SM8750 and few other platforms.
1616
1717
See also:
1818
- include/dt-bindings/clock/qcom,sm8550-dispcc.h
1919
- include/dt-bindings/clock/qcom,sm8650-dispcc.h
20+
- include/dt-bindings/clock/qcom,sm8750-dispcc.h
2021
- include/dt-bindings/clock/qcom,x1e80100-dispcc.h
2122
2223
properties:
@@ -25,6 +26,7 @@ properties:
2526
- qcom,sar2130p-dispcc
2627
- qcom,sm8550-dispcc
2728
- qcom,sm8650-dispcc
29+
- qcom,sm8750-dispcc
2830
- qcom,x1e80100-dispcc
2931

3032
clocks:

Documentation/devicetree/bindings/clock/qcom,sm8550-tcsr.yaml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@ description: |
1616
See also:
1717
- include/dt-bindings/clock/qcom,sm8550-tcsr.h
1818
- include/dt-bindings/clock/qcom,sm8650-tcsr.h
19+
- include/dt-bindings/clock/qcom,sm8750-tcsr.h
1920
2021
properties:
2122
compatible:
@@ -24,6 +25,7 @@ properties:
2425
- qcom,sar2130p-tcsr
2526
- qcom,sm8550-tcsr
2627
- qcom,sm8650-tcsr
28+
- qcom,sm8750-tcsr
2729
- qcom,x1e80100-tcsr
2830
- const: syscon
2931

0 commit comments

Comments
 (0)