PATH 
ADC Home > Documentation > Hardware > Device Managers and Drivers > PCI Card Services > Designing PCI Cards and Drivers for Power Macintosh Computers


  

Driver Gestalt

Every device driver has a unique set of family-specific configuration and state information that it maintains. This configuration information often needs to be passed between the family expert and the device drivers it manages. To aid in this communication process, the native driver architecture provides a driver gestalt mechanism. Driver gestalt provides a common, unified mechanism for both native and 68K device drivers by which clients (such as applications) or family subsystem managers (such as the SCSI Manager or the Display Manager) can access family-specific configuration and state information about the driver.

For instance, the Start Manager uses driverGestalt to interrogate SCSI drivers for family-specific information to determine from which SCSI device to boot. The information communicated back to the Start Manager is family specific (specific to the SCSI Manager) and contains necessary data for system startup-- SCSI bus ID, device ID, and disk partition. Each I/O subsystem defines unique driverGestaltSelector and driverGestaltResponse formats. The SCSI Manager driver gestalt formats are SCSI based, the Display Manager formats convey video information, and so on. Cross-device-family driverGestalt calls are not advised; for example, don't make SCSI Manager driver gestalt calls to video drivers.

Note

Support for driver gestalt is optional, but it is highly recommended. If a PCI device driver does not support driver gestalt, it may not work with some applications or in certain system configurations.

For general information about the Mac OS gestalt mechanism, see Inside Macintosh: Operating System Utilities. The driver gestalt and Mac OS gestalt mechanisms differ in that the driver gestalt provides a way for the Mac OS to get information about device drivers and the traditional Mac OS gestalt provides a way for device drivers to get information about the Mac OS.

System gestalt for PCI-based Macintosh computers, which is different from driver gestalt, is described in Macintosh System Gestalt.

Supporting and Testing Driver Gestalt

Implementing Driver Gestalt

DCE Flags

Using DriverGestalt and DriverConfigure

Other Control and Status Requests

Implementing Private Control and Status Calls


© 1999 Apple Computer, Inc. – (Last Updated 26 March 99)