Bug#721346: linux-image-3.2.0-0.bpo.4-rt-686-pae: Xonar DSX not recognized although there is a functional driver (patch included).
Package: src:linux
Version: 3.2.46-1~bpo60+1
Severity: normal
Tags: upstream patch
Hi, the Asus Xonar DSX sound card is not recognized despite the driver is
there.
This bug affect Wheezy and Squeeze and could be solved for these two
distributions.
It's a PCIe sound card:
http://www.asus.com/Sound_Cards_and_DigitaltoAnalog_Converters/Xonar_DSX/
The 3.2 kernel have a functional driver for this sound card (snd_virtuoso), but
does not recognize it.
I found a patch here:
http://permalink.gmane.org/gmane.linux.alsa.devel/100921
The patch add a PCI_SUBID recognition.
I adapted it to kernel 3.2 (squeeze-backports), I attached the patch rewritten
for Debian 3.2 linux kernel.
If the kernel is compiled with this patch, the sound card appears like that:
# lspci -vvv -s 07:00.0
07:00.0 Multimedia audio controller: C-Media Electronics Inc CMI8788 [Oxygen HD
Audio]
Subsystem: ASUSTeK Computer Inc. Device 8522
Control: I/O+ Mem- BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr-
Stepping- SERR- FastB2B- DisINTx-
Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=medium >TAbort-
<TAbort- <MAbort- >SERR- <PERR- INTx-
Latency: 64 (500ns min, 6000ns max)
Interrupt: pin A routed to IRQ 17
Region 0: I/O ports at a800 [size=256]
Capabilities: [c0] Power Management version 2
Flags: PMEClk- DSI- D1+ D2+ AuxCurrent=0mA
PME(D0-,D1-,D2-,D3hot-,D3cold-)
Status: D0 NoSoftRst- PME-Enable- DSel=0 DScale=0 PME-
Kernel driver in use: snd_virtuoso
# cat /proc/asound/cards
2 [DSX ]: AV200 - Xonar DSX
Asus Virtuoso 66 at 0xa800, irq 17
With this patch, the sound card is functional, and alsamixer controls are
functional.
There are not many PCIe sound card on the market, it would be nice if this card
is supported.
This patch works for squeeze-backports and wheezy 3.2 linux kernel.
-- Package-specific info:
** Kernel log: boot messages should be attached
-- System Information:
Debian Release: 6.0.7
APT prefers oldstable-updates
APT policy: (500, 'oldstable-updates'), (500, 'oldstable')
Architecture: i386 (x86_64)
Kernel: Linux 3.2.0-0.bpo.4-amd64 (SMP w/2 CPU cores)
Locale: LANG=fr_FR.utf8, LC_CTYPE=fr_FR.utf8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Versions of packages linux-image-3.2.0-0.bpo.4-rt-686-pae depends on:
ii debconf [debconf-2.0] 1.5.36.1 Debian configuration management sy
ii initramfs-tools [linux-init 0.99~bpo60+1 tools for generating an initramfs
ii linux-base 3.4~bpo60+1 Linux image base package
ii module-init-tools 3.12-2+b1 tools for managing Linux kernel mo
Versions of packages linux-image-3.2.0-0.bpo.4-rt-686-pae recommends:
ii firmware-linux-free 2.6.32-48squeeze3 Binary firmware for various driver
ii libc6-i686 2.11.3-4 Embedded GNU C Library: Shared lib
Versions of packages linux-image-3.2.0-0.bpo.4-rt-686-pae suggests:
pn debian-kernel- <none> (no description available)
ii extlinux 2:4.02+dfsg-7 collection of boot loaders (ext2/3
ii grub-pc 1.98+20100804-14+squeeze1 GRand Unified Bootloader, version
pn linux-doc-3.2 <none> (no description available)
Versions of packages linux-image-3.2.0-0.bpo.4-rt-686-pae is related to:
pn firmware-atheros <none> (no description available)
pn firmware-bnx2 <none> (no description available)
pn firmware-bnx2x <none> (no description available)
pn firmware-brcm80211 <none> (no description available)
pn firmware-intelwima <none> (no description available)
pn firmware-ipw2x00 <none> (no description available)
pn firmware-ivtv <none> (no description available)
pn firmware-iwlwifi <none> (no description available)
pn firmware-libertas <none> (no description available)
ii firmware-linux 0.36+wheezy.1~bpo60+1 Binary firmware for various driver
ii firmware-linux-non 0.36+wheezy.1~bpo60+1 Binary firmware for various driver
pn firmware-myricom <none> (no description available)
pn firmware-netxen <none> (no description available)
pn firmware-qlogic <none> (no description available)
pn firmware-ralink <none> (no description available)
pn firmware-realtek <none> (no description available)
ii xen-hypervisor-4.0 4.0.1-5.11 The Xen Hypervisor on i386
-- debconf information excluded
--- a/sound/pci/oxygen/virtuoso.c
+++ b/sound/pci/oxygen/virtuoso.c
@@ -52,6 +52,7 @@
{ OXYGEN_PCI_SUBID(0x1043, 0x835d) },
{ OXYGEN_PCI_SUBID(0x1043, 0x835e) },
{ OXYGEN_PCI_SUBID(0x1043, 0x838e) },
+ { OXYGEN_PCI_SUBID(0x1043, 0x8522) },
{ OXYGEN_PCI_SUBID_BROKEN_EEPROM },
{ }
};
--- a/sound/pci/oxygen/xonar_wm87x6.c
+++ b/sound/pci/oxygen/xonar_wm87x6.c
@@ -1255,7 +1255,6 @@
}
static const struct oxygen_model model_xonar_ds = {
- .shortname = "Xonar DS",
.longname = "Asus Virtuoso 66",
.chip = "AV200",
.init = xonar_ds_init,
@@ -1325,6 +1324,11 @@
switch (id->subdevice) {
case 0x838e:
chip->model = model_xonar_ds;
+ chip->model.shortname = "Xonar DS";
+ break;
+ case 0x8522:
+ chip->model = model_xonar_ds;
+ chip->model.shortname = "Xonar DSX";
break;
case 0x835e:
chip->model = model_xonar_hdav_slim;
Reply to: