summaryrefslogtreecommitdiffstats
path: root/kernel/sound/usb/stream.c
diff options
context:
space:
mode:
Diffstat (limited to 'kernel/sound/usb/stream.c')
-rw-r--r--kernel/sound/usb/stream.c11
1 files changed, 10 insertions, 1 deletions
diff --git a/kernel/sound/usb/stream.c b/kernel/sound/usb/stream.c
index 310a3822d..8ee14f236 100644
--- a/kernel/sound/usb/stream.c
+++ b/kernel/sound/usb/stream.c
@@ -92,6 +92,7 @@ static void snd_usb_init_substream(struct snd_usb_stream *as,
subs->direction = stream;
subs->dev = as->chip->dev;
subs->txfr_quirk = as->chip->txfr_quirk;
+ subs->tx_length_quirk = as->chip->tx_length_quirk;
subs->speed = snd_usb_get_speed(subs->dev);
subs->pkt_offset_adj = 0;
@@ -377,7 +378,15 @@ int snd_usb_add_audio_stream(struct snd_usb_audio *chip,
snd_usb_init_substream(as, stream, fp);
- list_add(&as->list, &chip->pcm_list);
+ /*
+ * Keep using head insertion for M-Audio Audiophile USB (tm) which has a
+ * fix to swap capture stream order in conf/cards/USB-audio.conf
+ */
+ if (chip->usb_id == USB_ID(0x0763, 0x2003))
+ list_add(&as->list, &chip->pcm_list);
+ else
+ list_add_tail(&as->list, &chip->pcm_list);
+
chip->pcm_devs++;
snd_usb_proc_pcm_format_add(as);