# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
%YAML 1.2
---
$id: http://devicetree.org/schemas/spi/sprd,sc9860-spi.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: Spreadtrum SC9860 SPI Controller

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

properties:
  compatible:
    const: sprd,sc9860-spi

  reg:
    maxItems: 1

  interrupts:
    maxItems: 1

  clocks:
    items:
      - description: SPI clock
      - description: SPI source (parent) clock
      - description: SPI module enable clock

  clock-names:
    items:
      - const: spi
      - const: source
      - const: enable

  dmas:
    maxItems: 2

  dma-names:
    items:
      - const: rx_chn
      - const: tx_chn

required:
  - compatible
  - reg
  - interrupts
  - clocks
  - clock-names

allOf:
  - $ref: spi-controller.yaml#

unevaluatedProperties: false

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

    spi@70a00000 {
      compatible = "sprd,sc9860-spi";
      reg = <0x70a00000 0x1000>;
      interrupts = <GIC_SPI 7 IRQ_TYPE_LEVEL_HIGH>;
      clocks = <&clk_spi0>, <&ext_26m>, <&clk_ap_apb_gates 5>;
      clock-names = "spi", "source", "enable";
      dmas = <&apdma 11 11>, <&apdma 12 12>;
      dma-names = "rx_chn", "tx_chn";
      #address-cells = <1>;
      #size-cells = <0>;
    };
...
