18c2ecf20Sopenharmony_ci# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
28c2ecf20Sopenharmony_ci%YAML 1.2
38c2ecf20Sopenharmony_ci---
48c2ecf20Sopenharmony_ci$id: http://devicetree.org/schemas/serial/ingenic,uart.yaml#
58c2ecf20Sopenharmony_ci$schema: http://devicetree.org/meta-schemas/core.yaml#
68c2ecf20Sopenharmony_ci
78c2ecf20Sopenharmony_cititle: Ingenic SoCs UART controller devicetree bindings
88c2ecf20Sopenharmony_ci
98c2ecf20Sopenharmony_cimaintainers:
108c2ecf20Sopenharmony_ci  - Paul Cercueil <paul@crapouillou.net>
118c2ecf20Sopenharmony_ci
128c2ecf20Sopenharmony_ciallOf:
138c2ecf20Sopenharmony_ci  - $ref: /schemas/serial.yaml#
148c2ecf20Sopenharmony_ci
158c2ecf20Sopenharmony_ciproperties:
168c2ecf20Sopenharmony_ci  $nodename:
178c2ecf20Sopenharmony_ci    pattern: "^serial@[0-9a-f]+$"
188c2ecf20Sopenharmony_ci
198c2ecf20Sopenharmony_ci  compatible:
208c2ecf20Sopenharmony_ci    oneOf:
218c2ecf20Sopenharmony_ci      - enum:
228c2ecf20Sopenharmony_ci          - ingenic,jz4740-uart
238c2ecf20Sopenharmony_ci          - ingenic,jz4760-uart
248c2ecf20Sopenharmony_ci          - ingenic,jz4780-uart
258c2ecf20Sopenharmony_ci          - ingenic,x1000-uart
268c2ecf20Sopenharmony_ci      - items:
278c2ecf20Sopenharmony_ci          - enum:
288c2ecf20Sopenharmony_ci              - ingenic,jz4770-uart
298c2ecf20Sopenharmony_ci              - ingenic,jz4775-uart
308c2ecf20Sopenharmony_ci          - const: ingenic,jz4760-uart
318c2ecf20Sopenharmony_ci      - items:
328c2ecf20Sopenharmony_ci          - const: ingenic,jz4725b-uart
338c2ecf20Sopenharmony_ci          - const: ingenic,jz4740-uart
348c2ecf20Sopenharmony_ci
358c2ecf20Sopenharmony_ci  reg:
368c2ecf20Sopenharmony_ci    maxItems: 1
378c2ecf20Sopenharmony_ci
388c2ecf20Sopenharmony_ci  interrupts:
398c2ecf20Sopenharmony_ci    maxItems: 1
408c2ecf20Sopenharmony_ci
418c2ecf20Sopenharmony_ci  clocks:
428c2ecf20Sopenharmony_ci    items:
438c2ecf20Sopenharmony_ci      - description: Baud clock
448c2ecf20Sopenharmony_ci      - description: UART module clock
458c2ecf20Sopenharmony_ci
468c2ecf20Sopenharmony_ci  clock-names:
478c2ecf20Sopenharmony_ci    items:
488c2ecf20Sopenharmony_ci      - const: baud
498c2ecf20Sopenharmony_ci      - const: module
508c2ecf20Sopenharmony_ci
518c2ecf20Sopenharmony_ci  dmas:
528c2ecf20Sopenharmony_ci    items:
538c2ecf20Sopenharmony_ci      - description: DMA controller phandle and request line for RX
548c2ecf20Sopenharmony_ci      - description: DMA controller phandle and request line for TX
558c2ecf20Sopenharmony_ci
568c2ecf20Sopenharmony_ci  dma-names:
578c2ecf20Sopenharmony_ci    items:
588c2ecf20Sopenharmony_ci      - const: rx
598c2ecf20Sopenharmony_ci      - const: tx
608c2ecf20Sopenharmony_ci
618c2ecf20Sopenharmony_cirequired:
628c2ecf20Sopenharmony_ci  - compatible
638c2ecf20Sopenharmony_ci  - reg
648c2ecf20Sopenharmony_ci  - interrupts
658c2ecf20Sopenharmony_ci  - clocks
668c2ecf20Sopenharmony_ci  - clock-names
678c2ecf20Sopenharmony_ci  - dmas
688c2ecf20Sopenharmony_ci  - dma-names
698c2ecf20Sopenharmony_ci
708c2ecf20Sopenharmony_ciunevaluatedProperties: false
718c2ecf20Sopenharmony_ci
728c2ecf20Sopenharmony_ciexamples:
738c2ecf20Sopenharmony_ci  - |
748c2ecf20Sopenharmony_ci    #include <dt-bindings/clock/jz4780-cgu.h>
758c2ecf20Sopenharmony_ci    #include <dt-bindings/dma/jz4780-dma.h>
768c2ecf20Sopenharmony_ci    #include <dt-bindings/gpio/gpio.h>
778c2ecf20Sopenharmony_ci    serial@10032000 {
788c2ecf20Sopenharmony_ci      compatible = "ingenic,jz4780-uart";
798c2ecf20Sopenharmony_ci      reg = <0x10032000 0x100>;
808c2ecf20Sopenharmony_ci
818c2ecf20Sopenharmony_ci      interrupt-parent = <&intc>;
828c2ecf20Sopenharmony_ci      interrupts = <49>;
838c2ecf20Sopenharmony_ci
848c2ecf20Sopenharmony_ci      clocks = <&ext>, <&cgu JZ4780_CLK_UART2>;
858c2ecf20Sopenharmony_ci      clock-names = "baud", "module";
868c2ecf20Sopenharmony_ci
878c2ecf20Sopenharmony_ci      dmas = <&dma JZ4780_DMA_UART2_RX 0xffffffff>,
888c2ecf20Sopenharmony_ci             <&dma JZ4780_DMA_UART2_TX 0xffffffff>;
898c2ecf20Sopenharmony_ci      dma-names = "rx", "tx";
908c2ecf20Sopenharmony_ci
918c2ecf20Sopenharmony_ci      bluetooth {
928c2ecf20Sopenharmony_ci        compatible = "brcm,bcm4330-bt";
938c2ecf20Sopenharmony_ci        reset-gpios = <&gpf 8 GPIO_ACTIVE_HIGH>;
948c2ecf20Sopenharmony_ci        vcc-supply = <&wlan0_power>;
958c2ecf20Sopenharmony_ci        device-wakeup-gpios = <&gpf 5 GPIO_ACTIVE_HIGH>;
968c2ecf20Sopenharmony_ci        host-wakeup-gpios = <&gpf 6 GPIO_ACTIVE_HIGH>;
978c2ecf20Sopenharmony_ci        shutdown-gpios = <&gpf 4 GPIO_ACTIVE_LOW>;
988c2ecf20Sopenharmony_ci      };
998c2ecf20Sopenharmony_ci    };
100