Commit 390c49f7 authored by Andy Shevchenko's avatar Andy Shevchenko Committed by Vinod Koul

dmaengine: idma64: use local variable to index descriptor

Since a local variable contains the number of hardware desriptors at the
beginning of idma64_desc_fill() we may use it to index the last descriptor as
well.
Signed-off-by: default avatarAndy Shevchenko <andriy.shevchenko@linux.intel.com>
Signed-off-by: default avatarVinod Koul <vinod.koul@intel.com>
parent ac029794
...@@ -274,10 +274,10 @@ static void idma64_desc_fill(struct idma64_chan *idma64c, ...@@ -274,10 +274,10 @@ static void idma64_desc_fill(struct idma64_chan *idma64c,
struct idma64_desc *desc) struct idma64_desc *desc)
{ {
struct dma_slave_config *config = &idma64c->config; struct dma_slave_config *config = &idma64c->config;
struct idma64_hw_desc *hw = &desc->hw[desc->ndesc - 1]; unsigned int i = desc->ndesc;
struct idma64_hw_desc *hw = &desc->hw[i - 1];
struct idma64_lli *lli = hw->lli; struct idma64_lli *lli = hw->lli;
u64 llp = 0; u64 llp = 0;
unsigned int i = desc->ndesc;
/* Fill the hardware descriptors and link them to a list */ /* Fill the hardware descriptors and link them to a list */
do { do {
...@@ -287,7 +287,7 @@ static void idma64_desc_fill(struct idma64_chan *idma64c, ...@@ -287,7 +287,7 @@ static void idma64_desc_fill(struct idma64_chan *idma64c,
desc->length += hw->len; desc->length += hw->len;
} while (i); } while (i);
/* Trigger interrupt after last block */ /* Trigger an interrupt after the last block is transfered */
lli->ctllo |= IDMA64C_CTLL_INT_EN; lli->ctllo |= IDMA64C_CTLL_INT_EN;
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment