On Sat, 2008-10-11 at 19:41 +0200, Takashi Iwai wrote:
Could you build with XXX_CONST_TIMER defined? This will disable the adaptive timer-resolution handling I added to the driver, which doesn't exist in OSS sbxfi code at all.
No change in behaviour. It survives a little longer, but then the system hardlocks... without me even touching the keyboard even.
Noise is now on the right channel only.
Does it mean that the left channel plays normally as expected? Also, which sample rate are you using? I'm curious whether the sample rate tracking is correct...
No. The left channel is silent.
It might make more sense to poll for the DAC reset in the interrupt handler. I have noticed that the card generates an interrupt request
Windows once the DAC is online.
Interesting... Maybe putting some debug prints in interrupt handler and else would help a bit for more understanding.
Something leads me to believe that the DMA mask is 32 bits, but
that the behaviour is similar in both instances, I am unsure.
This isn't a critical issue right now. It can be figured out safely later.
I am now actually 100% positive the DMA mask is 32 bits.
By the way, it's an original X-Fi in this case (I have others to test with). lspci -vvv gives us:
05:01.0 Multimedia audio controller: Creative Labs SB X-Fi Subsystem: Creative Labs Device 0021 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: 32 (1000ns min, 1250ns max), Cache Line Size: 32 bytes Interrupt: pin A routed to IRQ 11 Region 0: I/O ports at d200 [size=32] Region 1: Memory at f0000000 (64-bit, non-prefetchable) [size=2M] Region 3: Memory at ec000000 (64-bit, non-prefetchable) [size=64M] Capabilities:  Power Management version 2 Flags: PMEClk- DSI+ D1+ D2+ AuxCurrent=0mA PME(D0-,D1-,D2-,D3hot-,D3cold-) Status: D0 PME-Enable- DSel=0 DScale=0 PME- Capabilities:  Message Signalled Interrupts: Mask- 64bit+ Queue=0/0 Enable- Address: 0000000000000000 Data: 0000
Kernel is: Linux version 2.6.27 (nenolod@petrie) (gcc version 4.2.4 (Debian 4.2.4-2 +b1)) #1 SMP Sat Oct 11 11:59:08 CDT 2008