xref: /freebsd/sys/contrib/device-tree/Bindings/serial/maxim,max310x.yaml (revision 5b56413d04e608379c9a306373554a8e4d321bc0)
1# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2%YAML 1.2
3---
4$id: http://devicetree.org/schemas/serial/maxim,max310x.yaml#
5$schema: http://devicetree.org/meta-schemas/core.yaml#
6
7title: Maxim MAX310X Advanced Universal Asynchronous Receiver-Transmitter (UART)
8
9maintainers:
10  - Hugo Villeneuve <hvilleneuve@dimonoff.com>
11
12properties:
13  compatible:
14    enum:
15      - maxim,max3107
16      - maxim,max3108
17      - maxim,max3109
18      - maxim,max14830
19
20  reg:
21    maxItems: 1
22
23  interrupts:
24    maxItems: 1
25
26  clocks:
27    maxItems: 1
28
29  clock-names:
30    enum:
31      - xtal # External crystal
32      - osc  # External clock source
33
34  gpio-controller: true
35
36  "#gpio-cells":
37    const: 2
38
39  gpio-line-names:
40    minItems: 1
41    maxItems: 16
42
43required:
44  - compatible
45  - reg
46  - interrupts
47  - clocks
48  - clock-names
49
50allOf:
51  - $ref: /schemas/spi/spi-peripheral-props.yaml#
52  - $ref: /schemas/serial/serial.yaml#
53  - $ref: /schemas/serial/rs485.yaml#
54
55unevaluatedProperties: false
56
57examples:
58  - |
59    #include <dt-bindings/interrupt-controller/irq.h>
60    i2c {
61        #address-cells = <1>;
62        #size-cells = <0>;
63
64        serial@2c {
65            compatible = "maxim,max3107";
66            reg = <0x2c>;
67            clocks = <&xtal4m>;
68            clock-names = "xtal";
69            interrupt-parent = <&gpio3>;
70            interrupts = <7 IRQ_TYPE_LEVEL_LOW>;
71            gpio-controller;
72            #gpio-cells = <2>;
73        };
74    };
75