Subject: MSI-7093 USB & audio problems (ATI IXP chipset), IRQ related?
To: None <port-i386@netbsd.org>
From: Tobias Nygren <tnn@netilium.org>
List: port-i386
Date: 08/20/2005 16:50:42
Hi,

I have an MSI-7093 (RS480-M2) motherboard with a radeon xpress chipset.
When I enable onboard USB in the BIOS I get 99% time spent serving intrs,
and it appears to pump several thousand interrupts per second.
USB does not work. I have tried various combinations of ACPI and INTR_FIXUP.
With ACPI enabled I don't see IRQ storms, but it still doesn't work.

Also the onboard audio does not work. Applications using the audio
device immediately block. I'm running -current and the latest BIOS firmware.

-Tobias

dmesg follows(amd64, but the problems are the same on i386):

NetBSD 3.99.7 (GENERIC) #0: Sun Aug 14 16:52:21 CEST 2005
        tnn@soyokaze.int.nygren.pp.se:/scratch/src-HEAD/work/GENERIC
total memory = 510 MB
avail memory = 483 MB
mainbus0 (root)
cpu0 at mainbus0: apid 0 (boot processor)
cpu0: AMD Athlon(tm) 64 Processor 3000+, 1790.96 MHz
cpu0: features: e7dbfbff<FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR>
cpu0: features: e7dbfbff<PGE,MCA,CMOV,PAT,PSE36,MPC,NOX,MMXX,MMX>
cpu0: features: e7dbfbff<FXSR,SSE,SSE2,LONG,3DNOW2,3DNOW>
cpu0: I-cache 64 KB 64B/line 2-way, D-cache 64 KB 64B/line 2-way
cpu0: L2 cache 512 KB 64B/line 16-way
cpu0: ITLB 32 4 KB entries fully associative, 8 4 MB entries fully 
associative
cpu0: DTLB 32 4 KB entries fully associative, 8 4 MB entries fully 
associative
cpu0: calibrating local timer
cpu0: apic clock running at 198 MHz
cpu0: 8 page colors
ioapic0 at mainbus0 apid 2 (I/O APIC)
ioapic0: pa 0xfec00000, version 21, 24 pins
acpi0 at mainbus0
acpi0: using Intel ACPI CA subsystem version 20050408
acpi0: X/RSDT: OemId <RS480 ,AWRDACPI,42302e31>, AslId <AWRD,00000000>
acpi0: SCI interrupting at int 9
acpi0: fixed-feature power button present
acpi0: fixing up intr link \_SB_.PCI0.LPC0.LNKC
acpi0: fixing up intr link \_SB_.PCI0.LPC0.LNKA
mpacpi: could not get bus number, assuming bus 0
ACPI Object Type 'Processor' (0x0c) at acpi0 not configured
ACPI Object Type 'Processor' (0x0c) at acpi0 not configured
acpibut0 at acpi0 (PNP0C0C): ACPI Power Button
PNP0A03 [PCI Bus] at acpi0 not configured
PNP0C02 [Plug and Play motherboard register resources] at acpi0 not 
configured
PNP0C0F [PCI interrupt link device] at acpi0 not configured
PNP0C0F [PCI interrupt link device] at acpi0 not configured
PNP0C0F [PCI interrupt link device] at acpi0 not configured
PNP0C0F [PCI interrupt link device] at acpi0 not configured
PNP0000 [AT Interrupt Controller] at acpi0 not configured
PNP0200 [AT DMA Controller] at acpi0 not configured
attimer1 at acpi0 (PNP0100): AT Timer
attimer1: io 0x40-0x43 irq 0
PNP0B00 [AT Real-Time Clock] at acpi0 not configured
pcppi1 at acpi0 (PNP0800)
pcppi1: io 0x61
midi0 at pcppi1: PC speaker
sysbeep0 at pcppi1
PNP0C04 [Math Coprocessor] at acpi0 not configured
PNP0C02 [Plug and Play motherboard register resources] at acpi0 not 
configured
com2 at acpi0 (PNP0501-1)
com2: io 0x3f8-0x3ff irq 4
com2: ns16550a, working fifo
lpt2 at acpi0 (PNP0401)
lpt2: io 0x378-0x37f,0x778-0x77b irq 7 drq 3
pckbc1 at acpi0 (PNP0F13): aux port
pckbc1: irq 12
pckbc2 at acpi0 (PNP0303): kbd port
pckbc2: io 0x60,0x64 irq 1
PNP0C02 [Plug and Play motherboard register resources] at acpi0 not 
configured
PNP0C01 [System Board] at acpi0 not configured
pcppi1: attached to attimer1
pckbd0 at pckbc2 (kbd slot)
pckbc2: using irq 1 for kbd slot
wskbd0 at pckbd0: console keyboard
pms0 at pckbc2 (aux slot)
pckbc2: using irq 12 for aux slot
wsmouse0 at pms0 mux 0
pci0 at mainbus0 bus 0: configuration mode 1
pci0: i/o space, memory space enabled, rd/line, rd/mult, wr/inv ok
pchb0 at pci0 dev 0 function 0
pchb0: ATI Technologies RS480 Host Bridge (rev. 0x00)
ixpide0 at pci0 dev 17 function 0
ixpide0: ATI Technologies IXP IDE Controller (rev. 0x00)
ixpide0: bus-master DMA support present
ixpide0: primary channel configured to native-PCI mode
ixpide0: using ioapic0 pin 23 (irq 10) for native-PCI interrupt
atabus0 at ixpide0 channel 0
ixpide0: secondary channel configured to native-PCI mode
atabus1 at ixpide0 channel 1
ixpide1 at pci0 dev 18 function 0
ixpide1: ATI Technologies IXP IDE Controller (rev. 0x00)
ixpide1: bus-master DMA support present
ixpide1: primary channel configured to native-PCI mode
ixpide1: using ioapic0 pin 22 (irq 11) for native-PCI interrupt
atabus2 at ixpide1 channel 0
ixpide1: secondary channel configured to native-PCI mode
atabus3 at ixpide1 channel 1
ohci0 at pci0 dev 19 function 0: ATI Technologies SB400 USB Host 
Controller (rev. 0x00)
ohci0: interrupting at ioapic0 pin 18 (irq 3)
ohci0: OHCI version 1.0, legacy support
usb0 at ohci0: USB revision 1.0
uhub0 at usb0
uhub0: ATI Technologie OHCI root hub, class 9/0, rev 1.00/1.00, addr 1
uhub0: 4 ports with 4 removable, self powered
ohci1 at pci0 dev 19 function 1: ATI Technologies SB400 USB Host 
Controller (rev. 0x00)
ohci1: interrupting at ioapic0 pin 18 (irq 3)
ohci1: OHCI version 1.0, legacy support
usb1 at ohci1: USB revision 1.0
uhub1 at usb1
uhub1: ATI Technologie OHCI root hub, class 9/0, rev 1.00/1.00, addr 1
uhub1: 4 ports with 4 removable, self powered
ehci0 at pci0 dev 19 function 2: ATI Technologies SB400 USB2 Host 
Controller (rev. 0x00)
ehci0: interrupting at ioapic0 pin 18 (irq 3)
ehci0: EHCI version 1.0
ehci0: companion controllers, 4 ports each: ohci0 ohci1
usb2 at ehci0: USB revision 2.0
uhub2 at usb2
uhub2: ATI Technologies EHCI root hub, class 9/0, rev 2.00/1.00, addr 1
uhub2: 8 ports with 8 removable, self powered
ATI Technologies SB400 SMB Controller (SMBus serial bus, revision 0x04) 
at pci0 dev 20 function 0 not configured
ixpide2 at pci0 dev 20 function 1
ixpide2: ATI Technologies IXP IDE Controller (rev. 0x00)
ixpide2: bus-master DMA support present
ixpide2: primary channel configured to compatibility mode
ixpide2: primary channel interrupting at ioapic0 pin 14 (irq 14)
atabus4 at ixpide2 channel 0
ixpide2: secondary channel configured to compatibility mode
ixpide2: secondary channel interrupting at ioapic0 pin 15 (irq 15)
atabus5 at ixpide2 channel 1
pcib0 at pci0 dev 20 function 3
pcib0: ATI Technologies SB400 PCI-ISA Bridge (rev. 0x00)
ppb0 at pci0 dev 20 function 4: ATI Technologies SB400 PCI-PCI Bridge 
(rev. 0x00)
pci1 at ppb0 bus 1
pci1: i/o space, memory space enabled
eap0 at pci1 dev 0 function 0: Ensoniq AudioPCI 97 ES1373-B (rev. 0x06)
eap0: interrupting at ioapic0 pin 20 (irq 3)
eap0: ac97: SigmaTel STAC9721/23 codec; 18 bit DAC, 18 bit ADC, SigmaTel 3D
eap0: ac97: ext id 200<AMAP>
audio0 at eap0: full duplex, mmap, independent
midi1 at eap0: AudioPCI MIDI UART
vga0 at pci1 dev 1 function 0: ATI Technologies Radeon 9200 Pro (rev. 0x01)
wsdisplay0 at vga0 kbdmux 1: console (80x25, vt100 emulation), using wskbd0
wsmux1: connecting to wsdisplay0
ATI Technologies Radeon 9200 Pro Secondary (miscellaneous display, 
revision 0x01) at pci1 dev 1 function 1 not c
onfigured
wm0 at pci1 dev 2 function 0: Intel i82540EM 1000BASE-T Ethernet, rev. 2
wm0: interrupting at ioapic0 pin 22 (irq 10)
wm0: 32-bit 33MHz PCI bus
wm0: 64 word (6 address bits) MicroWire EEPROM
wm0: Ethernet address 00:07:e9:15:65:56
makphy0 at wm0 phy 1: Marvell 88E1011 Gigabit PHY, rev. 3
makphy0: 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, 1000baseT, 
1000baseT-FDX, auto
rtk0 at pci1 dev 3 function 0: Realtek 8139 10/100BaseTX
rtk0: interrupting at ioapic0 pin 20 (irq 3)
rtk0: Ethernet address 00:11:09:bc:7b:27
ukphy0 at rtk0 phy 7: Generic IEEE 802.3u media interface
ukphy0: OUI 0x000000, model 0x0000, rev. 0
ukphy0: 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto
fwohci0 at pci1 dev 4 function 0: VIA Technologies VT6306 IEEE 1394 Host 
Controller (rev. 0x80)
fwohci0: interrupting at ioapic0 pin 21 (irq 11)
fwohci0: OHCI version 1.10 (ROM=1)
fwohci0: No. of Isochronous channels is 4.
fwohci0: EUI64 00:10:dc:00:00:8d:91:74
fwohci0: Phy 1394a available S400, 2 ports.
fwohci0: Link S400, max_rec 2048 bytes.
ieee1394if0 at fwohci0: IEEE1394 bus
fwip0 at ieee1394if0: IP over IEEE1394
fwohci0: Initiate bus reset
auixp0 at pci0 dev 20 function 5: ATI Technologies IXP AC'97 Audio 
Controller (rev. 0x00)
auixp0: interrupting at ioapic0 pin 17 (irq 10)
auixp0: soft resetting aclink
pchb1 at pci0 dev 24 function 0
pchb1: Advanced Micro Devices AMD64 HyperTransport configuration (rev. 0x00)
pchb2 at pci0 dev 24 function 1
pchb2: Advanced Micro Devices AMD64 Address Map configuration (rev. 0x00)
pchb3 at pci0 dev 24 function 2
pchb3: Advanced Micro Devices AMD64 DRAM configuration (rev. 0x00)
pchb4 at pci0 dev 24 function 3
pchb4: Advanced Micro Devices AMD64 Miscellaneous configuration (rev. 0x00)
isa0 at pcib0
ioapic0: enabling
fwohci0: node_id=0xc800ffc0, gen=1, CYCLEMASTER mode
ieee1394if0: 1 nodes, maxhop <= 0, cable IRM = 0 (me)
ieee1394if0: bus manager 0 (me)
auixp0: ac97: Avance Logic ALC658 codec; 20 bit DAC, 18 bit ADC, no 3D 
stereo
auixp0: ac97: ext id 9c7<AC97_23,LDAC,SDAC,CDAC,SPDIF,DRA,VRA>
audio1 at auixp0: full duplex, mmap, independent
Kernelized RAIDframe activated
wd0 at atabus4 drive 0: <SanDisk SDCFH-64>
wd0: drive supports 1-sector PIO transfers, LBA addressing
wd0: 62720 KB, 490 cyl, 8 head, 32 sec, 512 bytes/sect x 125440 sectors
wd0: 32-bit data port
wd0: drive supports PIO mode 4
wd0(ixpide2:0:0): using PIO mode 4
wd1 at atabus5 drive 0: <ST33210A>
wd1: drive supports 16-sector PIO transfers, LBA addressing
wd1: 3098 MB, 6296 cyl, 16 head, 63 sec, 512 bytes/sect x 6346368 sectors
wd1: 32-bit data port
wd1: drive supports PIO mode 4, DMA mode 2, Ultra-DMA mode 2 (Ultra/33)
wd1(ixpide2:1:0): using PIO mode 4, Ultra-DMA mode 2 (Ultra/33) (using DMA)
boot device: wm0
root on wm0