You are not logged in.

#1 2015-04-26 11:35:38

rabcor
Banned
Registered: 2013-02-09
Posts: 500

Soundblaster X-Fi fails to be detected by ALSA

Seemingly there's a 50/50 chance that my X-Fi chipset card fails to be detected by ALSA after bootup, sometimes the card works, sometimes it does not.

It is listed in lspci -v (this is when the card is not working)

06:00.0 Audio device: Creative Labs EMU20k2 [X-Fi Titanium Series] (rev 04)
	Subsystem: Creative Labs Device 0043
	Flags: bus master, fast devsel, latency 0, IRQ 10
	Memory at f0200000 (64-bit, non-prefetchable) [size=64K]
	Memory at f0000000 (64-bit, non-prefetchable) [size=2M]
	Memory at ec000000 (64-bit, non-prefetchable) [size=64M]
	Capabilities: <access denied>
	Kernel modules: snd_ctxfi

Any ideas what I can do to troubleshoot or maybe even hotfix this? So far, the only possible solution for this I've got is a cold boot (i.e. turning off the computer, waiting for a bit and then turning it back on; a basic restart usually won't fix this; but a cold boot doesn't have a 100% chance of solving it either) I have never run into a similar problem under Windows, so I doubt it's a hardware issue (maybe between the firmware and the snd_ctxfi driver?).

