Move dw_hdma_set_callback_result() before dw_edma_device_tx_status() to
avoid forward declear.

No functional change.

Signed-off-by: Frank Li <[email protected]>
---
 drivers/dma/dw-edma/dw-edma-core.c | 50 +++++++++++++++++++-------------------
 1 file changed, 25 insertions(+), 25 deletions(-)

diff --git a/drivers/dma/dw-edma/dw-edma-core.c 
b/drivers/dma/dw-edma/dw-edma-core.c
index 
1c8aef5e03b0e2c93aec9f1cb0588b4e8b1508d9..9fb7ae4001207b2ccb058d6efa9856dded379b8f
 100644
--- a/drivers/dma/dw-edma/dw-edma-core.c
+++ b/drivers/dma/dw-edma/dw-edma-core.c
@@ -106,6 +106,31 @@ static int dw_edma_start_transfer(struct dw_edma_chan 
*chan)
        return 1;
 }
 
+static void dw_hdma_set_callback_result(struct virt_dma_desc *vd,
+                                       enum dmaengine_tx_result result)
+{
+       u32 residue = 0;
+       struct dw_edma_desc *desc;
+       struct dmaengine_result *res;
+
+       if (!vd->tx.callback_result)
+               return;
+
+       desc = vd2dw_edma_desc(vd);
+       if (desc) {
+               residue = desc->alloc_sz;
+
+               if (result == DMA_TRANS_NOERROR)
+                       residue -= desc->burst[desc->start_burst - 1].xfer_sz;
+               else if (desc->done_burst)
+                       residue -= desc->burst[desc->done_burst - 1].xfer_sz;
+       }
+
+       res = &vd->tx_result;
+       res->result = result;
+       res->residue = residue;
+}
+
 static void dw_edma_device_caps(struct dma_chan *dchan,
                                struct dma_slave_caps *caps)
 {
@@ -488,31 +513,6 @@ dw_edma_device_prep_interleaved_dma(struct dma_chan *dchan,
        return dw_edma_device_transfer(&xfer, dw_edma_device_get_config(dchan, 
NULL));
 }
 
-static void dw_hdma_set_callback_result(struct virt_dma_desc *vd,
-                                       enum dmaengine_tx_result result)
-{
-       u32 residue = 0;
-       struct dw_edma_desc *desc;
-       struct dmaengine_result *res;
-
-       if (!vd->tx.callback_result)
-               return;
-
-       desc = vd2dw_edma_desc(vd);
-       if (desc) {
-               residue = desc->alloc_sz;
-
-               if (result == DMA_TRANS_NOERROR)
-                       residue -= desc->burst[desc->start_burst - 1].xfer_sz;
-               else if (desc->done_burst)
-                       residue -= desc->burst[desc->done_burst - 1].xfer_sz;
-       }
-
-       res = &vd->tx_result;
-       res->result = result;
-       res->residue = residue;
-}
-
 static void dw_edma_done_interrupt(struct dw_edma_chan *chan)
 {
        struct dw_edma_desc *desc;

-- 
2.34.1


Reply via email to