Technical Q&A

HW 59 - Why did the name of the PCI bridge change? (29-Mar-99)


Q: Why did the name of the PCI bridge change from “Bandit” or “Grackle” to a generic name such as “pci”?

A: Name is a PCI device property that tells the Open Firmware and its client, say, the Mac OS, the name of a node in the device tree. When the first Macintosh with Open Firmware (the Power Macintosh 9500) was introduced, the concept of generic names was not part of the Open Firmware bindings. Apple gave the name of “Bandit” to the PCI bridge. But what was “Bandit”? No one knew except engineers working on the 9500. This presented a bad situation, so the concept of generic names was introduced. For a PCI bridge between the host bus and the PCI bus the generic name was “pci.” This presented yet another bad dilemma: what to do with the devices already in use? If a driver was looking for a node name of “Bandit,” it would not find it since it had been changed to “pci.” So the compatible property was used to store the old name of “Bandit” while the name property had the generic name. The boot ROM code was changed to search first on the name property. If that failed, the next step was to search the compatible property. A developer should always search using the boot ROM’s algorithm just described.


-- Wayne Flansburg
Worldwide Developer Technical Support

Technical Q&As | Contents
Previous Question | Next Question

To contact us, please use the Contact Us page.