| - Copyright
Preface
1. Solaris Kernel and Device Tree
2. Overview of Solaris Device Drivers
3. Multithreading
4. Properties and Events
5. Driver Autoconfiguration
6. Device Access -- Programmed I/O
7. Interrupt Handlers
8. Direct Memory Access (DMA)
9. Power Management
10. Drivers for Character Devices
11. Drivers for Block Devices
12. Mapping Device and Kernel Memory
13. Device Context Management
14. SCSI Target Drivers
15. SCSI Host Bus Adapter Drivers
16. Drivers for Network Devices
17. Compiling, Loading, Packaging, and Testing Drivers
- Driver Code Layout Structure
- Header Files
- .c Files
- driver.conf Files
- Preparing for Driver Installation
- Compiling and Linking the Driver
- Module Dependencies
- Writing a Hardware Configuration File
- Installing, Updating, and Removing Drivers
- Copying the Driver to a Module Directory
- Installing Drivers with add_drv()
- Updating Driver Information
- Removing the Driver
- Loading and Unloading Drivers
- Driver Packaging
- Package Postinstall
- Package Preremove
- Testing Drivers
- Configuration Testing
- Functionality Testing
- Error Handling
- Testing Loading and Unloading
- Stress, Performance, and Interoperability Testing
- DDI/DKI Compliance Testing
- Installation and Packaging Testing
- Testing Specific Types of Drivers
18. Debugging
19. Recommended Coding Practices
A. Hardware Overview
B. Summary of Solaris 9 DDI/DKI Services
C. Making a Device Driver 64-Bit Ready
Index
| |