xref: /freebsd/sys/contrib/device-tree/Bindings/spi/cirrus,ep9301-spi.yaml (revision b2d2a78ad80ec68d4a17f5aef97d21686cb1e29b)
1*b2d2a78aSEmmanuel Vadot# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2*b2d2a78aSEmmanuel Vadot%YAML 1.2
3*b2d2a78aSEmmanuel Vadot---
4*b2d2a78aSEmmanuel Vadot$id: http://devicetree.org/schemas/spi/cirrus,ep9301-spi.yaml#
5*b2d2a78aSEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml#
6*b2d2a78aSEmmanuel Vadot
7*b2d2a78aSEmmanuel Vadottitle: EP93xx SoC SPI controller
8*b2d2a78aSEmmanuel Vadot
9*b2d2a78aSEmmanuel Vadotmaintainers:
10*b2d2a78aSEmmanuel Vadot  - Alexander Sverdlin <alexander.sverdlin@gmail.com>
11*b2d2a78aSEmmanuel Vadot  - Nikita Shubin <nikita.shubin@maquefel.me>
12*b2d2a78aSEmmanuel Vadot
13*b2d2a78aSEmmanuel VadotallOf:
14*b2d2a78aSEmmanuel Vadot  - $ref: spi-controller.yaml#
15*b2d2a78aSEmmanuel Vadot
16*b2d2a78aSEmmanuel Vadotproperties:
17*b2d2a78aSEmmanuel Vadot  compatible:
18*b2d2a78aSEmmanuel Vadot    oneOf:
19*b2d2a78aSEmmanuel Vadot      - const: cirrus,ep9301-spi
20*b2d2a78aSEmmanuel Vadot      - items:
21*b2d2a78aSEmmanuel Vadot          - enum:
22*b2d2a78aSEmmanuel Vadot              - cirrus,ep9302-spi
23*b2d2a78aSEmmanuel Vadot              - cirrus,ep9307-spi
24*b2d2a78aSEmmanuel Vadot              - cirrus,ep9312-spi
25*b2d2a78aSEmmanuel Vadot              - cirrus,ep9315-spi
26*b2d2a78aSEmmanuel Vadot          - const: cirrus,ep9301-spi
27*b2d2a78aSEmmanuel Vadot
28*b2d2a78aSEmmanuel Vadot  reg:
29*b2d2a78aSEmmanuel Vadot    items:
30*b2d2a78aSEmmanuel Vadot      - description: SPI registers region
31*b2d2a78aSEmmanuel Vadot
32*b2d2a78aSEmmanuel Vadot  interrupts:
33*b2d2a78aSEmmanuel Vadot    maxItems: 1
34*b2d2a78aSEmmanuel Vadot
35*b2d2a78aSEmmanuel Vadot  clocks:
36*b2d2a78aSEmmanuel Vadot    items:
37*b2d2a78aSEmmanuel Vadot      - description: SPI Controller reference clock source
38*b2d2a78aSEmmanuel Vadot
39*b2d2a78aSEmmanuel Vadot  dmas:
40*b2d2a78aSEmmanuel Vadot    items:
41*b2d2a78aSEmmanuel Vadot      - description: rx DMA channel
42*b2d2a78aSEmmanuel Vadot      - description: tx DMA channel
43*b2d2a78aSEmmanuel Vadot
44*b2d2a78aSEmmanuel Vadot  dma-names:
45*b2d2a78aSEmmanuel Vadot    items:
46*b2d2a78aSEmmanuel Vadot      - const: rx
47*b2d2a78aSEmmanuel Vadot      - const: tx
48*b2d2a78aSEmmanuel Vadot
49*b2d2a78aSEmmanuel Vadotrequired:
50*b2d2a78aSEmmanuel Vadot  - compatible
51*b2d2a78aSEmmanuel Vadot  - reg
52*b2d2a78aSEmmanuel Vadot  - interrupts
53*b2d2a78aSEmmanuel Vadot  - clocks
54*b2d2a78aSEmmanuel Vadot
55*b2d2a78aSEmmanuel VadotunevaluatedProperties: false
56*b2d2a78aSEmmanuel Vadot
57*b2d2a78aSEmmanuel Vadotexamples:
58*b2d2a78aSEmmanuel Vadot  - |
59*b2d2a78aSEmmanuel Vadot    #include <dt-bindings/gpio/gpio.h>
60*b2d2a78aSEmmanuel Vadot    #include <dt-bindings/clock/cirrus,ep9301-syscon.h>
61*b2d2a78aSEmmanuel Vadot    spi@808a0000 {
62*b2d2a78aSEmmanuel Vadot        compatible = "cirrus,ep9301-spi";
63*b2d2a78aSEmmanuel Vadot        reg = <0x808a0000 0x18>;
64*b2d2a78aSEmmanuel Vadot        interrupt-parent = <&vic1>;
65*b2d2a78aSEmmanuel Vadot        interrupts = <21>;
66*b2d2a78aSEmmanuel Vadot        clocks = <&syscon EP93XX_CLK_SPI>;
67*b2d2a78aSEmmanuel Vadot        dmas = <&dma1 10 2>, <&dma1 10 1>;
68*b2d2a78aSEmmanuel Vadot        dma-names = "rx", "tx";
69*b2d2a78aSEmmanuel Vadot        cs-gpios = <&gpio5 2 GPIO_ACTIVE_HIGH>;
70*b2d2a78aSEmmanuel Vadot    };
71