public inbox for dmaengine@vger.kernel.org
 help / color / mirror / Atom feed
From: Peter Ujfalusi <peter.ujfalusi@ti.com>
To: <vkoul@kernel.org>, <nm@ti.com>, <ssantosh@kernel.org>,
	<robh+dt@kernel.org>
Cc: <dan.j.williams@intel.com>, <t-kristo@ti.com>,
	<linux-arm-kernel@lists.infradead.org>,
	<linux-kernel@vger.kernel.org>, <devicetree@vger.kernel.org>,
	<dmaengine@vger.kernel.org>, <vigneshr@ti.com>,
	<grygorii.strashko@ti.com>
Subject: [PATCH v3 10/20] dmaengine: dmatest: Use dmaengine_get_dma_device
Date: Tue, 8 Dec 2020 11:04:30 +0200	[thread overview]
Message-ID: <20201208090440.31792-11-peter.ujfalusi@ti.com> (raw)
In-Reply-To: <20201208090440.31792-1-peter.ujfalusi@ti.com>

By using the dmaengine_get_dma_device() to get the device for
dma_api use, the dmatest can support per channel coherency if it is
supported by the DMA controller.

Signed-off-by: Peter Ujfalusi <peter.ujfalusi@ti.com>
---
 drivers/dma/dmatest.c | 13 ++++++++-----
 1 file changed, 8 insertions(+), 5 deletions(-)

diff --git a/drivers/dma/dmatest.c b/drivers/dma/dmatest.c
index a3a172173e34..f696246f57fd 100644
--- a/drivers/dma/dmatest.c
+++ b/drivers/dma/dmatest.c
@@ -573,6 +573,7 @@ static int dmatest_func(void *data)
 	struct dmatest_params	*params;
 	struct dma_chan		*chan;
 	struct dma_device	*dev;
+	struct device		*dma_dev;
 	unsigned int		error_count;
 	unsigned int		failed_tests = 0;
 	unsigned int		total_tests = 0;
@@ -606,6 +607,8 @@ static int dmatest_func(void *data)
 	params = &info->params;
 	chan = thread->chan;
 	dev = chan->device;
+	dma_dev = dmaengine_get_dma_device(chan);
+
 	src = &thread->src;
 	dst = &thread->dst;
 	if (thread->type == DMA_MEMCPY) {
@@ -730,7 +733,7 @@ static int dmatest_func(void *data)
 			filltime = ktime_add(filltime, diff);
 		}
 
