Skip to content

Commit c64dd8e

Browse files
committed
Merge branches 'clk-range', 'clk-uniphier', 'clk-apple' and 'clk-qcom' into clk-next
- Make clk_set_rate_range() re-evaluate the limits each time - Introduce various clk_set_rate_range() tests - Add clk_drop_range() to drop a previously set range - Support for NCO blocks on Apple SoCs * clk-range: clk: Drop the rate range on clk_put() clk: test: Test clk_set_rate_range on orphan mux clk: Initialize orphan req_rate clk: bcm: rpi: Run some clocks at the minimum rate allowed clk: bcm: rpi: Set a default minimum rate clk: bcm: rpi: Add variant structure clk: Add clk_drop_range clk: Always set the rate on clk_set_range_rate clk: Use clamp instead of open-coding our own clk: Always clamp the rounded rate clk: Enforce that disjoints limits are invalid clk: Introduce Kunit Tests for the framework clk: Fix clk_hw_get_clk() when dev is NULL * clk-uniphier: clk: uniphier: Fix fixed-rate initialization * clk-apple: clk: clk-apple-nco: Allow and fix module building MAINTAINERS: Add clk-apple-nco under ARM/APPLE MACHINE clk: clk-apple-nco: Add driver for Apple NCO dt-bindings: clock: Add Apple NCO * clk-qcom: (61 commits) clk: qcom: gcc-msm8994: Fix gpll4 width dt-bindings: clock: fix dt_binding_check error for qcom,gcc-other.yaml clk: qcom: Add display clock controller driver for SM6125 dt-bindings: clock: add QCOM SM6125 display clock bindings clk: qcom: Fix sorting of SDX_GCC_65 in Makefile and Kconfig clk: qcom: gcc: Add emac GDSC support for SM8150 clk: qcom: gcc: sm8150: Fix some identation issues clk: qcom: gcc: Add UFS_CARD and UFS_PHY GDSCs for SM8150 clk: qcom: gcc: Add PCIe0 and PCIe1 GDSC for SM8150 clk: qcom: clk-rcg2: Update the frac table for pixel clock clk: qcom: clk-rcg2: Update logic to calculate D value for RCG clk: qcom: smd: Add missing MSM8998 RPM clocks clk: qcom: smd: Add missing RPM clocks for msm8992/4 dt-bindings: clock: qcom: rpmcc: Add RPM Modem SubSystem (MSS) clocks clk: qcom: gcc-ipq806x: add CryptoEngine resets dt-bindings: reset: add ipq8064 ce5 resets clk: qcom: gcc-ipq806x: add CryptoEngine clocks dt-bindings: clock: add ipq8064 ce5 clk define clk: qcom: gcc-ipq806x: add additional freq for sdc table clk: qcom: clk-rcg: add clk_rcg_floor_ops ops ...
5 parents 4222744 + 7dabfa2 + ca85a66 + 236541a + 71021db commit c64dd8e

Some content is hidden

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

54 files changed

+6666
-1042
lines changed
Lines changed: 62 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,62 @@
1+
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2+
%YAML 1.2
3+
---
4+
$id: http://devicetree.org/schemas/clock/apple,nco.yaml#
5+
$schema: http://devicetree.org/meta-schemas/core.yaml#
6+
7+
title: Apple SoCs' NCO block
8+
9+
maintainers:
10+
- Martin Povišer <[email protected]>
11+
12+
description: |
13+
The NCO (Numerically Controlled Oscillator) block found on Apple SoCs
14+
such as the t8103 (M1) is a programmable clock generator performing
15+
fractional division of a high frequency input clock.
16+
17+
It carries a number of independent channels and is typically used for
18+
generation of audio bitclocks.
19+
20+
properties:
21+
compatible:
22+
items:
23+
- enum:
24+
- apple,t6000-nco
25+
- apple,t8103-nco
26+
- const: apple,nco
27+
28+
clocks:
29+
description:
30+
Specifies the reference clock from which the output clocks
31+
are derived through fractional division.
32+
maxItems: 1
33+
34+
'#clock-cells':
35+
const: 1
36+
37+
reg:
38+
maxItems: 1
39+
40+
required:
41+
- compatible
42+
- clocks
43+
- '#clock-cells'
44+
- reg
45+
46+
additionalProperties: false
47+
48+
examples:
49+
- |
50+
nco_clkref: clock-ref {
51+
compatible = "fixed-clock";
52+
#clock-cells = <0>;
53+
clock-frequency = <900000000>;
54+
clock-output-names = "nco-ref";
55+
};
56+
57+
nco: clock-controller@23b044000 {
58+
compatible = "apple,t8103-nco", "apple,nco";
59+
reg = <0x3b044000 0x14000>;
60+
#clock-cells = <1>;
61+
clocks = <&nco_clkref>;
62+
};

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

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ maintainers:
1010
- Manivannan Sadhasivam <[email protected]>
1111

