xref: /freebsd/sys/contrib/device-tree/Bindings/clock/qcom,gcc-sdm845.yaml (revision 0e8011faf58b743cc652e3b2ad0f7671227610df)
12eb4d8dcSEmmanuel Vadot# SPDX-License-Identifier: GPL-2.0-only
22eb4d8dcSEmmanuel Vadot%YAML 1.2
32eb4d8dcSEmmanuel Vadot---
42eb4d8dcSEmmanuel Vadot$id: http://devicetree.org/schemas/clock/qcom,gcc-sdm845.yaml#
52eb4d8dcSEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml#
62eb4d8dcSEmmanuel Vadot
78bab661aSEmmanuel Vadottitle: Qualcomm Global Clock & Reset Controller on SDM670 and SDM845
82eb4d8dcSEmmanuel Vadot
92eb4d8dcSEmmanuel Vadotmaintainers:
102eb4d8dcSEmmanuel Vadot  - Stephen Boyd <sboyd@kernel.org>
11aa1a8ff2SEmmanuel Vadot  - Taniya Das <quic_tdas@quicinc.com>
122eb4d8dcSEmmanuel Vadot
132eb4d8dcSEmmanuel Vadotdescription: |
148bab661aSEmmanuel Vadot  Qualcomm global clock control module provides the clocks, resets and power
158bab661aSEmmanuel Vadot  domains on SDM670 and SDM845
162eb4d8dcSEmmanuel Vadot
178bab661aSEmmanuel Vadot  See also:: include/dt-bindings/clock/qcom,gcc-sdm845.h
182eb4d8dcSEmmanuel Vadot
192eb4d8dcSEmmanuel Vadotproperties:
202eb4d8dcSEmmanuel Vadot  compatible:
217ef62cebSEmmanuel Vadot    enum:
227ef62cebSEmmanuel Vadot      - qcom,gcc-sdm670
237ef62cebSEmmanuel Vadot      - qcom,gcc-sdm845
242eb4d8dcSEmmanuel Vadot
252eb4d8dcSEmmanuel Vadot  clocks:
267ef62cebSEmmanuel Vadot    minItems: 3
277ef62cebSEmmanuel Vadot    maxItems: 5
287ef62cebSEmmanuel Vadot
297ef62cebSEmmanuel Vadot  clock-names:
307ef62cebSEmmanuel Vadot    minItems: 3
317ef62cebSEmmanuel Vadot    maxItems: 5
327ef62cebSEmmanuel Vadot
337ef62cebSEmmanuel Vadot  power-domains:
347ef62cebSEmmanuel Vadot    maxItems: 1
357ef62cebSEmmanuel Vadot
367ef62cebSEmmanuel Vadotrequired:
377ef62cebSEmmanuel Vadot  - compatible
38*0e8011faSEmmanuel Vadot  - '#power-domain-cells'
397ef62cebSEmmanuel Vadot
407ef62cebSEmmanuel VadotallOf:
417ef62cebSEmmanuel Vadot  - $ref: qcom,gcc.yaml#
427ef62cebSEmmanuel Vadot  - if:
437ef62cebSEmmanuel Vadot      properties:
447ef62cebSEmmanuel Vadot        compatible:
457ef62cebSEmmanuel Vadot          contains:
467ef62cebSEmmanuel Vadot            const: qcom,gcc-sdm670
477ef62cebSEmmanuel Vadot    then:
487ef62cebSEmmanuel Vadot      properties:
497ef62cebSEmmanuel Vadot        clocks:
507ef62cebSEmmanuel Vadot          items:
517ef62cebSEmmanuel Vadot            - description: Board XO source
527ef62cebSEmmanuel Vadot            - description: Board active XO source
537ef62cebSEmmanuel Vadot            - description: Sleep clock source
547ef62cebSEmmanuel Vadot        clock-names:
557ef62cebSEmmanuel Vadot          items:
567ef62cebSEmmanuel Vadot            - const: bi_tcxo
577ef62cebSEmmanuel Vadot            - const: bi_tcxo_ao
587ef62cebSEmmanuel Vadot            - const: sleep_clk
597ef62cebSEmmanuel Vadot
607ef62cebSEmmanuel Vadot  - if:
617ef62cebSEmmanuel Vadot      properties:
627ef62cebSEmmanuel Vadot        compatible:
637ef62cebSEmmanuel Vadot          contains:
647ef62cebSEmmanuel Vadot            const: qcom,gcc-sdm845
657ef62cebSEmmanuel Vadot    then:
667ef62cebSEmmanuel Vadot      properties:
677ef62cebSEmmanuel Vadot        clocks:
682eb4d8dcSEmmanuel Vadot          items:
692eb4d8dcSEmmanuel Vadot            - description: Board XO source
702eb4d8dcSEmmanuel Vadot            - description: Board active XO source
712eb4d8dcSEmmanuel Vadot            - description: Sleep clock source
722eb4d8dcSEmmanuel Vadot            - description: PCIE 0 Pipe clock source
732eb4d8dcSEmmanuel Vadot            - description: PCIE 1 Pipe clock source
742eb4d8dcSEmmanuel Vadot        clock-names:
752eb4d8dcSEmmanuel Vadot          items:
762eb4d8dcSEmmanuel Vadot            - const: bi_tcxo
772eb4d8dcSEmmanuel Vadot            - const: bi_tcxo_ao
782eb4d8dcSEmmanuel Vadot            - const: sleep_clk
792eb4d8dcSEmmanuel Vadot            - const: pcie_0_pipe_clk
802eb4d8dcSEmmanuel Vadot            - const: pcie_1_pipe_clk
812eb4d8dcSEmmanuel Vadot
827ef62cebSEmmanuel VadotunevaluatedProperties: false
832eb4d8dcSEmmanuel Vadot
842eb4d8dcSEmmanuel Vadotexamples:
852eb4d8dcSEmmanuel Vadot  # Example for GCC for SDM845:
862eb4d8dcSEmmanuel Vadot  - |
872eb4d8dcSEmmanuel Vadot    #include <dt-bindings/clock/qcom,rpmh.h>
882eb4d8dcSEmmanuel Vadot    clock-controller@100000 {
892eb4d8dcSEmmanuel Vadot      compatible = "qcom,gcc-sdm845";
902eb4d8dcSEmmanuel Vadot      reg = <0x100000 0x1f0000>;
912eb4d8dcSEmmanuel Vadot      clocks = <&rpmhcc RPMH_CXO_CLK>,
922eb4d8dcSEmmanuel Vadot               <&rpmhcc RPMH_CXO_CLK_A>,
932eb4d8dcSEmmanuel Vadot               <&sleep_clk>,
942eb4d8dcSEmmanuel Vadot               <&pcie0_lane>,
952eb4d8dcSEmmanuel Vadot               <&pcie1_lane>;
962eb4d8dcSEmmanuel Vadot      clock-names = "bi_tcxo", "bi_tcxo_ao", "sleep_clk", "pcie_0_pipe_clk", "pcie_1_pipe_clk";
972eb4d8dcSEmmanuel Vadot      #clock-cells = <1>;
982eb4d8dcSEmmanuel Vadot      #reset-cells = <1>;
992eb4d8dcSEmmanuel Vadot      #power-domain-cells = <1>;
1002eb4d8dcSEmmanuel Vadot    };
1012eb4d8dcSEmmanuel Vadot...
102