1# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2%YAML 1.2
3---
4$id: http://devicetree.org/schemas/serial/fsl-lpuart.yaml#
5$schema: http://devicetree.org/meta-schemas/core.yaml#
6
7title: Freescale low power universal asynchronous receiver/transmitter (lpuart)
8
9maintainers:
10  - Fugang Duan <fugang.duan@nxp.com>
11
12allOf:
13  - $ref: "rs485.yaml"
14
15properties:
16  compatible:
17    oneOf:
18      - enum:
19          - fsl,vf610-lpuart
20          - fsl,ls1021a-lpuart
21          - fsl,ls1028a-lpuart
22          - fsl,imx7ulp-lpuart
23          - fsl,imx8qm-lpuart
24      - items:
25          - const: fsl,imx8qxp-lpuart
26          - const: fsl,imx7ulp-lpuart
27
28  reg:
29    maxItems: 1
30
31  interrupts:
32    maxItems: 1
33
34  clocks:
35    items:
36      - description: ipg clock
37      - description: baud clock
38    minItems: 1
39    maxItems: 2
40
41  clock-names:
42    items:
43      - const: ipg
44      - const: baud
45    minItems: 1
46    maxItems: 2
47
48  dmas:
49    items:
50      - description: DMA controller phandle and request line for RX
51      - description: DMA controller phandle and request line for TX
52
53  dma-names:
54    items:
55      - const: rx
56      - const: tx
57
58  rs485-rts-active-low: true
59  linux,rs485-enabled-at-boot-time: true
60
61required:
62  - compatible
63  - reg
64  - interrupts
65  - clocks
66  - clock-names
67
68unevaluatedProperties: false
69
70examples:
71  - |
72    #include <dt-bindings/clock/vf610-clock.h>
73
74    serial@40027000 {
75        compatible = "fsl,vf610-lpuart";
76        reg = <0x40027000 0x1000>;
77        interrupts = <0 61 0x00>;
78        clocks = <&clks VF610_CLK_UART0>;
79        clock-names = "ipg";
80        dmas = <&edma0 0 2>, <&edma0 0 3>;
81        dma-names = "rx","tx";
82    };
83