Thread (28 messages) 28 messages, 5 authors, 2016-11-14
DORMANTno replies

[PATCH RFC 1/7] dma: pl08x: Add support for the DMA slave map

From: s.nawrocki@samsung.com (Sylwester Nawrocki)
Date: 2016-11-14 11:51:26
Also in: linux-samsung-soc

On 11/07/2016 08:55 PM, Arnd Bergmann wrote:
quoted
diff --git a/drivers/dma/amba-pl08x.c b/drivers/dma/amba-pl08x.c
quoted
index d5c75c8..0d1eb2e 100644
--- a/drivers/dma/amba-pl08x.c
+++ b/drivers/dma/amba-pl08x.c
@@ -1793,6 +1793,23 @@ bool pl08x_filter_id(struct dma_chan *chan, void *chan_id)
 }
[...]
quoted
quoted
+static bool pl08x_filter_fn(struct dma_chan *chan, void *chan_id)
+{
+       struct pl08x_dma_chan *plchan;
[...]
quoted
quoted
+       plchan = to_pl08x_chan(chan);
+
+       /* Check that the channel is not taken! */
+       if (plchan->cd == chan_id)
+               return true;
What I had in mind was a bit different: Instead of comparing the
channel, I was thinking of modifying the channel itself, something
like:

	plchan->signal = chan_id->signal;
	plchan->periph_buses = chan_id->periph_buses;

after that, remove the plchan->cd data. Unfortunately, the muxing in
arch/arm/mach-spear/ makes this a bit harder. I'd have to think
about it some more. It may be easier to do this after moving
spear and lpc32xx over to use dma_slave_map.
I've posted updated version of this patch, please let me know
if you have any further comments.

-- 
Thanks,
Sylwester
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help