JavaScript is required to for searching.
Skip Navigation Links
Exit Print View
Writing Device Drivers     Oracle Solaris 11.1 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 Oracle 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 management
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_FM_* I/O controller errors, index iconReporting Errors
ddi_fm_capable() function, index iconGetting the Fault Management Capability Bit Mask
ddi_fm_ereport_post() function
index iconReporting Errors
index iconReporting Errors
ddi_fm_fini() function, index iconCleaning Up Fault Management Resources
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
diagnosis engine, index iconWhat Is Predictive Self-Healing?
.dict dictionary files, index iconMessage IDs and Dictionary Files
eft diagnosis engine, index iconReporting Errors
ENA (Error Numeric Association), index iconReporting Errors
ereport
index iconWhat Is Predictive Self-Healing?
index iconError Handling
ereport events
index iconWhat Is Predictive Self-Healing?
index iconReporting Errors
error handling, index iconError Handling
event registry
index iconMessage IDs and Dictionary Files
index iconReporting Errors
index iconReporting Errors
Eversholt fault tree (eft) rules, index iconReporting Errors
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
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
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
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
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
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