xref: /linux/Documentation/devicetree/bindings/serial/sprd-uart.yaml (revision 95298d63c67673c654c08952672d016212b26054)
1# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2# Copyright 2019 Unisoc Inc.
3%YAML 1.2
4---
5$id: "http://devicetree.org/schemas/serial/sprd-uart.yaml#"
6$schema: "http://devicetree.org/meta-schemas/core.yaml#"
7
8title: Spreadtrum serial UART
9
10maintainers:
11  - Orson Zhai <orsonzhai@gmail.com>
12  - Baolin Wang <baolin.wang7@gmail.com>
13  - Chunyan Zhang <zhang.lyra@gmail.com>
14
15properties:
16  compatible:
17    oneOf:
18      - items:
19          - enum:
20              - sprd,sc9860-uart
21              - sprd,sc9863a-uart
22          - const: sprd,sc9836-uart
23      - const: sprd,sc9836-uart
24
25  reg:
26    maxItems: 1
27
28  interrupts:
29    maxItems: 1
30
31  clocks:
32    minItems: 1
33    maxItems: 3
34
35  clock-names:
36    description: |
37      "enable" for UART module enable clock, "uart" for UART clock, "source"
38      for UART source (parent) clock.
39    items:
40      - const: enable
41      - const: uart
42      - const: source
43
44  dmas:
45    minItems: 1
46    maxItems: 2
47
48  dma-names:
49    minItems: 1
50    items:
51      - const: rx
52      - const: tx
53
54required:
55  - compatible
56  - reg
57  - interrupts
58
59examples:
60  - |
61    #include <dt-bindings/interrupt-controller/arm-gic.h>
62    serial@0 {
63      compatible = "sprd,sc9860-uart", "sprd,sc9836-uart";
64      reg = <0x0 0x100>;
65      interrupts = <GIC_SPI 2 IRQ_TYPE_LEVEL_HIGH>;
66      dma-names = "rx", "tx";
67      dmas = <&ap_dma 19>, <&ap_dma 20>;
68      clock-names = "enable", "uart", "source";
69      clocks = <&clk_ap_apb_gates 9>, <&clk_uart0>, <&ext_26m>;
70    };
71
72...
73