Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 16 Oct 2006 22:18:56 +0200
From:      Erik Norgaard <norgaard@locolomo.org>
To:        John Baldwin <jhb@freebsd.org>
Cc:        freebsd-mobile@freebsd.org
Subject:   Re: ACPI Problems: IRQ conflicts on USB controllers and SATA controller
Message-ID:  <4533E930.70804@locolomo.org>
In-Reply-To: <200610131449.39621.jhb@freebsd.org>
References:  <452E3E0B.6040709@locolomo.org> <200610121606.22200.jhb@freebsd.org> <452FC5C6.1080304@locolomo.org> <200610131449.39621.jhb@freebsd.org>

next in thread | previous in thread | raw e-mail | index | archive | help
John Baldwin wrote:

> Ah, I didn't MFC the patch to let you specify invalid links.  Try the patch 
> below (MFC of 1.54 of acpi_pci_link.c):

OK, I applied the patch and tried setting

   hw.pci.link.LNKB.irq=10
   hw.pci.link.LNKD.irq=10
   hw.pci.link.LNKF.irq=10

As you suggested, but no luck:

a) Only IRQ's set as above in loader.conf:

85% interrupt, surprisingly, the usb stick appears fast and mounts fast, 
but the system is slow: I tried timing make on the acpi kernel module, 
after 7 minutes it hadn't finished.

b) As above but pci_link disabled:

 >85% interrupt, and trying to get out of top crashed the system.

c) As a) but with apic disabled:

Won't boot: hangs when kernel finish identifying devices, sometimes 
before. ACPI errors:

   ACPI-0800 AcpiEvGpeDispatch No handler or method for GPE[ 6] disabling
     event

d) b+c:

USB stick is found after significant amount of time and won't mount.

The dmesg etc are here http://www.locolomo.org/src/acpi/, all with the 
keyword "patch" in the file name.

:(

Looking at the dmesg's something seems to be going on on usb2:

rr232x: no controller detected.
     ACPI-0800: *** Error: AcpiEvGpeDispatch: No handler or method for 
GPE[ 6], disabling event
     ACPI-0800: *** Error: AcpiEvGpeDispatch: No handler or method for 
GPE[ 6], disabling event
     ACPI-0800: *** Error: AcpiEvGpeDispatch: No handler or method for 
GPE[ 6], disabling event
     ACPI-0800: *** Error: AcpiEvGpeDispatch: No handler or method for 
GPE[ 6], disabling event
     ACPI-0800: *** Error: AcpiEvGpeDispatch: No handler or method for 
GPE[ 6], disabling event
     ACPI-0800: *** Error: AcpiEvGpeDispatch: No handler or method for 
GPE[ 6], disabling event
     ACPI-0800: *** Error: AcpiEvGpeDispatch: No handler or method for 
GPE[ 6], disabling event
     ACPI-0800: *** Error: AcpiEvGpeDispatch: No handler or method for 
GPE[ 6], disabling event
usb2: host controller process error
usb2: host controller halted
acpi_acad0: acline initialization start

which occurs when pci_link is enabled w/wo apic.

When both apic and pci_link are disabled, I find this line:

rr232x: no controller detected.
Interrupt storm detected on "irq9:"; throttling interrupt source
acpi_acad0: acline initialization start

When apic is disabled the IRQ's change (which is to be expected I 
guess?) the range 16-23 is no longer used. In that case I found 
uhci1/usb1 assigned irq 9 but it is uhci2/usb2 which is routed to irq 3 
that fails.

??

Thanks, 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?4533E930.70804>