xref: /openbmc/linux/Documentation/devicetree/bindings/serial/mvebu-uart.txt (revision 4f2c0a4acffbec01079c28f839422e64ddeff004)
1d160c341SMiquel Raynal* Marvell UART : Non standard UART used in some of Marvell EBU SoCs
2d160c341SMiquel Raynal                 e.g., Armada-3700.
38b495857SGeert Uytterhoeven
48b495857SGeert UytterhoevenRequired properties:
5d160c341SMiquel Raynal- compatible:
6d160c341SMiquel Raynal    - "marvell,armada-3700-uart" for the standard variant of the UART
7d160c341SMiquel Raynal      (32 bytes FIFO, no DMA, level interrupts, 8-bit access to the
856b32769SPali Rohár      FIFO), called also UART1.
9d160c341SMiquel Raynal    - "marvell,armada-3700-uart-ext" for the extended variant of the
10d160c341SMiquel Raynal      UART (128 bytes FIFO, DMA, front interrupts, 8-bit or 32-bit
1156b32769SPali Rohár      accesses to the FIFO), called also UART2.
128b495857SGeert Uytterhoeven- reg: offset and length of the register set for the device.
13d160c341SMiquel Raynal- clocks: UART reference clock used to derive the baudrate. If no clock
14d160c341SMiquel Raynal      is provided (possible only with the "marvell,armada-3700-uart"
15d160c341SMiquel Raynal      compatible string for backward compatibility), it will only work
16d160c341SMiquel Raynal      if the baudrate was initialized by the bootloader and no baudrate
17*ebd7e37aSPali Rohár      change will then be possible. When provided it should be UART1-clk
18*ebd7e37aSPali Rohár      for standard variant of UART and UART2-clk for extended variant
19*ebd7e37aSPali Rohár      of UART. TBG clock (with UART TBG divisors d1=d2=1) or xtal clock
20*ebd7e37aSPali Rohár      should not be used and are supported only for backward compatibility.
21d160c341SMiquel Raynal- interrupts:
22d160c341SMiquel Raynal    - Must contain three elements for the standard variant of the IP
23d160c341SMiquel Raynal      (marvell,armada-3700-uart): "uart-sum", "uart-tx" and "uart-rx",
24d160c341SMiquel Raynal      respectively the UART sum interrupt, the UART TX interrupt and
25d160c341SMiquel Raynal      UART RX interrupt. A corresponding interrupt-names property must
26d160c341SMiquel Raynal      be defined.
27d160c341SMiquel Raynal    - Must contain two elements for the extended variant of the IP
28d160c341SMiquel Raynal      (marvell,armada-3700-uart-ext): "uart-tx" and "uart-rx",
29d160c341SMiquel Raynal      respectively the UART TX interrupt and the UART RX interrupt. A
3017a16542SGeert Uytterhoeven      corresponding interrupt-names property must be defined.
31d160c341SMiquel Raynal    - For backward compatibility reasons, a single element interrupts
32d160c341SMiquel Raynal      property is also supported for the standard variant of the IP,
33d160c341SMiquel Raynal      containing only the UART sum interrupt. This form is deprecated
34d160c341SMiquel Raynal      and should no longer be used.
358b495857SGeert Uytterhoeven
368b495857SGeert UytterhoevenExample:
37d160c341SMiquel Raynal	uart0: serial@12000 {
388b495857SGeert Uytterhoeven		compatible = "marvell,armada-3700-uart";
3956b32769SPali Rohár		reg = <0x12000 0x18>;
40*ebd7e37aSPali Rohár		clocks = <&uartclk 0>;
41d160c341SMiquel Raynal		interrupts =
42d160c341SMiquel Raynal		<GIC_SPI 11 IRQ_TYPE_LEVEL_HIGH>,
43d160c341SMiquel Raynal		<GIC_SPI 12 IRQ_TYPE_LEVEL_HIGH>,
44d160c341SMiquel Raynal		<GIC_SPI 13 IRQ_TYPE_LEVEL_HIGH>;
45d160c341SMiquel Raynal		interrupt-names = "uart-sum", "uart-tx", "uart-rx";
46d160c341SMiquel Raynal	};
47d160c341SMiquel Raynal
48d160c341SMiquel Raynal	uart1: serial@12200 {
49d160c341SMiquel Raynal		compatible = "marvell,armada-3700-uart-ext";
50d160c341SMiquel Raynal		reg = <0x12200 0x30>;
51*ebd7e37aSPali Rohár		clocks = <&uartclk 1>;
52d160c341SMiquel Raynal		interrupts =
53d160c341SMiquel Raynal		<GIC_SPI 30 IRQ_TYPE_EDGE_RISING>,
54d160c341SMiquel Raynal		<GIC_SPI 31 IRQ_TYPE_EDGE_RISING>;
55d160c341SMiquel Raynal		interrupt-names = "uart-tx", "uart-rx";
568b495857SGeert Uytterhoeven	};
57