Skip to content

Commit ea90f30

Browse files
committed
Merge tag 'qcom-clk-for-6.4' of https://git.kernel.org/pub/scm/linux/kernel/git/qcom/linux into clk-qcom
Pull Qualcomm clk driver updates from Bjorn Andersson: New drivers for Global clock controller on SM7150, IPQ9574, MSM8917 and IPQ5332 are added. New GPU clock controllers for SM6115, SM6125, SM6375 and SA8775P are added. The APSS IPQ PLL driver is refactored to support different PLL types, support for the Stromer Plus PLL type is added, and support for IPQ5332 is introduced. Helpers for settings sleep, wake and retain bits of CBCR registers are introduced and used in some of the newly introduced GPU clock drivers. The platform_driver remove callbacks is transitioned to remove_new, as part of the system wide cleanup effort. In the Display clock controller for QCM2290, the MDSS_CORE reset is introduced and the non-existent DSI1PHY clock is removed. IPQ4019 Global clock controller is transitioned to parent_data. USB GDSCs in SM6375, MSM8996 and MSM8998 are changed to use retention as disabled state, to avoid collapsing them during suspend. The CX GDSC in the SM6375 GPU clock controller has it's disable-wait value corrected. QCM2290 SDCC2 src clock moves to floor_ops. The two EMAC GDSCs are added for SC8280XP. Relevant RCGs in the SM6115 Global clock controller are moved to use shared_ops. PCIe PIPE clock operations on SM8350 are updated, to ensure the mux is parked when the parent PLL is disabled. GDSCs are added to the SC7280 LPASS audio clock controller. The RPM clock controller is transitioned to use the managed version of of_clk_add_hw_provider(). Missing XO clocks are added to MSM8226 and MSM8974. DeviceTree bindings are added for the various newly supported clock controllers, the binding for KPSS ACC and GCC drivers are converted to YAML and a few fixes are introduced. * tag 'qcom-clk-for-6.4' of https://git.kernel.org/pub/scm/linux/kernel/git/qcom/linux: (57 commits) clk: qcom: gcc-sc8280xp: Add EMAC GDSCs clk: qcom: dispcc-qcm2290: Remove inexistent DSI1PHY clk clk: qcom: add the GPUCC driver for sa8775p dt-bindings: clock: qcom: describe the GPUCC clock for SA8775P clk: qcom: gcc-sm8350: fix PCIe PIPE clocks handling clk: qcom: lpassaudiocc-sc7280: Add required gdsc power domain clks in lpass_cc_sc7280_desc clk: qcom: lpasscc-sc7280: Skip qdsp6ss clock registration dt-bindings: clock: qcom,sc7280-lpasscc: Add qcom,adsp-pil-mode property clk: qcom: rpm: Use managed `of_clk_add_hw_provider()` clk: qcom: Add Global Clock Controller driver for IPQ9574 dt-bindings: clock: Add ipq9574 clock and reset definitions clk: qcom: gpucc-sm6375: Configure CX_GDSC disable wait value clk: qcom: gcc-sm6115: Mark RCGs shared where applicable clk: qcom: dispcc-qcm2290: Add MDSS_CORE reset dt-bindings: clock: dispcc-qcm2290: Add MDSS_CORE reset clk: qcom: apss-ipq-pll: add support for IPQ5332 dt-bindings: clock: qcom,a53pll: add IPQ5332 compatible clk: qcom: apss-ipq-pll: refactor the driver to accommodate different PLL types dt-bindings: mailbox: qcom,apcs-kpss-global: fix SDX55 'if' match dt-bindings: mailbox: qcom,apcs-kpss-global: correct SDX55 clocks ...
2 parents fe15c26 + 32c2f2a commit ea90f30

Some content is hidden

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

63 files changed

+19667
-1082
lines changed

Documentation/devicetree/bindings/arm/msm/qcom,kpss-acc.txt

Lines changed: 0 additions & 49 deletions
This file was deleted.

Documentation/devicetree/bindings/arm/msm/qcom,kpss-gcc.txt

