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

title: Qualcomm LPASS Core & Audio Clock Controller on SC7280

maintainers:
  - Taniya Das <quic_tdas@quicinc.com>

description: |
  Qualcomm LPASS core and audio clock control module provides the clocks and
  power domains on SC7280.

  See also::
    include/dt-bindings/clock/qcom,lpasscorecc-sc7280.h
    include/dt-bindings/clock/qcom,lpassaudiocc-sc7280.h

properties:
  clocks: true

  clock-names: true

  reg: true

  compatible:
    enum:
      - qcom,sc7280-lpassaoncc
      - qcom,sc7280-lpassaudiocc
      - qcom,sc7280-lpasscorecc
      - qcom,sc7280-lpasshm

  power-domains:
    maxItems: 1

  '#clock-cells':
    const: 1

  '#power-domain-cells':
    const: 1

  '#reset-cells':
    const: 1

  qcom,adsp-pil-mode:
    description:
      Indicates if the LPASS would be brought out of reset using
      peripheral loader.
    type: boolean

required:
  - compatible
  - reg
  - clocks
  - clock-names
  - '#clock-cells'
  - '#power-domain-cells'

additionalProperties: false

allOf:
  - if:
      properties:
        compatible:
          contains:
            const: qcom,sc7280-lpassaudiocc

    then:
      properties:
        clocks:
          items:
            - description: Board XO source
            - description: LPASS_AON_CC_MAIN_RCG_CLK_SRC

        clock-names:
          items:
            - const: bi_tcxo
            - const: lpass_aon_cc_main_rcg_clk_src

        reg:
          items:
            - description: lpass core cc register
            - description: lpass audio csr register
  - if:
      properties:
        compatible:
          contains:
            enum:
              - qcom,sc7280-lpassaoncc

    then:
      properties:
        clocks:
          items:
            - description: Board XO source
            - description: Board XO active only source
            - description: LPASS_AON_CC_MAIN_RCG_CLK_SRC

        clock-names:
          items:
            - const: bi_tcxo
            - const: bi_tcxo_ao
            - const: iface

        reg:
          maxItems: 1
  - if:
      properties:
        compatible:
          contains:
            enum:
              - qcom,sc7280-lpasshm
              - qcom,sc7280-lpasscorecc

    then:
      properties:
        clocks:
          items:
            - description: Board XO source

        clock-names:
          items:
            - const: bi_tcxo

        reg:
          maxItems: 1
examples:
  - |
    #include <dt-bindings/clock/qcom,rpmh.h>
    #include <dt-bindings/clock/qcom,gcc-sc7280.h>
    #include <dt-bindings/clock/qcom,lpassaudiocc-sc7280.h>
    #include <dt-bindings/clock/qcom,lpasscorecc-sc7280.h>
    lpass_audiocc: clock-controller@3300000 {
      compatible = "qcom,sc7280-lpassaudiocc";
      reg = <0x3300000 0x30000>,
            <0x32a9000 0x1000>;
      clocks = <&rpmhcc RPMH_CXO_CLK>,
               <&lpass_aon LPASS_AON_CC_MAIN_RCG_CLK_SRC>;
      clock-names = "bi_tcxo", "lpass_aon_cc_main_rcg_clk_src";
      power-domains = <&lpass_aon LPASS_AON_CC_LPASS_AUDIO_HM_GDSC>;
      #clock-cells = <1>;
      #power-domain-cells = <1>;
      #reset-cells = <1>;
    };

  - |
    #include <dt-bindings/clock/qcom,rpmh.h>
    #include <dt-bindings/clock/qcom,gcc-sc7280.h>
    #include <dt-bindings/clock/qcom,lpassaudiocc-sc7280.h>
    #include <dt-bindings/clock/qcom,lpasscorecc-sc7280.h>
    lpass_hm: clock-controller@3c00000 {
      compatible = "qcom,sc7280-lpasshm";
      reg = <0x3c00000 0x28>;
      clocks = <&rpmhcc RPMH_CXO_CLK>;
      clock-names = "bi_tcxo";
      #clock-cells = <1>;
      #power-domain-cells = <1>;
    };

  - |
    #include <dt-bindings/clock/qcom,rpmh.h>
    #include <dt-bindings/clock/qcom,gcc-sc7280.h>
    #include <dt-bindings/clock/qcom,lpassaudiocc-sc7280.h>
    #include <dt-bindings/clock/qcom,lpasscorecc-sc7280.h>
    lpasscore: clock-controller@3900000 {
      compatible = "qcom,sc7280-lpasscorecc";
      reg = <0x3900000 0x50000>;
      clocks = <&rpmhcc RPMH_CXO_CLK>;
      clock-names = "bi_tcxo";
      power-domains = <&lpass_hm LPASS_CORE_CC_LPASS_CORE_HM_GDSC>;
      #clock-cells = <1>;
      #power-domain-cells = <1>;
    };

  - |
    #include <dt-bindings/clock/qcom,rpmh.h>
    #include <dt-bindings/clock/qcom,gcc-sc7280.h>
    #include <dt-bindings/clock/qcom,lpassaudiocc-sc7280.h>
    #include <dt-bindings/clock/qcom,lpasscorecc-sc7280.h>
    lpass_aon: clock-controller@3380000 {
      compatible = "qcom,sc7280-lpassaoncc";
      reg = <0x3380000 0x30000>;
      clocks = <&rpmhcc RPMH_CXO_CLK>, <&rpmhcc RPMH_CXO_CLK_A>,
               <&lpasscore LPASS_CORE_CC_CORE_CLK>;
      clock-names = "bi_tcxo", "bi_tcxo_ao","iface";
      qcom,adsp-pil-mode;
      #clock-cells = <1>;
      #power-domain-cells = <1>;
    };

...
