# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
%YAML 1.2
---
$id: "http://devicetree.org/schemas/mailbox/sprd-mailbox.yaml#"
$schema: "http://devicetree.org/meta-schemas/core.yaml#"

title: Spreadtrum mailbox controller bindings

maintainers:
  - Orson Zhai <orsonzhai@gmail.com>
  - Baolin Wang <baolin.wang7@gmail.com>
  - Chunyan Zhang <zhang.lyra@gmail.com>

properties:
  compatible:
    enum:
      - sprd,sc9860-mailbox
      - sprd,sc9863a-mailbox

  reg:
    items:
      - description: inbox registers' base address
      - description: outbox registers' base address

  interrupts:
    minItems: 2
    maxItems: 3

  interrupt-names:
    minItems: 2
    items:
      - const: inbox
      - const: outbox
      - const: supp-outbox

  clocks:
    maxItems: 1

  clock-names:
    items:
      - const: enable

  "#mbox-cells":
    const: 1

required:
  - compatible
  - reg
  - interrupts
  - interrupt-names
  - "#mbox-cells"
  - clocks
  - clock-names

additionalProperties: false

examples:
  - |
    #include <dt-bindings/interrupt-controller/arm-gic.h>
    mailbox: mailbox@400a0000 {
      compatible = "sprd,sc9860-mailbox";
      reg = <0x400a0000 0x8000>, <0x400a8000 0x8000>;
      #mbox-cells = <1>;
      clock-names = "enable";
      clocks = <&aon_gate 53>;
      interrupts = <GIC_SPI 28 IRQ_TYPE_LEVEL_HIGH>, <GIC_SPI 29 IRQ_TYPE_LEVEL_HIGH>;
      interrupt-names = "inbox", "outbox";
    };
...
