# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
# Copyright 2019 BayLibre, SAS
%YAML 1.2
---
$id: "http://devicetree.org/schemas/spi/amlogic,meson-gx-spicc.yaml#"
$schema: "http://devicetree.org/meta-schemas/core.yaml#"

title: Amlogic Meson SPI Communication Controller

maintainers:
  - Neil Armstrong <narmstrong@baylibre.com>

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

description: |
  The Meson SPICC is a generic SPI controller for general purpose Full-Duplex
  communications with dedicated 16 words RX/TX PIO FIFOs.

properties:
  compatible:
    enum:
      - amlogic,meson-gx-spicc # SPICC controller on Amlogic GX and compatible SoCs
      - amlogic,meson-axg-spicc # SPICC controller on Amlogic AXG and compatible SoCs
      - amlogic,meson-g12a-spicc # SPICC controller on Amlogic G12A and compatible SoCs

  interrupts:
    maxItems: 1

  reg:
    maxItems: 1

  resets:
    maxItems: 1

  clocks:
    maxItems: 1

  clock-names:
    description: input clock for the baud rate generator
    items:
      - const: core

if:
  properties:
    compatible:
      contains:
        enum:
          - amlogic,meson-g12a-spicc

then:
  properties:
    clocks:
      contains:
        items:
          - description: controller register bus clock
          - description: baud rate generator and delay control clock

    clock-names:
      minItems: 2
      items:
        - const: core
        - const: pclk

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

examples:
  - |
    spi@c1108d80 {
          compatible = "amlogic,meson-gx-spicc";
          reg = <0xc1108d80 0x80>;
          interrupts = <112>;
          clocks = <&clk81>;
          clock-names = "core";
          #address-cells = <1>;
          #size-cells = <0>;

          ethernet-switch@0 {
              compatible = "micrel,ks8995m";
              spi-max-frequency = <1000000>;
              reg = <0>;
          };
    };

