Skip to content

Commit f00618a

Browse files
committed
Merge tag 'qcom-clk-for-6.15' of https://git.kernel.org/pub/scm/linux/kernel/git/qcom/linux into clk-qcom
Pull Qualcomm clk driver updates from Bjorn Andersson: - Support associating GDSCs with multiple power domains - Add Qualcomm IPQ9574 NSS clk driver - Add Qualcomm QCS8300 GPU and video clk drivers - Add Qualcomm SDM429 RPM clks - Add Qualcomm QCM6490 LPASS (low power audio) resets - Fix halt check of voted branch clks - Properly park Qualcomm SM8250 camera clks - Add SDCC rests to Qualcomm SDM660 - Fix Qualcomm SM8750 regmap to skip protected registers - Retain state for Qualcomm's SM8650 USB hardware when powered down - Remove GPU AHB and dispaly XO clks from Qualcomm X Elite clk driver - Update UART frequency table on Qualcomm IPQ5424 to fix flow control - Allow Qualcomm IPQ5018 GCC driver to be compiled on arm32 * tag 'qcom-clk-for-6.15' of https://git.kernel.org/pub/scm/linux/kernel/git/qcom/linux: (41 commits) clk: qcom: Add NSS clock Controller driver for IPQ9574 clk: qcom: gcc-ipq9574: Add support for gpll0_out_aux clock dt-bindings: clock: Add ipq9574 NSSCC clock and reset definitions dt-bindings: clock: gcc-ipq9574: Add definition for GPLL0_OUT_AUX clk: qcom: gcc-msm8953: fix stuck venus0_core0 clock clk: qcom: mmcc-sdm660: fix stuck video_subcore0 clock dt-bindings: clock: qcom,x1e80100-camcc: Fix the list of required-opps drivers: clk: qcom: ipq5424: fix the freq table of sdcc1_apps clock clk: qcom: lpassaudiocc-sc7280: Add support for LPASS resets for QCM6490 dt-bindings: clock: qcom: Add compatible for QCM6490 boards clk: qcom: gdsc: Update the status poll timeout for GDSC clk: qcom: gdsc: Set retain_ff before moving to HW CTRL clk: qcom: gcc-sm8650: Do not turn off USB GDSCs during gdsc_disable() clk: qcom: videocc: Constify 'struct qcom_cc_desc' clk: qcom: gpucc: Constify 'struct qcom_cc_desc' clk: qcom: dispcc: Constify 'struct qcom_cc_desc' clk: qcom: camcc: Constify 'struct qcom_cc_desc' dt-bindings: clock: qcom: sm8450-camcc: Remove qcom,x1e80100-camcc leftover clk: qcom: Add support for Video Clock Controller on QCS8300 clk: qcom: Add support for GPU Clock Controller on QCS8300 ...
2 parents 2014c95 + 9bf3684 commit f00618a

File tree

92 files changed

+3913
-199
lines changed

Some content is hidden

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

92 files changed

+3913
-199
lines changed

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

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@ title: Qualcomm Graphics Clock & Reset Controller
88

99
maintainers:
1010
- Taniya Das <quic_tdas@quicinc.com>
11+
- Imran Shaik <quic_imrashai@quicinc.com>
1112

