]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
dmaengine: qcom: bam_dma: use sg_nents_for_dma() helper
authorAndy Shevchenko <andriy.shevchenko@linux.intel.com>
Thu, 8 Jan 2026 10:50:21 +0000 (11:50 +0100)
committerVinod Koul <vkoul@kernel.org>
Fri, 9 Jan 2026 03:06:00 +0000 (08:36 +0530)
Instead of open coded variant let's use recently introduced helper.

Reviewed-by: Bjorn Andersson <andersson@kernel.org>
Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Link: https://patch.msgid.link/20260108105619.3513561-11-andriy.shevchenko@linux.intel.com
Signed-off-by: Vinod Koul <vkoul@kernel.org>
drivers/dma/qcom/bam_dma.c

index bcd8de9a9a12621a36b49c31bff96f474468be06..e184cebbface333909b3e27c71bdf48ad7f730b8 100644 (file)
@@ -653,22 +653,17 @@ static struct dma_async_tx_descriptor *bam_prep_slave_sg(struct dma_chan *chan,
        struct scatterlist *sg;
        u32 i;
        struct bam_desc_hw *desc;
-       unsigned int num_alloc = 0;
-
+       unsigned int num_alloc;
 
        if (!is_slave_direction(direction)) {
                dev_err(bdev->dev, "invalid dma direction\n");
                return NULL;
        }
 
-       /* calculate number of required entries */
-       for_each_sg(sgl, sg, sg_len, i)
-               num_alloc += DIV_ROUND_UP(sg_dma_len(sg), BAM_FIFO_SIZE);
-
        /* allocate enough room to accommodate the number of entries */
+       num_alloc = sg_nents_for_dma(sgl, sg_len, BAM_FIFO_SIZE);
        async_desc = kzalloc(struct_size(async_desc, desc, num_alloc),
                             GFP_NOWAIT);
-
        if (!async_desc)
                return NULL;