xref: /linux/Documentation/devicetree/bindings/serial/8250_omap.yaml (revision db4a3f0fbedb0398f77b9047e8b8bb2b49f355bb)
1# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2%YAML 1.2
3---
4$id: http://devicetree.org/schemas/serial/8250_omap.yaml#
5$schema: http://devicetree.org/meta-schemas/core.yaml#
6
7title: 8250 compliant UARTs on TI's OMAP2+ and K3 SoCs
8
9maintainers:
10  - Vignesh Raghavendra <vigneshr@ti.com>
11
12allOf:
13  - $ref: /schemas/serial/serial.yaml#
14  - $ref: /schemas/serial/rs485.yaml#
15
16properties:
17  compatible:
18    oneOf:
19      - enum:
20          - ti,am3352-uart
21          - ti,am4372-uart
22          - ti,am654-uart
23          - ti,dra742-uart
24          - ti,omap2-uart
25          - ti,omap3-uart
26          - ti,omap4-uart
27      - items:
28          - enum:
29              - ti,am64-uart
30              - ti,j721e-uart
31          - const: ti,am654-uart
32
33  ti,hwmods:
34    description:
35      Must be "uart<n>", n being the instance number (1-based)
36      This property is applicable only on legacy platforms mainly omap2/3
37      and ti81xx and should not be used on other platforms.
38    $ref: /schemas/types.yaml#/definitions/string
39    deprecated: true
40
41  dmas:
42    minItems: 1
43    maxItems: 2
44
45  dma-names:
46    items:
47      - const: tx
48      - const: rx
49
50  reg:
51    maxItems: 1
52
53  interrupts:
54    minItems: 1
55    maxItems: 2
56    description:
57      First entry is module IRQ required for normal IO operation.
58      Second entry is optional and corresponds to system wakeup IRQ
59      where supported.
60
61  clocks:
62    maxItems: 1
63
64  clock-names:
65    const: fclk
66
67  rs485-rts-active-high: true
68  power-domains: true
69  clock-frequency: true
70  current-speed: true
71  overrun-throttle-ms: true
72  wakeup-source: true
73
74  pinctrl-0:
75    description: Default pinctrl state
76
77  pinctrl-1:
78    description: Wakeup pinctrl state
79
80  pinctrl-names:
81    description:
82      When present should contain at least "default" describing the default pin
83      states. The second state called "wakeup" describes the pins in their
84      wakeup configuration required to exit sleep states.
85    minItems: 1
86    items:
87      - const: default
88      - const: wakeup
89
90required:
91  - compatible
92  - reg
93  - interrupts
94
95unevaluatedProperties: false
96
97if:
98  properties:
99    compatible:
100      contains:
101        enum:
102          - ti,omap2-uart
103          - ti,omap3-uart
104          - ti,omap4-uart
105
106then:
107  properties:
108    ti,hwmods:
109      items:
110        - pattern: "^uart([1-9])$"
111
112else:
113  properties:
114    ti,hwmods: false
115
116examples:
117  - |
118    serial@49042000 {
119        compatible = "ti,omap3-uart";
120        reg = <0x49042000 0x400>;
121        interrupts = <80>;
122        dmas = <&sdma 81 &sdma 82>;
123        dma-names = "tx", "rx";
124        ti,hwmods = "uart4";
125        clock-frequency = <48000000>;
126    };
127