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

title: Renesas (Quad) Serial Peripheral Interface (RSPI/QSPI)

maintainers:
  - Geert Uytterhoeven <geert+renesas@glider.be>

properties:
  compatible:
    oneOf:
      - items:
          - enum:
              - renesas,rspi-sh7757    # SH7757
          - const: renesas,rspi        # Legacy SH

      - items:
          - enum:
              - renesas,rspi-r7s72100  # RZ/A1H
              - renesas,rspi-r7s9210   # RZ/A2
          - const: renesas,rspi-rz     # RZ/A

      - items:
          - enum:
              - renesas,qspi-r8a7742   # RZ/G1H
              - renesas,qspi-r8a7743   # RZ/G1M
              - renesas,qspi-r8a7744   # RZ/G1N
              - renesas,qspi-r8a7745   # RZ/G1E
              - renesas,qspi-r8a77470  # RZ/G1C
              - renesas,qspi-r8a7790   # R-Car H2
              - renesas,qspi-r8a7791   # R-Car M2-W
              - renesas,qspi-r8a7792   # R-Car V2H
              - renesas,qspi-r8a7793   # R-Car M2-N
              - renesas,qspi-r8a7794   # R-Car E2
          - const: renesas,qspi        # R-Car Gen2 and RZ/G1

  reg:
    maxItems: 1

  interrupts:
    oneOf:
      - items:
          - description: A combined interrupt
      - items:
          - description: Error interrupt (SPEI)
          - description: Receive Interrupt (SPRI)
          - description: Transmit Interrupt (SPTI)

  interrupt-names:
    oneOf:
      - items:
          - const: mux
      - items:
          - const: error
          - const: rx
          - const: tx

  clocks:
    maxItems: 1

  power-domains:
    maxItems: 1

  resets:
    maxItems: 1

  dmas:
    minItems: 2
    maxItems: 4
    description:
      Must contain a list of pairs of references to DMA specifiers, one for
      transmission, and one for reception.

  dma-names:
    minItems: 2
    maxItems: 4
    items:
      enum:
        - tx
        - rx

  num-cs:
    description: |
      Total number of native chip selects.
      Hardware limitations related to chip selects:
        - When using GPIO chip selects, at least one native chip select must
          be left unused, as it will be driven anyway.
    minimum: 1
    maximum: 2
    default: 1

required:
  - compatible
  - reg
  - interrupts
  - clocks
  - power-domains
  - '#address-cells'
  - '#size-cells'

allOf:
  - $ref: spi-controller.yaml#
  - if:
      properties:
        compatible:
          contains:
            enum:
              - renesas,rspi-rz
    then:
      properties:
        interrupts:
          minItems: 3
      required:
        - interrupt-names

  - if:
      properties:
        compatible:
          contains:
            enum:
              - renesas,qspi
    then:
      required:
        - resets

unevaluatedProperties: false

examples:
  - |
    #include <dt-bindings/clock/r8a7791-cpg-mssr.h>
    #include <dt-bindings/interrupt-controller/arm-gic.h>
    #include <dt-bindings/power/r8a7791-sysc.h>

    qspi: spi@e6b10000 {
            compatible = "renesas,qspi-r8a7791", "renesas,qspi";
            reg = <0xe6b10000 0x2c>;
            interrupts = <GIC_SPI 184 IRQ_TYPE_LEVEL_HIGH>;
            clocks = <&cpg CPG_MOD 917>;
            dmas = <&dmac0 0x17>, <&dmac0 0x18>, <&dmac1 0x17>, <&dmac1 0x18>;
            dma-names = "tx", "rx", "tx", "rx";
            power-domains = <&sysc R8A7791_PD_ALWAYS_ON>;
            resets = <&cpg 917>;
            num-cs = <1>;
            #address-cells = <1>;
            #size-cells = <0>;
    };