1213
description: |
1314
Qualcomm graphics clock control module provides the clocks, resets and power
@@ -23,10 +24,12 @@ description: |
2324
include/dt-bindings/clock/qcom,gpucc-sm8150.h
2425
include/dt-bindings/clock/qcom,gpucc-sm8250.h
2526
include/dt-bindings/clock/qcom,gpucc-sm8350.h
27+
include/dt-bindings/clock/qcom,qcs8300-gpucc.h
2628
2729
properties:
2830
compatible:
2931
enum:
32+
- qcom,qcs8300-gpucc
3033
- qcom,sdm845-gpucc
3134
- qcom,sa8775p-gpucc
3235
- qcom,sc7180-gpucc
Lines changed: 98 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,98 @@
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-nsscc.yaml#
5+
$schema: http://devicetree.org/meta-schemas/core.yaml#
6+
7+
title: Qualcomm Networking Sub System Clock & Reset Controller on IPQ9574
8+
9+
maintainers:
10+
- Bjorn Andersson <andersson@kernel.org>
11+
- Anusha Rao <quic_anusha@quicinc.com>
12+
13+
description: |
14+
Qualcomm networking sub system clock control module provides the clocks,
15+
resets on IPQ9574
16+
17+
See also::
18+
include/dt-bindings/clock/qcom,ipq9574-nsscc.h
19+
include/dt-bindings/reset/qcom,ipq9574-nsscc.h
20+
21+
properties:
22+
compatible:
23+
const: qcom,ipq9574-nsscc
24+
25+
clocks:
26+
items:
27+
- description: Board XO source
28+
- description: CMN_PLL NSS 1200MHz (Bias PLL cc) clock source
29+
- description: CMN_PLL PPE 353MHz (Bias PLL ubi nc) clock source
30+
- description: GCC GPLL0 OUT AUX clock source
31+
- description: Uniphy0 NSS Rx clock source
32+
- description: Uniphy0 NSS Tx clock source
33+
- description: Uniphy1 NSS Rx clock source
34+
- description: Uniphy1 NSS Tx clock source
35+
- description: Uniphy2 NSS Rx clock source
36+
- description: Uniphy2 NSS Tx clock source
37+
- description: GCC NSSCC clock source
38+
39+
'#interconnect-cells':
40+
const: 1
41+
42+
clock-names:
43+
items:
44+
- const: xo
45+
- const: nss_1200
46+
- const: ppe_353
47+
- const: gpll0_out
48+
- const: uniphy0_rx
49+
- const: uniphy0_tx
50+
- const: uniphy1_rx
51+
- const: uniphy1_tx
52+
- const: uniphy2_rx
53+
- const: uniphy2_tx
54+
- const: bus
55+
56+
required:
57+
- compatible
58+
- clocks
59+
- clock-names
60+
61+
allOf:
62+
- $ref: qcom,gcc.yaml#
63+
64+
unevaluatedProperties: false
65+
66+
examples:
67+
- |
68+
#include <dt-bindings/clock/qcom,ipq9574-gcc.h>
69+
#include <dt-bindings/clock/qcom,ipq-cmn-pll.h>
70+
clock-controller@39b00000 {
71+
compatible = "qcom,ipq9574-nsscc";
72+
reg = <0x39b00000 0x80000>;
73+
clocks = <&xo_board_clk>,
74+
<&cmn_pll NSS_1200MHZ_CLK>,
75+
<&cmn_pll PPE_353MHZ_CLK>,
76+
<&gcc GPLL0_OUT_AUX>,
77+
<&uniphy 0>,
78+
<&uniphy 1>,
79+
<&uniphy 2>,
80+
<&uniphy 3>,
81+
<&uniphy 4>,
82+
<&uniphy 5>,
83+
<&gcc GCC_NSSCC_CLK>;
84+
clock-names = "xo",
85+
"nss_1200",
86+
"ppe_353",
87+
"gpll0_out",
88+
"uniphy0_rx",
89+
"uniphy0_tx",
90+
"uniphy1_rx",
91+
"uniphy1_tx",
92+
"uniphy2_rx",
93+
"uniphy2_tx",
94+
"bus";
95+
#clock-cells = <1>;
96+
#reset-cells = <1>;
97+
};
98+
...

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

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -44,6 +44,7 @@ properties:
4444
- qcom,rpmcc-msm8998
4545
- qcom,rpmcc-qcm2290
4646
- qcom,rpmcc-qcs404
47+
- qcom,rpmcc-sdm429
4748
- qcom,rpmcc-sdm660
4849
- qcom,rpmcc-sm6115
4950
- qcom,rpmcc-sm6125
@@ -123,6 +124,7 @@ allOf:
123124
- qcom,rpmcc-msm8998
124125
- qcom,rpmcc-qcm2290
125126
- qcom,rpmcc-qcs404
127+
- qcom,rpmcc-sdm429
126128
- qcom,rpmcc-sdm660
127129
- qcom,rpmcc-sm6115
128130
- qcom,rpmcc-sm6125

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

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,16 +8,20 @@ title: Qualcomm Camera Clock & Reset Controller on SA8775P
88

99
maintainers:
1010
- Taniya Das <quic_tdas@quicinc.com>
11+
- Imran Shaik <quic_imrashai@quicinc.com>
1112

1213
description: |
1314
Qualcomm camera clock control module provides the clocks, resets and power
1415
domains on SA8775p.
1516
16-
See also: include/dt-bindings/clock/qcom,sa8775p-camcc.h
17+
See also:
18+
include/dt-bindings/clock/qcom,qcs8300-camcc.h
19+
include/dt-bindings/clock/qcom,sa8775p-camcc.h
1720
1821
properties:
1922
compatible:
2023
enum:
24+
- qcom,qcs8300-camcc
2125
- qcom,sa8775p-camcc
2226