According to this, it might be a bit more complicated than a regression (i.e. on one version of ubuntu the guy could run his X-Fi card, but not on a newer version, and yet when he downgraded alsa drivers in the newer version or used the older version's kernel, that never fixed his problem, but reinstalling the older version did fix it)

Update:

When the card fails to load, I get this on boot:

maí 08 20:33:10 Cestaria kernel: snd_ctxfi 0000:06:00.0: cannot find the slot for index 0 (range 0-1), error: -16
maí 08 20:33:10 Cestaria kernel: snd_ctxfi: probe of 0000:06:00.0 failed with error -16

Last edited by rabcor (2015-05-08 20:38:42)

Offline

#2 2015-04-26 13:16:19

brebs
Member
Registered: 2007-04-03
Posts: 3,742

Re: Soundblaster X-Fi fails to be detected by ALSA

How many cards does ALSA detect?

cat /proc/asound/cards

If it's more than one, than see the numerous methods for reliably setting the *default* card.

Offline

#3 2015-04-26 18:52:46

Roken
Member
From: South Wales, UK
Registered: 2012-01-16
Posts: 1,251

Re: Soundblaster X-Fi fails to be detected by ALSA

I have to be honest, I took my X-Fi card out of my machine and went to onboard audio after endless troubles (either no sound, unpredictable 5.1, audio suddenly stopping etc).

brebs is a master of audio, but everything I read by him couldn't fix my x-fi card.


Ryzen 5900X 12 core/24 thread - RTX 3090 FE 24 Gb, Asus Prime B450 Plus, 32Gb Corsair DDR4, Cooler Master N300 chassis, 5 HD (1 NvME PCI, 4SSD) + 1 x optical.
Linux user #545703

Offline

#4 2015-04-27 12:47:38

rabcor
Banned
Registered: 2013-02-09
Posts: 500

Re: Soundblaster X-Fi fails to be detected by ALSA

brebs wrote:

How many cards does ALSA detect?

cat /proc/asound/cards

If it's more than one, than see the numerous methods for reliably setting the *default* card.

Reads like this:

$ cat /proc/asound/cards
 0 [NVidia         ]: HDA-Intel - HDA NVidia
                      HDA NVidia at 0xf4080000 irq 17
 1 [PCH            ]: HDA-Intel - HDA Intel PCH
                      HDA Intel PCH at 0xf4110000 irq 30

It does not read the card when it's not working, even if the driver is running. aplay -l also doesn't list the card; it doesn't seem to me like the card is failing to initialize (since the driver loads and it is properly listed in lspci) it seems to be something between snd_ctxfi and alsa if I were to guess it. The randomness of when it happens is really what weirds me out though.

Last edited by rabcor (2015-04-27 13:32:06)

Offline

#5 2015-04-27 16:13:57

brebs
Member
Registered: 2007-04-03
Posts: 3,742

Re: Soundblaster X-Fi fails to be detected by ALSA

Offline

#6 2015-04-27 23:23:27

rabcor
Banned
Registered: 2013-02-09
Posts: 500

Re: Soundblaster X-Fi fails to be detected by ALSA

Nothing of the sort, here's what I've got (across a blacklists file and an alsa.conf file)

blacklist nouveau
blacklist snd_hda_intel
options snd-ctxfi index=0
options snd-hda-intel index=1

(I'm blacklisting snd_hda_intel because of my intergrated sound card, I set it to index 1  because it is used for my nvidia hdmi sound, then again the blacklist doesn't seem to be working very well; not quite sure if I really need to blacklist nouveau, I do it out of old habit I guess)

Also, as I write this I just had a cold boot which worked to make alsa read my card, so this is the status until I restart my computer next where it's seemingly random whether my x-fi will be found or not:

$ cat /proc/asound/cards
 0 [XFi            ]: SB-XFi - Creative X-Fi
                      Creative X-Fi 20K2 SB0880
 1 [PCH            ]: HDA-Intel - HDA Intel PCH
                      HDA Intel PCH at 0xf4110000 irq 30
 2 [NVidia         ]: HDA-Intel - HDA NVidia
                      HDA NVidia at 0xf4080000 irq 17

I can try that id thing if you think it could help. Not sure how worth mentioning it is, but changes with lspci -v from the OP with the card working is that the IRQ is now 18 instead of 10 (somehow I suspect that doesn't matter at all, but I don't know what it is), and it states: kernel driver in use: snd_ctxfi properly now.

So I take it it's not just ALSA, but the card is failing to initialize on boot now despite the device being properly detected by the kernel. Am I correct?

Last edited by rabcor (2015-04-27 23:31:38)

Offline

#7 2015-05-05 23:41:17

rabcor
Banned
Registered: 2013-02-09
Posts: 500

Re: Soundblaster X-Fi fails to be detected by ALSA

Nobody got any ideas? It's a bit tiring to need to do a cold boot to work around the issue everytime it happens (althuogh I am glad I at least found some solution). Any possible workarounds would be appreciated even if you don't know how to fix the problem at it's source. (For example, is there a way to re-initialize the soundcard, ctxfi driver and alsa after the system is already loaded without the need to restart?)

Last edited by rabcor (2015-05-05 23:44:01)

Offline

#8 2015-05-08 20:36:18

rabcor
Banned
Registered: 2013-02-09
Posts: 500

Re: Soundblaster X-Fi fails to be detected by ALSA

Got something from journald when the card failed to initialize.

maí 08 20:33:10 Cestaria kernel: snd_ctxfi 0000:06:00.0: cannot find the slot for index 0 (range 0-1), error: -16
maí 08 20:33:10 Cestaria kernel: snd_ctxfi: probe of 0000:06:00.0 failed with error -16

What is error 16?

Last edited by rabcor (2015-05-08 20:36:36)

Offline

#9 2015-05-09 04:47:24

firekage
Member
From: Eastern Europe, Poland
Registered: 2013-06-30
Posts: 617

Re: Soundblaster X-Fi fails to be detected by ALSA

Out of curiosity - you run custom kernel? Have you tried on normal version? I own XFI also and don't have problems at all.

[firekage@arch_desktop ~]$ dmesg | grep snd
[    7.901575] snd_ctxfi: unknown parameter 'model' ignored
[    7.901624] snd_ctxfi 0000:05:00.0: chip 20K1 model SB073x (1102:0031) is found
[    7.910556] snd_hda_intel 0000:01:00.1: Disabling MSI
[    7.910561] snd_hda_intel 0000:01:00.1: Handle VGA-switcheroo audio client
[    7.924910] snd_usb_audio: `046d' invalid for parameter `vid'
[    8.226241] snd_ctxfi 0000:05:00.0: Use xfi-native timer
[firekage@arch_desktop ~]$ 

As you can see, my XFI has almost the same EMUI chipset - 20k1, you have 20k2.

Last edited by firekage (2015-05-09 04:48:40)

Offline

#10 2015-05-09 15:57:58

pigiron
Member
From: USA
Registered: 2009-07-14
Posts: 150

Re: Soundblaster X-Fi fails to be detected by ALSA

Those error messages are saying that while you forced the snd_ctxfi driver to use index=0, by the time the driver tried to grab that index it was already in use so it fails. That seems to match the information you posted in #4 above, where NVidia appears to be in index 0.

You can learn why this is happening (hint: see Blacklisting) and also verify if what I said is actually true by looking at the commands and info here:

   https://wiki.archlinux.org/index.php/Kernel_modules

And as brebs mentioned in post #5, the following link has further information about correcting the situation and has been updated with some good stuff since I last peeked at it many moons ago (see Section 5.0 in particular):

   http://alsa.opensrc.org/MultipleCards

Offline

Board footer

Powered by FluxBB