[PATCH 1/1] mtd: use dmaengine_desc_set_callback()
Frank.Li at oss.nxp.com
Frank.Li at oss.nxp.com
Mon Nov 2 10:13:41 PST 2026
From: Frank Li <Frank.Li at 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 at 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
More information about the linux-arm-kernel
mailing list