Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 2 Jan 2008 12:36:40 -0500
From:      John Baldwin <jhb@freebsd.org>
To:        "Tiffany Snyder" <tiffany.snyder@gmail.com>
Cc:        freebsd-new-bus@freebsd.org
Subject:   Re: Newbus help
Message-ID:  <200801021236.40320.jhb@freebsd.org>
In-Reply-To: <b63e753b0712312044o1528e57dsa8aad1ce8c952d71@mail.gmail.com>
References:  <b63e753b0712290921r57a2993fie6cefa2aa3588792@mail.gmail.com> <200712311252.06116.jhb@freebsd.org> <b63e753b0712312044o1528e57dsa8aad1ce8c952d71@mail.gmail.com>

next in thread | previous in thread | raw e-mail | index | archive | help
On Monday 31 December 2007 11:44:59 pm Tiffany Snyder wrote:
> On Dec 31, 2007 9:52 AM, John Baldwin <jhb@freebsd.org> wrote:
> >
> > On Saturday 29 December 2007 02:39:41 pm Tiffany Snyder wrote:
> > > Hi,
> > > I'm bringing up a system with FreeBSD-6.2 that has 2 Host Bridges. 1
> > > host-PCI and the other is host-Hypertransport bridge. Currently only
> > > the host-PCI bridge gets recognized and cleanly attaches all the
> > > devices underneath it. The questions are;
> > > (1) Can you tell or point to a piece of code that adds a second host
> > > bridge? I assume this get added as a child of nexus
> > > (2) How do I go about defining bus methods for the host-HT bridge and
> > > automatically enabling the newbus system to probe and attach child
> > > devices and bridges below it? Again, pointer to example code is
> > > welcome.
> >
> > Are you using ACPI or a custom BIOS of some sort?
> 
> Custom BIOS that only sets up the PCI host bridge. SW has to manually
> bootstrap the HT host bridge, attach and manage resources for all the
> children below it.

Ok.  Right now that's not easy to do.  I'm working on changing x86 to have a 
logical platform device to handle the non-ACPI and non-PC-AT cases.  Probably 
this will show up as each platform having its own nexus(4) driver and you can 
then enumerate platform-specific devices like PCI host bridges in your nexus 
driver's attach routine.  Right now what you'd have to do is create your 
own 'foo0' that attaches to nexus0 and overrides acpi0 and legacy0 
(unfortunately that means hacking legacy0 as it only checks for acpi0 
currently).

-- 
John Baldwin



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