0001
0002
0003
0004
0005
0006
0007
0008
0009 #ifndef __SEQ_OSS_WRITEQ_H
0010 #define __SEQ_OSS_WRITEQ_H
0011
0012 #include "seq_oss_device.h"
0013
0014
0015 struct seq_oss_writeq {
0016 struct seq_oss_devinfo *dp;
0017 int maxlen;
0018 abstime_t sync_time;
0019 int sync_event_put;
0020 wait_queue_head_t sync_sleep;
0021 spinlock_t sync_lock;
0022 };
0023
0024
0025
0026
0027
0028 struct seq_oss_writeq *snd_seq_oss_writeq_new(struct seq_oss_devinfo *dp, int maxlen);
0029 void snd_seq_oss_writeq_delete(struct seq_oss_writeq *q);
0030 void snd_seq_oss_writeq_clear(struct seq_oss_writeq *q);
0031 int snd_seq_oss_writeq_sync(struct seq_oss_writeq *q);
0032 void snd_seq_oss_writeq_wakeup(struct seq_oss_writeq *q, abstime_t time);
0033 int snd_seq_oss_writeq_get_free_size(struct seq_oss_writeq *q);
0034 void snd_seq_oss_writeq_set_output(struct seq_oss_writeq *q, int size);
0035
0036
0037 #endif