Lines changed: 0 additions & 44 deletions
This file was deleted.

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

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@ description:
1616
properties:
1717
compatible:
1818
enum:
19+
- qcom,ipq5332-a53pll
1920
- qcom,ipq6018-a53pll
2021
- qcom,ipq8074-a53pll
2122
- qcom,msm8916-a53pll
Lines changed: 53 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,53 @@
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,gcc-ipq4019.yaml#
5+
$schema: http://devicetree.org/meta-schemas/core.yaml#
6+
7+
title: Qualcomm Global Clock & Reset Controller on IPQ4019
8+
9+
maintainers:
10+
- Stephen Boyd <sboyd@kernel.org>
11+
- Taniya Das <tdas@codeaurora.org>
12+
- Robert Marko <robert.markoo@sartura.hr>
13+
14+
description: |
15+
Qualcomm global clock control module provides the clocks, resets and power
16+
domains on IPQ4019.
17+
18+
See also:: include/dt-bindings/clock/qcom,gcc-ipq4019.h
19+
20+
allOf:
21+
- $ref: qcom,gcc.yaml#
22+
23+
properties:
24+
compatible:
25+
const: qcom,gcc-ipq4019
26+
27+
clocks:
28+
items:
29+
- description: board XO clock
30+
- description: sleep clock
31+
32+
clock-names:
33+
items:
34+
- const: xo
35+
- const: sleep_clk
36+
37+
required:
38+
- compatible
39+
40+
unevaluatedProperties: false
41+
42+
examples:
43+
- |
44+
clock-controller@1800000 {
45+
compatible = "qcom,gcc-ipq4019";
46+
reg = <0x1800000 0x60000>;
47+
#clock-cells = <1>;
48+
#power-domain-cells = <1>;
49+
#reset-cells = <1>;
50+
clocks = <&xo>, <&sleep_clk>;
51+
clock-names = "xo", "sleep_clk";
52+
};
53+
...

Documentation/devicetree/bindings/clock/qcom,gcc-msm8909.yaml

Lines changed: 9 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -4,20 +4,25 @@
44
$id: http://devicetree.org/schemas/clock/qcom,gcc-msm8909.yaml#
55
$schema: http://devicetree.org/meta-schemas/core.yaml#
66

7-
title: Qualcomm Global Clock & Reset Controller on MSM8909
7+
title: Qualcomm Global Clock & Reset Controller on MSM8909, MSM8917 and QM215
88

99
maintainers:
1010
- Stephan Gerhold <stephan@gerhold.net>
1111

1212
description: |
1313
Qualcomm global clock control module provides the clocks, resets and power
14-
domains on MSM8909.
14+
domains on MSM8909, MSM8917 or QM215.
1515
16-
See also:: include/dt-bindings/clock/qcom,gcc-msm8909.h
16+
See also::
17+
include/dt-bindings/clock/qcom,gcc-msm8909.h
18+
include/dt-bindings/clock/qcom,gcc-msm8917.h
1719
1820
properties:
1921
compatible:
20-
const: qcom,gcc-msm8909
22+
enum:
23+
- qcom,gcc-msm8909
24+
- qcom,gcc-msm8917
25+
- qcom,gcc-qm215
2126

2227
clocks:
2328
items:

