Skip to content

Commit 7ed1cef

Browse files
committed
Merge tag 'qcom-clk-for-6.5-2' of https://git.kernel.org/pub/scm/linux/kernel/git/qcom/linux into clk-qcom
Pull Qualcomm clk driver updates from Bjorn Andersson: This introduces Global Clock Controller for SDX75, LPASS clock controllers for SC8280XP, video clock controller for SM8350, SM8450 and SM8550, GPU clock controller for SM8450 and SM8550, RPMH clock support for SDX75 and IPQ9574 support in APSS IPQ PLL driver. Support for branch2 clocks with inverted off-bit is introduced and a couple of fixes to Alpha PLLs handling of TEST_CTL updates. The handling of active-only clocks in SMD RPM is improved, to ensure votes are appropriately placed. SC7180 camera GDSCs are made children of the titan_top GDSC. A couple of fixes to the display clocks on QCM2290 and shared RCGs in GCC are marked as such. SDCC clocks for IPQ6018 and IPQ5332 are corrected to use floor ops, and network-related resets on IPQ6018 are updated to cover all bits of each reset. Crypto clocks are added to IPQ9574 global clock controller, together with a few cleanups. Runtime PM is enabeld for SC8280XP GCC and GPUCC, and SM6375 GPUCC. A few fixes for MSM8974 multi-media clock controller. Support for some RCG clocks to be automatically controlled by downstream branches, and added to SM8450 GCC clocks. Further Kconfig depdenencies are introduce to avoid building Qualcomm clock drivers on unrelated architectures. Lastly, related DeviceTree binding updates are made. The tail of this is not bisectable, due to the missing DeviceTree binding include files. Rebase at this point in time is not desirable. * tag 'qcom-clk-for-6.5-2' of https://git.kernel.org/pub/scm/linux/kernel/git/qcom/linux: (63 commits) clk: qcom: gcc-sc8280xp: Add runtime PM clk: qcom: gpucc-sc8280xp: Add runtime PM clk: qcom: mmcc-msm8974: fix MDSS_GDSC power flags clk: qcom: gpucc-sm6375: Enable runtime pm dt-bindings: clock: sm6375-gpucc: Add VDD_GX clk: qcom: gcc-sm6115: Add missing PLL config properties clk: qcom: clk-alpha-pll: Add a way to update some bits of test_ctl(_hi) clk: qcom: gcc-ipq6018: remove duplicate initializers clk: qcom: gcc-ipq9574: Enable crypto clocks dt-bindings: clock: Add crypto clock and reset definitions clk: qcom: Add lpass audio clock controller driver for SC8280XP clk: qcom: Add lpass clock controller driver for SC8280XP dt-bindings: clock: Add LPASS AUDIOCC and reset controller for SC8280XP dt-bindings: clock: Add LPASSCC and reset controller for SC8280XP dt-bindings: clock: qcom,mmcc: define clocks/clock-names for MSM8226 clk: qcom: gpucc-sm8550: Add support for graphics clock controller clk: qcom: Add support for SM8450 GPUCC clk: qcom: gcc-sm8450: Enable hw_clk_ctrl clk: qcom: rcg2: Make hw_clk_ctrl toggleable dt-bindings: clock: qcom: Add SM8550 graphics clock controller ...
2 parents ac9a786 + e5d10d1 commit 7ed1cef

56 files changed

Lines changed: 7532 additions & 349 deletions

Some content is hidden

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

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

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@ properties:
1919
- qcom,ipq5332-a53pll
2020
- qcom,ipq6018-a53pll
2121
- qcom,ipq8074-a53pll
22+
- qcom,ipq9574-a73pll
2223
- qcom,msm8916-a53pll
2324
- qcom,msm8939-a53pll
2425

