Re: [PATCH v2] dmaengine: s3c24xx: Add dma_slave_map for s3c2440 devices
On Fri, Sep 16, 2016 at 01:16:31PM +0200, Krzysztof Kozlowski wrote: > On 09/15/2016 09:41 PM, Sam Van Den Berge wrote: > > This patch updates the s3c24xx dma driver to be able to pass a > > dma_slave_map array via the platform data. This is needed to > > be able to use the new, simpler dmaengine API [1]. > > I used the virtual DMA channels as a parameter for the dma_filter > > function. By doing that, I could reuse the existing filter function in > > drivers/dma/s3c24xx-dma.c. > > > > I have tested this on my mini2440 board with the audio driver. > > (I first applied the audio fixes from Sylwester Nawrocki [2]) > > According to my observations, dma_request_slave_channel in the > > function dmaengine_pcm_new in the file > > sound/soc/soc-generic-dmaengine-pcm.c now returns a valid DMA channel > > whereas before no DMA channel was returned at that point. > > > > Entries for DMACH_XD0, DMACH_XD1 and DMACH_TIMER are missing because I > > don't realy know which driver to use for these. > > > > [1] > > http://lists.infradead.org/pipermail/linux-arm-kernel/2015-December/393635.html > > [2] http://www.spinics.net/lists/arm-kernel/msg521918.html > > > > Signed-off-by: Sam Van Den Berge > > Reviewed-by: Sylwester Nawrocki > > Acked-by: Arnd Bergmann > > > > --- > > > > Changes since v1: > > - rename arm into dmaengine in title > > - one channel for s3c2440-sdi named "rx-tx" > > > > arch/arm/mach-s3c24xx/common.c| 35 > > +++ > > drivers/dma/s3c24xx-dma.c | 3 +++ > > include/linux/platform_data/dma-s3c24xx.h | 6 ++ > > 3 files changed, 44 insertions(+) > > Vinod, do you want to take it through your tree? Not much difference for > me, so in such case: > Acked-by: Krzysztof Kozlowski I was kinda waiting for an answer on this question because I didn't know if I should add the acked-by or not but I'm going to assume that it's ok so I'll include it in the third version of this patch. > > Best regards, > Krzysztof > >
Re: [PATCH v2] dmaengine: s3c24xx: Add dma_slave_map for s3c2440 devices
On Fri, Sep 16, 2016 at 01:00:12PM +0200, Sylwester Nawrocki wrote: > On 09/15/2016 09:41 PM, Sam Van Den Berge wrote: > > @@ -445,10 +446,44 @@ static struct s3c24xx_dma_channel > > s3c2440_dma_channels[DMACH_MAX] = { > > [DMACH_USB_EP4] = { S3C24XX_DMA_APB, true, S3C24XX_DMA_CHANREQ(4, 3), }, > > }; > > > > +static const struct dma_slave_map s3c2440_dma_slave_map[] = { > > + /* TODO: DMACH_XD0 */ > > + /* TODO: DMACH_XD1 */ > > + { "3c2440-sdi", "rx-tx", (void *)DMACH_SDI }, > > Thanks for the patch, still device name needs to be changed here > to "s3c2440-sdi". Thanks for spotting this! I guess I was too focused on the "rx-tx" part that I totally missed the missing leading "s". I will fix this in v3. Sam.
Re: [PATCH v2] dmaengine: s3c24xx: Add dma_slave_map for s3c2440 devices
On 09/15/2016 09:41 PM, Sam Van Den Berge wrote: > This patch updates the s3c24xx dma driver to be able to pass a > dma_slave_map array via the platform data. This is needed to > be able to use the new, simpler dmaengine API [1]. > I used the virtual DMA channels as a parameter for the dma_filter > function. By doing that, I could reuse the existing filter function in > drivers/dma/s3c24xx-dma.c. > > I have tested this on my mini2440 board with the audio driver. > (I first applied the audio fixes from Sylwester Nawrocki [2]) > According to my observations, dma_request_slave_channel in the > function dmaengine_pcm_new in the file > sound/soc/soc-generic-dmaengine-pcm.c now returns a valid DMA channel > whereas before no DMA channel was returned at that point. > > Entries for DMACH_XD0, DMACH_XD1 and DMACH_TIMER are missing because I > don't realy know which driver to use for these. > > [1] > http://lists.infradead.org/pipermail/linux-arm-kernel/2015-December/393635.html > [2] http://www.spinics.net/lists/arm-kernel/msg521918.html > > Signed-off-by: Sam Van Den Berge > Reviewed-by: Sylwester Nawrocki > Acked-by: Arnd Bergmann > > --- > > Changes since v1: > - rename arm into dmaengine in title > - one channel for s3c2440-sdi named "rx-tx" > > arch/arm/mach-s3c24xx/common.c| 35 > +++ > drivers/dma/s3c24xx-dma.c | 3 +++ > include/linux/platform_data/dma-s3c24xx.h | 6 ++ > 3 files changed, 44 insertions(+) Vinod, do you want to take it through your tree? Not much difference for me, so in such case: Acked-by: Krzysztof Kozlowski Best regards, Krzysztof
Re: [PATCH v2] dmaengine: s3c24xx: Add dma_slave_map for s3c2440 devices
On 09/15/2016 09:41 PM, Sam Van Den Berge wrote: > @@ -445,10 +446,44 @@ static struct s3c24xx_dma_channel > s3c2440_dma_channels[DMACH_MAX] = { > [DMACH_USB_EP4] = { S3C24XX_DMA_APB, true, S3C24XX_DMA_CHANREQ(4, 3), }, > }; > > +static const struct dma_slave_map s3c2440_dma_slave_map[] = { > + /* TODO: DMACH_XD0 */ > + /* TODO: DMACH_XD1 */ > + { "3c2440-sdi", "rx-tx", (void *)DMACH_SDI }, Thanks for the patch, still device name needs to be changed here to "s3c2440-sdi". -- Regards, Sylwester