Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 19 Apr 2013 17:26:31 -0400
From:      John Baldwin <jhb@freebsd.org>
To:        Benjamin Lee <ben@b1c1l1.com>
Cc:        freebsd-acpi@freebsd.org
Subject:   Re: panic: acpi_pci_link_srs_from_crs: can't put non-ISA IRQ 20 in legacy IRQ resource type)
Message-ID:  <201304191726.31089.jhb@freebsd.org>
In-Reply-To: <20130419131849.7357c8f6@b1c1l1.com>
References:  <20130418124940.47e3618a@b1c1l1.com> <201304191131.49433.jhb@freebsd.org> <20130419131849.7357c8f6@b1c1l1.com>

next in thread | previous in thread | raw e-mail | index | archive | help
On Friday, April 19, 2013 4:18:49 pm Benjamin Lee wrote:
> On Fri, 19 Apr 2013 11:31:49 -0400, John Baldwin <jhb@freebsd.org> wrote:
> > On Thursday, April 18, 2013 3:49:40 pm Benjamin Lee wrote:
> > > I have a system that panics on boot with 10-CURRENT and boots with many
> > > ACPI error messages and non-functional devices with 9.1-RELEASE.
> > > 
> > > Motherboard is Foxconn C51XEM2AA (NVIDIA nForce 590) desktop board.
> [...]
> > > Even though 9.1-RELEASE boots successfully, devices such as the ehci USB
> > > controller and SATA controller do not work.
> > 
> > Ugh, your BIOS does unexpected things.  It uses a _CRS for these pci link
> > devices that uses a "short" IRQ resource, but uses an extended IRQ 
resource in
> > _PRS (and expects an extended one in _SRS).  We use _CRS as a template for 
the
> > resource to build.
> > 
> > Try this patch.  It's a bit hackish, but it forces us to not use _CRS as a
> > template if _CRS uses a "short" IRQ resource, but the link supports non-
ISA
> > IRQs.
> [...]
> 
> Thanks, that fixed the panic and the system boots.  Now it is
> complaining about AE_AML_BAD_RESOURCE_LENGTH and still unable to route
> IRQs, but it definitely looks better than the ACPI parsing errors in 9:
> 
> pcib0: allocated type 3 (0xdffff000-0xdfffffff) for rid 10 of pci0:0:10:0
> pcib0: matched entry for 0.10.INTA (src \_SB_.PCI0.AUBA:0)
> pci_link26: Picked IRQ 20 with weight 0
> pci_link26: Unable to route IRQs: AE_AML_BAD_RESOURCE_LENGTH
> 
> Full boot -v output: http://www.b1c1l1.com/media/debug/20130419-10-patched-
boot.txt.gz

Can you add some printfs to the places that return the 
AE_AML_BAD_RESOURCE_LENGTH to see which one is being triggered?  (Just look 
for that constant in sys/contrib/dev/acpica to find the possible places.)

-- 
John Baldwin



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201304191726.31089.jhb>