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: Andy Shevchenko <andriy.shevchenko@linux.intel.com> Signed-off-by: Vinod Koul <vinod.koul@intel.com>
This commit is contained in:
parent
ac02979413
commit
390c49f717
@ -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,
|
|||||||
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;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user