JavaScript is required to for searching.
Skip Navigation Links
Exit Print View
Writing Device Drivers     Oracle Solaris 11 Information Library
search filter icon
search icon

Document Information


Part I Designing Device Drivers for the Oracle Solaris Platform

1.  Overview of Oracle Solaris Device Drivers

2.  Oracle Solaris Kernel and Device Tree

3.  Multithreading

4.  Properties

5.  Managing Events and Queueing Tasks

6.  Driver Autoconfiguration

7.  Device Access: Programmed I/O

8.  Interrupt Handlers

9.  Direct Memory Access (DMA)

10.  Mapping Device and Kernel Memory

11.  Device Context Management

12.  Power Management

13.  Hardening Oracle Solaris Drivers

14.  Layered Driver Interface (LDI)

Part II Designing Specific Kinds of Device Drivers

15.  Drivers for Character Devices

16.  Drivers for Block Devices

17.  SCSI Target Drivers

18.  SCSI Host Bus Adapter Drivers

19.  Drivers for Network Devices

20.  USB Drivers

21.  SR-IOV Drivers

Part III Building a Device Driver

22.  Compiling, Loading, Packaging, and Testing Drivers

23.  Debugging, Testing, and Tuning Device Drivers

24.  Recommended Coding Practices

Part IV Appendixes

A.  Hardware Overview

B.  Summary of Oracle Solaris DDI/DKI Services

C.  Making a Device Driver 64-Bit Ready

D.  Console Frame Buffer Drivers

E.  pci.conf File


Numbers and Symbols

























packaging, index iconDriver Packaging
partial store ordering, index iconPartial Store Ordering (PSO)
PCI bus, index iconPCI Local Bus
configuration address space, index iconPCI Configuration Address Space
configuration base address registers, index iconPCI Configuration Base Address Registers
hardware configuration files, index iconPCI Hardware Configuration Files
I/O address space, index iconPCI I/O Address Space
memory address space, index iconPCI Memory Address Space
PCI configuration functions, alternate access mechanisms, index iconProgrammed I/O Functions
PCI devices, index iconPCI Local Bus
pci_ereport_post() function, index iconReporting Errors
pci_ereport_setup() function
index iconDeclaring Fault Management Capabilities
index iconReporting Errors
pci_ereport_teardown() function
index iconCleaning Up Fault Management Resources
index iconReporting Errors
physical DMA, index iconTypes of Host Platform DMA
physio() function, description of, index iconDMA Transfers (Synchronous)
pipe, alternate setting, index iconModifying or Getting the Alternate Setting
closing, index iconClosing Pipes
default control
index iconRegistering Drivers to Gain Device Access
index iconThe Default Pipe
flushing, index iconFlushing Pipes
mutex initialization, index iconRegistering Drivers to Gain Device Access
opening, index iconOpening Pipes
policy, index iconSynchronous and Asynchronous Transfers and Callbacks
USB device communication, index iconDevice Communication
USB devices, index iconHow USB Devices Appear to the System
use before attach(), index iconBefore the Client Driver Is Attached
pixel depth mode, index iconOracle Solaris Consoles and the Kernel Terminal Emulator
pm_busy_component() function
index iconDevice Power Management
index iconDevice Power Management
pm_idle_component() function
index iconDevice Power Management
index iconDevice Power Management
pm_lower_power() function, index iconDevice Power Management
pm_raise_power() function
index iconDevice Power Management
index iconDevice Power Management
.po message files, index iconMessage IDs and Dictionary Files
polled I/O interfaces
index iconPolled I/O Interfaces
index iconImplementing Polled I/O in Console Frame Buffer Drivers
postmortem debugging, index iconPostmortem Debugging
power cycle, index iconDevice Power State Transitions
power() entry point
index iconDevice Power Management
index iconDevice Power Management
power management
See also device power management
See also system power management
flow of control, index iconPower Management Flow of Control
USB devices, index iconPower Management
power management functions, index iconPower Management Functions
deprecated, index iconPower Management Functions
Predictive Self-Healing, index iconWhat Is Predictive Self-Healing?
See also fault management
unique prefix for driver symbols
index iconWhat Is a Device Driver Entry Point?
index iconUse a Unique Prefix to Avoid Kernel Symbol Collisions
print() entry point, block drivers, index iconprint() Entry Point (Block Drivers)
printing functions, index iconKernel Logging and Printing Functions
printing messages, index iconReturning Errors
probe() entry point
description of, index iconprobe() Entry Point
SCSI target drivers, index iconprobe() Entry Point (SCSI Target Drivers)
processor issues
index iconSPARC Processor Issues
index iconSPARC Register Windows
index iconSPARC Multiply and Divide Instructions
x86, index iconx86 Processor Issues
programmed I/O, index iconProgrammed I/O Transfers
programmed I/O functions, index iconProgrammed I/O Functions
deprecated, index iconProgrammed I/O Functions
PROM commands, index iconOpen Boot PROM 3
prop_op() entry point, description of, index iconprop_op() Entry Point
class property, index iconHardware Configuration File
ddi_prop_op, index iconprop_op() Entry Point
device node name property, index iconBinding a Driver to a Device
LDI, index iconRetrieving Target Device Property Values
nblocks property, index iconBlock Device Autoconfiguration
Nblocks property, index iconBlock Device Autoconfiguration
nblocks property, index iconDevice Sizes
Nblocks property, index iconDevice Sizes
no-involuntary-power-cycles, index iconDevice Power State Transitions
index iconDevice Properties
index iconDevice Properties
pm-hardware-state property
index iconHardware State
index iconattach() Entry Point
index iconattach() Entry Point (SCSI Target Drivers)
prtconf, index iconLooking Up Properties
reg property, index iconHardware State
removable-media, index iconPower Management Dependencies
reporting device properties, index iconprop_op() Entry Point
SCSI HBA properties, index iconHBA Configuration Properties
SCSI target driver, index iconx86 Target Driver Configuration Properties
size property, index iconCharacter Device Autoconfiguration
types of, index iconDevice Properties
property functions, index iconProperty Functions
prtconf command
displaying device names, index iconCompatible Device Names
displaying interfaces, index iconDevices With Multiple Interfaces
displaying kernel device usage information, index iconPrint System Configuration Command Interfaces
displaying properties, index iconLooking Up Properties
displaying the bound driver, index iconCompatible Device Names
displaying the device tree, index iconprtconf Command
pseudo device driver, index iconWhat Is a Device Driver?