diff options
author | Thibault Le Meur <Thibault.LeMeur@supelec.fr> | 2007-07-13 11:50:23 +0200 |
---|---|---|
committer | Jaroslav Kysela <perex@suse.cz> | 2007-07-20 11:11:52 +0200 |
commit | cac19c3ba123369b7c1199e20bb01fb265004ff5 (patch) | |
tree | 10598290eb75ce54fcd988afbc7e58a0da4ffbcb /sound | |
parent | 1b290a510c12be91b6a2f7d6a07ef61b8ee9f06a (diff) | |
download | op-kernel-dev-cac19c3ba123369b7c1199e20bb01fb265004ff5.zip op-kernel-dev-cac19c3ba123369b7c1199e20bb01fb265004ff5.tar.gz |
[ALSA] usb-audio - Fix AC3 with M-Audio Audiophile USB
Fixed AC3 interface in device_setup=0x00 mode thanks to Hakan
Lennestal and updated documentation
Signed-off-by: Thibault Le Meur <Thibault.LeMeur@supelec.fr>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
Diffstat (limited to 'sound')
-rw-r--r-- | sound/usb/usbaudio.c | 13 |
1 files changed, 12 insertions, 1 deletions
diff --git a/sound/usb/usbaudio.c b/sound/usb/usbaudio.c index 834b0af..7bd5852 100644 --- a/sound/usb/usbaudio.c +++ b/sound/usb/usbaudio.c @@ -2532,7 +2532,18 @@ static int parse_audio_format_i(struct snd_usb_audio *chip, struct audioformat * * but we give normal PCM format to get the existing * apps working... */ - pcm_format = SNDRV_PCM_FORMAT_S16_LE; + switch (chip->usb_id) { + + case USB_ID(0x0763, 0x2003): /* M-Audio Audiophile USB */ + if (device_setup[chip->index] == 0x00 && + fp->altsetting == 6) + pcm_format = SNDRV_PCM_FORMAT_S16_BE; + else + pcm_format = SNDRV_PCM_FORMAT_S16_LE; + break; + default: + pcm_format = SNDRV_PCM_FORMAT_S16_LE; + } } else { pcm_format = parse_audio_format_i_type(chip, fp, format, fmt); if (pcm_format < 0) |