On 21/03/2019 14:40, Katsuhiro Suzuki wrote:
Add UART dma channels as specified by the rk3399 TRM.
No UART4? That's arguably one of the more useful ones, since 1 and 3 often end up muxed to ethernet instead.
Also, does UART DMA actually work yet? I guess I can try for myself once I get home, but I remember last time I looked it was bailing out because the 8250 driver wanted a dmaengine feature that the pl330 driver didn't implement.
Robin.
Refer:
RK3399 TRM V1.4: Chapter 12 DMA Controller
Signed-off-by: Katsuhiro Suzuki <katsuhiro@xxxxxxxxxxxxx>
---
 arch/arm64/boot/dts/rockchip/rk3399.dtsi | 8 ++++++++
 1 file changed, 8 insertions(+)
diff --git a/arch/arm64/boot/dts/rockchip/rk3399.dtsi b/arch/arm64/boot/dts/rockchip/rk3399.dtsi
index 0301e3e01b38..4eed7aae6989 100644
--- a/arch/arm64/boot/dts/rockchip/rk3399.dtsi
+++ b/arch/arm64/boot/dts/rockchip/rk3399.dtsi
@@ -635,6 +635,8 @@
ÂÂÂÂÂÂÂÂÂ clocks = <&cru SCLK_UART0>, <&cru PCLK_UART0>;
ÂÂÂÂÂÂÂÂÂ clock-names = "baudclk", "apb_pclk";
ÂÂÂÂÂÂÂÂÂ interrupts = <GIC_SPI 99 IRQ_TYPE_LEVEL_HIGH 0>;
+ÂÂÂÂÂÂÂ dmas = <&dmac_peri 0>, <&dmac_peri 1>;
+ÂÂÂÂÂÂÂ dma-names = "tx", "rx";
ÂÂÂÂÂÂÂÂÂ reg-shift = <2>;
ÂÂÂÂÂÂÂÂÂ reg-io-width = <4>;
ÂÂÂÂÂÂÂÂÂ pinctrl-names = "default";
@@ -648,6 +650,8 @@
ÂÂÂÂÂÂÂÂÂ clocks = <&cru SCLK_UART1>, <&cru PCLK_UART1>;
ÂÂÂÂÂÂÂÂÂ clock-names = "baudclk", "apb_pclk";
ÂÂÂÂÂÂÂÂÂ interrupts = <GIC_SPI 98 IRQ_TYPE_LEVEL_HIGH 0>;
+ÂÂÂÂÂÂÂ dmas = <&dmac_peri 2>, <&dmac_peri 3>;
+ÂÂÂÂÂÂÂ dma-names = "tx", "rx";
ÂÂÂÂÂÂÂÂÂ reg-shift = <2>;
ÂÂÂÂÂÂÂÂÂ reg-io-width = <4>;
ÂÂÂÂÂÂÂÂÂ pinctrl-names = "default";
@@ -661,6 +665,8 @@
ÂÂÂÂÂÂÂÂÂ clocks = <&cru SCLK_UART2>, <&cru PCLK_UART2>;
ÂÂÂÂÂÂÂÂÂ clock-names = "baudclk", "apb_pclk";
ÂÂÂÂÂÂÂÂÂ interrupts = <GIC_SPI 100 IRQ_TYPE_LEVEL_HIGH 0>;
+ÂÂÂÂÂÂÂ dmas = <&dmac_peri 4>, <&dmac_peri 5>;
+ÂÂÂÂÂÂÂ dma-names = "tx", "rx";
ÂÂÂÂÂÂÂÂÂ reg-shift = <2>;
ÂÂÂÂÂÂÂÂÂ reg-io-width = <4>;
ÂÂÂÂÂÂÂÂÂ pinctrl-names = "default";
@@ -674,6 +680,8 @@
ÂÂÂÂÂÂÂÂÂ clocks = <&cru SCLK_UART3>, <&cru PCLK_UART3>;
ÂÂÂÂÂÂÂÂÂ clock-names = "baudclk", "apb_pclk";
ÂÂÂÂÂÂÂÂÂ interrupts = <GIC_SPI 101 IRQ_TYPE_LEVEL_HIGH 0>;
+ÂÂÂÂÂÂÂ dmas = <&dmac_peri 6>, <&dmac_peri 7>;
+ÂÂÂÂÂÂÂ dma-names = "tx", "rx";
ÂÂÂÂÂÂÂÂÂ reg-shift = <2>;
ÂÂÂÂÂÂÂÂÂ reg-io-width = <4>;
ÂÂÂÂÂÂÂÂÂ pinctrl-names = "default";