#include "cx231xx.h"
#include <linux/kernel.h>
#include <linux/init.h>
#include <linux/sound.h>
#include <linux/spinlock.h>
#include <linux/soundcard.h>
#include <linux/slab.h>
#include <linux/module.h>
#include <sound/core.h>
#include <sound/pcm.h>
#include <sound/pcm_params.h>
#include <sound/info.h>
#include <sound/initval.h>
#include <sound/control.h>
#include <media/v4l2-common.h>
static int debug;
module_param(debug, int, 0644);
MODULE_PARM_DESC(…) …;
static int index[SNDRV_CARDS] = …;
static int cx231xx_isoc_audio_deinit(struct cx231xx *dev)
{ … }
static int cx231xx_bulk_audio_deinit(struct cx231xx *dev)
{ … }
static void cx231xx_audio_isocirq(struct urb *urb)
{ … }
static void cx231xx_audio_bulkirq(struct urb *urb)
{ … }
static int cx231xx_init_audio_isoc(struct cx231xx *dev)
{ … }
static int cx231xx_init_audio_bulk(struct cx231xx *dev)
{ … }
static const struct snd_pcm_hardware snd_cx231xx_hw_capture = …;
static int snd_cx231xx_capture_open(struct snd_pcm_substream *substream)
{ … }
static int snd_cx231xx_pcm_close(struct snd_pcm_substream *substream)
{ … }
static int snd_cx231xx_prepare(struct snd_pcm_substream *substream)
{ … }
static void audio_trigger(struct work_struct *work)
{ … }
static int snd_cx231xx_capture_trigger(struct snd_pcm_substream *substream,
int cmd)
{ … }
static snd_pcm_uframes_t snd_cx231xx_capture_pointer(struct snd_pcm_substream
*substream)
{ … }
static const struct snd_pcm_ops snd_cx231xx_pcm_capture = …;
static int cx231xx_audio_init(struct cx231xx *dev)
{ … }
static int cx231xx_audio_fini(struct cx231xx *dev)
{ … }
static struct cx231xx_ops audio_ops = …;
static int __init cx231xx_alsa_register(void)
{ … }
static void __exit cx231xx_alsa_unregister(void)
{ … }
MODULE_LICENSE(…) …;
MODULE_AUTHOR(…) …;
MODULE_DESCRIPTION(…) …;
module_init(…) …;
module_exit(cx231xx_alsa_unregister);