# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
%YAML 1.2
---
$id: http://devicetree.org/schemas/clock/qcom,sa8775p-gcc.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: Qualcomm Global Clock & Reset Controller on sa8775p

maintainers:
  - Bartosz Golaszewski <bartosz.golaszewski@linaro.org>

description: |
  Qualcomm global clock control module provides the clocks, resets and
  power domains on sa8775p.

  See also:: include/dt-bindings/clock/qcom,sa8775p-gcc.h

properties:
  compatible:
    const: qcom,sa8775p-gcc

  clocks:
    items:
      - description: XO reference clock
      - description: Sleep clock
      - description: UFS memory first RX symbol clock
      - description: UFS memory second RX symbol clock
      - description: UFS memory first TX symbol clock
      - description: UFS card first RX symbol clock
      - description: UFS card second RX symbol clock
      - description: UFS card first TX symbol clock
      - description: Primary USB3 PHY wrapper pipe clock
      - description: Secondary USB3 PHY wrapper pipe clock
      - description: PCIe 0 pipe clock
      - description: PCIe 1 pipe clock
      - description: PCIe PHY clock
      - description: First EMAC controller reference clock
      - description: Second EMAC controller reference clock

  protected-clocks:
    maxItems: 240

  power-domains:
    maxItems: 1

required:
  - compatible
  - clocks

allOf:
  - $ref: qcom,gcc.yaml#

unevaluatedProperties: false

examples:
  - |
    #include <dt-bindings/clock/qcom,rpmh.h>
    #include <dt-bindings/power/qcom-rpmpd.h>

    gcc: clock-controller@100000 {
        compatible = "qcom,sa8775p-gcc";
        reg = <0x100000 0xc7018>;
        clocks = <&rpmhcc RPMH_CXO_CLK>,
                 <&sleep_clk>,
                 <&ufs_phy_rx_symbol_0_clk>,
                 <&ufs_phy_rx_symbol_1_clk>,
                 <&ufs_phy_tx_symbol_0_clk>,
                 <&ufs_card_rx_symbol_0_clk>,
                 <&ufs_card_rx_symbol_1_clk>,
                 <&ufs_card_tx_symbol_0_clk>,
                 <&usb_0_ssphy>,
                 <&usb_1_ssphy>,
                 <&pcie_0_pipe_clk>,
                 <&pcie_1_pipe_clk>,
                 <&pcie_phy_pipe_clk>,
                 <&rxc0_ref_clk>,
                 <&rxc1_ref_clk>;
        power-domains = <&rpmhpd SA8775P_CX>;

        #clock-cells = <1>;
        #reset-cells = <1>;
        #power-domain-cells = <1>;
    };
...
