#include <xen/xenbus.h>
#include <xen/interface/io/sndif.h>
#include "xen_snd_front.h"
#include "xen_snd_front_cfg.h"
#define VSND_MAX_STREAM …
struct cfg_hw_sample_rate { … };
static const struct cfg_hw_sample_rate CFG_HW_SUPPORTED_RATES[] = …;
struct cfg_hw_sample_format { … };
static const struct cfg_hw_sample_format CFG_HW_SUPPORTED_FORMATS[] = …;
static void cfg_hw_rates(char *list, unsigned int len,
const char *path, struct snd_pcm_hardware *pcm_hw)
{ … }
static void cfg_formats(char *list, unsigned int len,
const char *path, struct snd_pcm_hardware *pcm_hw)
{ … }
#define MAX_BUFFER_SIZE …
#define MIN_PERIOD_SIZE …
#define MAX_PERIOD_SIZE …
#define USE_FORMATS …
#define USE_RATE …
#define USE_RATE_MIN …
#define USE_RATE_MAX …
#define USE_CHANNELS_MIN …
#define USE_CHANNELS_MAX …
#define USE_PERIODS_MIN …
#define USE_PERIODS_MAX …
static const struct snd_pcm_hardware SND_DRV_PCM_HW_DEFAULT = …;
static void cfg_read_pcm_hw(const char *path,
struct snd_pcm_hardware *parent_pcm_hw,
struct snd_pcm_hardware *pcm_hw)
{ … }
static int cfg_get_stream_type(const char *path, int index,
int *num_pb, int *num_cap)
{ … }
static int cfg_stream(struct xen_snd_front_info *front_info,
struct xen_front_cfg_pcm_instance *pcm_instance,
const char *path, int index, int *cur_pb, int *cur_cap,
int *stream_cnt)
{ … }
static int cfg_device(struct xen_snd_front_info *front_info,
struct xen_front_cfg_pcm_instance *pcm_instance,
struct snd_pcm_hardware *parent_pcm_hw,
const char *path, int node_index, int *stream_cnt)
{ … }
int xen_snd_front_cfg_card(struct xen_snd_front_info *front_info,
int *stream_cnt)
{ … }