[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Host Bridge BIOS configuration (or lack of!)
- To: Mailing List Recipients <pci-sig-request@znyx.com>
- Subject: Re: Host Bridge BIOS configuration (or lack of!)
- From: "David O'Shea" <daveo@corollary.com>
- Date: Wed, 23 Apr 1997 23:45:34 GMT
- Old-Return-Path: <daveo@corollary.com>
- Resent-Date: Wed, 23 Apr 1997 23:45:34 GMT
- Resent-From: pci-sig-request@znyx.com
- Resent-Message-Id: <"YGngw2.0.Cc4.8-fNp"@dart>
- Resent-Sender: pci-sig-request@znyx.com
Paul,
Most BIOS will not configure Host Bridge class devices. This is
because the motherboard chipsets are themselves such a devices and because
such devices are notoriously non-standard. The Galileo 4 sounds
like it is standard, but that will not help you much. Most BIOS will
ignore these like the plague. Is there a way to change the reported
device class on the Galileo board? If so, I would change the device
class to whatever class of device you are trying to implement. If
no class makes sense, then you can use the old 0,0,0 class for a generic
board.
The host bus bridge devices are excluded from PCI configuration because
the chipset devices are handled separately in the massive undertakings
of the BIOS configuration effort. MOST BIOS sloppily exclude all host
bus bridge devices. Some do it on purpose because such devices are also
notoriously non-standard when it comes to implemented configuration spaces.
As to the Win95 situations. Win95 does not reconfigure any boards
behind PCI to PCI bridges. If a device is behind a PCI to PCI bridge,
then Win95 relies on the BIOS to configure it. It will not allow
you to manually configure a board behind a PPB because then it would
have to program the PPB appropriately, and there is not code to do this
in Win95.
So, it would seem that you have fallen into one of the problem areas
where you have a perfectly compliant board that will not work in
a thousand years. The only good solution is to change your device
class if you can.
Some newer BIOS are more selective about what they will not configure.
For instance they match the VEN ID and DEV ID of the chipset host
bus bridge in order to exclude it, but they will configure other host
bus bridges. But *MOST* BIOS do not do this, even new ones.
David O'Shea
daveo@corollary.com
At 05:35 PM 4/23/97 +0000, Paul Slade wrote:
>Help,
>
>We are using a Galileo Technology 'Galileo 4' board. This consists of
>an R4600 MIPS processor connected to the PCI bus by a Galilieo
>GT-64010A Host Bridge. This appears as Class 0x060400 Host Bridge PCI
>device.
>
>The PCI configuration specifies a type 0 header, with 5 BASE
>ADDRESSES defined of various sizes.
>
>My problem is that most BIOS's that I have tried seem to ignore the
>device at boot up and do not configure the BASE ADDRESS registers. On
>BIOS's that print up which devices have been found, it is not listed.
> [ Text Deleted]
>Does anyone know why the device gets ignored by the BIOS? Is there
>some special significance that BIOS's assume for Host Bridges? Is
>there any work-around?
J Ø Ç