Lines changed: 73 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,73 @@
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-msm8953.yaml#
5+
$schema: http://devicetree.org/meta-schemas/core.yaml#
6+
7+
title: Qualcomm Global Clock & Reset Controller on MSM8953
8+
9+
maintainers:
10+
- Adam Skladowski <a_skl39@protonmail.com>
11+
- Sireesh Kodali <sireeshkodali@protonmail.com>
12+
13+
description: |
14+
Qualcomm global clock control module provides the clocks, resets and power
15+
domains on MSM8953.
16+
17+
See also: include/dt-bindings/clock/qcom,gcc-msm8953.h
18+
19+
properties:
20+
compatible:
21+
const: qcom,gcc-msm8953
22+
23+
clocks:
24+
items:
25+
- description: Board XO source
26+
- description: Sleep clock source
27+
- description: Byte clock from DSI PHY0
28+
- description: Pixel clock from DSI PHY0
29+
- description: Byte clock from DSI PHY1
30+
- description: Pixel clock from DSI PHY1
31+
32+
clock-names:
33+
items:
34+
- const: xo
35+
- const: sleep
36+
- const: dsi0pll
37+
- const: dsi0pllbyte
38+
- const: dsi1pll
39+
- const: dsi1pllbyte
40+
41+
required:
42+
- compatible
43+
- clocks
44+
- clock-names
45+
46+
allOf:
47+
- $ref: qcom,gcc.yaml#
48+
49+
unevaluatedProperties: false
50+
51+
examples:
52+
- |
53+
#include <dt-bindings/clock/qcom,rpmcc.h>
54+
55+
clock-controller@1800000 {
56+
compatible = "qcom,gcc-msm8953";
57+
reg = <0x01800000 0x80000>;
58+
clocks = <&rpmcc RPM_SMD_XO_CLK_SRC>,
59+
<&sleep_clk>,
60+
<&dsi0_phy 1>,
61+
<&dsi0_phy 0>,
62+
<&dsi1_phy 1>,
63+
<&dsi1_phy 0>;
64+
clock-names = "xo",
65+
"sleep",
66+
"dsi0pll",
67+
"dsi0pllbyte",
68+
"dsi1pll",
69+
"dsi1pllbyte";
70+
#clock-cells = <1>;
71+
#reset-cells = <1>;
72+
#power-domain-cells = <1>;
73+
};

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

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,6 @@ properties:
3030
enum:
3131
- qcom,gcc-ipq6018
3232
- qcom,gcc-mdm9607
33-
- qcom,gcc-msm8953
3433
- qcom,gcc-mdm9615
3534

3635
required:

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

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,10 @@ properties:
3232
- const: bi_tcxo_ao
3333
- const: sleep_clk
3434

