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