From owner-freebsd-acpi@FreeBSD.ORG Fri Oct 28 20:13:47 2005 Return-Path: X-Original-To: freebsd-acpi@freebsd.org Delivered-To: freebsd-acpi@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 3CEA616A41F; Fri, 28 Oct 2005 20:13:47 +0000 (GMT) (envelope-from jhb@freebsd.org) Received: from mv.twc.weather.com (mv.twc.weather.com [65.212.71.225]) by mx1.FreeBSD.org (Postfix) with ESMTP id B5D5743D49; Fri, 28 Oct 2005 20:13:46 +0000 (GMT) (envelope-from jhb@freebsd.org) Received: from [10.50.41.234] (Not Verified[10.50.41.234]) by mv.twc.weather.com with NetIQ MailMarshal (v6, 0, 3, 8) id ; Fri, 28 Oct 2005 16:30:32 -0400 From: John Baldwin To: "Moore, Robert" Date: Fri, 28 Oct 2005 16:13:38 -0400 User-Agent: KMail/1.8.2 References: <971FCB6690CD0E4898387DBF7552B90E033A99FE@orsmsx403.amr.corp.intel.com> In-Reply-To: <971FCB6690CD0E4898387DBF7552B90E033A99FE@orsmsx403.amr.corp.intel.com> MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit Content-Disposition: inline Message-Id: <200510281613.41039.jhb@freebsd.org> Cc: freebsd-acpi@freebsd.org, Mathieu Prevot , Jung-uk Kim Subject: Re: ACPI errors on amd64 (sempron) X-BeenThere: freebsd-acpi@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: ACPI and power management development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 28 Oct 2005 20:13:47 -0000 On Friday 28 October 2005 03:43 pm, Moore, Robert wrote: > > > > This looks to me > > > > like the pci_link code is pointing the interrupt source at the > > > > wrong part of the resource descriptor. Perhaps it is not > > > > incrementing the pointer correctly for 64-bit arches. > > I would be interested in knowing if FreeBSD is using the ACPI CA > resource manager code, or is parsing the raw AML resource template > buffers on its own. Well, the acpi_pci_link code mostly uses AcpiWalkResources(), but when doing _SRS to route an IRQ, we do build up a resource list that we hand to AcpiSetCurrentResources(). > One advantage to using the resource manager is that the resources are > converted to a format that is easier for upper code to analyze (and > therefore less prone to error.) In this case though we aren't getting PCI bus numbers out of anything that comes from ACPI. The bus number comes out of the device object for the PCI-PCI or Host-PCI bridge device that is the parent of the bus. While attaching the ACPI PCI bridge driver, we walk the _PRT to build count the number of references from each link device has in the various _PRT tables so that when we assign IRQs we try to spread the reference loads (which aren't but so accurate) evenly across the available IRQs. -- John Baldwin <>< http://www.FreeBSD.org/~jhb/ "Power Users Use the Power to Serve" = http://www.FreeBSD.org