54 lines
1.5 KiB
Diff
54 lines
1.5 KiB
Diff
|
From 51fa7004613fc6a4567938f0a8358346ca602b5f Mon Sep 17 00:00:00 2001
|
||
|
From: Martin Sperl <kernel@martin.sperl.org>
|
||
|
Date: Wed, 16 Mar 2016 12:24:58 -0700
|
||
|
Subject: [PATCH 396/423] dmaengine: bcm2835: move cyclic member from
|
||
|
bcm2835_chan into bcm2835_desc
|
||
|
|
||
|
In preparation to consolidating code we move the cyclic member
|
||
|
into the bcm_2835_desc structure.
|
||
|
|
||
|
Signed-off-by: Martin Sperl <kernel@martin.sperl.org>
|
||
|
Reviewed-by: Eric Anholt <eric@anholt.net>
|
||
|
Signed-off-by: Eric Anholt <eric@anholt.net>
|
||
|
Signed-off-by: Vinod Koul <vinod.koul@intel.com>
|
||
|
---
|
||
|
drivers/dma/bcm2835-dma.c | 6 +++---
|
||
|
1 file changed, 3 insertions(+), 3 deletions(-)
|
||
|
|
||
|
--- a/drivers/dma/bcm2835-dma.c
|
||
|
+++ b/drivers/dma/bcm2835-dma.c
|
||
|
@@ -73,7 +73,6 @@ struct bcm2835_chan {
|
||
|
struct list_head node;
|
||
|
|
||
|
struct dma_slave_config cfg;
|
||
|
- bool cyclic;
|
||
|
unsigned int dreq;
|
||
|
|
||
|
int ch;
|
||
|
@@ -93,6 +92,8 @@ struct bcm2835_desc {
|
||
|
|
||
|
unsigned int frames;
|
||
|
size_t size;
|
||
|
+
|
||
|
+ bool cyclic;
|
||
|
};
|
||
|
|
||
|
#define BCM2835_DMA_CS 0x00
|
||
|
@@ -377,8 +378,6 @@ static void bcm2835_dma_issue_pending(st
|
||
|
struct bcm2835_chan *c = to_bcm2835_dma_chan(chan);
|
||
|
unsigned long flags;
|
||
|
|
||
|
- c->cyclic = true; /* Nothing else is implemented */
|
||
|
-
|
||
|
spin_lock_irqsave(&c->vc.lock, flags);
|
||
|
if (vchan_issue_pending(&c->vc) && !c->desc)
|
||
|
bcm2835_dma_start_desc(c);
|
||
|
@@ -432,6 +431,7 @@ static struct dma_async_tx_descriptor *b
|
||
|
d->c = c;
|
||
|
d->dir = direction;
|
||
|
d->frames = buf_len / period_len;
|
||
|
+ d->cyclic = true;
|
||
|
|
||
|
d->cb_list = kcalloc(d->frames, sizeof(*d->cb_list), GFP_KERNEL);
|
||
|
if (!d->cb_list) {
|