Thread (52 messages) 52 messages, 9 authors, 2012-10-09

Re: [RFC PATCH 10/13] spi: omap2-mcspi: dma_request_slave_channel() support for DT platforms

From: Arnd Bergmann <arnd@arndb.de>
Date: 2012-09-21 09:17:53
Also in: linux-arm-kernel, linux-mmc, linux-omap, linux-spi, lkml

On Thursday 20 September 2012, Tony Lindgren wrote:
quoted
 /* use PIO for small transfers, avoiding DMA setup/teardown overhead and
@@ -798,14 +801,26 @@ static int omap2_mcspi_request_dma(struct spi_device *spi)
      dma_cap_zero(mask);
      dma_cap_set(DMA_SLAVE, mask);
      sig = mcspi_dma->dma_rx_sync_dev;
-     mcspi_dma->dma_rx = dma_request_channel(mask, omap_dma_filter_fn, &sig);
+     if (spi->dev.of_node)
+             mcspi_dma->dma_rx =
+                     dma_request_slave_channel(&master->dev,
+                                               mcspi_dma->dma_rx_ch_name);
+     else
+             mcspi_dma->dma_rx =
+                     dma_request_channel(mask, omap_dma_filter_fn, &sig);
      if (!mcspi_dma->dma_rx) {
              dev_err(&spi->dev, "no RX DMA engine channel for McSPI\n");
              return -EAGAIN;
      }
 
Hmm this does not look nice.. We should be able to somehow not to care about
the configuration at the mcspi driver level.
I agree, but as far as I understand Vinod's plans, we would actually move
all drivers over to dma_request_slave_channel() when we have an interface
to register the lookup tables from platform code.

I think the above is ok for a transitional phase and we can remove the
fallback path when we have converted all platforms using this driver
to either use DT or move to the new style way of passing the channel
configuration.

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