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®