1212
description:
13-
The A7 PLL on the Qualcomm platforms like SDX55 is used to provide high
13+
The A7 PLL on the Qualcomm platforms like SDX55, SDX65 is used to provide high
1414
frequency clock to the CPU.
1515

1616
properties:

Documentation/devicetree/bindings/clock/qcom,camcc.txt

Lines changed: 0 additions & 18 deletions
This file was deleted.
Lines changed: 87 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,87 @@
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,dispcc-sm6125.yaml#
5+
$schema: http://devicetree.org/meta-schemas/core.yaml#
6+
7+
title: Qualcomm Display Clock Controller Binding for SM6125
8+
9+
maintainers:
10+
- Martin Botka <[email protected]>
11+
12+
description: |
13+
Qualcomm display clock control module which supports the clocks and
14+
power domains on SM6125.
15+
16+
See also:
17+
dt-bindings/clock/qcom,dispcc-sm6125.h
18+
19+
properties:
20+
compatible:
21+
enum:
22+
- qcom,sm6125-dispcc
23+
24+
clocks:
25+
items:
26+
- description: Board XO source
27+
- description: Byte clock from DSI PHY0
28+
- description: Pixel clock from DSI PHY0
29+
- description: Pixel clock from DSI PHY1
30+
- description: Link clock from DP PHY
31+
- description: VCO DIV clock from DP PHY
32+
- description: AHB config clock from GCC
33+
34+
clock-names:
35+
items:
36+
- const: bi_tcxo
37+
- const: dsi0_phy_pll_out_byteclk
38+
- const: dsi0_phy_pll_out_dsiclk
39+
- const: dsi1_phy_pll_out_dsiclk
40+
- const: dp_phy_pll_link_clk
41+
- const: dp_phy_pll_vco_div_clk
42+
- const: cfg_ahb_clk
43+
44+
'#clock-cells':
45+
const: 1
46+
47+
'#power-domain-cells':
48+
const: 1
49+
50+
reg:
51+
maxItems: 1
52+
53+
required:
54+
- compatible
55+
- reg
56+
- clocks
57+
- clock-names
58+
- '#clock-cells'
59+
- '#power-domain-cells'
60+
61+
additionalProperties: false
62+
63+
examples:
64+
- |
65+
#include <dt-bindings/clock/qcom,rpmcc.h>
66+
#include <dt-bindings/clock/qcom,gcc-sm6125.h>
67+
clock-controller@5f00000 {
68+
compatible = "qcom,sm6125-dispcc";
69+
reg = <0x5f00000 0x20000>;
70+
clocks = <&rpmcc RPM_SMD_XO_CLK_SRC>,
71+
<&dsi0_phy 0>,
72+
<&dsi0_phy 1>,
73+
<&dsi1_phy 1>,
74+
<&dp_phy 0>,
75+
<&dp_phy 1>,
76+
<&gcc GCC_DISP_AHB_CLK>;
77+
clock-names = "bi_tcxo",
78+
"dsi0_phy_pll_out_byteclk",
79+
"dsi0_phy_pll_out_dsiclk",
80+
"dsi1_phy_pll_out_dsiclk",
81+
"dp_phy_pll_link_clk",
82+
"dp_phy_pll_vco_div_clk",
83+
"cfg_ahb_clk";
84+
#clock-cells = <1>;
85+
#power-domain-cells = <1>;
86+
};
87+
...
Lines changed: 86 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,86 @@
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,dispcc-sm6350.yaml#
5+
$schema: http://devicetree.org/meta-schemas/core.yaml#
6+
7+
title: Qualcomm Display Clock & Reset Controller Binding for SM6350
8+
9+
maintainers:
10+
- Konrad Dybcio <[email protected]>
11+
12+
description: |
13+
Qualcomm display clock control module which supports the clocks, resets and
14+
power domains on SM6350.
15+
16+
See also dt-bindings/clock/qcom,dispcc-sm6350.h.
17+
18+
properties:
19+
compatible:
20+
const: qcom,sm6350-dispcc
21+
22+
clocks:
23+
items:
24+
- description: Board XO source
25+
- description: GPLL0 source from GCC
26+
- description: Byte clock from DSI PHY
27+
- description: Pixel clock from DSI PHY
28+
- description: Link clock from DP PHY
29+
- description: VCO DIV clock from DP PHY
30+
31+
clock-names:
32+
items:
33+
- const: bi_tcxo
34+
- const: gcc_disp_gpll0_clk
35+
- const: dsi0_phy_pll_out_byteclk
36+
- const: dsi0_phy_pll_out_dsiclk
37+
- const: dp_phy_pll_link_clk
38+
- const: dp_phy_pll_vco_div_clk
39+
40+
'#clock-cells':
41+
const: 1
42+
43+
'#reset-cells':
44+
const: 1
45+
46+
'#power-domain-cells':
47+
const: 1
48+
49+
reg:
50+
maxItems: 1
51+
52+
required:
53+
- compatible
54+
- reg
55+
- clocks
56+
- clock-names
57+
- '#clock-cells'
58+
- '#reset-cells'
59+
- '#power-domain-cells'
60+
61+
additionalProperties: false
62+
63+
examples:
64+
- |
65+
#include <dt-bindings/clock/qcom,gcc-sm6350.h>
66+
#include <dt-bindings/clock/qcom,rpmh.h>
67+
clock-controller@af00000 {
68+
compatible = "qcom,sm6350-dispcc";
69+
reg = <0x0af00000 0x20000>;
70+
clocks = <&rpmhcc RPMH_CXO_CLK>,
71+
<&gcc GCC_DISP_GPLL0_CLK>,
72+
<&dsi_phy 0>,
73+
<&dsi_phy 1>,
74+
<&dp_phy 0>,
75+
<&dp_phy 1>;
76+
clock-names = "bi_tcxo",
77+
"gcc_disp_gpll0_clk",
78+
"dsi0_phy_pll_out_byteclk",
79+
"dsi0_phy_pll_out_dsiclk",
80+
"dp_phy_pll_link_clk",
81+
"dp_phy_pll_vco_div_clk";
82+
#clock-cells = <1>;
83+
#reset-cells = <1>;
84+
#power-domain-cells = <1>;
85+
};
86+
...

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

