mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: Frank.Li@oss.nxp.com
To: "Vignesh Raghavendra" <vigneshr@ti.com>,
	"Tudor Ambarus" <tudor.ambarus@linaro.org>,
	"Miquel Raynal" <miquel.raynal@bootlin.com>,
	"Richard Weinberger" <richard@nod.at>,
	"Kyungmin Park" <kyungmin.park@samsung.com>,
	"Nicolas Ferre" <nicolas.ferre@microchip.com>,
	"Alexandre Belloni" <alexandre.belloni@bootlin.com>,
	"Claudiu Beznea" <claudiu.beznea@tuxon.dev>,
	"Han Xu" <han.xu@nxp.com>,
	"Keguang Zhang" <keguang.zhang@gmail.com>,
	"Vladimir Zapolskiy" <vz@mleia.com>,
	"Piotr Wojtaszczyk" <piotr.wojtaszczyk@timesys.com>,
	"Maxime Coquelin" <mcoquelin.stm32@gmail.com>,
	"Alexandre Torgue" <alexandre.torgue@foss.st.com>,
	"Rosen Penev" <rosenp@gmail.com>, "Frank Li" <Frank.Li@nxp.com>,
	"Wentao Liang" <vulab@iscas.ac.cn>,
	"Rob Herring (Arm)" <robh@kernel.org>,
	"Alok Tiwari" <alok.a.tiwari@oracle.com>,
	"Chen Ni" <nichen@iscas.ac.cn>,
	"Runyu Xiao" <runyu.xiao@seu.edu.cn>,
	"Hemanth Selam" <hemanth.selam@gmail.com>,
	"Pengpeng Hou" <pengpeng@iscas.ac.cn>,
	"Uwe Kleine-König (The Capable Hub)"
	<u.kleine-koenig@baylibre.com>,
	"Triet Hoang" <triet.hoang.dev@gmail.com>,
	linux-mtd@lists.infradead.org (open list:HYPERBUS SUPPORT),
	linux-kernel@vger.kernel.org (open list),
	linux-arm-kernel@lists.infradead.org (moderated
	list:ARM/Microchip (AT91) SoC support),
	imx@lists.linux.dev (open list:FREESCALE GPMI NAND DRIVER),
	linux-mips@vger.kernel.org (open list:MIPS/LOONGSON1
	ARCHITECTURE),
	linux-stm32@st-md-mailman.stormreply.com (moderated
	list:ARM/STM32 ARCHITECTURE)
Cc: imx@lists.linux.dev, vkoul@kernel.org
Subject: [PATCH 1/1] mtd: use dmaengine_desc_set_callback()
Date: Mon,  2 Nov 2026 13:13:41 -0500	[thread overview]
Message-ID: <20261102181406.3994422-1-Frank.Li@oss.nxp.com> (raw)

From: Frank Li <Frank.Li@nxp.com>

Replace open-coded assignments to callback and callback_param fields
of struct dma_async_tx_descriptor with calls to the
dmaengine_desc_set_callback() helper across sound drivers.

No functional change intended. Prepare to make struct
dma_async_tx_descriptor private to the DMA engine.

Signed-off-by: Frank Li <Frank.Li@nxp.com>
---
 drivers/mtd/hyperbus/hbmc-am654.c               | 3 +--
 drivers/mtd/nand/onenand/onenand_omap2.c        | 3 +--
 drivers/mtd/nand/qpic_common.c                  | 4 ++--
 drivers/mtd/nand/raw/atmel/nand-controller.c    | 3 +--
 drivers/mtd/nand/raw/cadence-nand-controller.c  | 3 +--
 drivers/mtd/nand/raw/fsmc_nand.c                | 3 +--
 drivers/mtd/nand/raw/gpmi-nand/gpmi-nand.c      | 3 +--
 drivers/mtd/nand/raw/intel-nand-controller.c    | 3 +--
 drivers/mtd/nand/raw/loongson-nand-controller.c | 3 +--
 drivers/mtd/nand/raw/lpc32xx_mlc.c              | 3 +--
 drivers/mtd/nand/raw/lpc32xx_slc.c              | 3 +--
 drivers/mtd/nand/raw/omap2.c                    | 3 +--
 drivers/mtd/nand/raw/sh_flctl.c                 | 3 +--
 drivers/mtd/nand/raw/stm32_fmc2_nand.c          | 8 ++++----
 14 files changed, 18 insertions(+), 30 deletions(-)

diff --git a/drivers/mtd/hyperbus/hbmc-am654.c b/drivers/mtd/hyperbus/hbmc-am654.c
index 8a14e908d0b53..56b265125c7e8 100644
--- a/drivers/mtd/hyperbus/hbmc-am654.c
+++ b/drivers/mtd/hyperbus/hbmc-am654.c
@@ -100,8 +100,7 @@ static int am654_hbmc_dma_read(struct am654_hbmc_device_priv *priv, void *to,
 	}
 
 	reinit_completion(&priv->rx_dma_complete);