-		um = dmaengine_get_unmap_data(dev->dev, src->cnt + dst->cnt,
+		um = dmaengine_get_unmap_data(dma_dev, src->cnt + dst->cnt,
 					      GFP_KERNEL);
 		if (!um) {
 			failed_tests++;
@@ -745,10 +748,10 @@ static int dmatest_func(void *data)
 			struct page *pg = virt_to_page(buf);
 			unsigned long pg_off = offset_in_page(buf);
 
-			um->addr[i] = dma_map_page(dev->dev, pg, pg_off,
+			um->addr[i] = dma_map_page(dma_dev, pg, pg_off,
 						   um->len, DMA_TO_DEVICE);
 			srcs[i] = um->addr[i] + src->off;
-			ret = dma_mapping_error(dev->dev, um->addr[i]);
+			ret = dma_mapping_error(dma_dev, um->addr[i]);
 			if (ret) {
 				result("src mapping error", total_tests,
 				       src->off, dst->off, len, ret);
@@ -763,9 +766,9 @@ static int dmatest_func(void *data)
 			struct page *pg = virt_to_page(buf);
 			unsigned long pg_off = offset_in_page(buf);
 
-			dsts[i] = dma_map_page(dev->dev, pg, pg_off, um->len,
+			dsts[i] = dma_map_page(dma_dev, pg, pg_off, um->len,
 					       DMA_BIDIRECTIONAL);
-			ret = dma_mapping_error(dev->dev, dsts[i]);
+			ret = dma_mapping_error(dma_dev, dsts[i]);
 			if (ret) {
 				result("dst mapping error", total_tests,
 				       src->off, dst->off, len, ret);
-- 
Peter

Texas Instruments Finland Oy, Porkkalankatu 22, 00180 Helsinki.
Y-tunnus/Business ID: 0615521-4. Kotipaikka/Domicile: Helsinki


  parent reply	other threads:[~2020-12-08  9:06 UTC|newest]

Thread overview: 31+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-12-08  9:04 [PATCH v3 00/20] dmaengine/soc: k3-udma: Add support for BCDMA and PKTDMA Peter Ujfalusi
2020-12-08  9:04 ` [PATCH v3 01/20] dmaengine: ti: k3-udma: Correct normal channel offset when uchan_cnt is not 0 Peter Ujfalusi
2020-12-08  9:04 ` [PATCH v3 02/20] dmaengine: ti: k3-udma: Wait for peer teardown completion if supported Peter Ujfalusi
2020-12-08  9:04 ` [PATCH v3 03/20] dmaengine: ti: k3-udma: Add support for second resource range from sysfw Peter Ujfalusi
2020-12-08  9:04 ` [PATCH v3 04/20] dmaengine: ti: k3-udma-glue: Add function to get device pointer for DMA API Peter Ujfalusi
2020-12-08 11:52   ` Grygorii Strashko
2020-12-08  9:04 ` [PATCH v3 05/20] dmaengine: ti: k3-udma-glue: Get the ringacc from udma_dev Peter Ujfalusi
2020-12-08 11:52   ` Grygorii Strashko
2020-12-08  9:04 ` [PATCH v3 06/20] dmaengine: ti: k3-udma-glue: Configure the dma_dev for rings Peter Ujfalusi
2020-12-08 11:53   ` Grygorii Strashko
2020-12-08  9:04 ` [PATCH v3 07/20] dmaengine: of-dma: Add support for optional router configuration callback Peter Ujfalusi
2020-12-08  9:04 ` [PATCH v3 08/20] dmaengine: Add support for per channel coherency handling Peter Ujfalusi
2020-12-08  9:04 ` [PATCH v3 09/20] dmaengine: doc: client: Update for dmaengine_get_dma_device() usage Peter Ujfalusi
2020-12-08  9:04 ` Peter Ujfalusi [this message]
2020-12-08  9:04 ` [PATCH v3 11/20] dt-bindings: dma: ti: Add document for K3 BCDMA Peter Ujfalusi
2020-12-10 13:59   ` Rob Herring
2020-12-08  9:04 ` [PATCH v3 12/20] dt-bindings: dma: ti: Add document for K3 PKTDMA Peter Ujfalusi
2020-12-10 14:00   ` Rob Herring
2020-12-08  9:04 ` [PATCH v3 13/20] dmaengine: ti: k3-psil: Extend psil_endpoint_config " Peter Ujfalusi
2020-12-08 11:55   ` Grygorii Strashko
2020-12-08  9:04 ` [PATCH v3 14/20] dmaengine: ti: k3-psil: Add initial map for AM64 Peter Ujfalusi
2020-12-08  9:04 ` [PATCH v3 15/20] dmaengine: ti: Add support for k3 event routers Peter Ujfalusi
2020-12-08  9:04 ` [PATCH v3 16/20] soc: ti: k3-ringacc: add AM64 DMA rings support Peter Ujfalusi
2020-12-11 13:46   ` Peter Ujfalusi
2020-12-08  9:04 ` [PATCH v3 17/20] dmaengine: ti: k3-udma: Initial support for K3 BCDMA Peter Ujfalusi
2020-12-08  9:04 ` [PATCH v3 18/20] dmaengine: ti: k3-udma: Add support for BCDMA channel TPL handling Peter Ujfalusi
2020-12-08  9:04 ` [PATCH v3 19/20] dmaengine: ti: k3-udma: Initial support for K3 PKTDMA Peter Ujfalusi
2020-12-08  9:04 ` [PATCH v3 20/20] dmaengine: ti: k3-udma-glue: Add " Peter Ujfalusi
2020-12-11 16:24 ` [PATCH v3 00/20] dmaengine/soc: k3-udma: Add support for BCDMA and PKTDMA Vinod Koul
2020-12-11 19:16   ` Peter Ujfalusi
2020-12-12  5:21     ` 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=20201208090440.31792-11-peter.ujfalusi@ti.com \
    --to=peter.ujfalusi@ti.com \
    --cc=dan.j.williams@intel.com \
    --cc=devicetree@vger.kernel.org \
    --cc=dmaengine@vger.kernel.org \
    --cc=grygorii.strashko@ti.com \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=nm@ti.com \
    --cc=robh+dt@kernel.org \
    --cc=ssantosh@kernel.org \
    --cc=t-kristo@ti.com \
    --cc=vigneshr@ti.com \
    --cc=vkoul@kernel.org \
    /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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox