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;