Merge commit '81fd23e2b3ccf71c807e671444e8accaba98ca53' of https://git.pengutronix...
[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     items:
39       - description: controller register bus clock
40       - description: baud rate generator and delay control clock
41
42   clock-names:
43     minItems: 1
44     maxItems: 2
45
46 if:
47   properties:
48     compatible:
49       contains:
50         enum:
51           - amlogic,meson-g12a-spicc
52
53 then:
54   properties:
55     clocks:
56       minItems: 2
57
58     clock-names:
59       items:
60         - const: core
61         - const: pclk
62
63 else:
64   properties:
65     clocks:
66       maxItems: 1
67
68     clock-names:
69       items:
70         - const: core
71
72 required:
73   - compatible
74   - reg
75   - interrupts
76   - clocks
77   - clock-names
78
79 unevaluatedProperties: false
80
81 examples:
82   - |
83     spi@c1108d80 {
84           compatible = "amlogic,meson-gx-spicc";
85           reg = <0xc1108d80 0x80>;
86           interrupts = <112>;
87           clocks = <&clk81>;
88           clock-names = "core";
89           #address-cells = <1>;
90           #size-cells = <0>;
91
92           display@0 {
93               compatible = "lg,lg4573";
94               spi-max-frequency = <1000000>;
95               reg = <0>;
96           };
97     };
98