提交 0f18f728 编写于 作者: E Erwan Le Ray 提交者: Alexandre Torgue

ARM: dts: stm32: add DMA configuration to UART nodes on stm32mp151

Add DMA configuration in stm32mp15x uart nodes by selecting dma direct
mode and alternate REQ/ACK dma protocol for uart.

DMA direct mode allows to bypass DMA FIFO. Each DMA request immediately
initiates a transfer from/to the memory. This allows USART to get data
transferred, even when the transfer ends before the DMA FIFO completion.

Default REQ/ACK DMA protocol consists in maintaining ACK signal up to the
removal of REQuest and the transfer completion.
In case of alternative REQ/ACK protocol, ACK de-assertion does not wait the
removal of the REQuest, but only the transfer completion.
Due to a possible DMA stream lock when transferring data to/from STM32
USART/UART, select this alternative protocol in STM32 USART/UART nodes.
Signed-off-by: NValentin Caron <valentin.caron@foss.st.com>
Signed-off-by: NErwan Le Ray <erwan.leray@foss.st.com>
Signed-off-by: NAlexandre Torgue <alexandre.torgue@foss.st.com>
上级 7a5faaee
...@@ -455,6 +455,9 @@ ...@@ -455,6 +455,9 @@
interrupts-extended = <&exti 27 IRQ_TYPE_LEVEL_HIGH>; interrupts-extended = <&exti 27 IRQ_TYPE_LEVEL_HIGH>;
clocks = <&rcc USART2_K>; clocks = <&rcc USART2_K>;
wakeup-source; wakeup-source;
dmas = <&dmamux1 43 0x400 0x15>,
<&dmamux1 44 0x400 0x11>;
dma-names = "rx", "tx";
status = "disabled"; status = "disabled";
}; };
...@@ -464,6 +467,9 @@ ...@@ -464,6 +467,9 @@
interrupts-extended = <&exti 28 IRQ_TYPE_LEVEL_HIGH>; interrupts-extended = <&exti 28 IRQ_TYPE_LEVEL_HIGH>;
clocks = <&rcc USART3_K>; clocks = <&rcc USART3_K>;
wakeup-source; wakeup-source;
dmas = <&dmamux1 45 0x400 0x15>,
<&dmamux1 46 0x400 0x11>;
dma-names = "rx", "tx";
status = "disabled"; status = "disabled";
}; };
...@@ -473,6 +479,9 @@ ...@@ -473,6 +479,9 @@
interrupts-extended = <&exti 30 IRQ_TYPE_LEVEL_HIGH>; interrupts-extended = <&exti 30 IRQ_TYPE_LEVEL_HIGH>;
clocks = <&rcc UART4_K>; clocks = <&rcc UART4_K>;
wakeup-source; wakeup-source;
dmas = <&dmamux1 63 0x400 0x15>,
<&dmamux1 64 0x400 0x11>;
dma-names = "rx", "tx";
status = "disabled"; status = "disabled";
}; };
...@@ -482,6 +491,9 @@ ...@@ -482,6 +491,9 @@
interrupts-extended = <&exti 31 IRQ_TYPE_LEVEL_HIGH>; interrupts-extended = <&exti 31 IRQ_TYPE_LEVEL_HIGH>;
clocks = <&rcc UART5_K>; clocks = <&rcc UART5_K>;
wakeup-source; wakeup-source;
dmas = <&dmamux1 65 0x400 0x15>,
<&dmamux1 66 0x400 0x11>;
dma-names = "rx", "tx";
status = "disabled"; status = "disabled";
}; };
...@@ -588,6 +600,9 @@ ...@@ -588,6 +600,9 @@
interrupts-extended = <&exti 32 IRQ_TYPE_LEVEL_HIGH>; interrupts-extended = <&exti 32 IRQ_TYPE_LEVEL_HIGH>;
clocks = <&rcc UART7_K>; clocks = <&rcc UART7_K>;
wakeup-source; wakeup-source;
dmas = <&dmamux1 79 0x400 0x15>,
<&dmamux1 80 0x400 0x11>;
dma-names = "rx", "tx";
status = "disabled"; status = "disabled";
}; };
...@@ -597,6 +612,9 @@ ...@@ -597,6 +612,9 @@
interrupts-extended = <&exti 33 IRQ_TYPE_LEVEL_HIGH>; interrupts-extended = <&exti 33 IRQ_TYPE_LEVEL_HIGH>;
clocks = <&rcc UART8_K>; clocks = <&rcc UART8_K>;
wakeup-source; wakeup-source;
dmas = <&dmamux1 81 0x400 0x15>,
<&dmamux1 82 0x400 0x11>;
dma-names = "rx", "tx";
status = "disabled"; status = "disabled";
}; };
...@@ -678,6 +696,9 @@ ...@@ -678,6 +696,9 @@
interrupts-extended = <&exti 29 IRQ_TYPE_LEVEL_HIGH>; interrupts-extended = <&exti 29 IRQ_TYPE_LEVEL_HIGH>;
clocks = <&rcc USART6_K>; clocks = <&rcc USART6_K>;
wakeup-source; wakeup-source;
dmas = <&dmamux1 71 0x400 0x15>,
<&dmamux1 72 0x400 0x11>;
dma-names = "rx", "tx";
status = "disabled"; status = "disabled";
}; };
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册