* [PATCH] ARM: dts: rockchip: Add dmac_bus rx and tx for uart2
@ 2015-06-15 17:47 Romain Perier
2015-06-16 11:37 ` Heiko Stuebner
0 siblings, 1 reply; 3+ messages in thread
From: Romain Perier @ 2015-06-15 17:47 UTC (permalink / raw)
To: linux-arm-kernel
This removes warning "ttyS2 - Failed to request dma" from kernel logs
Signed-off-by: Romain Perier <romain.perier@gmail.com>
---
arch/arm/boot/dts/rk3288.dtsi | 2 ++
1 file changed, 2 insertions(+)
diff --git a/arch/arm/boot/dts/rk3288.dtsi b/arch/arm/boot/dts/rk3288.dtsi
index 22316d0..816f40a 100644
--- a/arch/arm/boot/dts/rk3288.dtsi
+++ b/arch/arm/boot/dts/rk3288.dtsi
@@ -385,6 +385,8 @@
clock-names = "baudclk", "apb_pclk";
pinctrl-names = "default";
pinctrl-0 = <&uart2_xfer>;
+ dmas = <&dmac_bus_s 4>, <&dmac_bus_s 5>;
+ dma-names = "tx", "rx";
status = "disabled";
};
--
1.9.1
^ permalink raw reply related [flat|nested] 3+ messages in thread
* [PATCH] ARM: dts: rockchip: Add dmac_bus rx and tx for uart2
2015-06-15 17:47 [PATCH] ARM: dts: rockchip: Add dmac_bus rx and tx for uart2 Romain Perier
@ 2015-06-16 11:37 ` Heiko Stuebner
2015-06-17 17:01 ` Doug Anderson
0 siblings, 1 reply; 3+ messages in thread
From: Heiko Stuebner @ 2015-06-16 11:37 UTC (permalink / raw)
To: linux-arm-kernel
Hi,
Am Montag, 15. Juni 2015, 17:47:48 schrieb Romain Perier:
> This removes warning "ttyS2 - Failed to request dma" from kernel logs
>
> Signed-off-by: Romain Perier <romain.perier@gmail.com>
> ---
> arch/arm/boot/dts/rk3288.dtsi | 2 ++
> 1 file changed, 2 insertions(+)
>
> diff --git a/arch/arm/boot/dts/rk3288.dtsi b/arch/arm/boot/dts/rk3288.dtsi
> index 22316d0..816f40a 100644
> --- a/arch/arm/boot/dts/rk3288.dtsi
> +++ b/arch/arm/boot/dts/rk3288.dtsi
> @@ -385,6 +385,8 @@
> clock-names = "baudclk", "apb_pclk";
> pinctrl-names = "default";
> pinctrl-0 = <&uart2_xfer>;
> + dmas = <&dmac_bus_s 4>, <&dmac_bus_s 5>;
> + dma-names = "tx", "rx";
> status = "disabled";
> };
The dma channels are a property of the hardware, so we probably should add
them for all uarts in one go, instead of everytime something complains :-)
in dmac_peri
uart0: tx 1, rx 2
uart1: tx 3, rx 4
uart3: tx 7, rx 8
uart4: tx 9, rx 10
Just for the record and if anybody is interested to work in this, we have an
issue with the dma implementation [0] that is not yet solved upstream. From
what I've remember, that mostly got triggered on higher speeds, like higher
spi-speeds or i2s audio stuff (poping).
Heiko
[0]
https://chromium.googlesource.com/chromiumos/third_party/kernel/+/93c3b192dca7e8c773c4d28873114c325382b63e%5E%21/#F0
^ permalink raw reply [flat|nested] 3+ messages in thread
* [PATCH] ARM: dts: rockchip: Add dmac_bus rx and tx for uart2
2015-06-16 11:37 ` Heiko Stuebner
@ 2015-06-17 17:01 ` Doug Anderson
0 siblings, 0 replies; 3+ messages in thread
From: Doug Anderson @ 2015-06-17 17:01 UTC (permalink / raw)
To: linux-arm-kernel
Hi,
On Tue, Jun 16, 2015 at 4:37 AM, Heiko Stuebner <heiko@sntech.de> wrote:
> Just for the record and if anybody is interested to work in this, we have an
> issue with the dma implementation [0] that is not yet solved upstream. From
> what I've remember, that mostly got triggered on higher speeds, like higher
> spi-speeds or i2s audio stuff (poping).
>
>
> Heiko
>
> [0]
> https://chromium.googlesource.com/chromiumos/third_party/kernel/+/93c3b192dca7e8c773c4d28873114c325382b63e%5E%21/#F0
Right. In the ChromeOS tree (used for rk3288-based Chromebooks) we
think we solved the DMA issues for the most part by using burst mode.
...but we weren't brave enough to enable DMA for SPI and UART because
we didn't want to track down any additional weird issues and PIO mode
was working well enough.
The full list of things I see in the PL330 driver in ChromeOS:
3e12510 CHROMIUM: dmaengine: pl330: add quirk for broken no flushp
ded3780 CHROMIUM: dmaengine: pl330: support quirks for some broken
7af450f FROMLIST: DMA: pl330: support burst mode for dev-to-mem and
mem-to-dev transmit
Skimming through the i2s driver (which we definitely use with DMA):
21fee4b CHROMIUM: ASoC: rockchip_i2s: modify DMA max burst to 1
4001251 UPSTREAM: ASoC: rockchip: i2s: fix maxburst of dma data to 4
...I was only peripherally involved here, but as you can see it looks
like there were not only changes needed to the PL330 driver but also
changes needed to the DMA client.
You can find links to patches from the same git tree that Heiko pointed at.
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2015-06-17 17:01 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2015-06-15 17:47 [PATCH] ARM: dts: rockchip: Add dmac_bus rx and tx for uart2 Romain Perier
2015-06-16 11:37 ` Heiko Stuebner
2015-06-17 17:01 ` Doug Anderson
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).