Compaq AA-RNG2A-TE - Manual

Compaq AA-RNG2A-TE

Compaq AA-RNG2A-TE – Manual, read for free online in PDF format. We hope this helps you resolve any issues you may have. If you have further questions, please contact us through the contact form.

1 Page 1
2 Page 2
3 Page 3
4 Page 4
5 Page 5
6 Page 6
7 Page 7
8 Page 8
9 Page 9
10 Page 10
11 Page 11
12 Page 12
13 Page 13
14 Page 14
15 Page 15
16 Page 16
17 Page 17
18 Page 18
19 Page 19
20 Page 20
21 Page 21
22 Page 22
23 Page 23
24 Page 24
25 Page 25
26 Page 26
27 Page 27
28 Page 28
29 Page 29
30 Page 30
31 Page 31
32 Page 32
33 Page 33
34 Page 34
35 Page 35
36 Page 36
37 Page 37
38 Page 38
39 Page 39
40 Page 40
41 Page 41
42 Page 42
43 Page 43
44 Page 44
45 Page 45
46 Page 46
47 Page 47
48 Page 48
49 Page 49
50 Page 50
51 Page 51
52 Page 52
53 Page 53
54 Page 54
55 Page 55
56 Page 56
57 Page 57
58 Page 58
59 Page 59
60 Page 60
61 Page 61
62 Page 62
63 Page 63
64 Page 64
65 Page 65
66 Page 66
67 Page 67
68 Page 68
69 Page 69
70 Page 70
71 Page 71
72 Page 72
73 Page 73
74 Page 74
75 Page 75
76 Page 76
77 Page 77
78 Page 78
79 Page 79
80 Page 80
81 Page 81
82 Page 82
83 Page 83
84 Page 84
85 Page 85
86 Page 86
87 Page 87
88 Page 88
89 Page 89
90 Page 90
91 Page 91
92 Page 92
93 Page 93
94 Page 94
95 Page 95
96 Page 96
97 Page 97
98 Page 98
99 Page 99
100 Page 100
101 Page 101
102 Page 102
103 Page 103
104 Page 104
105 Page 105
106 Page 106
107 Page 107
108 Page 108
109 Page 109
110 Page 110
111 Page 111
112 Page 112
113 Page 113
114 Page 114
115 Page 115
116 Page 116
117 Page 117
118 Page 118
119 Page 119
120 Page 120
121 Page 121
122 Page 122
123 Page 123
124 Page 124
125 Page 125
126 Page 126
127 Page 127
128 Page 128
129 Page 129
130 Page 130
131 Page 131
132 Page 132
133 Page 133
134 Page 134
135 Page 135
136 Page 136
137 Page 137
138 Page 138
139 Page 139
140 Page 140
141 Page 141
142 Page 142
143 Page 143
144 Page 144
145 Page 145
146 Page 146
147 Page 147
148 Page 148
149 Page 149
150 Page 150
151 Page 151
152 Page 152
153 Page 153
154 Page 154
155 Page 155
156 Page 156
157 Page 157
158 Page 158
159 Page 159
Page: / 159

