All of lore.kernel.org
 help / color / mirror / Atom feed
From: Sylwester Nawrocki <s.nawrocki@samsung.com>
To: krzk@kernel.org, vinod.koul@intel.com, kgene@kernel.org
Cc: linux-samsung-soc@vger.kernel.org,
	linux-arm-kernel@lists.infradead.org, dmaengine@vger.kernel.org,
	broonie@kernel.org, ckeepax@opensource.wolfsonmicro.com,
	ym0914@gmail.com, arnd@arndb.de, javier@osg.samsung.com,
	andi.shyti@samsung.com, sbkim73@samsung.com,
	Sylwester Nawrocki <s.nawrocki@samsung.com>
Subject: [PATCH 3/8] spi: s3c64xx: Do not use platform_data for DMA parameters
Date: Thu, 10 Nov 2016 16:17:51 +0100	[thread overview]
Message-ID: <1478791076-19528-4-git-send-email-s.nawrocki@samsung.com> (raw)
In-Reply-To: <1478791076-19528-1-git-send-email-s.nawrocki@samsung.com>

All related platforms use either devicetree or the DMA slave
map API for mapping DMA channels to DMA slaves so we can now
stop using platform_data for passing DMA details.

Signed-off-by: Sylwester Nawrocki <s.nawrocki@samsung.com>
Tested-by: Andi Shyti <andi.shyti@samsung.com>
Tested-by: Charles Keepax <ckeepax@opensource.wolfsonmicro.com>
Acked-by: Mark Brown <broonie@kernel.org>
---
 drivers/spi/spi-s3c64xx.c | 21 ++++-----------------
 1 file changed, 4 insertions(+), 17 deletions(-)

