Merge commit '81fd23e2b3ccf71c807e671444e8accaba98ca53' of https://git.pengutronix...
[linux-2.6-microblaze.git] / Documentation / devicetree / bindings / serial / ingenic,uart.yaml
1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2 %YAML 1.2
3 ---
4 $id: http://devicetree.org/schemas/serial/ingenic,uart.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
6
7 title: Ingenic SoCs UART controller devicetree bindings
8
9 maintainers:
10   - Paul Cercueil <paul@crapouillou.net>
11
12 allOf:
13   - $ref: serial.yaml#
14
15 properties:
16   $nodename:
17     pattern: "^serial@[0-9a-f]+$"
18
19   compatible:
20     oneOf:
21       - enum:
22           - ingenic,jz4740-uart
23           - ingenic,jz4760-uart
24           - ingenic,jz4780-uart
25           - ingenic,x1000-uart
26       - items:
27           - enum:
28               - ingenic,jz4770-uart
29               - ingenic,jz4775-uart
30           - const: ingenic,jz4760-uart
31       - items:
32           - const: ingenic,jz4725b-uart
33           - const: ingenic,jz4740-uart
34
35   reg:
36     maxItems: 1
37
38   interrupts:
39     maxItems: 1
40
41   clocks:
42     items:
43       - description: Baud clock
44       - description: UART module clock
45
46   clock-names:
47     items:
48       - const: baud
49       - const: module
50
51   dmas:
52     items:
53       - description: DMA controller phandle and request line for RX
54       - description: DMA controller phandle and request line for TX
55
56   dma-names:
57     items:
58       - const: rx
59       - const: tx
60
61 required:
62   - compatible
63   - reg
64   - interrupts
65   - clocks
66   - clock-names
67   - dmas
68   - dma-names
69
70 unevaluatedProperties: false
71
72 examples:
73   - |
74     #include <dt-bindings/clock/jz4780-cgu.h>
75     #include <dt-bindings/dma/jz4780-dma.h>
76     #include <dt-bindings/gpio/gpio.h>
77     serial@10032000 {
78       compatible = "ingenic,jz4780-uart";
79       reg = <0x10032000 0x100>;
80
81       interrupt-parent = <&intc>;
82       interrupts = <49>;
83
84       clocks = <&ext>, <&cgu JZ4780_CLK_UART2>;
85       clock-names = "baud", "module";
86
87       dmas = <&dma JZ4780_DMA_UART2_RX 0xffffffff>,
88              <&dma JZ4780_DMA_UART2_TX 0xffffffff>;
89       dma-names = "rx", "tx";
90
91       bluetooth {
92         compatible = "brcm,bcm4330-bt";
93         reset-gpios = <&gpf 8 GPIO_ACTIVE_HIGH>;
94         vbat-supply = <&wlan0_power>;
95         device-wakeup-gpios = <&gpf 5 GPIO_ACTIVE_HIGH>;
96         host-wakeup-gpios = <&gpf 6 GPIO_ACTIVE_HIGH>;
97         shutdown-gpios = <&gpf 4 GPIO_ACTIVE_LOW>;
98       };
99     };