Merge tag 'block-5.14-2021-08-07' of git://git.kernel.dk/linux-block
[linux-2.6-microblaze.git] / Documentation / devicetree / bindings / serial / mvebu-uart.txt
1 * Marvell UART : Non standard UART used in some of Marvell EBU SoCs
2                  e.g., Armada-3700.
3
4 Required properties:
5 - compatible:
6     - "marvell,armada-3700-uart" for the standard variant of the UART
7       (32 bytes FIFO, no DMA, level interrupts, 8-bit access to the
8       FIFO), called also UART1.
9     - "marvell,armada-3700-uart-ext" for the extended variant of the
10       UART (128 bytes FIFO, DMA, front interrupts, 8-bit or 32-bit
11       accesses to the FIFO), called also UART2.
12 - reg: offset and length of the register set for the device.
13 - clocks: UART reference clock used to derive the baudrate. If no clock
14       is provided (possible only with the "marvell,armada-3700-uart"
15       compatible string for backward compatibility), it will only work
16       if the baudrate was initialized by the bootloader and no baudrate
17       change will then be possible.
18 - interrupts:
19     - Must contain three elements for the standard variant of the IP
20       (marvell,armada-3700-uart): "uart-sum", "uart-tx" and "uart-rx",
21       respectively the UART sum interrupt, the UART TX interrupt and
22       UART RX interrupt. A corresponding interrupt-names property must
23       be defined.
24     - Must contain two elements for the extended variant of the IP
25       (marvell,armada-3700-uart-ext): "uart-tx" and "uart-rx",
26       respectively the UART TX interrupt and the UART RX interrupt. A
27       corresponding interrupt-names property must be defined.
28     - For backward compatibility reasons, a single element interrupts
29       property is also supported for the standard variant of the IP,
30       containing only the UART sum interrupt. This form is deprecated
31       and should no longer be used.
32
33 Example:
34         uart0: serial@12000 {
35                 compatible = "marvell,armada-3700-uart";
36                 reg = <0x12000 0x18>;
37                 clocks = <&xtalclk>;
38                 interrupts =
39                 <GIC_SPI 11 IRQ_TYPE_LEVEL_HIGH>,
40                 <GIC_SPI 12 IRQ_TYPE_LEVEL_HIGH>,
41                 <GIC_SPI 13 IRQ_TYPE_LEVEL_HIGH>;
42                 interrupt-names = "uart-sum", "uart-tx", "uart-rx";
43         };
44
45         uart1: serial@12200 {
46                 compatible = "marvell,armada-3700-uart-ext";
47                 reg = <0x12200 0x30>;
48                 clocks = <&xtalclk>;
49                 interrupts =
50                 <GIC_SPI 30 IRQ_TYPE_EDGE_RISING>,
51                 <GIC_SPI 31 IRQ_TYPE_EDGE_RISING>;
52                 interrupt-names = "uart-tx", "uart-rx";
53         };