aboutsummaryrefslogtreecommitdiffstats
path: root/sound/usb/usbaudio.h
diff options
context:
space:
mode:
Diffstat (limited to 'sound/usb/usbaudio.h')
-rw-r--r--sound/usb/usbaudio.h16
1 files changed, 15 insertions, 1 deletions
diff --git a/sound/usb/usbaudio.h b/sound/usb/usbaudio.h
index 40ba8115fb81..9d8cea48fc5f 100644
--- a/sound/usb/usbaudio.h
+++ b/sound/usb/usbaudio.h
@@ -125,6 +125,7 @@ struct snd_usb_audio {
125 struct snd_card *card; 125 struct snd_card *card;
126 u32 usb_id; 126 u32 usb_id;
127 int shutdown; 127 int shutdown;
128 unsigned int txfr_quirk:1; /* Subframe boundaries on transfers */
128 int num_interfaces; 129 int num_interfaces;
129 int num_suspended_intf; 130 int num_suspended_intf;
130 131
@@ -159,8 +160,8 @@ enum quirk_type {
159 QUIRK_AUDIO_STANDARD_INTERFACE, 160 QUIRK_AUDIO_STANDARD_INTERFACE,
160 QUIRK_AUDIO_FIXED_ENDPOINT, 161 QUIRK_AUDIO_FIXED_ENDPOINT,
161 QUIRK_AUDIO_EDIROL_UA1000, 162 QUIRK_AUDIO_EDIROL_UA1000,
162 QUIRK_AUDIO_EDIROL_UA101,
163 QUIRK_AUDIO_EDIROL_UAXX, 163 QUIRK_AUDIO_EDIROL_UAXX,
164 QUIRK_AUDIO_ALIGN_TRANSFER,
164 165
165 QUIRK_TYPE_COUNT 166 QUIRK_TYPE_COUNT
166}; 167};
@@ -209,6 +210,16 @@ struct snd_usb_midi_endpoint_info {
209/* 210/*
210 */ 211 */
211 212
213/*E-mu USB samplerate control quirk*/
214enum {
215 EMU_QUIRK_SR_44100HZ = 0,
216 EMU_QUIRK_SR_48000HZ,
217 EMU_QUIRK_SR_88200HZ,
218 EMU_QUIRK_SR_96000HZ,
219 EMU_QUIRK_SR_176400HZ,
220 EMU_QUIRK_SR_192000HZ
221};
222
212#define combine_word(s) ((*(s)) | ((unsigned int)(s)[1] << 8)) 223#define combine_word(s) ((*(s)) | ((unsigned int)(s)[1] << 8))
213#define combine_triple(s) (combine_word(s) | ((unsigned int)(s)[2] << 16)) 224#define combine_triple(s) (combine_word(s) | ((unsigned int)(s)[2] << 16))
214#define combine_quad(s) (combine_triple(s) | ((unsigned int)(s)[3] << 24)) 225#define combine_quad(s) (combine_triple(s) | ((unsigned int)(s)[3] << 24))
@@ -234,6 +245,9 @@ void snd_usbmidi_input_stop(struct list_head* p);
234void snd_usbmidi_input_start(struct list_head* p); 245void snd_usbmidi_input_start(struct list_head* p);
235void snd_usbmidi_disconnect(struct list_head *p); 246void snd_usbmidi_disconnect(struct list_head *p);
236 247
248void snd_emuusb_set_samplerate(struct snd_usb_audio *chip,
249 unsigned char samplerate_id);
250
237/* 251/*
238 * retrieve usb_interface descriptor from the host interface 252 * retrieve usb_interface descriptor from the host interface
239 * (conditional for compatibility with the older API) 253 * (conditional for compatibility with the older API)