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