123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657 |
- /*
- * u_uac1.h -- interface to USB gadget "ALSA AUDIO" utilities
- *
- * Copyright (C) 2008 Bryan Wu <cooloney@kernel.org>
- * Copyright (C) 2008 Analog Devices, Inc
- *
- * Enter bugs at http://blackfin.uclinux.org/
- *
- * Licensed under the GPL-2 or later.
- */
- #ifndef __U_AUDIO_H
- #define __U_AUDIO_H
- #include <linux/device.h>
- #include <linux/err.h>
- #include <linux/usb/audio.h>
- #include <linux/usb/composite.h>
- #include <sound/core.h>
- #include <sound/pcm.h>
- #include <sound/pcm_params.h>
- #include "gadget_chips.h"
- /*
- * This represents the USB side of an audio card device, managed by a USB
- * function which provides control and stream interfaces.
- */
- struct gaudio_snd_dev {
- struct gaudio *card;
- struct file *filp;
- struct snd_pcm_substream *substream;
- int access;
- int format;
- int channels;
- int rate;
- };
- struct gaudio {
- struct usb_function func;
- struct usb_gadget *gadget;
- /* ALSA sound device interfaces */
- struct gaudio_snd_dev control;
- struct gaudio_snd_dev playback;
- struct gaudio_snd_dev capture;
- /* TODO */
- };
- int gaudio_setup(struct gaudio *card);
- void gaudio_cleanup(void);
- #endif /* __U_AUDIO_H */
|