diff options
author | Clemens Ladisch <clemens@ladisch.de> | 2011-01-10 10:30:54 -0500 |
---|---|---|
committer | Takashi Iwai <tiwai@suse.de> | 2011-01-10 10:47:10 -0500 |
commit | 061b869eca6f725b0119f7dff833288a44bf46c0 (patch) | |
tree | c334ffddc4da0684a260813037a74fb762ecfc24 /sound/usb | |
parent | 2a1803a7291e82823effef0b48b0039324d224c6 (diff) |
ALSA: usb-audio: add Edirol SD-90 PCM support
Add support for the 24-bit audio I/Os of the Edirol SD-90 interface.
Reported-any-tested-by: Jim Grusendorf <alsa-user@grusendorf.ca>
Signed-off-by: Clemens Ladisch <clemens@ladisch.de>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Diffstat (limited to 'sound/usb')
-rw-r--r-- | sound/usb/format.c | 5 | ||||
-rw-r--r-- | sound/usb/quirks-table.h | 4 |
2 files changed, 6 insertions, 3 deletions
diff --git a/sound/usb/format.c b/sound/usb/format.c index 69148212aa70..5b792d2c8061 100644 --- a/sound/usb/format.c +++ b/sound/usb/format.c | |||
@@ -76,7 +76,10 @@ static u64 parse_audio_format_i_type(struct snd_usb_audio *chip, | |||
76 | format = 1 << UAC_FORMAT_TYPE_I_PCM; | 76 | format = 1 << UAC_FORMAT_TYPE_I_PCM; |
77 | } | 77 | } |
78 | if (format & (1 << UAC_FORMAT_TYPE_I_PCM)) { | 78 | if (format & (1 << UAC_FORMAT_TYPE_I_PCM)) { |
79 | if (sample_width > sample_bytes * 8) { | 79 | if (chip->usb_id == USB_ID(0x0582, 0x0016) /* Edirol SD-90 */ && |
80 | sample_width == 24 && sample_bytes == 2) | ||
81 | sample_bytes = 3; | ||
82 | else if (sample_width > sample_bytes * 8) { | ||
80 | snd_printk(KERN_INFO "%d:%u:%d : sample bitwidth %d in over sample bytes %d\n", | 83 | snd_printk(KERN_INFO "%d:%u:%d : sample bitwidth %d in over sample bytes %d\n", |
81 | chip->dev->devnum, fp->iface, fp->altsetting, | 84 | chip->dev->devnum, fp->iface, fp->altsetting, |
82 | sample_width, sample_bytes); | 85 | sample_width, sample_bytes); |
diff --git a/sound/usb/quirks-table.h b/sound/usb/quirks-table.h index ad7079d1676c..35999874d301 100644 --- a/sound/usb/quirks-table.h +++ b/sound/usb/quirks-table.h | |||
@@ -705,11 +705,11 @@ YAMAHA_DEVICE(0x7010, "UB99"), | |||
705 | .data = (const struct snd_usb_audio_quirk[]) { | 705 | .data = (const struct snd_usb_audio_quirk[]) { |
706 | { | 706 | { |
707 | .ifnum = 0, | 707 | .ifnum = 0, |
708 | .type = QUIRK_IGNORE_INTERFACE | 708 | .type = QUIRK_AUDIO_STANDARD_INTERFACE |
709 | }, | 709 | }, |
710 | { | 710 | { |
711 | .ifnum = 1, | 711 | .ifnum = 1, |
712 | .type = QUIRK_IGNORE_INTERFACE | 712 | .type = QUIRK_AUDIO_STANDARD_INTERFACE |
713 | }, | 713 | }, |
714 | { | 714 | { |
715 | .ifnum = 2, | 715 | .ifnum = 2, |