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
40  clock-names:
41    items:
42      - const: ipg
43      - const: baud
44    minItems: 1
45
46  dmas:
47    items:
48      - description: DMA controller phandle and request line for RX
49      - description: DMA controller phandle and request line for TX
50
51  dma-names:
52    items:
53      - const: rx
54      - const: tx
55
56  rs485-rts-active-low: true
57  linux,rs485-enabled-at-boot-time: true
58
59required:
60  - compatible
61  - reg
62  - interrupts
63  - clocks
64  - clock-names
65
66unevaluatedProperties: false
67
68examples:
69  - |
70    #include <dt-bindings/clock/vf610-clock.h>
71
72    serial@40027000 {
73        compatible = "fsl,vf610-lpuart";
74        reg = <0x40027000 0x1000>;
75        interrupts = <0 61 0x00>;
76        clocks = <&clks VF610_CLK_UART0>;
77        clock-names = "ipg";
78        dmas = <&edma0 0 2>, <&edma0 0 3>;
79        dma-names = "rx","tx";
80    };
81