Bug 24482 - Creative X-Fi Titanium HD not working
Summary: Creative X-Fi Titanium HD not working
Status: RESOLVED OBSOLETE
Alias: None
Product: Drivers
Classification: Unclassified
Component: Sound(ALSA) (show other bugs)
Hardware: All Linux
: P1 normal
Assignee: Jaroslav Kysela
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2010-12-08 22:15 UTC by Joseph
Modified: 2013-12-10 22:45 UTC (History)
4 users (show)

See Also:
Kernel Version: 2.6.36.1
Subsystem:
Regression: No
Bisected commit-id:


Attachments

Description Joseph 2010-12-08 22:15:54 UTC
[joe@joe ~]$ dmesg | grep -i xfi
SB-XFi 0000:04:00.0: PCI INT A -> GSI 19 (level, low) -> IRQ 19
SB-XFi 0000:04:00.0: setting latency timer to 64
SB-XFi 0000:04:00.0: PCI INT A disabled
ctxfi: Something wrong!!!
SB-XFi: probe of 0000:04:00.0 failed with error -1

[joe@joe ~]$ lspci -d 1102:000b -vv
04:00.0 Audio device: Creative Labs X-Fi Titanium series [EMU20k2] (rev 03)

The card is PCI Express, but uses the same chipset as other cards that support ctxfi, all though this card was released after the ctxfi driver.

Is it possible to add support?

Thanks. :)
Comment 1 Marshall DeBerry 2011-02-11 00:10:00 UTC
I've got the same issue on Fedora 14:

[root@meherrin ~]# uname -a
Linux meherrin.nottoway.net 2.6.35.10-74.fc14.x86_64 #1 SMP Thu Dec 23 16:04:50 UTC 2010 x86_64 x86_64 x86_64 GNU/Linux
[root@meherrin ~]# dmesg | grep -i xfi
[   10.545139] ALSA sound/pci/ctxfi/ctatc.c:1261: ctxfi: chip 20K2 model Unknown (1102:0062) is found
[   10.545164] SB-XFi 0000:02:00.0: PCI INT A -> GSI 19 (level, low) -> IRQ 19
[   10.545525] SB-XFi 0000:02:00.0: setting latency timer to 64
[   47.422386] SB-XFi 0000:02:00.0: PCI INT A disabled
[   47.422391] ctxfi: Something wrong!!!
[   47.422466] SB-XFi: probe of 0000:02:00.0 failed with error -1
[root@meherrin ~]# lspci -d 1102:000b -v
02:00.0 Audio device: Creative Labs X-Fi Titanium series [EMU20k2] (rev 03)
	Subsystem: Creative Labs Device 0062
	Flags: fast devsel, IRQ 19
	Memory at fbcf0000 (64-bit, non-prefetchable) [size=64K]
	Memory at fba00000 (64-bit, non-prefetchable) [size=2M]
	Memory at f4000000 (64-bit, non-prefetchable) [size=64M]
	Capabilities: [40] Power Management version 3
	Capabilities: [48] MSI: Enable- Count=1/1 Maskable- 64bit+
	Capabilities: [58] Express Endpoint, MSI 00
	Capabilities: [100] Device Serial Number ff-ff-ff-ff-ff-ff-ff-ff
	Capabilities: [300] Advanced Error Reporting
	Kernel modules: snd-ctxfi

[root@meherrin ~]# 

Is this a kernel/udev issue or an ALSA issue? 

Thanks for any help or assistance that can be provided.
Comment 2 Joel DM 2011-02-12 10:58:09 UTC
Hi, i've got the same issue on Gentoo (kernel 2.6.37).

CONFIG_SND_CTXFI=y: there is no card found in ALSA.
# dmesg
[    2.010397] SB-XFi 0000:02:00.0: PCI INT A -> GSI 18 (level, low) -> IRQ 18
[    2.011853] SB-XFi 0000:02:00.0: setting latency timer to 64
[   38.889767] SB-XFi 0000:02:00.0: PCI INT A disabled
[   38.891175] ctxfi: Something wrong!!!
[   38.892554] SB-XFi: probe of 0000:02:00.0 failed with error -1
[   38.894038] HDA Intel 0000:01:05.1: PCI INT B -> GSI 19 (level, low) -> IRQ 19
[   38.895496] HDA Intel 0000:01:05.1: setting latency timer to 64


CONFIG_SND_HDA_CODEC_CA0110=y: there is a HDA Creative in ALSA but no sound.
# dmesg
[    1.482546] HDA Intel 0000:02:00.0: PCI INT A -> GSI 18 (level, low) -> IRQ 18
[    1.483831] HDA Intel 0000:02:00.0: irq 41 for MSI/MSI-X
[    1.483851] HDA Intel 0000:02:00.0: setting latency timer to 64
# aplay -L
default:CARD=Creative
    HDA Creative, CA0110 Analog
    Default Audio Device
