aboutsummaryrefslogtreecommitdiffstats
path: root/sound/aoa/soundbus/i2sbus/i2sbus.h
diff options
context:
space:
mode:
Diffstat (limited to 'sound/aoa/soundbus/i2sbus/i2sbus.h')
-rw-r--r--sound/aoa/soundbus/i2sbus/i2sbus.h6
1 files changed, 6 insertions, 0 deletions
diff --git a/sound/aoa/soundbus/i2sbus/i2sbus.h b/sound/aoa/soundbus/i2sbus/i2sbus.h
index ec20ee615d7f..ff29654782c9 100644
--- a/sound/aoa/soundbus/i2sbus/i2sbus.h
+++ b/sound/aoa/soundbus/i2sbus/i2sbus.h
@@ -10,6 +10,7 @@
10#include <linux/interrupt.h> 10#include <linux/interrupt.h>
11#include <linux/spinlock.h> 11#include <linux/spinlock.h>
12#include <linux/mutex.h> 12#include <linux/mutex.h>
13#include <linux/completion.h>
13 14
14#include <sound/pcm.h> 15#include <sound/pcm.h>
15 16
@@ -34,6 +35,7 @@ struct dbdma_command_mem {
34 void *space; 35 void *space;
35 int size; 36 int size;
36 u32 running:1; 37 u32 running:1;
38 u32 stopping:1;
37}; 39};
38 40
39struct pcm_info { 41struct pcm_info {
@@ -45,6 +47,7 @@ struct pcm_info {
45 u32 frame_count; 47 u32 frame_count;
46 struct dbdma_command_mem dbdma_ring; 48 struct dbdma_command_mem dbdma_ring;
47 volatile struct dbdma_regs __iomem *dbdma; 49 volatile struct dbdma_regs __iomem *dbdma;
50 struct completion *stop_completion;
48}; 51};
49 52
50enum { 53enum {
@@ -101,6 +104,9 @@ i2sbus_tx_intr(int irq, void *devid);
101extern irqreturn_t 104extern irqreturn_t
102i2sbus_rx_intr(int irq, void *devid); 105i2sbus_rx_intr(int irq, void *devid);
103 106
107extern void i2sbus_wait_for_stop_both(struct i2sbus_dev *i2sdev);
108extern void i2sbus_pcm_prepare_both(struct i2sbus_dev *i2sdev);
109
104/* control specific functions */ 110/* control specific functions */
105extern int i2sbus_control_init(struct macio_dev* dev, 111extern int i2sbus_control_init(struct macio_dev* dev,
106 struct i2sbus_control **c); 112 struct i2sbus_control **c);