Table of Contents:

  • Page 3 – Contents; About This Manual
  • Page 4 – Saving the controller and softc Data Structure Pointers . .
  • Page 5 – Implementing the Autoconfiguration Support Section (attach); Initializing the Media Address and Media Header Lengths . . .; Implementing the unattach Routine
  • Page 7 – Using Currently Set Flags (SIOCSIFFLAGS ioctl Command)
  • Page 8 – Implementing the Interrupt Section; Processing Completed Receive and Transmit Operations .; Network Device Driver Configuration
  • Page 9 – Tables
  • Page 11 – Audience
  • Page 12 – Scope of this Manual; ifnet
  • Page 14 – Related Documentation; Examples; The directory; Manuals
  • Page 15 – Reference Pages; Reader’s Comments; You can send your comments in the following ways:
  • Page 16 – Conventions; This manual uses the following conventions:
  • Page 19 – Network Device Driver Environment; Network Device Driver Environment 1–1
  • Page 20 – Figure 1–1: Sections of a Network Device Driver; N e t wo r k D ev i c e D r i v e r; data structure. This means that a network; –2 Network Device Driver Environment
  • Page 21 – Include Files Section for a Network Driver; Network Device Driver Environment 1–3
  • Page 22 – ioctl; Declarations Section for a Network Driver; –4 Network Device Driver Environment
  • Page 23 – Network Device Driver Environment 1–5
  • Page 24 – Declaring softc and controller Data Structure Arrays; controller; –6 Network Device Driver Environment
  • Page 25 – Declaring and Initializing the driver Data Structure; Network Device Driver Environment 1–7
  • Page 26 – –8 Network Device Driver Environment
  • Page 27 – val; Macro
  • Page 28 – Configure Section for a Network Driver; –10 Network Device Driver Environment
  • Page 29 – Network Device Driver Environment 1–11
  • Page 30 – –12 Network Device Driver Environment
  • Page 31 – Defining Device Register Offsets; Interrupt and Status Register Offset Definitions; Defining Device Register Offsets 2–1
  • Page 32 – Command Port Register Offset Definitions; –2 Defining Device Register Offsets
  • Page 33 – Defining Device Register Offsets 2–3
  • Page 34 – Window 0 Configuration Register Offset Definitions; –4 Defining Device Register Offsets
  • Page 35 – Figure 2–1: Window 0 Configuration Registers; Register; Defining Device Register Offsets 2–5
  • Page 36 – –6 Defining Device Register Offsets
  • Page 37 – Window 3 Configuration Register Offset Definitions; Defining Device Register Offsets 2–7
  • Page 38 – Figure 2–2: Window 3 Configuration Registers; –8 Defining Device Register Offsets
  • Page 39 – Window 1 Operational Register Offset Definitions; Figure 2–3: Window 1 Operational Registers; Receive Status Register; Constant; Transmit Status Register
  • Page 40 – –10 Defining Device Register Offsets
  • Page 41 – Defines the offset for the free transmit bytes register.; Window 4 Diagnostic Register Offset Definitions; Figure 2–4: Window 4 Diagnostic Registers; Media Type and Status Register; Defining Device Register Offsets 2–11
  • Page 42 – –12 Defining Device Register Offsets
  • Page 43 – EEPROM Data Structure Definition; The following code shows the definition for the; Defines an EEPROM data structure called; Defining Device Register Offsets 2–13
  • Page 45 – Defining the softc Data Structure; All network device drivers define a; Defining the softc Data Structure 3–1
  • Page 46 – Figure 3–1: Typical softc Data Structure; Defining Common Information; –2 Defining the softc Data Structure
  • Page 47 – Defining the softc Data Structure 3–3
  • Page 48 – Figure 3–2: Mapping Alternate Names; Enabling Support for Enhanced Hardware Management; ehm; Defining Media State Information; –4 Defining the softc Data Structure
  • Page 49 – probe; Defining the softc Data Structure 3–5
  • Page 50 – –6 Defining the softc Data Structure
  • Page 51 – Defining FIFO Maintenance Information; Defining the softc Data Structure 3–7
  • Page 52 – cinfop; Defining the Broadcast Flag; Defining the Debug Flag; Defining Interrupt and Timeout Statistics; –8 Defining the softc Data Structure
  • Page 53 – Defining the softc Data Structure 3–9
  • Page 54 – Defining a Copy of the w3_eeprom Data Structure; Declaring the Simple Lock Data Structure; –10 Defining the softc Data Structure
  • Page 55 – Implementing the Configure Section; Declaring Configure-Related Variables and the; Implementing the Configure Section 4–1
  • Page 56 – –2 Implementing the Configure Section
  • Page 57 – Implementing the Configure Section 4–3
  • Page 58 – –4 Implementing the Configure Section
  • Page 59 – Implementing the Autoconfiguration; Implementing the Autoconfiguration Support Section (probe) 5–1
  • Page 60 – –2 Implementing the Autoconfiguration Support Section (probe)
  • Page 61 – Implementing the Autoconfiguration Support Section (probe) 5–3
  • Page 62 – unit; –4 Implementing the Autoconfiguration Support Section (probe)
  • Page 63 – Implementing the Autoconfiguration Support Section (probe) 5–5
  • Page 64 – reg; Allocating Memory for the softc Data Structure; –6 Implementing the Autoconfiguration Support Section (probe)
  • Page 65 – Implementing the Autoconfiguration Support Section (probe) 5–7
  • Page 66 – –8 Implementing the Autoconfiguration Support Section (probe)
  • Page 67 – bus; Implementing the Autoconfiguration Support Section (probe) 5–9
  • Page 68 – –10 Implementing the Autoconfiguration Support Section (probe)
  • Page 69 – Implementing the Autoconfiguration Support Section (probe) 5–11
  • Page 70 – 0 Handling Subsequent Probe Operations; –12 Implementing the Autoconfiguration Support Section (probe)
  • Page 71 – Implementing the Autoconfiguration Support Section (probe) 5–13
  • Page 72 – –14 Implementing the Autoconfiguration Support Section (probe)
  • Page 73 – Implementing the Autoconfiguration Support Section (probe) 5–15
  • Page 74 – –16 Implementing the Autoconfiguration Support Section (probe)
  • Page 75 – Implementing the Autoconfiguration Support Section (probe) 5–17
  • Page 76 – –18 Implementing the Autoconfiguration Support Section (probe)
  • Page 77 – Implementing the Autoconfiguration Support Section (probe) 5–19
  • Page 78 – –20 Implementing the Autoconfiguration Support Section (probe)
  • Page 79 – Implementing the Autoconfiguration Support Section (probe) 5–21
  • Page 80 – mbuf; –22 Implementing the Autoconfiguration Support Section (probe)
  • Page 81 – 2 Setting a Timer for the Current Kernel Thread; Implementing the Autoconfiguration Support Section (probe) 5–23
  • Page 82 – –24 Implementing the Autoconfiguration Support Section (probe)
  • Page 83 – Implementing the Autoconfiguration Support Section (probe) 5–25
  • Page 84 – –26 Implementing the Autoconfiguration Support Section (probe)
  • Page 85 – attach; Implementing the Autoconfiguration Support Section (attach) 6–1
  • Page 86 – –2 Implementing the Autoconfiguration Support Section (attach)
  • Page 87 – Setting Up the Media; Implementing the Autoconfiguration Support Section (attach) 6–3
  • Page 88 – –4 Implementing the Autoconfiguration Support Section (attach)
  • Page 89 – Initializing Simple Lock Information; Implementing the Autoconfiguration Support Section (attach) 6–5
  • Page 90 – –6 Implementing the Autoconfiguration Support Section (attach)
  • Page 91 – Implementing the Autoconfiguration Support Section (attach) 6–7
  • Page 92 – Setting the Baud Rate; Attaching to the Packet Filter and the Network Layer; –8 Implementing the Autoconfiguration Support Section (attach)
  • Page 93 – Implementing the Autoconfiguration Support Section (attach) 6–9
  • Page 94 – Enabling the Interrupt Handler; hid; Starting the Polling Process; –10 Implementing the Autoconfiguration Support Section (attach)
  • Page 95 – Note; autosense; Implementing the unattach Routine 7–1
  • Page 96 – Verifying That the Interface Has Shut Down; –2 Implementing the unattach Routine
  • Page 97 – Implementing the unattach Routine 7–3
  • Page 98 – Terminating the Simple Lock; –4 Implementing the unattach Routine
  • Page 99 – unattach; Implementing the unattach Routine 7–5
  • Page 101 – Implementing the Initialization Section; Implementing the Initialization Section 8–1
  • Page 102 – –2 Implementing the Initialization Section
  • Page 103 – Releasing the Simple Lock and Resetting the IPL; Implementing the Initialization Section 8–3
  • Page 104 – Resetting the Transmitter and Receiver; –4 Implementing the Initialization Section
  • Page 105 – irq; Ensuring That the 10Base2 Transceiver Is Off; DELAY; Implementing the Initialization Section 8–5
  • Page 106 – –6 Implementing the Initialization Section
  • Page 107 – Resetting the Transmitter and Receiver Again; Implementing the Initialization Section 8–7
  • Page 108 – –8 Implementing the Initialization Section
  • Page 109 – Implementing the Initialization Section 8–9
  • Page 110 – –10 Implementing the Initialization Section
  • Page 111 – ESUCCESS; Implementing the Initialization Section 8–11
  • Page 113 – Implementing the Start Section; start; Setting the IPL and Obtaining the Simple Lock; Implementing the Start Section 9–1
  • Page 114 – Releasing the Simple Lock and Resetting the IPL; –2 Implementing the Start Section
  • Page 115 – watchdog; Discarding All Transmits After the User Removes the PCMCIA; Implementing the Start Section 9–3
  • Page 116 – Removing Packets from the Pending Queue and Preparing the; –4 Implementing the Start Section
  • Page 117 – Implementing the Start Section 9–5
  • Page 118 – –6 Implementing the Start Section
  • Page 119 – the Output Process as Active; Implementing the Start Section 9–7
  • Page 120 – Indicating When to Start the Watchdog Routine; –8 Implementing the Start Section
  • Page 121 – Implementing a Watchdog Section; Setting the IPL and Obtaining the Simple Lock; Implementing a Watchdog Section 10–1
  • Page 122 – 0–2 Implementing a Watchdog Section
  • Page 123 – Implementing the Reset Section; Implementing the Reset Section 11–1
  • Page 124 – 1–2 Implementing the Reset Section
  • Page 125 – Implementing the ioctl Section; Table 12–1: Network ioctl Commands; ioctl Command
  • Page 126 – 2–2 Implementing the ioctl Section
  • Page 127 – Implementing the ioctl Section 12–3
  • Page 128 – 2–4 Implementing the ioctl Section
  • Page 129 – Implementing the ioctl Section 12–5
  • Page 130 – Adding the Device to a Multicast Group; SIOCADDMULTI ioctl; 2–6 Implementing the ioctl Section
  • Page 131 – Deleting the Device from a Multicast Group; SIOCDELMULTI ioctl; Implementing the ioctl Section 12–7
  • Page 132 – 2–8 Implementing the ioctl Section
  • Page 133 – Table 12–2: Network Interface Counter Types; Network Interface; Bringing Up the Device (SIOCSIFADDR ioctl; Implementing the ioctl Section 12–9
  • Page 134 – 2–10 Implementing the ioctl Section
  • Page 135 – Setting Device Characteristics (SIOCIFSETCHAR; Implementing the ioctl Section 12–11
  • Page 136 – 2–12 Implementing the ioctl Section
  • Page 137 – Releasing the Simple Lock and Resetting the IPL; Implementing the ioctl Section 12–13
  • Page 139 – Implementing the Interrupt Section 13–1
  • Page 140 – Setting the IPL and Obtaining the Simple Lock; 3–2 Implementing the Interrupt Section
  • Page 141 – Processing Completed Receive and Transmit Operations; status; Implementing the Interrupt Section 13–3
  • Page 142 – Releasing the Simple Lock and Resetting the IPL; 3–4 Implementing the Interrupt Section
  • Page 143 – Indicating That the Interrupt Was Serviced; Counting the Receive Interrupt and Reading the Receive; Implementing the Interrupt Section 13–5
  • Page 144 – Pulling the Packets from the FIFO Buffer; The following code shows how the; 3–6 Implementing the Interrupt Section
  • Page 145 – Examining the First Part of the Packet; Implementing the Interrupt Section 13–7
  • Page 146 – Copying the Received Packet into the mbuf; 3–8 Implementing the Interrupt Section
  • Page 147 – Implementing the Interrupt Section 13–9
  • Page 148 – Reading the Transmit Status and Counting All Significant; 3–10 Implementing the Interrupt Section
  • Page 149 – Managing Excessive Data Collisions; Implementing the Interrupt Section 13–11
  • Page 150 – 3–12 Implementing the Interrupt Section
  • Page 151 – Network Device Driver Configuration 14–1
  • Page 153 – Index; Index–1
  • Page 154 – Index–2
  • Page 155 – Index–3
  • Page 156 – Index–4
  • Page 157 – Index–5
  • Page 158 – Index–6
  • Page 159 – Index–7
Loading the manual

Tru64 UNIX

Writing Network Device Drivers

Part Number: AA-RNG2A-TE

December 2000

Product Version:

Device Driver Kit Version 2.0

Operating System and Version: Tru64 UNIX Version 5.0A or higher

This manual contains information that systems engineers need to write
network device drivers that operate on any bus.

Compaq Computer Corporation
Houston, Texas

"Loading the manual" means you need to wait until the file loads and becomes available for online reading. Some manuals are very large, and the time they take to appear depends on your internet speed.

Summary

Page 3 - Contents; About This Manual

Contents About This Manual 1 Network Device Driver Environment 1.1 Include Files Section for a Network Driver . . . . . . . . . . . . . . . . . . . . . . . 1–3 1.2 Declarations Section for a Network Driver . . . . . . . . . . . . . . . . . . . . . . . 1–4 1.2.1 External and Forward Declarations . . ...

Page 4 - Saving the controller and softc Data Structure Pointers . .

3.6 Defining the Interrupt Handler ID . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3–6 3.7 Defining CSR Pointer Information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3–6 3.8 Defining FIFO Maintenance Information . . . . . . . . . . . . . . . . . . . . . ....

Page 5 - Implementing the Autoconfiguration Support Section (attach); Initializing the Media Address and Media Header Lengths . . .; Implementing the unattach Routine

5.3.5 Entering the Packet Transmit Loop . . . . . . . . . . . . . . . . . . . . . . . . . . . 5–20 5.3.6 Saving Counters Prior to the Transmit Operation . . . . . . . . . . 5–21 5.3.7 Allocating Memory for a Test Packet . . . . . . . . . . . . . . . . . . . . . . . . . . 5–21 5.3.8 Using the Default...

Other Compaq Models

All Compaq Other