front:CARD=Creative,DEV=0
    HDA Creative, CA0110 Analog
    Front speakers
surround40:CARD=Creative,DEV=0
    HDA Creative, CA0110 Analog
    4.0 Surround output to Front and Rear speakers
surround41:CARD=Creative,DEV=0
    HDA Creative, CA0110 Analog
    4.1 Surround output to Front, Rear and Subwoofer speakers
surround50:CARD=Creative,DEV=0
    HDA Creative, CA0110 Analog
    5.0 Surround output to Front, Center and Rear speakers
surround51:CARD=Creative,DEV=0
    HDA Creative, CA0110 Analog
    5.1 Surround output to Front, Center, Rear and Subwoofer speakers
surround71:CARD=Creative,DEV=0
    HDA Creative, CA0110 Analog
    7.1 Surround output to Front, Center, Side, Rear and Woofer speakers
iec958:CARD=Creative,DEV=0
    HDA Creative, CA0110 Digital
    IEC958 (S/PDIF) Digital Audio Output
# cat /proc/asound/card0/codec#0
Codec: Creative SB0880 X-Fi
...

# lspci -v
02:00.0 Audio device: Creative Labs X-Fi Titanium series [EMU20k2] (rev 03)
	Subsystem: Creative Labs Device 0062
	Flags: bus master, fast devsel, latency 0, IRQ 41
	Memory at fbff0000 (64-bit, non-prefetchable) [size=64K]
	Memory at fbc00000 (64-bit, non-prefetchable) [size=2M]
	Memory at f4000000 (64-bit, non-prefetchable) [size=64M]
	Capabilities: [40] Power Management version 3
	Capabilities: [48] MSI: Enable+ Count=1/1 Maskable- 64bit+
	Capabilities: [58] Express Endpoint, MSI 00
	Capabilities: [100] Device Serial Number ff-ff-ff-ff-ff-ff-ff-ff
	Capabilities: [300] Advanced Error Reporting

Thanks.
Comment 3 Anton 2011-02-27 19:45:50 UTC
Hi, i've got a similar problem on Debian squeeze (kernel 2.6.32).

# uname -a
Linux debian 2.6.32-5-amd64 #1 SMP Wed Jan 12 03:40:32 UTC 2011 x86_64 GNU/Linux

# lspci -v
04:00.0 Audio device: Creative Labs X-Fi Titanium series [EMU20k2] (rev 03)
	Subsystem: Creative Labs Device 0042
	Flags: fast devsel, IRQ 32
	Memory at fcdf0000 (64-bit, non-prefetchable) [size=64K]
	Memory at fca00000 (64-bit, non-prefetchable) [size=2M]
	Memory at fb000000 (64-bit, non-prefetchable) [size=16M]
	Capabilities: [40] Power Management version 3
	Capabilities: [48] MSI: Enable- Count=1/1 Maskable- 64bit+
	Capabilities: [58] Express Endpoint, MSI 00
	Capabilities: [100] Device Serial Number ff-ff-ff-ff-ff-ff-ff-ff
	Capabilities: [300] Advanced Error Reporting

This is a PCIe card. 

# cat /var/log/kern.log   (filtered)
kernel: [    7.635916] SB-XFi 0000:04:00.0: enabling device (0000 -> 0002)
kernel: [    7.635940] SB-XFi 0000:04:00.0: PCI INT A -> GSI 32 (level, low) -> IRQ 32
kernel: [    7.804226] ctxfi: PLL initialization failed!!!
kernel: [    7.804333] SB-XFi 0000:04:00.0: PCI INT A disabled
kernel: [    7.804336] ctxfi: Something wrong!!!
kernel: [    7.804549] SB-XFi: probe of 0000:04:00.0 failed with error -16

I have managed to learn follow details:

1) driver detect right io address fca00000
hw->io_base = pci_resource_start(hw->pci, 2);

2) driver w/o errors do ioremap
hw->mem_base = (unsigned long)ioremap(hw->io_base,
                                      pci_resource_len(hw->pci, 2));

3) but any read 
static u32 hw_read_20kx(struct hw *hw, u32 reg)
{
    return readl((void *)(hw->mem_base + reg));
}
always return 0xffffffff as result for any "reg"

And first PLL initialisation fails  

P.S.
This card was worked in Debian lenny (kernel 2.6.26) and is working in Windows XP. 

Excuse for possible errors

Note You need to log in before you can comment on or make changes to this bug.