From owner-cvs-all Fri Nov 22 13: 8:13 2002 Delivered-To: cvs-all@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 3773C37B401 for ; Fri, 22 Nov 2002 13:08:10 -0800 (PST) Received: from mail.speakeasy.net (mail17.speakeasy.net [216.254.0.217]) by mx1.FreeBSD.org (Postfix) with ESMTP id B628143E6E for ; Fri, 22 Nov 2002 13:08:09 -0800 (PST) (envelope-from jhb@FreeBSD.org) Received: (qmail 30289 invoked from network); 22 Nov 2002 21:08:08 -0000 Received: from unknown (HELO server.baldwin.cx) ([216.27.160.63]) (envelope-sender ) by mail17.speakeasy.net (qmail-ldap-1.03) with DES-CBC3-SHA encrypted SMTP for ; 22 Nov 2002 21:08:08 -0000 Received: from laptop.baldwin.cx (gw1.twc.weather.com [216.133.140.1]) by server.baldwin.cx (8.12.6/8.12.6) with ESMTP id gAML7x2D043756; Fri, 22 Nov 2002 16:07:59 -0500 (EST) (envelope-from jhb@FreeBSD.org) Message-ID: X-Mailer: XFMail 1.5.2 on FreeBSD X-Priority: 3 (Normal) Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 8bit MIME-Version: 1.0 In-Reply-To: <20021122203546.A17603@freebie.xs4all.nl> Date: Fri, 22 Nov 2002 16:08:04 -0500 (EST) From: John Baldwin To: Wilko Bulte Subject: Re: cvs commit: src/sys/dev/acpica acpi_pcib_acpi.c Cc: cvs-all@FreeBSD.ORG, cvs-committers@FreeBSD.ORG Sender: owner-cvs-all@FreeBSD.ORG Precedence: bulk List-ID: List-Archive: (Web Archive) List-Help: (List Instructions) List-Subscribe: List-Unsubscribe: X-Loop: FreeBSD.ORG On 22-Nov-2002 Wilko Bulte wrote: > On Fri, Nov 22, 2002 at 10:11:13AM -0800, John Baldwin wrote: > > John, > > Could any of this cause the panics people were seeing on -stable with > the patchset you provided? No. All this fixes is people on -current who "lose" PCI busses when using ACPI. -stable doesn't use the ACPI PCI code because the PCI code in -stable is very different from the PCI code in -current. > Wilko > >> jhb 2002/11/22 10:11:13 PST >> >> Modified files: >> sys/dev/acpica acpi_pcib_acpi.c >> Log: >> According to the ACPI spec, the bus number of the child PCI bus of a host >> to PCI bridge can be read be evaluating the _BBN method of the host to PCI >> device. Unfortunately, there appear to be some lazy/ignorant/moronic/ >> whatever BIOS writers that return 0 for _BBN for all host to PCI bridges in >> the system. On a system with a single host to PCI bridge this is not a >> problem as the child bus of that single bridge will be bus 0 anyway. >> However, on systems with multiple host to PCI bridges and l/i/m/w BIOS >> writers this is a major problem resulting in all but the first host to >> PCI bridge failing to attach. So, this adds a workaround. >> >> If the _BBN of a host to PCI bridge is zero and pcib0 already exists >> and is not us, the we use _ADR to look up our PCI function and slot >> (we currently assume we are on bus 0) and use that to call >> host_pcib_get_busno() to try and extract our bus number from config >> registers on the host to PCI bridge device. If that fails, then we make >> an evil assumption that ACPI's _SB_ namespace lays out the host to PCI >> bridges in ascending order and use our pcib unit number as our bus >> number. >> >> Approved by: re >> >> Revision Changes Path >> 1.26 +52 -7 src/sys/dev/acpica/acpi_pcib_acpi.c > ---end of quoted text--- > > -- >| / o / /_ _ wilko@FreeBSD.org >|/|/ / / /( (_) Bulte Arnhem, the Netherlands -- John Baldwin <>< http://www.FreeBSD.org/~jhb/ "Power Users Use the Power to Serve!" - http://www.FreeBSD.org/ To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe cvs-all" in the body of the message