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