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

title: Qualcomm Always-On Subsystem side channel

maintainers:
  - Bjorn Andersson <bjorn.andersson@linaro.org>

description:
  This binding describes the hardware component responsible for side channel
  requests to the always-on subsystem (AOSS), used for certain power management
  requests that is not handled by the standard RPMh interface. Each client in the
  SoC has its own block of message RAM and IRQ for communication with the AOSS.
  The protocol used to communicate in the message RAM is known as Qualcomm
  Messaging Protocol (QMP)

  The AOSS side channel exposes control over a set of resources, used to control
  a set of debug related clocks and to affect the low power state of resources
  related to the secondary subsystems.

properties:
  compatible:
    items:
      - enum:
          - qcom,qdu1000-aoss-qmp
          - qcom,sa8775p-aoss-qmp
          - qcom,sc7180-aoss-qmp
          - qcom,sc7280-aoss-qmp
          - qcom,sc8180x-aoss-qmp
          - qcom,sc8280xp-aoss-qmp
          - qcom,sdm845-aoss-qmp
          - qcom,sm6350-aoss-qmp
          - qcom,sm8150-aoss-qmp
          - qcom,sm8250-aoss-qmp
          - qcom,sm8350-aoss-qmp
          - qcom,sm8450-aoss-qmp
          - qcom,sm8550-aoss-qmp
          - qcom,sm8650-aoss-qmp
          - qcom,x1e80100-aoss-qmp
      - const: qcom,aoss-qmp

  reg:
    maxItems: 1
    description:
      The base address and size of the message RAM for this client's
      communication with the AOSS

  interrupts:
    maxItems: 1
    description:
      Should specify the AOSS message IRQ for this client

  mboxes:
    maxItems: 1
    description:
      Reference to the mailbox representing the outgoing doorbell in APCS for
      this client, as described in mailbox/mailbox.txt

  "#clock-cells":
    const: 0
    description:
      The single clock represents the QDSS clock.

required:
  - compatible
  - reg
  - interrupts
  - mboxes
  - "#clock-cells"

additionalProperties: false

patternProperties:
  "^(cx|mx|ebi)$":
    type: object
    description:
      The AOSS side channel also provides the controls for three cooling devices,
      these are expressed as subnodes of the QMP node. The name of the node is
      used to identify the resource and must therefore be "cx", "mx" or "ebi".

    properties:
      "#cooling-cells":
        const: 2

    required:
      - "#cooling-cells"

    additionalProperties: false

examples:
  - |
    #include <dt-bindings/interrupt-controller/arm-gic.h>

    aoss_qmp: qmp@c300000 {
      compatible = "qcom,sdm845-aoss-qmp", "qcom,aoss-qmp";
      reg = <0x0c300000 0x100000>;
      interrupts = <GIC_SPI 389 IRQ_TYPE_EDGE_RISING>;
      mboxes = <&apss_shared 0>;

      #clock-cells = <0>;

      cx_cdev: cx {
        #cooling-cells = <2>;
      };

      mx_cdev: mx {
        #cooling-cells = <2>;
      };
    };
...
