xref: /freebsd/sys/contrib/device-tree/Bindings/spi/amlogic,meson-gx-spicc.yaml (revision b077aed33b7b6aefca7b17ddb250cf521f938613)
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
8title: Amlogic Meson SPI Communication Controller
9
10maintainers:
11  - Neil Armstrong <neil.armstrong@linaro.org>
12
13allOf:
14  - $ref: "spi-controller.yaml#"
15
16description: |
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
20properties:
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
46if:
47  properties:
48    compatible:
49      contains:
50        enum:
51          - amlogic,meson-g12a-spicc
52
53then:
54  properties:
55    clocks:
56      minItems: 2
57
58    clock-names:
59      items:
60        - const: core
61        - const: pclk
62
63else:
64  properties:
65    clocks:
66      maxItems: 1
67
68    clock-names:
69      items:
70        - const: core
71
72required:
73  - compatible
74  - reg
75  - interrupts
76  - clocks
77  - clock-names
78
79unevaluatedProperties: false
80
81examples:
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