1b97ee269SEmmanuel Vadot# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 2b97ee269SEmmanuel Vadot%YAML 1.2 3b97ee269SEmmanuel Vadot--- 4b97ee269SEmmanuel Vadot$id: http://devicetree.org/schemas/serial/mediatek,uart.yaml# 5b97ee269SEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml# 6b97ee269SEmmanuel Vadot 7b97ee269SEmmanuel Vadottitle: MediaTek Universal Asynchronous Receiver/Transmitter (UART) 8b97ee269SEmmanuel Vadot 9b97ee269SEmmanuel Vadotmaintainers: 10b97ee269SEmmanuel Vadot - Matthias Brugger <matthias.bgg@gmail.com> 11b97ee269SEmmanuel Vadot 12b97ee269SEmmanuel VadotallOf: 13b97ee269SEmmanuel Vadot - $ref: serial.yaml# 14b97ee269SEmmanuel Vadot 15b97ee269SEmmanuel Vadotdescription: | 16b97ee269SEmmanuel Vadot The MediaTek UART is based on the basic 8250 UART and compatible 17b97ee269SEmmanuel Vadot with 16550A, with enhancements for high speed baud rates and 18b97ee269SEmmanuel Vadot support for DMA. 19b97ee269SEmmanuel Vadot 20b97ee269SEmmanuel Vadotproperties: 21b97ee269SEmmanuel Vadot compatible: 22b97ee269SEmmanuel Vadot oneOf: 23b97ee269SEmmanuel Vadot - const: mediatek,mt6577-uart 24b97ee269SEmmanuel Vadot - items: 25b97ee269SEmmanuel Vadot - enum: 26b97ee269SEmmanuel Vadot - mediatek,mt2701-uart 27b97ee269SEmmanuel Vadot - mediatek,mt2712-uart 28b97ee269SEmmanuel Vadot - mediatek,mt6580-uart 29b97ee269SEmmanuel Vadot - mediatek,mt6582-uart 30b97ee269SEmmanuel Vadot - mediatek,mt6589-uart 31b97ee269SEmmanuel Vadot - mediatek,mt6755-uart 32b97ee269SEmmanuel Vadot - mediatek,mt6765-uart 33b97ee269SEmmanuel Vadot - mediatek,mt6779-uart 34b97ee269SEmmanuel Vadot - mediatek,mt6795-uart 35b97ee269SEmmanuel Vadot - mediatek,mt6797-uart 36b97ee269SEmmanuel Vadot - mediatek,mt7622-uart 37b97ee269SEmmanuel Vadot - mediatek,mt7623-uart 38b97ee269SEmmanuel Vadot - mediatek,mt7629-uart 39*b2d2a78aSEmmanuel Vadot - mediatek,mt7981-uart 40b97ee269SEmmanuel Vadot - mediatek,mt7986-uart 410e8011faSEmmanuel Vadot - mediatek,mt7988-uart 42b97ee269SEmmanuel Vadot - mediatek,mt8127-uart 43b97ee269SEmmanuel Vadot - mediatek,mt8135-uart 44b97ee269SEmmanuel Vadot - mediatek,mt8173-uart 45b97ee269SEmmanuel Vadot - mediatek,mt8183-uart 46b97ee269SEmmanuel Vadot - mediatek,mt8186-uart 477ef62cebSEmmanuel Vadot - mediatek,mt8188-uart 48b97ee269SEmmanuel Vadot - mediatek,mt8192-uart 49b97ee269SEmmanuel Vadot - mediatek,mt8195-uart 50fac71e4eSEmmanuel Vadot - mediatek,mt8365-uart 51b97ee269SEmmanuel Vadot - mediatek,mt8516-uart 52b97ee269SEmmanuel Vadot - const: mediatek,mt6577-uart 53b97ee269SEmmanuel Vadot 54b97ee269SEmmanuel Vadot reg: 55b97ee269SEmmanuel Vadot description: The base address of the UART register bank 56b97ee269SEmmanuel Vadot maxItems: 1 57b97ee269SEmmanuel Vadot 58b97ee269SEmmanuel Vadot clocks: 59b97ee269SEmmanuel Vadot minItems: 1 60b97ee269SEmmanuel Vadot items: 61b97ee269SEmmanuel Vadot - description: The clock the baudrate is derived from 62b97ee269SEmmanuel Vadot - description: The bus clock for register accesses 63b97ee269SEmmanuel Vadot 64b97ee269SEmmanuel Vadot clock-names: 65b97ee269SEmmanuel Vadot minItems: 1 66b97ee269SEmmanuel Vadot items: 67b97ee269SEmmanuel Vadot - const: baud 68b97ee269SEmmanuel Vadot - const: bus 69b97ee269SEmmanuel Vadot 70b97ee269SEmmanuel Vadot dmas: 71b97ee269SEmmanuel Vadot items: 72b97ee269SEmmanuel Vadot - description: phandle to TX DMA 73b97ee269SEmmanuel Vadot - description: phandle to RX DMA 74b97ee269SEmmanuel Vadot 75b97ee269SEmmanuel Vadot dma-names: 76b97ee269SEmmanuel Vadot items: 77b97ee269SEmmanuel Vadot - const: tx 78b97ee269SEmmanuel Vadot - const: rx 79b97ee269SEmmanuel Vadot 80b97ee269SEmmanuel Vadot interrupts: 81b97ee269SEmmanuel Vadot minItems: 1 82b97ee269SEmmanuel Vadot maxItems: 2 83b97ee269SEmmanuel Vadot 84b97ee269SEmmanuel Vadot interrupt-names: 85b97ee269SEmmanuel Vadot description: 86b97ee269SEmmanuel Vadot The UART interrupt and optionally the RX in-band wakeup interrupt. 87b97ee269SEmmanuel Vadot minItems: 1 88b97ee269SEmmanuel Vadot items: 89b97ee269SEmmanuel Vadot - const: uart 90b97ee269SEmmanuel Vadot - const: wakeup 91b97ee269SEmmanuel Vadot 92b97ee269SEmmanuel Vadot pinctrl-0: true 93b97ee269SEmmanuel Vadot pinctrl-1: true 94b97ee269SEmmanuel Vadot 95b97ee269SEmmanuel Vadot pinctrl-names: 96b97ee269SEmmanuel Vadot minItems: 1 97b97ee269SEmmanuel Vadot items: 98b97ee269SEmmanuel Vadot - const: default 99b97ee269SEmmanuel Vadot - const: sleep 100b97ee269SEmmanuel Vadot 101b97ee269SEmmanuel Vadotrequired: 102b97ee269SEmmanuel Vadot - compatible 103b97ee269SEmmanuel Vadot - reg 104b97ee269SEmmanuel Vadot - clocks 105b97ee269SEmmanuel Vadot - interrupts 106b97ee269SEmmanuel Vadot 107b97ee269SEmmanuel VadotunevaluatedProperties: false 108b97ee269SEmmanuel Vadot 109b97ee269SEmmanuel Vadotexamples: 110b97ee269SEmmanuel Vadot - | 111b97ee269SEmmanuel Vadot #include <dt-bindings/interrupt-controller/arm-gic.h> 112b97ee269SEmmanuel Vadot 113b97ee269SEmmanuel Vadot serial@11006000 { 114b97ee269SEmmanuel Vadot compatible = "mediatek,mt6589-uart", "mediatek,mt6577-uart"; 115b97ee269SEmmanuel Vadot reg = <0x11006000 0x400>; 116b97ee269SEmmanuel Vadot interrupts = <GIC_SPI 51 IRQ_TYPE_LEVEL_LOW>, 117b97ee269SEmmanuel Vadot <GIC_SPI 52 IRQ_TYPE_EDGE_FALLING>; 118b97ee269SEmmanuel Vadot interrupt-names = "uart", "wakeup"; 119b97ee269SEmmanuel Vadot clocks = <&uart_clk>, <&bus_clk>; 120b97ee269SEmmanuel Vadot clock-names = "baud", "bus"; 121b97ee269SEmmanuel Vadot pinctrl-0 = <&uart_pin>; 122b97ee269SEmmanuel Vadot pinctrl-1 = <&uart_pin_sleep>; 123b97ee269SEmmanuel Vadot pinctrl-names = "default", "sleep"; 124b97ee269SEmmanuel Vadot }; 125