[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20200731123223.kdbbcwabi5b72bem@mobilestation>
Date: Fri, 31 Jul 2020 15:32:23 +0300
From: Serge Semin <Sergey.Semin@...kalelectronics.ru>
To: Andy Shevchenko <andy.shevchenko@...il.com>
CC: Mark Brown <broonie@...nel.org>,
Alexey Malahov <Alexey.Malahov@...kalelectronics.ru>,
Georgy Vlasov <Georgy.Vlasov@...kalelectronics.ru>,
Ramil Zaripov <Ramil.Zaripov@...kalelectronics.ru>,
Pavel Parkhomenko <Pavel.Parkhomenko@...kalelectronics.ru>,
Peter Ujfalusi <peter.ujfalusi@...com>,
Feng Tang <feng.tang@...el.com>, Vinod Koul <vkoul@...nel.org>,
<linux-spi@...r.kernel.org>, <linux-kernel@...r.kernel.org>
Subject: Re: [PATCH 3/8] spi: dw-dma: Configure the DMA channels in dma_setup
On Fri, Jul 31, 2020 at 12:16:38PM +0300, Andy Shevchenko wrote:
> On Fri, Jul 31, 2020 at 10:59:48AM +0300, Serge Semin wrote:
> > Mainly this is a preparation patch before adding one-by-one DMA SG entries
> > transmission. But logically the Tx and Rx DMA channels setup should be
> > performed in the dma_setup() callback anyway. So let's move the DMA slave
> > channels src/dst burst lengths, address and address width configuration to
> > the DMA setup stage. While at it make sure the return value of the
> > dmaengine_slave_config() method is checked. It has been unnecessary in
> > case if Dw DMAC is utilized as a DMA engine, since its device_config()
> > callback always returns zero (though it might change in future). But since
> > DW APB SSI driver now supports any DMA back-end we must make sure the
> > DMA device configuration has been successful before proceeding with
> > further setups.
>
> ...
>
Part 1:
> > + if (!xfer->rx_buf)
> > + return NULL;
>
> ...
>
Part 2:
> > + if (xfer->rx_buf) {
>
> > + }
>
> This looks like a separate change to drop one of them and not hide in the next patch.
Both of these changes are a part of the single alteration introduced to detach two
methods from each other: dw_spi_dma_{config,prepare}_{rx,tx}(). Part 1 is a
statement, which belongs to the method dw_spi_dma_prepare_rx() and is left there
after dw_spi_dma_config_rx() has been detached from it. Part 2 is a logical
part, which must be presented in dw_spi_dma_setup() since we don't need to configure
the Rx DMA channel if rx_buf isn't specified.
Please, read more carefully the commit log. I didn't introduce anything other
than the changes described there.
-Sergey
>
> --
> With Best Regards,
> Andy Shevchenko
>
>
Powered by blists - more mailing lists