GNU Linux-libre 6.1.90-gnu
[releases.git] / Documentation / devicetree / bindings / clock / qcom,gcc-sm8350.yaml
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-sm8350.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
6
7 title: Qualcomm Global Clock & Reset Controller Binding for SM8350
8
9 maintainers:
10   - Vinod Koul <vkoul@kernel.org>
11
12 description: |
13   Qualcomm global clock control module which supports the clocks, resets and
14   power domains on SM8350.
15
16   See also:
17   - dt-bindings/clock/qcom,gcc-sm8350.h
18
19 properties:
20   compatible:
21     const: qcom,gcc-sm8350
22
23   clocks:
24     items:
25       - description: Board XO source
26       - description: Sleep clock source
27       - description: PLL test clock source (Optional clock)
28       - description: PCIE 0 Pipe clock source (Optional clock)
29       - description: PCIE 1 Pipe clock source (Optional clock)
30       - description: UFS card Rx symbol 0 clock source (Optional clock)
31       - description: UFS card Rx symbol 1 clock source (Optional clock)
32       - description: UFS card Tx symbol 0 clock source (Optional clock)
33       - description: UFS phy Rx symbol 0 clock source (Optional clock)
34       - description: UFS phy Rx symbol 1 clock source (Optional clock)
35       - description: UFS phy Tx symbol 0 clock source (Optional clock)
36       - description: USB3 phy wrapper pipe clock source (Optional clock)
37       - description: USB3 phy sec pipe clock source (Optional clock)
38     minItems: 2
39
40   clock-names:
41     items:
42       - const: bi_tcxo
43       - const: sleep_clk
44       - const: core_bi_pll_test_se # Optional clock
45       - const: pcie_0_pipe_clk # Optional clock
46       - const: pcie_1_pipe_clk # Optional clock
47       - const: ufs_card_rx_symbol_0_clk # Optional clock
48       - const: ufs_card_rx_symbol_1_clk # Optional clock
49       - const: ufs_card_tx_symbol_0_clk # Optional clock
50       - const: ufs_phy_rx_symbol_0_clk # Optional clock
51       - const: ufs_phy_rx_symbol_1_clk # Optional clock
52       - const: ufs_phy_tx_symbol_0_clk # Optional clock
53       - const: usb3_phy_wrapper_gcc_usb30_pipe_clk # Optional clock
54       - const: usb3_uni_phy_sec_gcc_usb30_pipe_clk # Optional clock
55     minItems: 2
56
57 required:
58   - compatible
59   - clocks
60   - clock-names
61
62 allOf:
63   - $ref: qcom,gcc.yaml#
64
65 unevaluatedProperties: false
66
67 examples:
68   - |
69     #include <dt-bindings/clock/qcom,rpmh.h>
70     clock-controller@100000 {
71       compatible = "qcom,gcc-sm8350";
72       reg = <0x00100000 0x1f0000>;
73       clocks = <&rpmhcc RPMH_CXO_CLK>,
74                <&sleep_clk>;
75       clock-names = "bi_tcxo", "sleep_clk";
76       #clock-cells = <1>;
77       #reset-cells = <1>;
78       #power-domain-cells = <1>;
79     };
80
81 ...