Skip to main content
Home Documents Macintosh Native Driver White Paper
Native Driver White Paper

Native Driver White Paper

Macintosh · PDF
FilenameNative_Driver_White_Paper_199405.pdf
Size0.17 MB
Subsection developer / Copland / project_history
Downloads0
Contents
Native Driver White Paper version 1.0 May 19, 1994 Holly Knight John Fitzgerald Mike Quinn Wayne Meretsky Overview This document proposes required interfaces and packaging for Communications drivers on PCI cards. At the time of this writing there are three different native device driver proposals for the Marconi project. Each proposal covers a separate but overlapping piece of the device driver puzzle for Marconi and future OS releases. The design presented here will cover two broad issues. The first goal is to regularize device driver writing so that PCI and non-PCI device drivers can be written to a single specification. The second equally important goal is to have device drivers written to this specification work for both the Marconi and Maxwell releases, as well as any future releases. Documentation for PCI devices may be found in the following documents: “Device Driver Development Kit” - ApplePC “The Macintosh Expansion Manager” - ApplePC Native Device Driver documents: “Device Manager Changes to Support Native Drivers.” - AppleSoft “Native Drivers for PCI and other Peripherals in Marconi” - AppleSoft “AppleSoft PCI Implementation Plan” - AppleSoft Open Transport/Streams documents: “PCI/DLPI - Open Transport Integration” - Open Transport “Open Transport Ethernet Developer Note” - Open Transport “Streams Modules and Drivers” - Unix Press In addition to providing general native device driver guidelines we use the native DLPI driver for Open Transport to provide implementation specifics. We hope to see this document become part of both a Device Driver Kit for PCI devices and an Open Transport Software Developers Kit. Terminology In this document we use a set of possibly unfamiliar terms. This list is provided to clarify discussions in subsequent sections. Family - This term refers to a collection of devices that provide the same kind of functionality. One example of a family is the set of Open Transport devices with their corresponding Open Transport DLPI drivers. A second example is the family of Display Devices. Scanning - I use the word scanning or scanner to describe code that matches a device with its corresponding driver. The scanning portion of device location is one of the problem areas discussed in this paper. Scanning is probably a sub-function of the family Expert. Expert - Expert is a term coined by Brenden Creane to describe family code that extracts appropriate information from the system (ROM, Slot Manager, Expansion Manager, etc.) and presents the device specific information to each family device in a format agreed upon (documented). A family Expert is the administration function for a family. Experts are important when devices are brought into the system (classically at boot time) but are not part of the primary data paths to a device. Driver Components All native device drivers are CFM-loadable modules that export their API by using CFM’s export-by-name feature. Native drivers are located in either System-ROM, PCI-card RO…

Showing first 3,000 characters of 46,940 total. Open the full document →

MacTrove — a free archive of classic Macintosh software. Files mirrored from ftp.funet.fi/pub/mac (info-mac + funet legacy). All software provided for historical preservation.