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

Document Information

Preface

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 Solaris DDI/DKI Services

C.  Making a Device Driver 64-Bit Ready

D.  Console Frame Buffer Drivers

E.  pci.conf File

Index

Numbers and Symbols

A

B

C

D

E

F

G

H

I

K

L

M

N

O

P

Q

R

S

T

U

V

W

X

F

fault, definition, index iconWhat Is Predictive Self-Healing?
fault event, definition, index iconWhat Is Predictive Self-Healing?
fault injection
index iconFault Injection
index iconInjecting Faults
fault management
access attributes
programmed I/O access errors, index iconAccess Attributes Structure
access or DMA handle error, index iconReporting Errors
agent, index iconWhat Is Predictive Self-Healing?
Automated System Recovery Unit (ASRU), index iconDiagnosis, Suspect Lists, and Fault Events
DDI_CAUTIOUS_ACC flag, index iconAccess Attributes Structure
ddi_device_acc_attr structure, index iconAccess Attributes Structure
ddi_dma_attr structure, index iconDMA Attributes Structure
DDI_DMA_FLAGERR, index iconDMA Attributes Structure
DDI_FM_* I/O controller errors, index iconReporting Errors
ddi_fm_acc_err_clear() function, index iconGetting Error Status
ddi_fm_acc_err_get() function
index iconAccess Attributes Structure
index iconAccess Attributes Structure
ddi_fm_capable() function, index iconGetting the Fault Management Capability Bit Mask
ddi_fm_dma_err_clear() function, index iconClearing Errors
ddi_fm_dma_err_get() function, index iconDMA Attributes Structure
ddi_fm_ereport_post() function
index iconReporting Errors
index iconReporting Errors
ddi_fm_error structure
index iconRegistering an Error Handler
index iconRegistering an Error Handler
index iconFault Management Data and Status Structure
ddi_fm_fini() function, index iconCleaning Up Fault Management Resources
ddi_fm_handler_register() function
index iconAccess Attributes Structure
index iconRegistering an Error Handler
ddi_fm_handler_unregister() function, index iconRegistering an Error Handler
ddi_fm_init() function, index iconDeclaring Fault Management Capabilities
ddi_fm_service_impact() function, index iconReporting Errors
DDI_SERVICE_* service impact values, index iconReporting Errors
DE (diagnosis engine)
index iconDiagnosing Faults
index iconEvent Registry
diagnosis engine, index iconWhat Is Predictive Self-Healing?
.dict dictionary files, index iconMessage IDs and Dictionary Files
DMA errors, index iconDMA Attributes Structure
eft diagnosis engine, index iconReporting Errors
eft diagnosis rules
index iconDiagnosing Faults
index iconEvent Registry
ENA (Error Numeric Association)
index iconReporting Errors
index iconFault Management Data and Status Structure
ereport
index iconWhat Is Predictive Self-Healing?
index iconError Handling
ereport events
index iconWhat Is Predictive Self-Healing?
index iconReporting Errors
index iconRegistering an Error Handler
error handler callback, index iconRegistering an Error Handler
error handling, index iconError Handling
event registry
index iconMessage IDs and Dictionary Files
index iconReporting Errors
index iconReporting Errors
index iconEvent Registry
Eversholt fault tree (eft) rules
index iconReporting Errors
index iconDiagnosing Faults
fault, index iconWhat Is Predictive Self-Healing?
fault event
index iconWhat Is Predictive Self-Healing?
index iconSystem Topology
fault management capabilities, index iconDeclaring Fault Management Capabilities
fault management capabilities, declaring, index iconDeclaring Fault Management Capabilities
fault management capability bit mask, index iconGetting the Fault Management Capability Bit Mask
fault management capability properties, index iconDeclaring Fault Management Capabilities
fault management resources, cleaning up, index iconCleaning Up Fault Management Resources
fault manager daemon fmd
index iconOracle Solaris Fault Manager
index iconDiagnosing Faults
fault messages, index iconMessage IDs and Dictionary Files
Field Replaceable Unit (FRU), index iconDiagnosis, Suspect Lists, and Fault Events
fmadm command, index iconResponse Agents
fmdump command, index iconDiagnosis, Suspect Lists, and Fault Events
fme_status flag, index iconAccess Attributes Structure
I/O Fault Services, index iconHardening Oracle Solaris Drivers
interfaces, index iconFault Management Functions
list suspect
index iconDiagnosis, Suspect Lists, and Fault Events
index iconMessage IDs and Dictionary Files
pci_ereport_post() function
index iconReporting Errors
index iconRegistering an Error Handler
index iconFault Management Data and Status Structure
pci_ereport_seetup() function, index iconReporting Errors
pci_ereport_setup() function, index iconDeclaring Fault Management Capabilities
pci_ereport_teardown() function
index iconCleaning Up Fault Management Resources
index iconReporting Errors
.po message files, index iconMessage IDs and Dictionary Files
response agent, index iconResponse Agents
retire agent, index iconResponse Agents
suspect list
index iconDiagnosis, Suspect Lists, and Fault Events
index iconEvent Registry
topology of system, index iconSystem Topology
Fault Management Architecture (FMA), See fault management
faults, latent fault, definition of, index iconPeriodic Health Checks
fbconfig(1M) command, index iconTesting the Video Mode Change Callback Function
fbconfig() module, index iconFrame Buffer Specific Configuration Module
FDDI (Fibre Distributed Data Interface), index iconTPR and FDDI: SNAP Processing
fibre distributed data interface, See DL_FDDI
Field Replaceable Unit (FRU), definition, index iconDiagnosis, Suspect Lists, and Fault Events
file system I/O, index iconFile I/O
_fini() entry point
example of, index icon_fini() Example
network drivers, index iconGLDv3 MAC Registration Functions
required implementation, index iconLoadable Module Entry Points
first-party DMA
index iconFirst-Party DMA
index iconPerforming First-Party DMA Transfers
flags argument, ddi_dma_mem_alloc(), changes to, index iconddi_dma_mem_alloc() Argument Changes
flow of control for power management, index iconPower Management Flow of Control
fmadm command, index iconResponse Agents
fmd fault manager daemon
index iconOracle Solaris Fault Manager
index iconDiagnosing Faults
fmdump command, index iconDiagnosis, Suspect Lists, and Fault Events
freemsg() function, index iconRequests
functions
See also condition variable functions
See also device power management
See individual functions
See also LDI functions
See specific function name
fuser command, display device usage information, index iconDevice User Command Interfaces