35+
power-domains:
36+
items:
37+
- description: CX domain
38+
3539
required:
3640
- compatible
3741
- clocks
@@ -45,13 +49,16 @@ unevaluatedProperties: false
4549
examples:
4650
- |
4751
#include <dt-bindings/clock/qcom,rpmh.h>
52+
#include <dt-bindings/power/qcom-rpmpd.h>
53+
4854
clock-controller@100000 {
4955
compatible = "qcom,gcc-sc7180";
5056
reg = <0x00100000 0x1f0000>;
5157
clocks = <&rpmhcc RPMH_CXO_CLK>,
5258
<&rpmhcc RPMH_CXO_CLK_A>,
5359
<&sleep_clk>;
5460
clock-names = "bi_tcxo", "bi_tcxo_ao", "sleep_clk";
61+
power-domains = <&rpmhpd SC7180_CX>;
5562
#clock-cells = <1>;
5663
#reset-cells = <1>;
5764
#power-domain-cells = <1>;

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

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -43,6 +43,10 @@ properties:
4343
- const: ufs_phy_tx_symbol_0_clk
4444
- const: usb3_phy_wrapper_gcc_usb30_pipe_clk
4545

46+
power-domains:
47+
items:
48+
- description: CX domain
49+
4650
required:
4751
- compatible
4852
- clocks
@@ -56,6 +60,8 @@ unevaluatedProperties: false
5660
examples:
5761
- |
5862
#include <dt-bindings/clock/qcom,rpmh.h>
63+
#include <dt-bindings/power/qcom-rpmpd.h>
64+
5965
clock-controller@100000 {
6066
compatible = "qcom,gcc-sc7280";
6167
reg = <0x00100000 0x1f0000>;
@@ -71,6 +77,7 @@ examples:
7177
"pcie_1_pipe_clk", "ufs_phy_rx_symbol_0_clk",
7278
"ufs_phy_rx_symbol_1_clk", "ufs_phy_tx_symbol_0_clk",
7379
"usb3_phy_wrapper_gcc_usb30_pipe_clk";
80+
power-domains = <&rpmhpd SC7280_CX>;
7481
#clock-cells = <1>;
7582
#reset-cells = <1>;
7683
#power-domain-cells = <1>;

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

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,11 +23,13 @@ properties:
2323
clocks:
2424
items:
2525
- description: Board XO source
26+
- description: Board active XO source
2627
- description: Sleep clock source
2728

2829
clock-names:
2930
items:
3031
- const: bi_tcxo
32+
- const: bi_tcxo_ao
3133
- const: sleep_clk
3234

3335
required:
@@ -47,8 +49,9 @@ examples:
4749
compatible = "qcom,gcc-sm8250";
4850
reg = <0x00100000 0x1f0000>;
4951
clocks = <&rpmhcc RPMH_CXO_CLK>,
52+
<&rpmhcc RPMH_CXO_CLK_A>,
5053
<&sleep_clk>;
51-
clock-names = "bi_tcxo", "sleep_clk";
54+
clock-names = "bi_tcxo", "bi_tcxo_ao", "sleep_clk";
5255
#clock-cells = <1>;
5356
#reset-cells = <1>;
5457
#power-domain-cells = <1>;

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

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -50,6 +50,9 @@ properties:
5050
- const: gcc_gpu_gpll0_clk_src
5151
- const: gcc_gpu_gpll0_div_clk_src
5252

53+
power-domains:
54+
maxItems: 1
55+
5356
'#clock-cells':
5457
const: 1
5558

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

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@ $schema: http://devicetree.org/meta-schemas/core.yaml#
77
title: Qualcomm Global Clock & Reset Controller on IPQ9574
88

99
maintainers:
10+
- Bjorn Andersson <andersson@kernel.org>
1011
- Anusha Rao <quic_anusha@quicinc.com>
1112

1213
description: |

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

Lines changed: 30 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -31,11 +31,11 @@ properties:
3131
- qcom,mmcc-sdm660
3232

3333
clocks:
34-
minItems: 8
34+
minItems: 7
3535
maxItems: 13
3636

3737
clock-names:
38-
minItems: 8
38+
minItems: 7
3939
maxItems: 13
4040

4141
'#clock-cells':
@@ -99,6 +99,34 @@ allOf:
9999
- const: dsi2pllbyte
100100
- const: hdmipll
101101

102+
- if:
103+
properties:
104+
compatible:
105+
contains:
106+
enum:
107+
- qcom,mmcc-msm8226
108+
then:
109+
properties:
110+
clocks:
111+
items:
112+
- description: Board XO source
113+
- description: MMSS GPLL0 voted clock
114+
- description: GPLL0 voted clock
115+
- description: GPLL1 voted clock
116+
- description: GFX3D clock source
117+
- description: DSI phy instance 0 dsi clock
118+
- description: DSI phy instance 0 byte clock
119+
120+
clock-names:
121+
items:
122+
- const: xo
123+
- const: mmss_gpll0_vote
124+
- const: gpll0_vote
125+
- const: gpll1_vote
126+
- const: gfx3d_clk_src
127+
- const: dsi0pll
128+
- const: dsi0pllbyte
129+
102130
- if:
103131
properties:
104132
compatible:

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

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,7 @@ properties:
2727
- qcom,sdm845-rpmh-clk
2828
- qcom,sdx55-rpmh-clk
2929
- qcom,sdx65-rpmh-clk
30+
- qcom,sdx75-rpmh-clk
3031
- qcom,sm6350-rpmh-clk
3132
- qcom,sm8150-rpmh-clk
3233
- qcom,sm8250-rpmh-clk

0 commit comments

Comments
 (0)