After patching the X-Fi driver released a few days ago as proposed in the Creative Forums, the kernel modules loads fine and dmesg shows no problems with my PCI Express X-Fi Titanium Fatal1ty Champion.
diff -r XFiDrv_Linux_Public_US_1.00.orig/ctdrv.h XFiDrv_Linux_Public_US_1.00/ctdrv.h
26c26
< #define PCI_SUBSYS_CREATIVE_SB0880 0x0041
---
> #define PCI_SUBSYS_CREATIVE_SB0880 0x0043
Just for completeness, here is the output of running alsa-info:
upload=true&script=true&cardinfo=
!!################################
!!ALSA Information Script v 0.4.52
!!################################
!!Script ran on: Sat Nov 8 13:55:25 CET 2008
!!Linux Distribution
!!------------------
Welcome to openSUSE 11.0 (X86-64) - Kernel \r (\l). openSUSE 11.0 (X86-64)
!!Kernel Information
!!------------------
Kernel release: 2.6.25.18-0.2-default
Operating System: GNU/Linux
Architecture: x86_64
Processor: x86_64
SMP Enabled: Yes
!!ALSA Version
!!------------
Driver version: 1.0.16rc2
Library version: 1.0.16
Utilities version: 1.0.16
!!Loaded ALSA modules
!!-------------------
ctxfi
!!Soundcards recognised by ALSA
!!-----------------------------
0 [XFi ]: CTALSA - Creative X-Fi
Creative ALSA Driver X-Fi
!!PCI Soundcards installed in the system
!!--------------------------------------
04:00.0 Audio device: Creative Labs Device 000b (rev 03)
!!Advanced information - PCI Vendor/Device/Susbsystem ID's
!!--------------------------------------------------------
04:00.0 0403: 1102:000b (rev 03)
Subsystem: 1102:0043
!!Loaded sound module options
!!--------------------------
!!Module: ctxfi
!!ALSA Device nodes
!!-----------------
crw-rw----+ 1 root audio 116, 5 Nov 8 2008 /dev/snd/controlC0
crw-rw----+ 1 root audio 116, 4 Nov 8 2008 /dev/snd/pcmC0D0c
crw-rw----+ 1 root audio 116, 3 Nov 8 13:53 /dev/snd/pcmC0D0p
crw-rw----+ 1 root audio 116, 2 Nov 8 2008 /dev/snd/timer
!!Aplay/Arecord output
!!------------
APLAY
**** List of PLAYBACK Hardware Devices ****
card 0: XFi [Creative X-Fi], device 0: X-Fi 20k2 [WaveOut/WaveIn]
Subdevices: 8/8
Subdevice #0: subdevice #0
Subdevice #1: subdevice #1
Subdevice #2: subdevice #2
Subdevice #3: subdevice #3
Subdevice #4: subdevice #4
Subdevice #5: subdevice #5
Subdevice #6: subdevice #6
Subdevice #7: subdevice #7
ARECORD
**** List of CAPTURE Hardware Devices ****
card 0: XFi [Creative X-Fi], device 0: X-Fi 20k2 [WaveOut/WaveIn]
Subdevices: 1/1
Subdevice #0: subdevice #0
!!Amixer output
!!-------------
!!-------Mixer controls for card 0 [XFi]
Card hw:0 'XFi'/'Creative ALSA Driver X-Fi'
Mixer name : '20K2'
Components : ''
Controls : 18
Simple ctrls : 7
Simple mixer control 'Master',0
Capabilities: pvolume cvolume
Playback channels: Front Left - Front Right
Capture channels: Front Left - Front Right
Limits: Playback 0 - 43690 Capture 0 - 43690
Front Left: Playback 32751 [75%] Capture 32751 [75%]
Front Right: Playback 32751 [75%] Capture 32751 [75%]
Simple mixer control 'PCM',0
Capabilities: pvolume cvolume cswitch cswitch-joined
Playback channels: Front Left - Front Right
Capture channels: Front Left - Front Right
Limits: Playback 0 - 43690 Capture 0 - 43690
Front Left: Playback 39301 [90%] Capture 39301 [90%] [on]
Front Right: Playback 39301 [90%] Capture 39301 [90%] [on]
Simple mixer control 'Wave',0
Capabilities: pvolume pswitch pswitch-joined
Playback channels: Front Left - Front Right
Limits: Playback 0 - 43690
Mono:
Front Left: Playback 43690 [100%] [on]
Front Right: Playback 43690 [100%] [on]
Simple mixer control 'Line-in',0
Capabilities: pvolume cvolume cswitch cswitch-joined
Playback channels: Front Left - Front Right
Capture channels: Front Left - Front Right
Limits: Playback 0 - 43690 Capture 0 - 43690
Front Left: Playback 32525 [74%] Capture 32525 [74%] [on]
Front Right: Playback 32525 [74%] Capture 32525 [74%] [on]
Simple mixer control 'Mic',0
Capabilities: pvolume cvolume cswitch cswitch-joined
Playback channels: Front Left - Front Right
Capture channels: Front Left - Front Right
Limits: Playback 0 - 43690 Capture 0 - 43690
Front Left: Playback 0 [0%] Capture 0 [0%] [off]
Front Right: Playback 0 [0%] Capture 0 [0%] [off]
Simple mixer control 'S/PDIF-in',0
Capabilities: pvolume cvolume cswitch cswitch-joined
Playback channels: Front Left - Front Right
Capture channels: Front Left - Front Right
Limits: Playback 0 - 43690 Capture 0 - 43690
Front Left: Playback 32525 [74%] Capture 32525 [74%] [on]
Front Right: Playback 32525 [74%] Capture 32525 [74%] [on]
Simple mixer control 'S/PDIF-out',0
Capabilities: pvolume pswitch pswitch-joined
Playback channels: Front Left - Front Right
Limits: Playback 0 - 43690
Mono:
Front Left: Playback 32525 [74%] [on]
Front Right: Playback 32525 [74%] [on]
!!Alsactl output
!!-------------
--startcollapse--
state.XFi {
control.1 {
comment.access 'read write'
comment.type INTEGER
comment.count 2
comment.range '0 - 43690 (step 128)'
iface MIXER
device 1
name 'Master Playback Volume'
value.0 32751
value.1 32751
}
control.2 {
comment.access 'read write'
comment.type INTEGER
comment.count 2
comment.range '0 - 43690 (step 128)'
iface MIXER
device 1
name 'PCM Playback Volume'
value.0 39301
value.1 39301
}
control.3 {
comment.access 'read write'
comment.type INTEGER
comment.count 2
comment.range '0 - 43690 (step 128)'
iface MIXER
device 1
name 'Line-in Playback Volume'
value.0 32525
value.1 32525
}
control.4 {
comment.access 'read write'
comment.type INTEGER
comment.count 2
comment.range '0 - 43690 (step 128)'
iface MIXER
device 1
name 'Mic Playback Volume'
value.0 0
value.1 0
}
control.5 {
comment.access 'read write'
comment.type INTEGER
comment.count 2
comment.range '0 - 43690 (step 128)'
iface MIXER
device 1
name 'S/PDIF-in Playback Volume'
value.0 32525
value.1 32525
}
control.6 {
comment.access 'read write'
comment.type INTEGER
comment.count 2
comment.range '0 - 43690 (step 128)'
iface MIXER
device 1
name 'S/PDIF-out Playback Volume'
value.0 32525
value.1 32525
}
control.7 {
comment.access 'read write'
comment.type INTEGER
comment.count 2
comment.range '0 - 43690 (step 128)'
iface MIXER
device 1
name 'Wave Playback Volume'
value.0 43690
value.1 43690
}
control.8 {
comment.access 'read write'
comment.type INTEGER
comment.count 2
comment.range '0 - 43690 (step 128)'
iface MIXER
device 1
name 'Master Capture Volume'
value.0 32751
value.1 32751
}
control.9 {
comment.access 'read write'
comment.type INTEGER
comment.count 2
comment.range '0 - 43690 (step 128)'
iface MIXER
device 1
name 'PCM Capture Volume'
value.0 39301
value.1 39301
}
control.10 {
comment.access 'read write'
comment.type INTEGER
comment.count 2
comment.range '0 - 43690 (step 128)'
iface MIXER
device 1
name 'Line-in Capture Volume'
value.0 32525
value.1 32525
}
control.11 {
comment.access 'read write'
comment.type INTEGER
comment.count 2
comment.range '0 - 43690 (step 128)'
iface MIXER
device 1
name 'Mic Capture Volume'
value.0 0
value.1 0
}
control.12 {
comment.access 'read write'
comment.type INTEGER
comment.count 2
comment.range '0 - 43690 (step 128)'
iface MIXER
device 1
name 'S/PDIF-in Capture Volume'
value.0 32525
value.1 32525
}
control.13 {
comment.access 'read write'
comment.type BOOLEAN
comment.count 1
iface MIXER
device 1
name 'PCM Capture Switch'
value true
}
control.14 {
comment.access 'read write'
comment.type BOOLEAN
comment.count 1
iface MIXER
device 1
name 'Line-in Capture Switch'
value true
}
control.15 {
comment.access 'read write'
comment.type BOOLEAN
comment.count 1
iface MIXER
device 1
name 'Mic Capture Switch'
value false
}
... removed a few sections due to length restriction in forum]
}
--endcollapse--
!!All Loaded Modules
!!------------------
Module
ip6t_LOG
xt_tcpudp
xt_pkttype
ipt_LOG
xt_limit
binfmt_misc
uinput
af_packet
ip6t_REJECT
nf_conntrack_ipv6
ipt_REJECT
xt_state
iptable_mangle
iptable_nat
nf_nat
iptable_filter
ip6table_mangle
nf_conntrack_netbios_ns
nf_conntrack_ipv4
nf_conntrack
ip_tables
ip6table_filter
ip6_tables
x_tables
cpufreq_conservative
ipv6
cpufreq_userspace
cpufreq_powersave
acpi_cpufreq
microcode
firmware_class
nls_iso8859_1
nls_cp437
vfat
fat
fuse
loop
dm_mod
joydev
arc4
ecb
crypto_blkcipher
rtl8187
mac80211
usbhid
i2c_i801
nvidia
sr_mod
cfg80211
hid
i2c_core
ff_memless
iTCO_wdt
rtc_cmos
button
eeprom_93cx6
cdrom
ctxfi
snd_pcm
iTCO_vendor_support
rtc_core
sky2
intel_agp
rtc_lib
snd_timer
snd
soundcore
snd_page_alloc
sg
floppy
sd_mod
ehci_hcd
uhci_hcd
usbcore
edd
ext3
mbcache
jbd
fan
ata_piix
ahci
pata_jmicron
libata
scsi_mod
dock
thermal
processor
Playing sounds with aplay works, speaker-test shows that only front left/right work on my 5.1 system, and alsamixer seems to lack a few controls (rear etc.). In a nutshell: The basic driver features seem to work. I still have 2 problems:
- How can I configure 5.1 sound? Is it supported with the latest X-Fi drivers?
- How can I configure KDE to use the card? It doesn’t show up in Yast’s card list and it is unknown to alsaconf, too.