1SK98LIN(4) Linux Programmer's Manual SK98LIN(4)
2
3
4
6 sk98lin - Marvell/SysKonnect Gigabit Ethernet driver v6.21
7
9 insmod sk98lin.o [Speed_A=i,j,...] [Speed_B=i,j,...]
10 [AutoNeg_A=i,j,...] [AutoNeg_B=i,j,...] [DupCap_A=i,j,...] [Dup‐
11 Cap_B=i,j,...] [FlowCtrl_A=i,j,...] [FlowCtrl_B=i,j,...]
12 [Role_A=i,j,...] [Role_B=i,j,...] [ConType=i,j,...] [Modera‐
13 tion=i,j,...] [IntsPerSec=i,j,...] [PrefPort=i,j,...] [Rlmt‐
14 Mode=i,j,...]
15
17 sk98lin is the Gigabit Ethernet driver for Marvell and SysKonnect
18 network adapter cards. It supports SysKonnect SK-98xx/SK-95xx
19 compliant Gigabit Ethernet Adapter and any Yukon compliant chipset.
20
21 When loading the driver using insmod, parameters for the network
22 adapter cards might be stated as a sequence of comma separated
23 commands. If for instance two network adapters are installed and
24 AutoNegotiation on Port A of the first adapter should be ON, but on the
25 Port A of the second adapter switched OFF, one must enter:
26
27 insmod sk98lin.o AutoNeg_A=On,Off
28
29 After sk98lin is bound to one or more adapter cards and the /proc file
30 system is mounted on your system, a dedicated statistics file will be
31 created in folder /proc/net/sk98lin for all ports of the installed
32 network adapter cards. Those files are named eth[x] whereas x is the
33 number of the interface that has been assigned to a dedicated port by
34 the system.
35
36 If loading is finished, any desired IP address can be assigned to the
37 respective eth[x] interface using the ifconfig(8) command. This causes
38 the adapter to connect to the Ethernet and to display a status message
39 on the console saying "ethx: network connection up using port y"
40 followed by the configured or detected connection parameters.
41
42 The sk98lin also supports large frames (also called jumbo frames).
43 Using jumbo frames can improve throughput tremendously when
44 transferring large amounts of data. To enable large frames, the MTU
45 (maximum transfer unit) size for an interface is to be set to a high
46 value. The default MTU size is 1500 and can be changed up to 9000
47 (bytes). Setting the MTU size can be done when assigning the IP
48 address to the interface or later by using the ifconfig(8) command with
49 the mtu parameter. If for instance eth0 needs an IP address and a
50 large frame MTU size, the following two commands might be used:
51
52 ifconfig eth0 10.1.1.1
53 ifconfig eth0 mtu 9000
54
55 Those two commands might even be combined into one:
56
57 ifconfig eth0 10.1.1.1 mtu 9000
58
59 Note that large frames can only be used if permitted by your network
60 infrastructure. This means, that any switch being used in your
61 Ethernet must also support large frames. Quite some switches support
62 large frames, but need to be configured to do so. Most of the times,
63 their default setting is to support only standard frames with an MTU
64 size of 1500 (bytes). In addition to the switches inside the network,
65 all network adapters that are to be used must also be enabled regarding
66 jumbo frames. If an adapter is not set to receive large frames it will
67 simply drop them.
68
69 Switching back to the standard Ethernet frame size can be done by using
70 the ifconfig(8) command again:
71
72 ifconfig eth0 mtu 1500
73
74 The Marvell/SysKonnect Gigabit Ethernet driver for Linux is able to
75 support VLAN and Link Aggregation according to IEEE standards 802.1,
76 802.1q, and 802.3ad. Those features are only available after
77 installation of open source modules which can be found on the Internet:
78
79 VLAN: http://www.candelatech.com/~greear/vlan.html
80 Link Aggregation: http://www.st.rim.or.jp/~yumo
81
82 Note that Marvell/SysKonnect does not offer any support for these open
83 source modules and does not take the responsibility for any kind of
84 failures or problems arising when using these modules.
85
86 Parameters
87 Speed_A=i,j,...
88 This parameter is used to set the speed capabilities of port A
89 of an adapter card. It is only valid for Yukon copper adapters.
90 Possible values are: 10, 100, 1000 or Auto whereas Auto is the
91 default. Usually, the speed is negotiated between the two ports
92 during link establishment. If this fails, a port can be forced
93 to a specific setting with this parameter.
94
95 Speed_B=i,j,...
96 This parameter is used to set the speed capabilities of port B
97 of an adapter card. It is only valid for Yukon copper adapters.
98 Possible values are: 10, 100, 1000 or Auto whereas Auto is the
99 default. Usually, the speed is negotiated between the two ports
100 during link establishment. If this fails, a port can be forced
101 to a specific setting with this parameter.
102
103 AutoNeg_A=i,j,...
104 Enables or disables the use of autonegotiation of port A of an
105 adapter card. Possible values are: On, Off or Sense whereas On
106 is the default. The Sense mode automatically detects whether
107 the link partner supports auto-negotiation or not.
108
109 AutoNeg_B=i,j,...
110 Enables or disables the use of autonegotiation of port B of an
111 adapter card. Possible values are: On, Off or Sense whereas On
112 is the default. The Sense mode automatically detects whether
113 the link partner supports auto-negotiation or not.
114
115 DupCap_A=i,j,...
116 This parameter indicates the duplex mode to be used for port A
117 of an adapter card. Possible values are: Half, Full or Both
118 whereas Both is the default. This parameter is only relevant if
119 AutoNeg_A of port A is not set to Sense. If AutoNeg_A is set to
120 On, all three values of DupCap_A ( Half, Full or Both) might be
121 stated. If AutoNeg_A is set to Off, only DupCap_A values Full
122 and Half are allowed. This DupCap_A parameter is useful if your
123 link partner does not support all possible duplex combinations.
124
125 DupCap_B=i,j,...
126 This parameter indicates the duplex mode to be used for port B
127 of an adapter card. Possible values are: Half, Full or Both
128 whereas Both is the default. This parameter is only relevant if
129 AutoNeg_B of port B is not set to Sense. If AutoNeg_B is set to
130 On, all three values of DupCap_B ( Half, Full or Both) might be
131 stated. If AutoNeg_B is set to Off, only DupCap_B values Full
132 and Half are allowed. This DupCap_B parameter is useful if your
133 link partner does not support all possible duplex combinations.
134
135 FlowCtrl_A=i,j,...
136 This parameter can be used to set the flow control capabilities
137 the port reports during auto-negotiation. Possible values are:
138 Sym, SymOrRem, LocSend or None whereas SymOrRem is the default.
139 The different modes have the following meaning:
140
141 Sym = Symmetric
142 both link partners are allowed to send PAUSE frames
143 SymOrRem = SymmetricOrRemote
144 both or only remote partner are allowed to send PAUSE frames
145 LocSend = LocalSend
146 only local link partner is allowed to send PAUSE frames
147 None = None
148 no link partner is allowed to send PAUSE frames
149
150 Note that this parameter is ignored if AutoNeg_A is set to Off.
151
152 FlowCtrl_B=i,j,...
153 This parameter can be used to set the flow control capabilities
154 the port reports during auto-negotiation. Possible values are:
155 Sym, SymOrRem, LocSend or None whereas SymOrRem is the default.
156 The different modes have the following meaning:
157
158 Sym = Symmetric
159 both link partners are allowed to send PAUSE frames
160 SymOrRem = SymmetricOrRemote
161 both or only remote partner are allowed to send PAUSE frames
162 LocSend = LocalSend
163 only local link partner is allowed to send PAUSE frames
164 None = None
165 no link partner is allowed to send PAUSE frames
166
167 Note that this parameter is ignored if AutoNeg_B is set to Off.
168
169 Role_A=i,j,...
170 This parameter is only valid for 1000Base-T adapter cards. For
171 two 1000Base-T ports to communicate, one must take the role of
172 the master (providing timing information), while the other must
173 be the slave. Possible values are: Auto, Master or Slave
174 whereas Auto is the default. Usually, the role of a port is
175 negotiated between two ports during link establishment, but if
176 that fails the port A of an adapter card can be forced to a
177 specific setting with this parameter.
178
179 Role_B=i,j,...
180 This parameter is only valid for 1000Base-T adapter cards. For
181 two 1000Base-T ports to communicate, one must take the role of
182 the master (providing timing information), while the other must
183 be the slave. Possible values are: Auto, Master or Slave
184 whereas Auto is the default. Usually, the role of a port is
185 negotiated between two ports during link establishment, but if
186 that fails the port B of an adapter card can be forced to a
187 specific setting with this parameter.
188
189 ConType=i,j,...
190 This parameter is a combination of all five per-port parameters
191 within one single parameter. This simplifies the configuration
192 of both ports of an adapter card. The different values of this
193 variable reflect the most meaningful combinations of port
194 parameters. Possible values and their corresponding combination
195 of per-port parameters:
196
197 ConType | DupCap AutoNeg FlowCtrl Role Speed
198 --------+-------------------------------------------
199 Auto | Both On SymOrRem Auto Auto
200 100FD | Full Off None Auto 100
201 100HD | Half Off None Auto 100
202 10FD | Full Off None Auto 10
203 10HD | Half Off None Auto 10
204
205 Stating any other port parameter together with this ConType
206 parameter will result in a merged configuration of those
207 settings. This is due to the fact, that the per-port parameters
208 (e.g. Speed_A) have a higher priority than the combined
209 variable ConType.
210
211 Moderation=i,j,...
212 Interrupt moderation is employed to limit the maximum number of
213 interrupts the driver has to serve. That is, one or more
214 interrupts (which indicate any transmit or receive packet to be
215 processed) are queued until the driver processes them. When
216 queued interrupts are to be served, is determined by the
217 IntsPerSec parameter, which is explained later below. Possible
218 moderation modes are: None, Static or Dynamic whereas None is
219 the default. The different modes have the following meaning:
220
221 None No interrupt moderation is applied on the adapter card.
222 Therefore, each transmit or receive interrupt is served
223 immediately as soon as it appears on the interrupt line of the
224 adapter card.
225
226 Static Interrupt moderation is applied on the adapter card. All
227 transmit and receive interrupts are queued until a complete
228 moderation interval ends. If such a moderation interval ends,
229 all queued interrupts are processed in one big bunch without any
230 delay. The term Static reflects the fact, that interrupt
231 moderation is always enabled, regardless how much network load
232 is currently passing via a particular interface. In addition,
233 the duration of the moderation interval has a fixed length that
234 never changes while the driver is operational.
235
236 Dynamic Interrupt moderation might be applied on the adapter
237 card, depending on the load of the system. If the driver
238 detects that the system load is too high, the driver tries to
239 shield the system against too much network load by enabling
240 interrupt moderation. If — at a later time — the CPU
241 utilization decreases again (or if the network load is
242 negligible) the interrupt moderation will automatically be
243 disabled.
244
245 Interrupt moderation should be used when the driver has to
246 handle one or more interfaces with a high network load, which —
247 as a consequence — leads also to a high CPU utilization. When
248 moderation is applied in such high network load situations, CPU
249 load might be reduced by 20-30% on slow computers.
250
251 Note that the drawback of using interrupt moderation is an
252 increase of the round-trip-time (RTT), due to the queuing and
253 serving of interrupts at dedicated moderation times.
254
255 IntsPerSec=i,j,...
256 This parameter determines the length of any interrupt moderation
257 interval. Assuming that static interrupt moderation is to be
258 used, an IntsPerSec parameter value of 2000 will lead to an
259 interrupt moderation interval of 500 microseconds. Possible
260 values for this parameter are in the range of 30...40000
261 (interrupts per second). The default value is 2000.
262
263 This parameter is only used, if either static or dynamic
264 interrupt moderation is enabled on a network adapter card. This
265 parameter is ignored if no moderation is applied.
266
267 Note that the duration of the moderation interval is to be
268 chosen with care. At first glance, selecting a very long
269 duration (e.g., only 100 interrupts per second) seems to be
270 meaningful, but the increase of packet-processing delay is
271 tremendous. On the other hand, selecting a very short
272 moderation time might compensate the use of any moderation being
273 applied.
274
275 PrefPort=i,j,...
276 This parameter is used to force the preferred port to A or B (on
277 dual-port network adapters). The preferred port is the one that
278 is used if both ports A and B are detected as fully functional.
279 Possible values are: A or B whereas A is the default.
280
281 RlmtMode=i,j,...
282 RLMT monitors the status of the port. If the link of the active
283 port fails, RLMT switches immediately to the standby link. The
284 virtual link is maintained as long as at least one "physical"
285 link is up. This parameters states how RLMT should monitor both
286 ports. Possible values are: CheckLinkState, CheckLocalPort,
287 CheckSeg or DualNet whereas CheckLinkState is the default. The
288 different modes have the following meaning:
289
290 CheckLinkState Check link state only: RLMT uses the link state
291 reported by the adapter hardware for each individual port to
292 determine whether a port can be used for all network traffic or
293 not.
294
295 CheckLocalPort In this mode, RLMT monitors the network path
296 between the two ports of an adapter by regularly exchanging
297 packets between them. This mode requires a network
298 configuration in which the two ports are able to "see" each
299 other (i.e., there must not be any router between the ports).
300
301 CheckSeg Check local port and segmentation: This mode supports
302 the same functions as the CheckLocalPort mode and additionally
303 checks network segmentation between the ports. Therefore, this
304 mode is only to be used if Gigabit Ethernet switches are
305 installed on the network that have been configured to use the
306 Spanning Tree protocol.
307
308 DualNet In this mode, ports A and B are used as separate
309 devices. If you have a dual port adapter, port A will be
310 configured as eth[x] and port B as eth[x+1]. Both ports can be
311 used independently with distinct IP addresses. The preferred
312 port setting is not used. RLMT is turned off.
313
314 Note that RLMT modes CheckLocalPort and CheckLinkState are
315 designed to operate in configurations where a network path
316 between the ports on one adapter exists. Moreover, they are not
317 designed to work where adapters are connected back-to-back.
318
320 /proc/net/sk98lin/eth[x]
321 The statistics file of a particular interface of an adapter
322 card. It contains generic information about the adapter card
323 plus a detailed summary of all transmit and receive counters.
324
325 /usr/src/linux/Documentation/networking/sk98lin.txt
326 This is the README file of the sk98lin driver. It contains a
327 detailed installation HOWTO and describes all parameters of the
328 driver. It denotes also common problems and provides the
329 solution to them.
330
332 Report any bugs to linux@syskonnect.de
333
335 ifconfig(8), insmod(8), modprobe(8)
336
338 This page is part of release 3.22 of the Linux man-pages project. A
339 description of the project, and information about reporting bugs, can
340 be found at http://www.kernel.org/doc/man-pages/.
341
342
343
344Linux 2007-11-25 SK98LIN(4)