Documentation/devicetree/bindings/clock/qcom,gcc-other.yaml

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,6 @@ description: |
1515
domains.
1616
1717
See also::
18-
include/dt-bindings/clock/qcom,gcc-ipq4019.h
1918
include/dt-bindings/clock/qcom,gcc-ipq6018.h
2019
include/dt-bindings/reset/qcom,gcc-ipq6018.h
2120
include/dt-bindings/clock/qcom,gcc-msm8953.h
@@ -29,7 +28,6 @@ allOf:
2928
properties:
3029
compatible:
3130
enum:
32-
- qcom,gcc-ipq4019
3331
- qcom,gcc-ipq6018
3432
- qcom,gcc-mdm9607
3533
- qcom,gcc-msm8953

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

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,7 @@ description: |
1515
1616
See also::
1717
include/dt-bindings/clock/qcom,gpucc-sdm845.h
18+
include/dt-bindings/clock/qcom,gpucc-sa8775p.h
1819
include/dt-bindings/clock/qcom,gpucc-sc7180.h
1920
include/dt-bindings/clock/qcom,gpucc-sc7280.h
2021
include/dt-bindings/clock/qcom,gpucc-sc8280xp.h
@@ -27,6 +28,7 @@ properties:
2728
compatible:
2829
enum:
2930
- qcom,sdm845-gpucc
31+
- qcom,sa8775p-gpucc
3032
- qcom,sc7180-gpucc
3133
- qcom,sc7280-gpucc
3234
- qcom,sc8180x-gpucc
Lines changed: 53 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,53 @@
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,ipq5332-gcc.yaml#
5+
$schema: http://devicetree.org/meta-schemas/core.yaml#
6+
7+
title: Qualcomm Global Clock & Reset Controller on IPQ5332
8+
9+
maintainers:
10+
- Bjorn Andersson <andersson@kernel.org>
11+
12+
description: |
13+
Qualcomm global clock control module provides the clocks, resets and power
14+
domains on IPQ5332.
15+
16+
See also:: include/dt-bindings/clock/qcom,gcc-ipq5332.h
17+
18+
allOf:
19+
- $ref: qcom,gcc.yaml#
20+
21+
properties:
22+
compatible:
23+
const: qcom,ipq5332-gcc
24+
25+
clocks:
26+
items:
27+
- description: Board XO clock source
28+
- description: Sleep clock source
29+
- description: PCIE 2lane PHY pipe clock source
30+
- description: PCIE 2lane x1 PHY pipe clock source (For second lane)
31+
- description: USB PCIE wrapper pipe clock source
32+
33+
required:
34+
- compatible
35+
- clocks
36+
37+
unevaluatedProperties: false
38+
39+
examples:
40+
- |
41+
clock-controller@1800000 {
42+
compatible = "qcom,ipq5332-gcc";
43+
reg = <0x01800000 0x80000>;
44+
clocks = <&xo_board>,
45+
<&sleep_clk>,
46+
<&pcie_2lane_phy_pipe_clk>,
47+
<&pcie_2lane_phy_pipe_clk_x1>,
48+
<&usb_pcie_wrapper_pipe_clk>;
49+
#clock-cells = <1>;
50+
#power-domain-cells = <1>;
51+
#reset-cells = <1>;
52+
};
53+
...
Lines changed: 61 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,61 @@
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-gcc.yaml#
5+
$schema: http://devicetree.org/meta-schemas/core.yaml#
6+
7+
title: Qualcomm Global Clock & Reset Controller on IPQ9574
8+
9+
maintainers:
10+
- Anusha Rao <quic_anusha@quicinc.com>
11+
12+
description: |
13+
Qualcomm global clock control module provides the clocks, resets and power
14+
domains on IPQ9574
15+
16+
See also::
17+
include/dt-bindings/clock/qcom,ipq9574-gcc.h
18+
include/dt-bindings/reset/qcom,ipq9574-gcc.h
19+
20+
properties:
21+
compatible:
22+
const: qcom,ipq9574-gcc
23+
24+
clocks:
25+
items:
26+
- description: Board XO source
27+
- description: Sleep clock source
28+
- description: Bias PLL ubi clock source
29+
- description: PCIE30 PHY0 pipe clock source
30+
- description: PCIE30 PHY1 pipe clock source
31+
- description: PCIE30 PHY2 pipe clock source
32+
- description: PCIE30 PHY3 pipe clock source
33+
- description: USB3 PHY pipe clock source
34+
35+
required:
36+
- compatible
37+
- clocks
38+
39+
allOf:
40+
- $ref: qcom,gcc.yaml#
41+
42+
unevaluatedProperties: false
43+
44+
examples:
45+
- |
46+
clock-controller@1800000 {
47+
compatible = "qcom,ipq9574-gcc";
48+
reg = <0x01800000 0x80000>;
49+
clocks = <&xo_board_clk>,
50+
<&sleep_clk>,
51+
<&bias_pll_ubi_nc_clk>,
52+
<&pcie30_phy0_pipe_clk>,
53+
<&pcie30_phy1_pipe_clk>,
54+
<&pcie30_phy2_pipe_clk>,
55+
<&pcie30_phy3_pipe_clk>,
56+
<&usb3phy_0_cc_pipe_clk>;
57+
#clock-cells = <1>;
58+
#reset-cells = <1>;
59+
#power-domain-cells = <1>;
60+
};
61+
...

0 commit comments

Comments
 (0)