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 ROMs
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.
|