Merge tag 'docs-5.13-2' of git://git.lwn.net/linux
[linux-2.6-microblaze.git] / Documentation / devicetree / bindings / spi / amlogic,meson-gx-spicc.yaml
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#"
7
8 title: Amlogic Meson SPI Communication Controller
9
10 maintainers:
11   - Neil Armstrong <narmstrong@baylibre.com>
12
13 allOf:
14   - $ref: "spi-controller.yaml#"
15
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.
19
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
26
27   interrupts:
28     maxItems: 1
29
30   reg:
31     maxItems: 1
32
33   resets:
34     maxItems: 1
35
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
42
43   clock-names:
44     minItems: 1
45     maxItems: 2
46
47 if:
48   properties:
49     compatible:
50       contains:
51         enum:
52           - amlogic,meson-g12a-spicc
53
54 then:
55   properties:
56     clocks:
57       minItems: 2
58
59     clock-names:
60       items:
61         - const: core
62         - const: pclk
63
64 else:
65   properties:
66     clocks:
67       maxItems: 1
68
69     clock-names:
70       items:
71         - const: core
72
73 required:
74   - compatible
75   - reg
76   - interrupts
77   - clocks
78   - clock-names
79
80 unevaluatedProperties: false
81
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>;
92
93           display@0 {
94               compatible = "lg,lg4573";
95               spi-max-frequency = <1000000>;
96               reg = <0>;
97           };
98     };
99