# SPDX-License-Identifier: GPL-2.0
%YAML 1.2
---
$id: http://devicetree.org/schemas/spi/spi-rockchip.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: Rockchip SPI Controller

description:
  The Rockchip SPI controller is used to interface with various devices such
  as flash and display controllers using the SPI communication interface.

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

maintainers:
  - Heiko Stuebner <heiko@sntech.de>

# Everything else is described in the common file
properties:
  compatible:
    oneOf:
      - const: rockchip,rk3036-spi
      - const: rockchip,rk3066-spi
      - const: rockchip,rk3228-spi
      - const: rockchip,rv1108-spi
      - items:
          - enum:
              - rockchip,px30-spi
              - rockchip,rk3128-spi
              - rockchip,rk3188-spi
              - rockchip,rk3288-spi
              - rockchip,rk3308-spi
              - rockchip,rk3328-spi
              - rockchip,rk3368-spi
              - rockchip,rk3399-spi
              - rockchip,rk3568-spi
              - rockchip,rk3576-spi
              - rockchip,rk3588-spi
              - rockchip,rv1126-spi
          - const: rockchip,rk3066-spi

  reg:
    maxItems: 1

  interrupts:
    maxItems: 1

  clocks:
    items:
      - description: transfer-clock
      - description: peripheral clock

  clock-names:
    items:
      - const: spiclk
      - const: apb_pclk

  dmas:
    items:
      - description: TX DMA Channel
      - description: RX DMA Channel

  dma-names:
    items:
      - const: tx
      - const: rx

  rx-sample-delay-ns:
    default: 0
    description:
      Nano seconds to delay after the SCLK edge before sampling Rx data
      (may need to be fine tuned for high capacitance lines).
      If not specified 0 will be used.

  pinctrl-names:
    minItems: 1
    items:
      - const: default
      - const: sleep
    description:
      Names for the pin configuration(s); may be "default" or "sleep",
      where the "sleep" configuration may describe the state
      the pins should be in during system suspend.

  power-domains:
    maxItems: 1

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

unevaluatedProperties: false

examples:
  - |
    #include <dt-bindings/clock/rk3188-cru-common.h>
    #include <dt-bindings/interrupt-controller/arm-gic.h>
    #include <dt-bindings/interrupt-controller/irq.h>
    spi0: spi@ff110000 {
      compatible = "rockchip,rk3066-spi";
      reg = <0xff110000 0x1000>;
      interrupts = <GIC_SPI 44 IRQ_TYPE_LEVEL_HIGH>;
      clocks = <&cru SCLK_SPI0>, <&cru PCLK_SPI0>;
      clock-names = "spiclk", "apb_pclk";
      dmas = <&pdma1 11>, <&pdma1 12>;
      dma-names = "tx", "rx";
      pinctrl-0 = <&spi1_pins>;
      pinctrl-1 = <&spi1_sleep>;
      pinctrl-names = "default", "sleep";
      rx-sample-delay-ns = <10>;
      #address-cells = <1>;
      #size-cells = <0>;
    };