2327
clocks:

Documentation/devicetree/bindings/clock/qcom,sa8775p-videocc.yaml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,7 @@ description: |
1818
properties:
1919
compatible:
2020
enum:
21+
- qcom,qcs8300-videocc
2122
- qcom,sa8775p-videocc
2223

2324
clocks:

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

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,7 @@ description: |
2020
properties:
2121
compatible:
2222
enum:
23+
- qcom,qcm6490-lpassaudiocc
2324
- qcom,sc7280-lpassaoncc
2425
- qcom,sc7280-lpassaudiocc
2526
- qcom,sc7280-lpasscorecc
@@ -68,7 +69,9 @@ allOf:
6869
properties:
6970
compatible:
7071
contains:
71-
const: qcom,sc7280-lpassaudiocc
72+
enum:
73+
- qcom,qcm6490-lpassaudiocc
74+
- qcom,sc7280-lpassaudiocc
7275

7376
then:
7477
properties:

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

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -64,7 +64,6 @@ allOf:
6464
- qcom,sc8280xp-camcc
6565
- qcom,sm8450-camcc
6666
- qcom,sm8550-camcc
67-
- qcom,x1e80100-camcc
6867
then:
6968
required:
7069
- required-opps

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

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -40,9 +40,9 @@ properties:
4040
- description: A phandle to the MMCX power-domain
4141

4242
required-opps:
43-
maxItems: 1
44-
description:
45-
A phandle to an OPP node describing MMCX performance points.
43+
items:
44+
- description: A phandle to an OPP node describing MXC performance points
45+
- description: A phandle to an OPP node describing MMCX performance points
4646

4747
required:
4848
- compatible
@@ -66,7 +66,8 @@ examples:
6666
<&sleep_clk>;
6767
power-domains = <&rpmhpd RPMHPD_MXC>,
6868
<&rpmhpd RPMHPD_MMCX>;
69-
required-opps = <&rpmhpd_opp_low_svs>;
69+
required-opps = <&rpmhpd_opp_low_svs>,
70+
<&rpmhpd_opp_low_svs>;
7071
#clock-cells = <1>;
7172
#reset-cells = <1>;
7273
#power-domain-cells = <1>;

drivers/clk/qcom/Kconfig

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -217,7 +217,7 @@ config IPQ_GCC_4019
217217

218218
config IPQ_GCC_5018
219219
tristate "IPQ5018 Global Clock Controller"
220-
depends on ARM64 || COMPILE_TEST
220+
depends on ARM || ARM64 || COMPILE_TEST
221221
help
222222
Support for global clock controller on ipq5018 devices.
223223
Say Y if you want to use peripheral devices such as UART, SPI,
@@ -281,6 +281,13 @@ config IPQ_GCC_9574
281281
i2c, USB, SD/eMMC, etc. Select this for the root clock
282282
of ipq9574.
283283

284+
config IPQ_NSSCC_9574
285+
tristate "IPQ9574 NSS Clock Controller"
286+
depends on ARM64 || COMPILE_TEST
287+
depends on IPQ_GCC_9574
288+
help
289+
Support for NSS clock controller on ipq9574 devices.
290+
284291
config IPQ_NSSCC_QCA8K
285292
tristate "QCA8K(QCA8386 or QCA8084) NSS Clock Controller"
286293
depends on MDIO_BUS

drivers/clk/qcom/Makefile

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -39,6 +39,7 @@ obj-$(CONFIG_IPQ_GCC_6018) += gcc-ipq6018.o
3939
obj-$(CONFIG_IPQ_GCC_806X) += gcc-ipq806x.o
4040
obj-$(CONFIG_IPQ_GCC_8074) += gcc-ipq8074.o
4141
obj-$(CONFIG_IPQ_GCC_9574) += gcc-ipq9574.o
42+
obj-$(CONFIG_IPQ_NSSCC_9574) += nsscc-ipq9574.o
4243
obj-$(CONFIG_IPQ_LCC_806X) += lcc-ipq806x.o
4344
obj-$(CONFIG_IPQ_NSSCC_QCA8K) += nsscc-qca8k.o
4445
obj-$(CONFIG_MDM_GCC_9607) += gcc-mdm9607.o

0 commit comments

Comments
 (0)