Device Drivers
The Open Firmware startup process and all possible operating systems constitute separate
device environments.
A separate driver is normally required for each device environment in which a device is expected to work. In rare cases, an operating system may be written so that it uses an Open Firmware driver or a driver for another operating system.
The following rules govern the requirements for
device drivers in Power Macintosh computers that support the Open Firmware startup process:
-
As explained in the previous section, Open Firmware drivers must be stored as FCode in a card's expansion ROM and must conform to IEEE Standard 1275.
-
A card's
expansion ROM should also contain all the run-time drivers for different operating systems that might use or support the card.
-
If an operating system preserves and uses the Open Firmware device tree or a data structure derived from it, it should store all device drivers specific to that environment in the device tree as properties of the devices they support. Otherwise the operating system must load device drivers as part of its initialization.
-
Drivers that work with Mac OS must be compiled to native PowerPC code. For further information, see
Writing Native Drivers.
PCI Open Firmware Drivers
provides guidelines for writing device drivers to operate with the Open Firmware startup process.
© 1999 Apple Computer, Inc. (Last Updated 26 March 99)