[PlanetCCRMA] f7: jack/alsa crackle w/ cardbus and hdsp multiface

Fernando Lopez-Lezcano nando@ccrma.Stanford.EDU
Mon Jul 9 20:53:01 2007


On Sat, 2007-07-07 at 10:20 -0700, Scott Davidson wrote:
> Hello,
> 
> I recently upgraded from fc5 to f7 and have since been having problems 
> using a Multiface II card with the cardbus adapter. The output from any 
> jack app is choppy and there is background crackle as well. Jack/Alsa 
> both work fine on the internal laptop card. From the /var/log/messages 
> output, it looks like there *might* be a hardware/pci problem:
> 
> Some interesting dmesg output:
> (if I boot with the default arguments)
> PCI: Bus #03 (-#06) is hidden behind transparent bridge #02 (-#02) (try 
> 'pci=assign-busses')
> PCI: Cannot allocate resource region 0 of device 0000:02:03.0
> 
> (if I boot the kernel with 'lapic pci=assign-busses, i still get)
> PCI: Cannot allocate resource region 0 of device 0000:02:03.0 
> 
> I'm not sure if that is a red herring, but that happens to be the 
> location of the cardbus bridge. I've been testing this using PureData 
> and their sin wave sound card test, but all jack applications seem to 
> exhibit this problem.  I've tried recording the output directly from  PD 
> and playing it back on the internal card, and the artifacts are found in 
> the recording. I've also tried disabling drm and selinux with no luck. 
> This occurs on both the stock kernels and the rt-kernels (with either 
> the default alsa, or the kernel module Fernando just made). From looking 
> at the IRQs, it looks like IRQ10 is pretty full, but that seemed to work 
> fine for FC5.

Exact same hardware as before? It does look like a kernel problem in the
mainline kernel. 

> Is anyone using successfully using hdsp/multiface on F7 using the CCRMA 
> repo packages? Does anyone have any additional troubleshooting ideas?

I used one briefly to test it in my laptop. I was running 64x2 with no
problems, but the test was not very long. 

The only thing that jumps at me from the data in the email are the
latencies of the pci bus cards. The pci cards that have them are set to
128 and the hdsp is set to 255. Is that because you tried to optimize
them?

I normally see latencies on the order of 64... If you lower them, does
it make any difference?

-- Fernando



> Misc system info
> -----------------------
> 
> $ cat .jackdrc
> jackd -R -dalsa -dhw:2 -r48000 -p2048 -n2 -i18 -o18
> 
> 
> $ cat /proc/interrupts
>            CPU0      
>   0:      88908    XT-PIC-XT        timer
>   1:         10    XT-PIC-XT        i8042
>   2:          0    XT-PIC-XT        cascade
>   6:          1    XT-PIC-XT        wbsd
>   7:          1    XT-PIC-XT        parport0
>   8:          3    XT-PIC-XT        rtc
>   9:        589    XT-PIC-XT        acpi
>  10:      74655    XT-PIC-XT        yenta, uhci_hcd:usb1, uhci_hcd:usb2, 
> uhci_hcd:usb3, ehci_hcd:usb4, ohci1394, ipw2200, hdsp, Intel 
> 82801DB-ICH4, Intel 82801DB-ICH4 Modem, eth0, radeon@pci:0000:01:00.0
>  12:        120    XT-PIC-XT        i8042
>  14:      16108    XT-PIC-XT        libata
>  15:       4665    XT-PIC-XT        libata
> NMI:    1312981
> LOC:     131080
> ERR:          0
> MIS:          0
> 
> 
> $ cat /proc/asound/devices
>   2:        : timer
>   3:        : sequencer
>   4: [ 2- 0]: raw midi
>   5: [ 2- 0]: digital audio playback
>   6: [ 2- 0]: digital audio capture
>   7: [ 2- 0]: hardware dependent
>   8: [ 2]   : control
>   9: [ 0- 4]: digital audio playback
>  10: [ 0- 3]: digital audio capture
>  11: [ 0- 2]: digital audio capture
>  12: [ 0- 1]: digital audio capture
>  13: [ 0- 0]: digital audio playback
>  14: [ 0- 0]: digital audio capture
>  15: [ 0]   : control
>  16: [ 1- 0]: digital audio playback
>  17: [ 1- 0]: digital audio capture
>  18: [ 1]   : control
> 
> 
> $ cat /proc/asound/cards
>  0 [I82801DBICH4   ]: ICH4 - Intel 82801DB-ICH4
>                       Intel 82801DB-ICH4 with ALC250 at irq 10
>  1 [Modem          ]: ICH-MODEM - Intel 82801DB-ICH4 Modem
>                       Intel 82801DB-ICH4 Modem at irq 10
>  2 [DSP            ]: H-DSP - Hammerfall DSP
>                       RME Hammerfall DSP + Multiface at 0xd4000000, irq
>                       10
> 
> 
> $ cat /etc/modprobe.conf
> alias eth0 8139too
> alias scsi_hostadapter ata_piix
> alias scsi_hostadapter1 usb-storage
> alias eth1 ipw2200
> alias snd-card-0 snd-intel8x0
> alias snd-card-2 snd-hdsp
> alias snd-slot-2 snd-hdsp
> #install snd-intel8x0 /sbin/modprobe --ignore-install snd-intel8x0 && 
> /usr/sbin/alsactl restore >/dev/null 2>&1 || :
> #remove snd-intel8x0 { /usr/sbin/alsactl store >/dev/null 2>&1 || : ; }; 
> /sbin/modprobe -r --ignore-remove snd-intel8x0
> options ipw2200 hwcrypto=0 associate=0 
> options snd-intel8x0 index=0 
> options snd-hdsp index=2 
> 
> 
> $ cat /proc/asound/version
> Advanced Linux Sound Architecture Driver Version 1.0.14rc3 (Wed Mar 14 
> 07:25:50 2007 UTC).
> 
> 
> $ cat /proc/asound/DSP/hdsp
> RME Hammerfall DSP + Multiface (Card #3)
> Buffers: capture f6400000 playback f6600000
> IRQ: 10 Registers bus: 0xd4000000 VM: 0xf8ab4000
> Control register: 0x10040de
> Control2 register: 0x0
> Status register: 0x2000000
> Status2 register: 0xffff0703
> FIFO status: 0
> MIDI1 Output status: 0xffffff00
> MIDI1 Input status: 0xffffff00
> MIDI2 Output status: 0xffffff00
> MIDI2 Input status: 0xffffff00
> Use Midi Tasklet: on
> 
> Buffer Size (Latency): 8192 samples (2 periods of 32768 bytes)
> Hardware pointer (frames): 0
> Precise pointer: off
> Line out: on
> Firmware version: 5
> 
> Sample Clock Source: Internal 48 kHz
> Preferred Sync Reference: ADAT1
> AutoSync Reference: None
> AutoSync Frequency: 0
> System Clock Mode: Master
> System Clock Frequency: 48000
> System Clock Locked: No
> 
> IEC958 input: Coaxial
> IEC958 output: Coaxial only
> IEC958 quality: Consumer
> IEC958 emphasis: off
> IEC958 NonAudio: off
> IEC958 sample rate: Error flag set
> 
> ADAT1: No Lock
> SPDIF: No Lock
> Word Clock: No Lock
> ADAT Sync: No Lock
> 
> 
> $ /sbin/lspci -vv
> 00:00.0 Host bridge: Intel Corporation 82855PM Processor to I/O 
> Controller (rev 21)
>         Subsystem: COMPAL Electronics Inc Unknown device 0012
>         Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- 
> ParErr- Stepping- SERR- FastB2B-
>         Status: Cap+ 66MHz- UDF- FastB2B+ ParErr- DEVSEL=fast >TAbort- 
> <TAbort- <MAbort+ >SERR- <PERR-
>         Latency: 0
>         Region 0: Memory at b0000000 (32-bit, prefetchable) [size=64M]
>         Capabilities: <access denied>
> 
> 00:01.0 PCI bridge: Intel Corporation 82855PM Processor to AGP 
> Controller (rev 21) (prog-if 00 [Normal decode])
>         Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- 
> ParErr- Stepping- SERR+ FastB2B-
>         Status: Cap- 66MHz+ UDF- FastB2B+ ParErr- DEVSEL=fast >TAbort- 
> <TAbort- <MAbort- >SERR- <PERR-
>         Latency: 128
>         Bus: primary=00, secondary=01, subordinate=01, sec-latency=32
>         I/O behind bridge: 0000c000-0000dfff
>         Memory behind bridge: e0000000-efffffff
>         Prefetchable memory behind bridge: a0000000-afffffff
>         Secondary status: 66MHz+ FastB2B+ ParErr- DEVSEL=medium >TAbort- 
> <TAbort- <MAbort+ <SERR- <PERR-
>         BridgeCtl: Parity- SERR+ NoISA+ VGA+ MAbort- >Reset- FastB2B-
> 
> 00:1d.0 USB Controller: Intel Corporation 82801DB/DBL/DBM 
> (ICH4/ICH4-L/ICH4-M) USB UHCI Controller #1 (rev 03) (prog-if 00 [UHCI])
>         Subsystem: COMPAL Electronics Inc Unknown device 0012
>         Control: I/O+ Mem- BusMaster+ SpecCycle- MemWINV- VGASnoop- 
> ParErr- Stepping- SERR- FastB2B-
>         Status: Cap- 66MHz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- 
> <TAbort- <MAbort- >SERR- <PERR-
>         Latency: 0
>         Interrupt: pin A routed to IRQ 10
>         Region 4: I/O ports at 1200 [size=32]
> 
> 00:1d.1 USB Controller: Intel Corporation 82801DB/DBL/DBM 
> (ICH4/ICH4-L/ICH4-M) USB UHCI Controller #2 (rev 03) (prog-if 00 [UHCI])
>         Subsystem: COMPAL Electronics Inc Unknown device 0012
>         Control: I/O+ Mem- BusMaster+ SpecCycle- MemWINV- VGASnoop- 
> ParErr- Stepping- SERR- FastB2B-
>         Status: Cap- 66MHz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- 
> <TAbort- <MAbort- >SERR- <PERR-
>         Latency: 0
>         Interrupt: pin B routed to IRQ 10
>         Region 4: I/O ports at 1600 [size=32]
> 
> 00:1d.2 USB Controller: Intel Corporation 82801DB/DBL/DBM 
> (ICH4/ICH4-L/ICH4-M) USB UHCI Controller #3 (rev 03) (prog-if 00 [UHCI])
>         Subsystem: COMPAL Electronics Inc Unknown device 0012
>         Control: I/O+ Mem- BusMaster+ SpecCycle- MemWINV- VGASnoop- 
> ParErr- Stepping- SERR- FastB2B-
>         Status: Cap- 66MHz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- 
> <TAbort- <MAbort- >SERR- <PERR-
>         Latency: 0
>         Interrupt: pin C routed to IRQ 10
>         Region 4: I/O ports at 1700 [size=32]
> 
> 00:1d.7 USB Controller: Intel Corporation 82801DB/DBM (ICH4/ICH4-M) USB2 
> EHCI Controller (rev 03) (prog-if 20 [EHCI])
>         Subsystem: COMPAL Electronics Inc Unknown device 0012
>         Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- 
> ParErr- Stepping- SERR- FastB2B-
>         Status: Cap+ 66MHz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- 
> <TAbort- <MAbort- >SERR- <PERR-
>         Latency: 0
>         Interrupt: pin D routed to IRQ 10
>         Region 0: Memory at f4000000 (32-bit, non-prefetchable)
>         [size=1K]
>         Capabilities: <access denied>
> 
> 00:1e.0 PCI bridge: Intel Corporation 82801 Mobile PCI Bridge (rev 83) 
> (prog-if 00 [Normal decode])
>         Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- 
> ParErr- Stepping- SERR+ FastB2B-
>         Status: Cap- 66MHz- UDF- FastB2B+ ParErr- DEVSEL=fast >TAbort- 
> <TAbort- <MAbort- >SERR- <PERR+
>         Latency: 0
>         Bus: primary=00, secondary=02, subordinate=06, sec-latency=32
>         I/O behind bridge: 0000a000-0000bfff
>         Memory behind bridge: d0000000-dfffffff
>         Prefetchable memory behind bridge: 90000000-9fffffff
>         Secondary status: 66MHz- FastB2B+ ParErr- DEVSEL=medium >TAbort- 
> <TAbort- <MAbort+ <SERR- <PERR-
>         BridgeCtl: Parity- SERR+ NoISA+ VGA- MAbort- >Reset- FastB2B-
> 
> 00:1f.0 ISA bridge: Intel Corporation 82801DBM (ICH4-M) LPC Interface 
> Bridge (rev 03)
>         Control: I/O+ Mem+ BusMaster+ SpecCycle+ MemWINV- VGASnoop- 
> ParErr- Stepping- SERR- FastB2B-
>         Status: Cap- 66MHz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- 
> <TAbort- <MAbort- >SERR- <PERR-
>         Latency: 0
> 
> 00:1f.1 IDE interface: Intel Corporation 82801DBM (ICH4-M) IDE 
> Controller (rev 03) (prog-if 8a [Master SecP PriP])
>         Subsystem: COMPAL Electronics Inc Unknown device 0012
>         Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- 
> ParErr- Stepping- SERR- FastB2B-
>         Status: Cap- 66MHz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- 
> <TAbort- <MAbort- >SERR- <PERR-
>         Latency: 0
>         Interrupt: pin A routed to IRQ 10
>         Region 0: I/O ports at 01f0 [size=8]
>         Region 1: I/O ports at 03f4 [size=1]
>         Region 2: I/O ports at 0170 [size=8]
>         Region 3: I/O ports at 0374 [size=1]
>         Region 4: I/O ports at 1100 [size=16]
>         Region 5: Memory at 50000000 (32-bit, non-prefetchable)
>         [size=1K]
> 
> 00:1f.3 SMBus: Intel Corporation 82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) 
> SMBus Controller (rev 03)
>         Subsystem: COMPAL Electronics Inc Unknown device 0012
>         Control: I/O+ Mem- BusMaster- SpecCycle- MemWINV- VGASnoop- 
> ParErr- Stepping- SERR- FastB2B-
>         Status: Cap- 66MHz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- 
> <TAbort- <MAbort- >SERR- <PERR-
>         Interrupt: pin B routed to IRQ 10
>         Region 4: I/O ports at 1400 [size=32]
> 
> 00:1f.5 Multimedia audio controller: Intel Corporation 82801DB/DBL/DBM 
> (ICH4/ICH4-L/ICH4-M) AC'97 Audio Controller (rev 03)
>         Subsystem: COMPAL Electronics Inc Unknown device 0017
>         Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- 
> ParErr- Stepping- SERR- FastB2B-
>         Status: Cap+ 66MHz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- 
> <TAbort- <MAbort- >SERR- <PERR-
>         Latency: 0
>         Interrupt: pin B routed to IRQ 10
>         Region 0: I/O ports at e000 [size=256]
>         Region 1: I/O ports at e100 [size=64]
>         Region 2: Memory at f0000400 (32-bit, non-prefetchable)
>         [size=512]
>         Region 3: Memory at f0000600 (32-bit, non-prefetchable)
>         [size=256]
>         Capabilities: <access denied>
> 
> 00:1f.6 Modem: Intel Corporation 82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) 
> AC'97 Modem Controller (rev 03) (prog-if 00 [Generic])
>         Subsystem: COMPAL Electronics Inc Unknown device 0012
>         Control: I/O+ Mem- BusMaster+ SpecCycle- MemWINV- VGASnoop- 
> ParErr- Stepping- SERR- FastB2B-
>         Status: Cap+ 66MHz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- 
> <TAbort- <MAbort- >SERR- <PERR-
>         Latency: 0
>         Interrupt: pin B routed to IRQ 10
>         Region 0: I/O ports at e200 [size=256]
>         Region 1: I/O ports at e300 [size=128]
>         Capabilities: <access denied>
> 
> 01:00.0 VGA compatible controller: ATI Technologies Inc RV350 [Mobility 
> Radeon 9600 M10] (prog-if 00 [VGA])
>         Subsystem: COMPAL Electronics Inc Unknown device 0012
>         Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- 
> ParErr- Stepping- SERR- FastB2B-
>         Status: Cap+ 66MHz+ UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- 
> <TAbort- <MAbort- >SERR- <PERR-
>         Latency: 128 (2000ns min), Cache Line Size: 16 bytes
>         Interrupt: pin A routed to IRQ 10
>         Region 0: Memory at a8000000 (32-bit, prefetchable) [size=128M]
>         Region 1: I/O ports at c100 [size=256]
>         Region 2: Memory at e0010000 (32-bit, non-prefetchable)
>         [size=64K]
>         [virtual] Expansion ROM at a0000000 [disabled] [size=128K]
>         Capabilities: <access denied>
> 
> 02:00.0 FireWire (IEEE 1394): VIA Technologies, Inc. IEEE 1394 Host 
> Controller (rev 80) (prog-if 10 [OHCI])
>         Subsystem: COMPAL Electronics Inc Unknown device 0012
>         Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- 
> ParErr- Stepping+ SERR- FastB2B-
>         Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=medium >TAbort- 
> <TAbort- <MAbort- >SERR- <PERR-
>         Latency: 128 (8000ns max), Cache Line Size: 16 bytes
>         Interrupt: pin A routed to IRQ 10
>         Region 0: Memory at d0001800 (32-bit, non-prefetchable)
>         [size=2K]
>         Region 1: I/O ports at a100 [size=128]
>         Capabilities: <access denied>
> 
> 02:01.0 Ethernet controller: Realtek Semiconductor Co., Ltd. 
> RTL-8139/8139C/8139C+ (rev 10)
>         Subsystem: COMPAL Electronics Inc Unknown device 0012
>         Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- 
> ParErr- Stepping- SERR- FastB2B-
>         Status: Cap+ 66MHz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- 
> <TAbort- <MAbort- >SERR- <PERR-
>         Latency: 128 (8000ns min, 16000ns max)
>         Interrupt: pin A routed to IRQ 10
>         Region 0: I/O ports at a000 [size=256]
>         Region 1: Memory at d0001000 (32-bit, non-prefetchable)
>         [size=256]
>         Capabilities: <access denied>
> 
> 02:02.0 Network controller: Intel Corporation PRO/Wireless 2200BG 
> Network Connection (rev 05)
>         Subsystem: Intel Corporation Unknown device 2701
>         Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- 
> ParErr- Stepping- SERR- FastB2B-
>         Status: Cap+ 66MHz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- 
> <TAbort- <MAbort- >SERR- <PERR-
>         Latency: 128 (750ns min, 6000ns max)
>         Interrupt: pin A routed to IRQ 10
>         Region 0: Memory at d0000000 (32-bit, non-prefetchable)
>         [size=4K]
>         Capabilities: <access denied>
> 
> 02:03.0 CardBus bridge: ENE Technology Inc CB1410 Cardbus Controller 
> (rev 01)
>         Subsystem: COMPAL Electronics Inc Unknown device 0012
>         Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- 
> ParErr- Stepping- SERR- FastB2B-
>         Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=medium >TAbort- 
> <TAbort- <MAbort- >SERR- <PERR-
>         Latency: 168, Cache Line Size: 128 bytes
>         Interrupt: pin A routed to IRQ 10
>         Region 0: Memory at d0002000 (32-bit, non-prefetchable)
>         [size=4K]
>         Bus: primary=02, secondary=03, subordinate=06, sec-latency=176
>         Memory window 0: 90000000-93fff000 (prefetchable)
>         Memory window 1: d4000000-d7fff000
>         I/O window 0: 0000a400-0000a4ff
>         I/O window 1: 0000a800-0000a8ff
>         BridgeCtl: Parity- SERR- ISA- VGA- MAbort- >Reset- 16bInt- 
> PostWrite+
>         16-bit legacy interface ports at 0001
> 
> 03:00.0 Multimedia audio controller: Xilinx Corporation RME Hammerfall 
> DSP (rev 32)
>         Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- 
> ParErr- Stepping+ SERR- FastB2B-
>         Status: Cap- 66MHz- UDF- FastB2B- ParErr- DEVSEL=medium >TAbort- 
> <TAbort- <MAbort- >SERR- <PERR-
>         Latency: 255
>         Interrupt: pin A routed to IRQ 10
>         Region 0: Memory at d4000000 (32-bit, non-prefetchable)
>         [size=64K]
> 
> 
> 
> 
> 
> 
> 
> 
>