[PATCH] [UBUNTU:sound/usb/] #36788: Add support for Creative SB Live! 24-bit Ext
crimsun at fungus.sh.nu
crimsun at fungus.sh.nu
Fri Nov 3 07:42:26 UTC 2006
From 91e6449ffa53a6134d0a427398f1bf4448722603 Mon Sep 17 00:00:00 2001
From: Daniel T. Chen <crimsun at garnish.localdomain>
Date: Fri, 3 Nov 2006 02:47:33 -0500
Subject: [PATCH] [UBUNTU:sound/usb/] #36788: Add support for Creative SB Live! 24-bit Ext
UpstreamStatus: Not yet merged
References: Ubuntu: #36788
ALSA: #669
http://ubuntuforums.org/showthread.php?t=104704
The Creative SB Live! 24-bit Ext needs a boot quirk like the Audigy 2
NX. This patch makes it so.
This commit is applicable to Dapper, Edgy, and Feisty linux-source.
This commit closes Ubuntu: #36788.
Signed-off-by: Daniel T Chen <crimsun at ubuntu.com>
---
sound/usb/usbaudio.c | 6 ++++--
sound/usb/usbmixer.c | 4 +++-
sound/usb/usbmixer_maps.c | 5 +++++
3 files changed, 12 insertions(+), 3 deletions(-)
diff --git a/sound/usb/usbaudio.c b/sound/usb/usbaudio.c
index d8fd066..a794d47 100644
--- a/sound/usb/usbaudio.c
+++ b/sound/usb/usbaudio.c
@@ -2587,6 +2587,7 @@ #if 1
*/
if (chip->usb_id == USB_ID(0x041e, 0x3000) ||
chip->usb_id == USB_ID(0x041e, 0x3020) ||
+ chip->usb_id == USB_ID(0x041e, 0x3040) ||
chip->usb_id == USB_ID(0x041e, 0x3061)) {
if (fmt[3] == USB_FORMAT_TYPE_I &&
fp->rates != SNDRV_PCM_RATE_48000 &&
@@ -2709,6 +2710,7 @@ static int parse_audio_endpoints(snd_usb
fp->attributes &= ~EP_CS_ATTR_SAMPLE_RATE;
break;
case USB_ID(0x041e, 0x3020): /* Creative SB Audigy 2 NX */
+ case USB_ID(0x041e, 0x3040): /* Creative SB Live! 24-bit Ext*/
case USB_ID(0x0763, 0x2003): /* M-Audio Audiophile USB */
/* doesn't set the sample rate attribute, but supports it */
fp->attributes |= EP_CS_ATTR_SAMPLE_RATE;
@@ -3433,8 +3435,8 @@ static void *snd_usb_audio_probe(struct
if (snd_usb_extigy_boot_quirk(dev, intf) < 0)
goto __err_val;
}
- /* SB Audigy 2 NX needs its own boot-up magic, too */
- if (id == USB_ID(0x041e, 0x3020)) {
+ /* SB Audigy 2 NX & Live! 24-bit Ext need boot-up magic, too */
+ if (id == USB_ID(0x041e, 0x3020) || id == USB_ID(0x041e, 0x3040)) {
if (snd_usb_audigy2nx_boot_quirk(dev) < 0)
goto __err_val;
}
diff --git a/sound/usb/usbmixer.c b/sound/usb/usbmixer.c
index 7fe5bea..32f05c2 100644
--- a/sound/usb/usbmixer.c
+++ b/sound/usb/usbmixer.c
@@ -1814,6 +1814,7 @@ static int snd_usb_soundblaster_remote_i
len = 2;
break;
case USB_ID(0x041e, 0x3020):
+ case USB_ID(0x041e, 0x3040):
mixer->rc_type = RC_AUDIGY2NX;
len = 6;
break;
@@ -1997,7 +1998,8 @@ #endif
if ((err = snd_usb_soundblaster_remote_init(mixer)) < 0)
goto _error;
- if (mixer->chip->usb_id == USB_ID(0x041e, 0x3020)) {
+ if (mixer->chip->usb_id == USB_ID(0x041e, 0x3020) ||
+ mixer->chip->usb_id == USB_ID(0x041e, 0x3040)) {
snd_info_entry_t *entry;
if ((err = snd_audigy2nx_controls_create(mixer)) < 0)
diff --git a/sound/usb/usbmixer_maps.c b/sound/usb/usbmixer_maps.c
index 7c4dcb3..cfd9d37 100644
--- a/sound/usb/usbmixer_maps.c
+++ b/sound/usb/usbmixer_maps.c
@@ -273,6 +273,11 @@ static struct usbmix_ctl_map usbmix_ctl_
.map = audigy2nx_map,
.selector_map = audigy2nx_selectors,
},
+ { /* Creative SB Live! 24-bit Ext */
+ .id = USB_ID(0x041e, 0x3040),
+ .map = audigy2nx_map,
+ .selector_map = audigy2nx_selectors,
+ },
{
/* Hercules DJ Console (Windows Edition) */
.id = USB_ID(0x06f8, 0xb000),
--
1.4.1
--
Daniel T. Chen crimsun at ubuntu.com
GPG key: 0xC88ABDA3
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: not available
URL: <https://lists.ubuntu.com/archives/kernel-team/attachments/20061102/d5a5dd39/attachment.sig>
More information about the kernel-team
mailing list