Lines changed: 7 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,9 @@ $schema: http://devicetree.org/meta-schemas/core.yaml#
66

77
title: Qualcomm Global Clock & Reset Controller Binding for APQ8064
88

9+
allOf:
10+
- $ref: qcom,gcc.yaml#
11+
912
maintainers:
1013
- Stephen Boyd <[email protected]>
1114
- Taniya Das <[email protected]>
@@ -17,22 +20,12 @@ description: |
1720
See also:
1821
- dt-bindings/clock/qcom,gcc-msm8960.h
1922
- dt-bindings/reset/qcom,gcc-msm8960.h
23+
- dt-bindings/clock/qcom,gcc-apq8084.h
24+
- dt-bindings/reset/qcom,gcc-apq8084.h
2025
2126
properties:
2227
compatible:
23-
const: qcom,gcc-apq8064
24-
25-
'#clock-cells':
26-
const: 1
27-
28-
'#reset-cells':
29-
const: 1
30-
31-
'#power-domain-cells':
32-
const: 1
33-
34-
reg:
35-
maxItems: 1
28+
const: qcom,gcc-apq8084
3629

3730
nvmem-cells:
3831
minItems: 1
@@ -53,21 +46,13 @@ properties:
5346
'#thermal-sensor-cells':
5447
const: 1
5548

56-
protected-clocks:
57-
description:
58-
Protected clock specifier list as per common clock binding.
59-
6049
required:
6150
- compatible
62-
- reg
63-
- '#clock-cells'
64-
- '#reset-cells'
65-
- '#power-domain-cells'
6651
- nvmem-cells
6752
- nvmem-cell-names
6853
- '#thermal-sensor-cells'
6954

70-
additionalProperties: false
55+
unevaluatedProperties: false
7156

7257
examples:
7358
- |

0 commit comments

Comments
 (0)