#include "digi00x.h"
#define READY_TIMEOUT_MS …
const unsigned int snd_dg00x_stream_rates[SND_DG00X_RATE_COUNT] = …;
const unsigned int
snd_dg00x_stream_pcm_channels[SND_DG00X_RATE_COUNT] = …;
int snd_dg00x_stream_get_local_rate(struct snd_dg00x *dg00x, unsigned int *rate)
{ … }
int snd_dg00x_stream_set_local_rate(struct snd_dg00x *dg00x, unsigned int rate)
{ … }
int snd_dg00x_stream_get_clock(struct snd_dg00x *dg00x,
enum snd_dg00x_clock *clock)
{ … }
int snd_dg00x_stream_check_external_clock(struct snd_dg00x *dg00x, bool *detect)
{ … }
int snd_dg00x_stream_get_external_rate(struct snd_dg00x *dg00x,
unsigned int *rate)
{ … }
static void finish_session(struct snd_dg00x *dg00x)
{ … }
static int begin_session(struct snd_dg00x *dg00x)
{ … }
static int keep_resources(struct snd_dg00x *dg00x, struct amdtp_stream *stream,
unsigned int rate)
{ … }
static int init_stream(struct snd_dg00x *dg00x, struct amdtp_stream *s)
{ … }
static void destroy_stream(struct snd_dg00x *dg00x, struct amdtp_stream *s)
{ … }
int snd_dg00x_stream_init_duplex(struct snd_dg00x *dg00x)
{ … }
void snd_dg00x_stream_destroy_duplex(struct snd_dg00x *dg00x)
{ … }
int snd_dg00x_stream_reserve_duplex(struct snd_dg00x *dg00x, unsigned int rate,
unsigned int frames_per_period,
unsigned int frames_per_buffer)
{ … }
int snd_dg00x_stream_start_duplex(struct snd_dg00x *dg00x)
{ … }
void snd_dg00x_stream_stop_duplex(struct snd_dg00x *dg00x)
{ … }
void snd_dg00x_stream_update_duplex(struct snd_dg00x *dg00x)
{ … }
void snd_dg00x_stream_lock_changed(struct snd_dg00x *dg00x)
{ … }
int snd_dg00x_stream_lock_try(struct snd_dg00x *dg00x)
{ … }
void snd_dg00x_stream_lock_release(struct snd_dg00x *dg00x)
{ … }