# SPDX-License-Identifier: GPL-2.0 OR BSD-2-Clause
%YAML 1.2
---
$id: http://devicetree.org/schemas/remoteproc/qcom,pas-common.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: Qualcomm Peripheral Authentication Service Common Properties

maintainers:
  - Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org>

description:
  Common properties of Qualcomm SoCs Peripheral Authentication Service.

properties:
  clocks:
    minItems: 1
    maxItems: 2

  clock-names:
    minItems: 1
    maxItems: 2

  interconnects:
    maxItems: 1

  interrupts:
    minItems: 5
    maxItems: 6

  interrupt-names:
    minItems: 5
    maxItems: 6

  iommus:
    maxItems: 1

  power-domains:
    minItems: 1
    maxItems: 3

  power-domain-names:
    minItems: 1
    maxItems: 3

  qcom,smem-states:
    $ref: /schemas/types.yaml#/definitions/phandle-array
    description: States used by the AP to signal the Hexagon core
    minItems: 1
    items:
      - description: Stop the remoteproc
        items:
          - description: Phandle to the Shared Memory Point 2 Point device
              handling the communication with a remote processor
          - description: Single bit index to toggle in the value sent to
              the remote processor
            maximum: 32
      - description: Ping the remoteproc
        items:
          - description: Phandle to the Shared Memory Point 2 Point device
              handling the communication with a remote processor
          - description: Single bit index to toggle in the value sent to
              the remote processor
            maximum: 32

  qcom,smem-state-names:
    description: The names of the state bits used for SMP2P output
    minItems: 1
    items:
      - const: stop
      - const: ping

  smd-edge:
    $ref: /schemas/remoteproc/qcom,smd-edge.yaml#
    description:
      Qualcomm Shared Memory subnode which represents communication edge,
      channels and devices related to the ADSP.
    unevaluatedProperties: false

  glink-edge:
    $ref: /schemas/remoteproc/qcom,glink-edge.yaml#
    description:
      Qualcomm G-Link subnode which represents communication edge, channels
      and devices related to the ADSP.
    unevaluatedProperties: false

required:
  - clocks
  - clock-names
  - interrupts
  - interrupt-names
  - qcom,smem-states
  - qcom,smem-state-names

additionalProperties: true