diff --git a/drivers/spi/spi-s3c64xx.c b/drivers/spi/spi-s3c64xx.c
index 3c09e94..28dfdce 100644
--- a/drivers/spi/spi-s3c64xx.c
+++ b/drivers/spi/spi-s3c64xx.c
@@ -341,27 +341,20 @@ static void s3c64xx_spi_set_cs(struct spi_device *spi, bool enable)
 static int s3c64xx_spi_prepare_transfer(struct spi_master *spi)
 {
 	struct s3c64xx_spi_driver_data *sdd = spi_master_get_devdata(spi);
-	dma_filter_fn filter = sdd->cntrlr_info->filter;
 	struct device *dev = &sdd->pdev->dev;
-	dma_cap_mask_t mask;
 
 	if (is_polling(sdd))
 		return 0;
 
-	dma_cap_zero(mask);
-	dma_cap_set(DMA_SLAVE, mask);
-
 	/* Acquire DMA channels */
-	sdd->rx_dma.ch = dma_request_slave_channel_compat(mask, filter,
-			   sdd->cntrlr_info->dma_rx, dev, "rx");
+	sdd->rx_dma.ch = dma_request_slave_channel(dev, "rx");
 	if (!sdd->rx_dma.ch) {
 		dev_err(dev, "Failed to get RX DMA channel\n");
 		return -EBUSY;
 	}
 	spi->dma_rx = sdd->rx_dma.ch;
 
-	sdd->tx_dma.ch = dma_request_slave_channel_compat(mask, filter,
-			   sdd->cntrlr_info->dma_tx, dev, "tx");
+	sdd->tx_dma.ch = dma_request_slave_channel(dev, "tx");
 	if (!sdd->tx_dma.ch) {
 		dev_err(dev, "Failed to get TX DMA channel\n");
 		dma_release_channel(sdd->rx_dma.ch);
@@ -1091,11 +1084,6 @@ static int s3c64xx_spi_probe(struct platform_device *pdev)
 
 	sdd->cur_bpw = 8;
 
-	if (!sdd->pdev->dev.of_node && (!sci->dma_tx || !sci->dma_rx)) {
-		dev_warn(&pdev->dev, "Unable to get SPI tx/rx DMA data. Switching to poll mode\n");
-		sdd->port_conf->quirks = S3C64XX_SPI_QUIRK_POLL;
-	}
-
 	sdd->tx_dma.direction = DMA_MEM_TO_DEV;
 	sdd->rx_dma.direction = DMA_DEV_TO_MEM;
 
@@ -1205,9 +1193,8 @@ static int s3c64xx_spi_probe(struct platform_device *pdev)
 
 	dev_dbg(&pdev->dev, "Samsung SoC SPI Driver loaded for Bus SPI-%d with %d Slaves attached\n",
 					sdd->port_id, master->num_chipselect);
-	dev_dbg(&pdev->dev, "\tIOmem=[%pR]\tFIFO %dbytes\tDMA=[Rx-%p, Tx-%p]\n",
-					mem_res, (FIFO_LVL_MASK(sdd) >> 1) + 1,
-					sci->dma_rx, sci->dma_tx);
+	dev_dbg(&pdev->dev, "\tIOmem=[%pR]\tFIFO %dbytes\n",
+					mem_res, (FIFO_LVL_MASK(sdd) >> 1) + 1);
 
 	pm_runtime_mark_last_busy(&pdev->dev);
 	pm_runtime_put_autosuspend(&pdev->dev);
-- 
1.9.1

WARNING: multiple messages have this Message-ID (diff)
From: s.nawrocki@samsung.com (Sylwester Nawrocki)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH 3/8] spi: s3c64xx: Do not use platform_data for DMA parameters
Date: Thu, 10 Nov 2016 16:17:51 +0100	[thread overview]
Message-ID: <1478791076-19528-4-git-send-email-s.nawrocki@samsung.com> (raw)
In-Reply-To: <1478791076-19528-1-git-send-email-s.nawrocki@samsung.com>

All related platforms use either devicetree or the DMA slave
map API for mapping DMA channels to DMA slaves so we can now
stop using platform_data for passing DMA details.

Signed-off-by: Sylwester Nawrocki <s.nawrocki@samsung.com>
Tested-by: Andi Shyti <andi.shyti@samsung.com>
Tested-by: Charles Keepax <ckeepax@opensource.wolfsonmicro.com>
Acked-by: Mark Brown <broonie@kernel.org>
---
 drivers/spi/spi-s3c64xx.c | 21 ++++-----------------
 1 file changed, 4 insertions(+), 17 deletions(-)

diff --git a/drivers/spi/spi-s3c64xx.c b/drivers/spi/spi-s3c64xx.c
index 3c09e94..28dfdce 100644
--- a/drivers/spi/spi-s3c64xx.c
+++ b/drivers/spi/spi-s3c64xx.c
@@ -341,27 +341,20 @@ static void s3c64xx_spi_set_cs(struct spi_device *spi, bool enable)
 static int s3c64xx_spi_prepare_transfer(struct spi_master *spi)
 {
 	struct s3c64xx_spi_driver_data *sdd = spi_master_get_devdata(spi);
-	dma_filter_fn filter = sdd->cntrlr_info->filter;
 	struct device *dev = &sdd->pdev->dev;
-	dma_cap_mask_t mask;
 
 	if (is_polling(sdd))
 		return 0;
 
-	dma_cap_zero(mask);
-	dma_cap_set(DMA_SLAVE, mask);
-
 	/* Acquire DMA channels */
-	sdd->rx_dma.ch = dma_request_slave_channel_compat(mask, filter,
-			   sdd->cntrlr_info->dma_rx, dev, "rx");
+	sdd->rx_dma.ch = dma_request_slave_channel(dev, "rx");
 	if (!sdd->rx_dma.ch) {
 		dev_err(dev, "Failed to get RX DMA channel\n");
 		return -EBUSY;
 	}
 	spi->dma_rx = sdd->rx_dma.ch;
 
-	sdd->tx_dma.ch = dma_request_slave_channel_compat(mask, filter,
-			   sdd->cntrlr_info->dma_tx, dev, "tx");
+	sdd->tx_dma.ch = dma_request_slave_channel(dev, "tx");
 	if (!sdd->tx_dma.ch) {
 		dev_err(dev, "Failed to get TX DMA channel\n");
 		dma_release_channel(sdd->rx_dma.ch);
@@ -1091,11 +1084,6 @@ static int s3c64xx_spi_probe(struct platform_device *pdev)
 
 	sdd->cur_bpw = 8;
 
-	if (!sdd->pdev->dev.of_node && (!sci->dma_tx || !sci->dma_rx)) {
-		dev_warn(&pdev->dev, "Unable to get SPI tx/rx DMA data. Switching to poll mode\n");
-		sdd->port_conf->quirks = S3C64XX_SPI_QUIRK_POLL;
-	}
-
 	sdd->tx_dma.direction = DMA_MEM_TO_DEV;
 	sdd->rx_dma.direction = DMA_DEV_TO_MEM;
 
@@ -1205,9 +1193,8 @@ static int s3c64xx_spi_probe(struct platform_device *pdev)
 
 	dev_dbg(&pdev->dev, "Samsung SoC SPI Driver loaded for Bus SPI-%d with %d Slaves attached\n",
 					sdd->port_id, master->num_chipselect);
-	dev_dbg(&pdev->dev, "\tIOmem=[%pR]\tFIFO %dbytes\tDMA=[Rx-%p, Tx-%p]\n",
-					mem_res, (FIFO_LVL_MASK(sdd) >> 1) + 1,
-					sci->dma_rx, sci->dma_tx);
+	dev_dbg(&pdev->dev, "\tIOmem=[%pR]\tFIFO %dbytes\n",
+					mem_res, (FIFO_LVL_MASK(sdd) >> 1) + 1);
 
 	pm_runtime_mark_last_busy(&pdev->dev);
 	pm_runtime_put_autosuspend(&pdev->dev);
-- 
1.9.1

  parent reply	other threads:[~2016-11-10 15:19 UTC|newest]

Thread overview: 48+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-11-10 15:17 [PATCH 0/8] DMA: s3c64xx: Conversion to the new channel request API Sylwester Nawrocki
2016-11-10 15:17 ` Sylwester Nawrocki
2016-11-10 15:17 ` [PATCH 1/8] dma: pl08x: Add support for the DMA slave map Sylwester Nawrocki
2016-11-10 15:17   ` Sylwester Nawrocki
2016-11-10 15:17 ` [PATCH 2/8] ARM: s3c64xx: Add DMA slave maps for PL080 devices Sylwester Nawrocki
2016-11-10 15:17   ` Sylwester Nawrocki
2016-11-16 16:57   ` Krzysztof Kozlowski
2016-11-16 16:57     ` Krzysztof Kozlowski
2016-11-10 15:17 ` Sylwester Nawrocki [this message]
2016-11-10 15:17   ` [PATCH 3/8] spi: s3c64xx: Do not use platform_data for DMA parameters Sylwester Nawrocki
2016-11-10 15:17 ` [PATCH 4/8] ARM: s3c64xx: Drop unused DMA fields from struct s3c64xx_spi_csinfo Sylwester Nawrocki
2016-11-10 15:17   ` Sylwester Nawrocki
2016-11-16 16:58   ` Krzysztof Kozlowski
2016-11-16 16:58     ` Krzysztof Kozlowski
2016-11-10 15:17 ` [PATCH 5/8] ASoC: samsung: i2s: Do not use platform_data for DMA parameters Sylwester Nawrocki
2016-11-10 15:17   ` Sylwester Nawrocki
2016-11-10 15:17 ` [PATCH 6/8] ASoC: samsung: pcm: " Sylwester Nawrocki
2016-11-10 15:17   ` Sylwester Nawrocki
2016-11-10 15:17 ` [PATCH 7/8] ARM: s3c64xx: Drop initialization of unused struct s3c_audio_pdata fields Sylwester Nawrocki
2016-11-10 15:17   ` Sylwester Nawrocki
2016-12-28 17:53   ` Krzysztof Kozlowski
2016-12-28 17:53     ` Krzysztof Kozlowski
     [not found]     ` <CGME20161229103055epcas1p1dc69aec56d462e8c1605fe9e47ded562@epcas1p1.samsung.com>
2016-12-29 10:30       ` Sylwester Nawrocki
2016-12-29 10:30         ` Sylwester Nawrocki
2016-12-29 11:43         ` Krzysztof Kozlowski
2016-12-29 11:43           ` Krzysztof Kozlowski
2016-11-10 15:17 ` [PATCH 8/8] ARM: s3c24xx: Drop unused struct s3c_audio_pdata entries Sylwester Nawrocki
2016-11-10 15:17   ` Sylwester Nawrocki
2016-11-10 18:42 ` [PATCH 0/8] DMA: s3c64xx: Conversion to the new channel request API Krzysztof Kozlowski
2016-11-10 18:42   ` Krzysztof Kozlowski
2016-11-14 11:52   ` Sylwester Nawrocki
2016-11-14 11:52     ` Sylwester Nawrocki
2016-11-14 10:11 ` Charles Keepax
2016-11-14 10:11   ` Charles Keepax
2016-11-14 11:59   ` Sylwester Nawrocki
2016-11-14 11:59     ` Sylwester Nawrocki
2016-11-16  3:26 ` Vinod Koul
2016-11-16  3:26   ` Vinod Koul
2016-11-16 12:58   ` Sylwester Nawrocki
2016-11-16 12:58     ` Sylwester Nawrocki
2016-11-16 15:54   ` Arnd Bergmann
2016-11-16 15:54     ` Arnd Bergmann
2016-11-16 17:03   ` Krzysztof Kozlowski
2016-11-16 17:03     ` Krzysztof Kozlowski
2016-11-16 17:31     ` Sylwester Nawrocki
2016-11-16 17:31       ` Sylwester Nawrocki
2016-11-17 10:22       ` Vinod Koul
2016-11-17 10:22         ` Vinod Koul

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1478791076-19528-4-git-send-email-s.nawrocki@samsung.com \
    --to=s.nawrocki@samsung.com \
    --cc=andi.shyti@samsung.com \
    --cc=arnd@arndb.de \
    --cc=broonie@kernel.org \
    --cc=ckeepax@opensource.wolfsonmicro.com \
    --cc=dmaengine@vger.kernel.org \
    --cc=javier@osg.samsung.com \
    --cc=kgene@kernel.org \
    --cc=krzk@kernel.org \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-samsung-soc@vger.kernel.org \
    --cc=sbkim73@samsung.com \
    --cc=vinod.koul@intel.com \
    --cc=ym0914@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.