diff options
author | Clemens Ladisch <clemens@ladisch.de> | 2005-11-21 10:40:00 -0500 |
---|---|---|
committer | Jaroslav Kysela <perex@suse.cz> | 2006-01-03 06:29:32 -0500 |
commit | 1f14a657d87aa0e1a6c08c2e31588fbca34a8844 (patch) | |
tree | 74fde07268a93952b1b9caa79efbc42042bb501f /sound | |
parent | 2e5b9567f7444673a93cbacdcbeb3feacdb4914f (diff) |
[ALSA] usb-audio: fix Edirol UA-20 support
Modules: USB generic driver
Somebody at Edirol fucked up and released a new revision of the UA-20
without class-specific descriptors, so now we have to hard-code the
sample format.
Signed-off-by: Clemens Ladisch <clemens@ladisch.de>
Diffstat (limited to 'sound')
-rw-r--r-- | sound/usb/usbquirks.h | 40 |
1 files changed, 37 insertions, 3 deletions
diff --git a/sound/usb/usbquirks.h b/sound/usb/usbquirks.h index 0e0575425797..6190ada00e38 100644 --- a/sound/usb/usbquirks.h +++ b/sound/usb/usbquirks.h | |||
@@ -665,16 +665,50 @@ YAMAHA_DEVICE(0x7010, "UB99"), | |||
665 | .type = QUIRK_COMPOSITE, | 665 | .type = QUIRK_COMPOSITE, |
666 | .data = (const struct snd_usb_audio_quirk[]) { | 666 | .data = (const struct snd_usb_audio_quirk[]) { |
667 | { | 667 | { |
668 | .ifnum = 0, | ||
669 | .type = QUIRK_IGNORE_INTERFACE | ||
670 | }, | ||
671 | { | ||
668 | .ifnum = 1, | 672 | .ifnum = 1, |
669 | .type = QUIRK_AUDIO_STANDARD_INTERFACE | 673 | .type = QUIRK_AUDIO_FIXED_ENDPOINT, |
674 | .data = & (const struct audioformat) { | ||
675 | .format = SNDRV_PCM_FORMAT_S24_3LE, | ||
676 | .channels = 2, | ||
677 | .iface = 1, | ||
678 | .altsetting = 1, | ||
679 | .altset_idx = 1, | ||
680 | .attributes = 0, | ||
681 | .endpoint = 0x01, | ||
682 | .ep_attr = 0x01, | ||
683 | .rates = SNDRV_PCM_RATE_CONTINUOUS, | ||
684 | .rate_min = 44100, | ||
685 | .rate_max = 44100, | ||
686 | } | ||
670 | }, | 687 | }, |
671 | { | 688 | { |
672 | .ifnum = 2, | 689 | .ifnum = 2, |
673 | .type = QUIRK_AUDIO_STANDARD_INTERFACE | 690 | .type = QUIRK_AUDIO_FIXED_ENDPOINT, |
691 | .data = & (const struct audioformat) { | ||
692 | .format = SNDRV_PCM_FORMAT_S24_3LE, | ||
693 | .channels = 2, | ||
694 | .iface = 2, | ||
695 | .altsetting = 1, | ||
696 | .altset_idx = 1, | ||
697 | .attributes = 0, | ||
698 | .endpoint = 0x82, | ||
699 | .ep_attr = 0x01, | ||
700 | .rates = SNDRV_PCM_RATE_CONTINUOUS, | ||
701 | .rate_min = 44100, | ||
702 | .rate_max = 44100, | ||
703 | } | ||
674 | }, | 704 | }, |
675 | { | 705 | { |
676 | .ifnum = 3, | 706 | .ifnum = 3, |
677 | .type = QUIRK_MIDI_STANDARD_INTERFACE | 707 | .type = QUIRK_MIDI_FIXED_ENDPOINT, |
708 | .data = & (const struct snd_usb_midi_endpoint_info) { | ||
709 | .out_cables = 0x0001, | ||
710 | .in_cables = 0x0001 | ||
711 | } | ||
678 | }, | 712 | }, |
679 | { | 713 | { |
680 | .ifnum = -1 | 714 | .ifnum = -1 |