From owner-acpi-jp@jp.FreeBSD.org Thu Oct 17 03:34:46 2002
Received: (from daemon@localhost)
	by castle.jp.FreeBSD.org (8.11.6+3.4W/8.11.3) id g9GIYkl17010;
	Thu, 17 Oct 2002 03:34:46 +0900 (JST)
	(envelope-from owner-acpi-jp@jp.FreeBSD.org)
Received: from mail.speakeasy.net (mail16.speakeasy.net [216.254.0.216])
	by castle.jp.FreeBSD.org (8.11.6+3.4W/8.11.3) with ESMTP/inet id g9GIYg317005
	for <acpi-jp@jp.FreeBSD.org>; Thu, 17 Oct 2002 03:34:43 +0900 (JST)
	(envelope-from jhb@FreeBSD.org)
Received: (qmail 18415 invoked from network); 16 Oct 2002 18:34:40 -0000
Received: from unknown (HELO server.baldwin.cx) ([216.27.160.63])
          (envelope-sender <jhb@FreeBSD.org>)
          by mail16.speakeasy.net (qmail-ldap-1.03) with DES-CBC3-SHA encrypted SMTP
          for <acpi-jp@jp.FreeBSD.org>; 16 Oct 2002 18:34:40 -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 g9GIYbn5039564
	for <acpi-jp@jp.FreeBSD.org>; Wed, 16 Oct 2002 14:34:38 -0400 (EDT)
	(envelope-from jhb@FreeBSD.org)
Message-ID: <XFMail.20021016143440.jhb@FreeBSD.org>
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
From: John Baldwin <jhb@freebsd.org>
To: acpi-jp@jp.FreeBSD.org
Reply-To: acpi-jp@jp.FreeBSD.org
Precedence: list
Date: Wed, 16 Oct 2002 14:34:40 -0400
X-Sequence: acpi-jp 1896
Subject: [acpi-jp 1896] multiple host-PCI bridges
Errors-To: owner-acpi-jp@jp.FreeBSD.org
Sender: owner-acpi-jp@jp.FreeBSD.org
X-Originator: jhb@FreeBSD.org
X-Distribute: distribute version 2.1 (Alpha) patchlevel 24e+021016

Ok, this is somewhat targeted at the Intel guys at least the
first part.  It seems that most systems with multiple host-PCI
bridges in them have decided to set the _BBN to zero for all
host-PCI bridges effectively making _BBN worthless in that case.
The problem is that we need a way to determine what the bus
number of a host-PCI bridge is.  The BIOS's in question do seem
to include valid _ADR's, so if we assume that the bridges are
on bus 0, we can address and read their PCI config registers.
However, we then have the problem that there doesn't seem to be
a standard way for obtaining the bus number from a host-PCI
bridge, only for doing so with PCI-PCI bridges.  So, like, what
are we supposed to do?  I'm thinking of sharing some code between
our non-ACPI PCI bus code and the ACPI PCI bus code that uses
the vendor ID's to read the bus number for PCI chipsets that we
know about.  However, this seems kind of gross at best.  Would
be nice if APCI actually worked in this regard. :(

-- 

John Baldwin <jhb@FreeBSD.org>  <><  http://www.FreeBSD.org/~jhb/
"Power Users Use the Power to Serve!"  -  http://www.FreeBSD.org/
