WIP FPC-III support
[linux/fpc-iii.git] / Documentation / devicetree / bindings / spi / amlogic,meson-gx-spicc.yaml
blob667dedefd69f8fa2fb6b7eee43346d9a24b14c6a
1 # SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
2 # Copyright 2019 BayLibre, SAS
3 %YAML 1.2
4 ---
5 $id: "http://devicetree.org/schemas/spi/amlogic,meson-gx-spicc.yaml#"
6 $schema: "http://devicetree.org/meta-schemas/core.yaml#"
8 title: Amlogic Meson SPI Communication Controller
10 maintainers:
11   - Neil Armstrong <narmstrong@baylibre.com>
13 allOf:
14   - $ref: "spi-controller.yaml#"
16 description: |
17   The Meson SPICC is a generic SPI controller for general purpose Full-Duplex
18   communications with dedicated 16 words RX/TX PIO FIFOs.
20 properties:
21   compatible:
22     enum:
23       - amlogic,meson-gx-spicc # SPICC controller on Amlogic GX and compatible SoCs
24       - amlogic,meson-axg-spicc # SPICC controller on Amlogic AXG and compatible SoCs
25       - amlogic,meson-g12a-spicc # SPICC controller on Amlogic G12A and compatible SoCs
27   interrupts:
28     maxItems: 1
30   reg:
31     maxItems: 1
33   resets:
34     maxItems: 1
36   clocks:
37     minItems: 1
38     maxItems: 2
39     items:
40       - description: controller register bus clock
41       - description: baud rate generator and delay control clock
43   clock-names:
44     minItems: 1
45     maxItems: 2
47 if:
48   properties:
49     compatible:
50       contains:
51         enum:
52           - amlogic,meson-g12a-spicc
54 then:
55   properties:
56     clocks:
57       minItems: 2
59     clock-names:
60       items:
61         - const: core
62         - const: pclk
64 else:
65   properties:
66     clocks:
67       maxItems: 1
69     clock-names:
70       items:
71         - const: core
73 required:
74   - compatible
75   - reg
76   - interrupts
77   - clocks
78   - clock-names
80 unevaluatedProperties: false
82 examples:
83   - |
84     spi@c1108d80 {
85           compatible = "amlogic,meson-gx-spicc";
86           reg = <0xc1108d80 0x80>;
87           interrupts = <112>;
88           clocks = <&clk81>;
89           clock-names = "core";
90           #address-cells = <1>;
91           #size-cells = <0>;
93           ethernet-switch@0 {
94               compatible = "micrel,ks8995m";
95               spi-max-frequency = <1000000>;
96               reg = <0>;
97           };
98     };