Skip Navigation Links | |
Exit Print View | |
Writing Device Drivers Oracle Solaris 10 1/13 Information Library |
Part I Designing Device Drivers for the Oracle Solaris Platform
1. Overview of Oracle Solaris Device Drivers
2. Oracle Solaris Kernel and Device Tree
5. Managing Events and Queueing Tasks
7. Device Access: Programmed I/O
10. Mapping Device and Kernel Memory
13. Hardening Oracle Solaris Drivers
14. Layered Driver Interface (LDI)
Part II Designing Specific Kinds of Device Drivers
15. Drivers for Character Devices
18. SCSI Host Bus Adapter Drivers
GLDv3 Network Device Driver Framework
GLDv3 MAC Registration Process
GLDv3 MAC Registration Functions
GLDv3 MAC Registration Data Structures
Large Segment (or Send) Offload
GLDv3 State Change Notifications
GLDv2 Network Device Driver Framework
Ethernet V2 and ISO 8802-3 (IEEE 802.3)
GLDv2 Declarations and Data Structures
gldm_set_mac_addr() Entry Point
gldm_set_multicast() Entry Point
gldm_set_promiscuous() Entry Point
Part III Building a Device Driver
22. Compiling, Loading, Packaging, and Testing Drivers
23. Debugging, Testing, and Tuning Device Drivers
24. Recommended Coding Practices
B. Summary of Solaris DDI/DKI Services
C. Making a Device Driver 64-Bit Ready
To write a network driver for the Oracle Solaris OS, use the Oracle Solaris Generic LAN Driver (GLD) framework.
For new Ethernet drivers, use the GLDv3 framework. See GLDv3 Network Device Driver Framework. The GLDv3 framework is a function calls-based interface.
To maintain older Ethernet, Token Ring, or FDDI drivers, use the GLDv2 framework. See GLDv2 Network Device Driver Framework. The GLDv2 is a kernel module that provides common code for drivers to share.
If you are writing a NIC driver, see also Chapter 21, SR-IOV Drivers.