-	tx->callback = am654_hbmc_dma_callback;
-	tx->callback_param = priv;
+	dmaengine_desc_set_callback(tx, am654_hbmc_dma_callback, NULL, priv);
 	cookie = dmaengine_submit(tx);
 
 	ret = dma_submit_error(cookie);
diff --git a/drivers/mtd/nand/onenand/onenand_omap2.c b/drivers/mtd/nand/onenand/onenand_omap2.c
index 644498187d8fa..5bd906cc02d82 100644
--- a/drivers/mtd/nand/onenand/onenand_omap2.c
+++ b/drivers/mtd/nand/onenand/onenand_omap2.c
@@ -337,8 +337,7 @@ static inline int omap2_onenand_dma_transfer(struct omap2_onenand *c,
 
 	reinit_completion(&c->dma_done);
 
-	tx->callback = omap2_onenand_dma_complete_func;
-	tx->callback_param = &c->dma_done;
+	dmaengine_desc_set_callback(tx, omap2_onenand_dma_complete_func, NULL, &c->dma_done);
 
 	cookie = dmaengine_submit(tx);
 	if (dma_submit_error(cookie)) {
diff --git a/drivers/mtd/nand/qpic_common.c b/drivers/mtd/nand/qpic_common.c
index 91ae970734f80..4d5d5edb63e99 100644
--- a/drivers/mtd/nand/qpic_common.c
+++ b/drivers/mtd/nand/qpic_common.c
@@ -584,8 +584,8 @@ int qcom_submit_descs(struct qcom_nand_controller *nandc)
 		cookie = dmaengine_submit(desc->dma_desc);
 
 	if (nandc->props->supports_bam) {
-		bam_txn->last_cmd_desc->callback = qcom_qpic_bam_dma_done;
-		bam_txn->last_cmd_desc->callback_param = bam_txn;
+		dmaengine_desc_set_callback(bam_txn->last_cmd_desc,
+					    qcom_qpic_bam_dma_done, NULL, bam_txn);
 
 		dma_async_issue_pending(nandc->tx_chan);
 		dma_async_issue_pending(nandc->rx_chan);
diff --git a/drivers/mtd/nand/raw/atmel/nand-controller.c b/drivers/mtd/nand/raw/atmel/nand-controller.c
index 0bdbcbb50d94c..45463b8d405ec 100644
--- a/drivers/mtd/nand/raw/atmel/nand-controller.c
+++ b/drivers/mtd/nand/raw/atmel/nand-controller.c
@@ -394,8 +394,7 @@ static int atmel_nand_dma_transfer(struct atmel_nand_controller *nc,
 		goto err_unmap;
 	}
 
-	tx->callback = atmel_nand_dma_transfer_finished;
-	tx->callback_param = &finished;
+	dmaengine_desc_set_callback(tx, atmel_nand_dma_transfer_finished, NULL, &finished);
 
 	cookie = dmaengine_submit(tx);
 	if (dma_submit_error(cookie)) {
diff --git a/drivers/mtd/nand/raw/cadence-nand-controller.c b/drivers/mtd/nand/raw/cadence-nand-controller.c
index 4f5e6d2b128c7..de9bcbb6df901 100644
--- a/drivers/mtd/nand/raw/cadence-nand-controller.c
+++ b/drivers/mtd/nand/raw/cadence-nand-controller.c
@@ -1902,8 +1902,7 @@ static int cadence_nand_slave_dma_transfer(struct cdns_nand_ctrl *cdns_ctrl,
 		goto err_unmap;
 	}
 
-	tx->callback = cadence_nand_slave_dma_transfer_finished;
-	tx->callback_param = &finished;
+	dmaengine_desc_set_callback(tx, cadence_nand_slave_dma_transfer_finished, NULL, &finished);
 
 	cookie = dmaengine_submit(tx);
 	if (dma_submit_error(cookie)) {
diff --git a/drivers/mtd/nand/raw/fsmc_nand.c b/drivers/mtd/nand/raw/fsmc_nand.c
index 837c23c63aeb2..6f724819d2d95 100644
--- a/drivers/mtd/nand/raw/fsmc_nand.c
+++ b/drivers/mtd/nand/raw/fsmc_nand.c
@@ -522,8 +522,7 @@ static int dma_xfer(struct fsmc_nand_data *host, void *buffer, int len,
 		goto unmap_dma;
 	}
 
-	tx->callback = dma_complete;
-	tx->callback_param = host;
+	dmaengine_desc_set_callback(tx, dma_complete, NULL, host);
 	cookie = dmaengine_submit(tx);
 
 	ret = dma_submit_error(cookie);
diff --git a/drivers/mtd/nand/raw/gpmi-nand/gpmi-nand.c b/drivers/mtd/nand/raw/gpmi-nand/gpmi-nand.c
index 0f1528710a6a1..ef355ba00c929 100644
--- a/drivers/mtd/nand/raw/gpmi-nand/gpmi-nand.c
+++ b/drivers/mtd/nand/raw/gpmi-nand/gpmi-nand.c
@@ -2638,8 +2638,7 @@ static int gpmi_nfc_exec_op(struct nand_chip *chip,
 		       this->resources.bch_regs + HW_BCH_FLASH0LAYOUT1);
 	}
 
-	desc->callback = dma_irq_callback;
-	desc->callback_param = this;
+	dmaengine_desc_set_callback(desc, dma_irq_callback, NULL, this);
 	dma_completion = &this->dma_done;
 	bch_completion = NULL;
 
diff --git a/drivers/mtd/nand/raw/intel-nand-controller.c b/drivers/mtd/nand/raw/intel-nand-controller.c
index 94d2161bf5a1a..4bada01c9b7d8 100644
--- a/drivers/mtd/nand/raw/intel-nand-controller.c
+++ b/drivers/mtd/nand/raw/intel-nand-controller.c
@@ -322,8 +322,7 @@ static int ebu_dma_start(struct ebu_nand_controller *ebu_host, u32 dir,
 		goto err_unmap;
 	}
 
-	tx->callback = callback;
-	tx->callback_param = ebu_host;
+	dmaengine_desc_set_callback(tx, callback, NULL, ebu_host);
 	cookie = dmaengine_submit(tx);
 
 	ret = dma_submit_error(cookie);
diff --git a/drivers/mtd/nand/raw/loongson-nand-controller.c b/drivers/mtd/nand/raw/loongson-nand-controller.c
index 935f66602de97..94caae1d8b390 100644
--- a/drivers/mtd/nand/raw/loongson-nand-controller.c
+++ b/drivers/mtd/nand/raw/loongson-nand-controller.c
@@ -438,8 +438,7 @@ static int loongson_nand_dma_transfer(struct loongson_nand_host *host, struct lo
 		ret = -ENOMEM;
 		goto err;
 	}
-	desc->callback = loongson_nand_dma_callback;
-	desc->callback_param = host;
+	dmaengine_desc_set_callback(desc, loongson_nand_dma_callback, NULL, host);
 
 	host->dma_cookie = dmaengine_submit(desc);
 	ret = dma_submit_error(host->dma_cookie);
diff --git a/drivers/mtd/nand/raw/lpc32xx_mlc.c b/drivers/mtd/nand/raw/lpc32xx_mlc.c
index d03486dc41150..dbeb2cbb93f42 100644
--- a/drivers/mtd/nand/raw/lpc32xx_mlc.c
+++ b/drivers/mtd/nand/raw/lpc32xx_mlc.c
@@ -414,8 +414,7 @@ static int lpc32xx_xmit_dma(struct mtd_info *mtd, void *mem, int len,
 	}
 
 	init_completion(&host->comp_dma);
-	desc->callback = lpc32xx_dma_complete_func;
-	desc->callback_param = &host->comp_dma;
+	dmaengine_desc_set_callback(desc, lpc32xx_dma_complete_func, NULL, &host->comp_dma);
 
 	dmaengine_submit(desc);
 	dma_async_issue_pending(host->dma_chan);
diff --git a/drivers/mtd/nand/raw/lpc32xx_slc.c b/drivers/mtd/nand/raw/lpc32xx_slc.c
index 638267d44360d..235e34b94b5df 100644
--- a/drivers/mtd/nand/raw/lpc32xx_slc.c
+++ b/drivers/mtd/nand/raw/lpc32xx_slc.c
@@ -460,8 +460,7 @@ static int lpc32xx_xmit_dma(struct mtd_info *mtd, dma_addr_t dma,
 	}
 
 	init_completion(&host->comp);
-	desc->callback = lpc32xx_dma_complete_func;
-	desc->callback_param = &host->comp;
+	dmaengine_desc_set_callback(desc, lpc32xx_dma_complete_func, NULL, &host->comp);
 
 	dmaengine_submit(desc);
 	dma_async_issue_pending(host->dma_chan);
diff --git a/drivers/mtd/nand/raw/omap2.c b/drivers/mtd/nand/raw/omap2.c
index 4fa89aee934eb..3c486b33c157b 100644
--- a/drivers/mtd/nand/raw/omap2.c
+++ b/drivers/mtd/nand/raw/omap2.c
@@ -405,8 +405,7 @@ static inline int omap_nand_dma_transfer(struct nand_chip *chip,
 	if (!tx)
 		goto out_copy_unmap;
 
-	tx->callback = omap_nand_dma_callback;
-	tx->callback_param = &info->comp;
+	dmaengine_desc_set_callback(tx, omap_nand_dma_callback, NULL, &info->comp);
 	dmaengine_submit(tx);
 
 	init_completion(&info->comp);
diff --git a/drivers/mtd/nand/raw/sh_flctl.c b/drivers/mtd/nand/raw/sh_flctl.c
index 0497801d7059f..5980fdac326dc 100644
--- a/drivers/mtd/nand/raw/sh_flctl.c
+++ b/drivers/mtd/nand/raw/sh_flctl.c
@@ -407,8 +407,7 @@ static int flctl_dma_fifo0_transfer(struct sh_flctl *flctl, unsigned long *buf,
 		reg |= DREQ0EN;
 		writel(reg, FLINTDMACR(flctl));
 
-		desc->callback = flctl_dma_complete;
-		desc->callback_param = flctl;
+		dmaengine_desc_set_callback(desc, flctl_dma_complete, NULL, flctl);
 		cookie = dmaengine_submit(desc);
 		if (dma_submit_error(cookie)) {
 			ret = dma_submit_error(cookie);
diff --git a/drivers/mtd/nand/raw/stm32_fmc2_nand.c b/drivers/mtd/nand/raw/stm32_fmc2_nand.c
index 9f42f8ab3212a..f2da3a4c2dd03 100644
--- a/drivers/mtd/nand/raw/stm32_fmc2_nand.c
+++ b/drivers/mtd/nand/raw/stm32_fmc2_nand.c
@@ -893,8 +893,8 @@ static int stm32_fmc2_nfc_xfer(struct nand_chip *chip, const u8 *buf,
 
 	reinit_completion(&nfc->dma_data_complete);
 	reinit_completion(&nfc->complete);
-	desc_data->callback = stm32_fmc2_nfc_dma_callback;
-	desc_data->callback_param = &nfc->dma_data_complete;
+	dmaengine_desc_set_callback(desc_data, stm32_fmc2_nfc_dma_callback,
+				    NULL, &nfc->dma_data_complete);
 	ret = dma_submit_error(dmaengine_submit(desc_data));
 	if (ret)
 		goto err_unmap_data;
@@ -919,8 +919,8 @@ static int stm32_fmc2_nfc_xfer(struct nand_chip *chip, const u8 *buf,
 		}
 
 		reinit_completion(&nfc->dma_ecc_complete);
-		desc_ecc->callback = stm32_fmc2_nfc_dma_callback;
-		desc_ecc->callback_param = &nfc->dma_ecc_complete;
+		dmaengine_desc_set_callback(desc_ecc, stm32_fmc2_nfc_dma_callback,
+					    NULL, &nfc->dma_ecc_complete);
 		ret = dma_submit_error(dmaengine_submit(desc_ecc));
 		if (ret)
 			goto err_unmap_data;
-- 
2.43.0


                 reply	other threads:[~2026-11-02 18:14 UTC|newest]

Thread overview: [no followups] expand[flat|nested]  mbox.gz  Atom feed

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=20261102181406.3994422-1-Frank.Li@oss.nxp.com \
    --to=frank.li@oss.nxp.com \
    --cc=Frank.Li@nxp.com \
    --cc=alexandre.belloni@bootlin.com \
    --cc=alexandre.torgue@foss.st.com \
    --cc=alok.a.tiwari@oracle.com \
    --cc=claudiu.beznea@tuxon.dev \
    --cc=han.xu@nxp.com \
    --cc=hemanth.selam@gmail.com \
    --cc=imx@lists.linux.dev \
    --cc=keguang.zhang@gmail.com \
    --cc=kyungmin.park@samsung.com \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-mips@vger.kernel.org \
    --cc=linux-mtd@lists.infradead.org \
    --cc=linux-stm32@st-md-mailman.stormreply.com \
    --cc=mcoquelin.stm32@gmail.com \
    --cc=miquel.raynal@bootlin.com \
    --cc=nichen@iscas.ac.cn \
    --cc=nicolas.ferre@microchip.com \
    --cc=pengpeng@iscas.ac.cn \
    --cc=piotr.wojtaszczyk@timesys.com \
    --cc=richard@nod.at \
    --cc=robh@kernel.org \
    --cc=rosenp@gmail.com \
    --cc=runyu.xiao@seu.edu.cn \
    --cc=triet.hoang.dev@gmail.com \
    --cc=tudor.ambarus@linaro.org \
    --cc=u.kleine-koenig@baylibre.com \
    --cc=vigneshr@ti.com \
    --cc=vkoul@kernel.org \
    --cc=vulab@iscas.ac.cn \
    --cc=vz@mleia.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®