mirror of
https://github.com/torvalds/linux.git
synced 2026-03-08 03:44:45 +01:00
dmaengine: sa11x0: use sg_nents_for_dma() helper
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-12-andriy.shevchenko@linux.intel.com Signed-off-by: Vinod Koul <vkoul@kernel.org>
This commit is contained in:
parent
107fdf0c4e
commit
d778566101
1 changed files with 2 additions and 4 deletions
|
|
@ -526,7 +526,7 @@ static struct dma_async_tx_descriptor *sa11x0_dma_prep_slave_sg(
|
|||
struct sa11x0_dma_chan *c = to_sa11x0_dma_chan(chan);
|
||||
struct sa11x0_dma_desc *txd;
|
||||
struct scatterlist *sgent;
|
||||
unsigned i, j = sglen;
|
||||
unsigned int i, j;
|
||||
size_t size = 0;
|
||||
|
||||
/* SA11x0 channels can only operate in their native direction */
|
||||
|
|
@ -542,10 +542,7 @@ static struct dma_async_tx_descriptor *sa11x0_dma_prep_slave_sg(
|
|||
|
||||
for_each_sg(sg, sgent, sglen, i) {
|
||||
dma_addr_t addr = sg_dma_address(sgent);
|
||||
unsigned int len = sg_dma_len(sgent);
|
||||
|
||||
if (len > DMA_MAX_SIZE)
|
||||
j += DIV_ROUND_UP(len, DMA_MAX_SIZE & ~DMA_ALIGN) - 1;
|
||||
if (addr & DMA_ALIGN) {
|
||||
dev_dbg(chan->device->dev, "vchan %p: bad buffer alignment: %pad\n",
|
||||
&c->vc, &addr);
|
||||
|
|
@ -553,6 +550,7 @@ static struct dma_async_tx_descriptor *sa11x0_dma_prep_slave_sg(
|
|||
}
|
||||
}
|
||||
|
||||
j = sg_nents_for_dma(sg, sglen, DMA_MAX_SIZE & ~DMA_ALIGN);
|
||||
txd = kzalloc(struct_size(txd, sg, j), GFP_ATOMIC);
|
||||
if (!txd) {
|
||||
dev_dbg(chan->device->dev, "vchan %p: kzalloc failed\n", &c->vc);
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue