Date: Mon, 09 Oct 2006 22:35:07 +0200 From: Erik Norgaard <norgaard@locolomo.org> To: questions@freebsd.org Subject: IRQ conflicts on USB controlers Message-ID: <452AB27B.5060607@locolomo.org>
next in thread | raw e-mail | index | archive | help
Hi: I have a problem with this buggy hardware (Sony VAIO, don't buy). Background: Booting with both acpi and apic enabled (if the system doesn't die with some fatal trap) the system grinds to a halt with 85% interrupt activity. Booting with apic disabled solves that problem, but then the system freezes after a while and while the system is still functional there is 3.5-4% interrupt when running top. Disabling pci_link boots the system up stable, but not all devices are configured correctly. There are IRQ conflicts and interrupt storms. Without pcilink irq's are not configured correctly and with the system eventually freezes. I do not know if I can assume the irq's assigned with pcilink enabled as I don't know if this is what causes the conflict. The problem: Without pcilink two UHCI controlers are not assigned valid irqs and USB is slow, a usb stick takes a long time before it appears as a mountable device. There is an irq storm at irq 9, both with and without pcilink. The devices (with pcilink) which get irq 9 are the ichsmb and a USB controler (UHCI). Things get more messy: There's a built in web cam (USB 2.0) attached to the usb port. addr 1: UHCI root hub, Intel addr 1: UHCI root hub, Intel addr 1: EHCI root hub, Intel addr 2: USB2.0 Web Camera, Vimicro Corp. I believe irqs changes when I boot with/without pcilink: with pcilink I have: 00:1d.0 USB Controller: USB UHCI #1 (rev 03) (prog-if 00 [UHCI]) Flags: bus master, medium devsel, latency 0, IRQ 5 00:1d.1 USB Controller: USB UHCI #2 (rev 03) (prog-if 00 [UHCI]) Flags: bus master, medium devsel, latency 0, IRQ 9 00:1d.2 USB Controller: USB UHCI #3 (rev 03) (prog-if 00 [UHCI]) Flags: bus master, medium devsel, latency 0, IRQ 3 00:1d.3 USB Controller: USB UHCI #4 (rev 03) (prog-if 00 [UHCI]) Flags: bus master, medium devsel, latency 0, IRQ 10 00:1d.7 USB Controller: USB2 EHCI (rev 03) (prog-if 20 [EHCI]) Flags: bus master, medium devsel, latency 0, IRQ 5 and without pcilink: 00:1d.0 USB Controller: USB UHCI #1 (rev 03) (prog-if 00 [UHCI]) Flags: bus master, medium devsel, latency 0, IRQ 5 00:1d.1 USB Controller: USB UHCI #2 (rev 03) (prog-if 00 [UHCI]) Flags: bus master, medium devsel, latency 0, IRQ 10 00:1d.2 USB Controller: USB UHCI #3 (rev 03) (prog-if 00 [UHCI]) Flags: bus master, medium devsel, latency 0, IRQ 255 00:1d.3 USB Controller: USB UHCI #4 (rev 03) (prog-if 00 [UHCI]) Flags: bus master, medium devsel, latency 0, IRQ 255 00:1d.7 USB Controller: USB2 EHCI (rev 03) (prog-if 20 [EHCI]) Flags: bus master, medium devsel, latency 0, IRQ 5 Question: How do I assign IRQs to the usb controlers? pciconf shows the controlers on pci0:29:0 .. pci0:29:3 (UHCI) and pci0:29:7 (EHCI). How do I determine which IRQs to assign - apart from trial and error? Thansk for reading all the way down to the questions :) double up for any help :D Cheers, Erik -- Ph: +34.666334818 web: http://www.locolomo.org X.509 Certificate: http://www.locolomo.org/crt/8D03551FFCE04F0C.crt Key ID: 69:79:B8:2C:E3:8F:E7:BE:5D:C3:C3:B1:74:62:B8:3F:9F:1F:69:B9
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?452AB27B.5060607>