| '\" t |
| .\" (C)Copyright 1999-2003 Marvell(R) -- linux@syskonnect.de |
| .\" sk98lin.4 1.1 2003/12/17 10:03:18 |
| .\" |
| .\" SPDX-License-Identifier: GPL-2.0-or-later |
| .\" |
| .\" This manpage can be viewed using `groff -Tascii -man sk98lin.4 | less` |
| .\" |
| .TH sk98lin 4 (date) "Linux man-pages (unreleased)" |
| .SH NAME |
| sk98lin \- Marvell/SysKonnect Gigabit Ethernet driver v6.21 |
| .SH SYNOPSIS |
| .B insmod sk98lin.o |
| .RB [ Speed_A=\c |
| .IR i,j,... ] |
| .RB [ Speed_B=\c |
| .IR i,j,... ] |
| .RB [ AutoNeg_A=\c |
| .IR i,j,... ] |
| .RB [ AutoNeg_B=\c |
| .IR i,j,... ] |
| .RB [ DupCap_A=\c |
| .IR i,j,... ] |
| .RB [ DupCap_B=\c |
| .IR i,j,... ] |
| .RB [ FlowCtrl_A=\c |
| .IR i,j,... ] |
| .RB [ FlowCtrl_B=\c |
| .IR i,j,... ] |
| .RB [ Role_A=\c |
| .IR i,j,... ] |
| .RB [ Role_B=\c |
| .IR i,j,... ] |
| .RB [ ConType=\c |
| .IR i,j,... ] |
| .RB [ Moderation=\c |
| .IR i,j,... ] |
| .RB [ IntsPerSec=\c |
| .IR i,j,... ] |
| .RB [ PrefPort=\c |
| .IR i,j,... ] |
| .RB [ RlmtMode=\c |
| .IR i,j,... ] |
| .SH DESCRIPTION |
| .ad l |
| .hy 0 |
| .BR Note : |
| This obsolete driver was removed in Linux 2.6.26. |
| .P |
| .B sk98lin |
| is the Gigabit Ethernet driver for |
| Marvell and SysKonnect network adapter cards. |
| It supports SysKonnect SK-98xx/SK-95xx |
| compliant Gigabit Ethernet Adapter and |
| any Yukon compliant chipset. |
| .P |
| When loading the driver using insmod, |
| parameters for the network adapter cards |
| might be stated as a sequence of comma separated commands. |
| If for instance two network adapters are installed and AutoNegotiation on |
| Port A of the first adapter should be ON, |
| but on the Port A of the second adapter switched OFF, one must enter: |
| .P |
| .in +4n |
| .EX |
| insmod sk98lin.o AutoNeg_A=On,Off |
| .EE |
| .in |
| .P |
| After |
| .B sk98lin |
| is bound to one or more adapter cards and the |
| .I /proc |
| filesystem is mounted on your system, a dedicated statistics file |
| will be created in the folder |
| .I /proc/net/sk98lin |
| for all ports of the installed network adapter cards. |
| Those files are named |
| .IR eth[x] , |
| where |
| .I x |
| is the number of the interface that has been assigned to a |
| dedicated port by the system. |
| .P |
| If loading is finished, any desired IP address can be |
| assigned to the respective |
| .I eth[x] |
| interface using the |
| .BR ifconfig (8) |
| command. |
| This causes the adapter to connect to the Ethernet and to display a status |
| message on the console saying "ethx: network connection up using port y" |
| followed by the configured or detected connection parameters. |
| .P |
| The |
| .B sk98lin |
| also supports large frames (also called jumbo frames). |
| Using jumbo frames can improve throughput tremendously when |
| transferring large amounts of data. |
| To enable large frames, the MTU (maximum transfer unit) size |
| for an interface is to be set to a high value. |
| The default MTU size is 1500 and can be changed up to 9000 (bytes). |
| Setting the MTU size can be done when assigning the IP address |
| to the interface or later by using the |
| .BR ifconfig (8) |
| command with the mtu parameter. |
| If for instance eth0 needs an IP |
| address and a large frame MTU size, |
| the following two commands might be used: |
| .P |
| .in +4n |
| .EX |
| ifconfig eth0 10.1.1.1 |
| ifconfig eth0 mtu 9000 |
| .EE |
| .in |
| .P |
| Those two commands might even be combined into one: |
| .P |
| .in +4n |
| .EX |
| ifconfig eth0 10.1.1.1 mtu 9000 |
| .EE |
| .in |
| .P |
| Note that large frames can be used only if permitted by |
| your network infrastructure. |
| This means, that any switch being used in your Ethernet must |
| also support large frames. |
| Quite some switches support large frames, |
| but need to be configured to do so. |
| Most of the times, their default setting is to support only |
| standard frames with an MTU size of 1500 (bytes). |
| In addition to the switches inside the network, |
| all network adapters that are to be used must also be |
| enabled regarding jumbo frames. |
| If an adapter is not set to receive large frames, it will simply drop them. |
| .P |
| Switching back to the standard Ethernet frame size can be done by using the |
| .BR ifconfig (8) |
| command again: |
| .P |
| .in +4n |
| .EX |
| ifconfig eth0 mtu 1500 |
| .EE |
| .in |
| .P |
| The Marvell/SysKonnect Gigabit Ethernet driver for Linux is able to |
| support VLAN and Link Aggregation according to |
| IEEE standards 802.1, 802.1q, and 802.3ad. |
| Those features are available only after installation of open source modules |
| which can be found on the Internet: |
| .P |
| .IR VLAN : |
| .UR http://www.candelatech.com\:/\[ti]greear\:/vlan.html |
| .UE |
| .br |
| .I Link |
| .IR Aggregation : |
| .UR http://www.st.rim.or.jp\:/\[ti]yumo |
| .UE |
| .P |
| Note that Marvell/SysKonnect does not offer any support for these |
| open source modules and does not take the responsibility for any |
| kind of failures or problems arising when using these modules. |
| .SS Parameters |
| .TP |
| .BI Speed_A= i,j,... |
| This parameter is used to set the speed capabilities of port A of an |
| adapter card. |
| It is valid only for Yukon copper adapters. |
| Possible values are: |
| .IR 10 , |
| .IR 100 , |
| .IR 1000 , |
| or |
| .IR Auto ; |
| .I Auto |
| is the default. |
| Usually, the speed is negotiated between the two ports |
| during link establishment. |
| If this fails, |
| a port can be forced to a specific setting with this parameter. |
| .TP |
| .BI Speed_B= i,j,... |
| This parameter is used to set the speed capabilities of port B of |
| an adapter card. |
| It is valid only for Yukon copper adapters. |
| Possible values are: |
| .IR 10 , |
| .IR 100 , |
| .IR 1000 , |
| or |
| .IR Auto ; |
| .I Auto |
| is the default. |
| Usually, the speed is negotiated between the two ports during link |
| establishment. |
| If this fails, |
| a port can be forced to a specific setting with this parameter. |
| .TP |
| .BI AutoNeg_A= i,j,... |
| Enables or disables the use of autonegotiation of port A of an adapter card. |
| Possible values are: |
| .IR On , |
| .IR Off , |
| or |
| .IR Sense ; |
| .I On |
| is the default. |
| The |
| .I Sense |
| mode automatically detects whether the link partner supports |
| auto-negotiation or not. |
| .TP |
| .BI AutoNeg_B= i,j,... |
| Enables or disables the use of autonegotiation of port B of an adapter card. |
| Possible values are: |
| .IR On , |
| .IR Off , |
| or |
| .IR Sense ; |
| .I On |
| is the default. |
| The |
| .I Sense |
| mode automatically detects whether the link partner supports |
| auto-negotiation or not. |
| .TP |
| .BI DupCap_A= i,j,... |
| This parameter indicates the duplex mode to be used for port A |
| of an adapter card. |
| Possible values are: |
| .IR Half , |
| .IR Full , |
| or |
| .IR Both ; |
| .I Both |
| is the default. |
| This parameter is relevant only if AutoNeg_A of port A is not set to |
| .IR Sense . |
| If AutoNeg_A is set to |
| .IR On , |
| all three values of DupCap_A ( |
| .IR Half , |
| .IR Full , |
| or |
| .IR Both ) |
| might be stated. |
| If AutoNeg_A is set to |
| .IR Off , |
| only DupCap_A values |
| .I Full |
| and |
| .I Half |
| are allowed. |
| This DupCap_A parameter is useful if your link partner does not |
| support all possible duplex combinations. |
| .TP |
| .BI DupCap_B= i,j,... |
| This parameter indicates the duplex mode to be used for port B |
| of an adapter card. |
| Possible values are: |
| .IR Half , |
| .IR Full , |
| or |
| .IR Both ; |
| .I Both |
| is the default. |
| This parameter is relevant only if AutoNeg_B of port B is not set to |
| .IR Sense . |
| If AutoNeg_B is set to |
| .IR On , |
| all three values of DupCap_B ( |
| .IR Half , |
| .IR Full , |
| or |
| .IR Both ) |
| might be stated. |
| If AutoNeg_B is set to |
| .IR Off , |
| only DupCap_B values |
| .I Full |
| and |
| .I Half |
| are allowed. |
| This DupCap_B parameter is useful if your link partner does not |
| support all possible duplex combinations. |
| .TP |
| .BI FlowCtrl_A= i,j,... |
| This parameter can be used to set the flow control capabilities the |
| port reports during auto-negotiation. |
| Possible values are: |
| .IR Sym , |
| .IR SymOrRem , |
| .IR LocSend , |
| or |
| .IR None ; |
| .I SymOrRem |
| is the default. |
| The different modes have the following meaning: |
| .RS |
| .TP |
| .IR Sym " = Symmetric" |
| Both link partners are allowed to send PAUSE frames. |
| .TP |
| .IR SymOrRem " = SymmetricOrRemote" |
| Both or only remote partner are allowed to send PAUSE frames. |
| .TP |
| .IR LocSend " = LocalSend" |
| Only local link partner is allowed to send PAUSE frames. |
| .TP |
| .IR None " = None" |
| No link partner is allowed to send PAUSE frames. |
| .RE |
| .IP |
| Note that this parameter is ignored if AutoNeg_A is set to |
| .IR Off . |
| .TP |
| .BI FlowCtrl_B= i,j,... |
| This parameter can be used to set the flow control capabilities the |
| port reports during auto-negotiation. |
| Possible values are: |
| .IR Sym , |
| .IR SymOrRem , |
| .IR LocSend , |
| or |
| .IR None ; |
| .I SymOrRem |
| is the default. |
| The different modes have the following meaning: |
| .RS |
| .TP |
| .IR Sym " = Symmetric" |
| Both link partners are allowed to send PAUSE frames. |
| .TP |
| .IR SymOrRem " = SymmetricOrRemote" |
| Both or only remote partner are allowed to send PAUSE frames. |
| .TP |
| .IR LocSend " = LocalSend" |
| Only local link partner is allowed to send PAUSE frames. |
| .TP |
| .IR None " = None" |
| No link partner is allowed to send PAUSE frames. |
| .RE |
| .IP |
| Note that this parameter is ignored if AutoNeg_B is set to |
| .IR Off . |
| .TP |
| .BI Role_A= i,j,... |
| This parameter is valid only for 1000Base-T adapter cards. |
| For two 1000Base-T ports to communicate, |
| one must take the role of the master (providing timing information), |
| while the other must be the slave. |
| Possible values are: |
| .IR Auto , |
| .IR Master , |
| or |
| .IR Slave ; |
| .I Auto |
| is the default. |
| Usually, the role of a port is negotiated between two ports during |
| link establishment, but if that fails the port A of an adapter card |
| can be forced to a specific setting with this parameter. |
| .TP |
| .BI Role_B= i,j,... |
| This parameter is valid only for 1000Base-T adapter cards. |
| For two 1000Base-T ports to communicate, one must take |
| the role of the master (providing timing information), |
| while the other must be the slave. |
| Possible values are: |
| .IR Auto , |
| .IR Master , |
| or |
| .IR Slave ; |
| .I Auto |
| is the default. |
| Usually, the role of a port is negotiated between |
| two ports during link establishment, but if that fails |
| the port B of an adapter card can be forced to a |
| specific setting with this parameter. |
| .TP |
| .BI ConType= i,j,... |
| This parameter is a combination of all five per-port parameters |
| within one single parameter. |
| This simplifies the configuration of both ports of an adapter card. |
| The different values of this variable reflect the |
| most meaningful combinations of port parameters. |
| Possible values and their corresponding combination of per-port parameters: |
| .IP |
| .TS |
| lb lb lb lb lb lb |
| l l l l l l. |
| ConType DupCap AutoNeg FlowCtrl Role Speed |
| \fIAuto\fP Both On SymOrRem Auto Auto |
| \fI100FD\fP Full Off None Auto 100 |
| \fI100HD\fP Half Off None Auto 100 |
| \fI10FD\fP Full Off None Auto 10 |
| \fI10HD\fP Half Off None Auto 10 |
| .TE |
| .IP |
| Stating any other port parameter together with this |
| .I ConType |
| parameter will result in a merged configuration of those settings. |
| This is due to |
| the fact, that the per-port parameters (e.g., |
| .IR Speed_A ) |
| have a higher priority than the combined variable |
| .IR ConType . |
| .TP |
| .BI Moderation= i,j,... |
| Interrupt moderation is employed to limit the maximum number of interrupts |
| the driver has to serve. |
| That is, one or more interrupts (which indicate any transmit or |
| receive packet to be processed) are queued until the driver processes them. |
| When queued interrupts are to be served, is determined by the |
| .I IntsPerSec |
| parameter, which is explained later below. |
| Possible moderation modes are: |
| .IR None , |
| .IR Static , |
| or |
| .IR Dynamic ; |
| .I None |
| is the default. |
| The different modes have the following meaning: |
| .IP |
| .I None |
| No interrupt moderation is applied on the adapter card. |
| Therefore, each transmit or receive interrupt is served immediately |
| as soon as it appears on the interrupt line of the adapter card. |
| .IP |
| .I Static |
| Interrupt moderation is applied on the adapter card. |
| All transmit and receive interrupts are queued until |
| a complete moderation interval ends. |
| If such a moderation interval ends, all queued interrupts |
| are processed in one big bunch without any delay. |
| The term |
| .I Static |
| reflects the fact, that interrupt moderation is always enabled, |
| regardless how much network load is currently passing via a |
| particular interface. |
| In addition, the duration of the moderation interval has a fixed |
| length that never changes while the driver is operational. |
| .IP |
| .I Dynamic |
| Interrupt moderation might be applied on the adapter card, |
| depending on the load of the system. |
| If the driver detects that the system load is too high, |
| the driver tries to shield the system against too much network |
| load by enabling interrupt moderation. |
| If\[em]at a later time\[em]the CPU utilization decreases |
| again (or if the network load is negligible), the interrupt |
| moderation will automatically be disabled. |
| .IP |
| Interrupt moderation should be used when the driver has to |
| handle one or more interfaces with a high network load, |
| which\[em]as a consequence\[em]leads also to a high CPU utilization. |
| When moderation is applied in such high network load situations, |
| CPU load might be reduced by 20\[en]30% on slow computers. |
| .IP |
| Note that the drawback of using interrupt moderation is an increase of |
| the round-trip-time (RTT), due to the queuing and serving of |
| interrupts at dedicated moderation times. |
| .TP |
| .BI IntsPerSec= i,j,... |
| This parameter determines the length of any interrupt moderation interval. |
| Assuming that static interrupt moderation is to be used, an |
| .I IntsPerSec |
| parameter value of 2000 will lead to an interrupt moderation interval of |
| 500 microseconds. |
| Possible values for this parameter are in the range of |
| 30...40000 (interrupts per second). |
| The default value is 2000. |
| .IP |
| This parameter is used only if either static or dynamic interrupt moderation |
| is enabled on a network adapter card. |
| This parameter is ignored if no moderation is applied. |
| .IP |
| Note that the duration of the moderation interval is to be chosen with care. |
| At first glance, selecting a very long duration (e.g., only 100 interrupts per |
| second) seems to be meaningful, but the increase of packet-processing delay |
| is tremendous. |
| On the other hand, selecting a very short moderation time might |
| compensate the use of any moderation being applied. |
| .TP |
| .BI PrefPort= i,j,... |
| This parameter is used to force the preferred port to |
| A or B (on dual-port network adapters). |
| The preferred port is the one that is used if both ports A and B are |
| detected as fully functional. |
| Possible values are: |
| .I A |
| or |
| .IR B ; |
| .I A |
| is the default. |
| .TP |
| .BI RlmtMode= i,j,... |
| RLMT monitors the status of the port. |
| If the link of the active port fails, |
| RLMT switches immediately to the standby link. |
| The virtual link is maintained as long as at least one "physical" link is up. |
| This parameters states how RLMT should monitor both ports. |
| Possible values are: |
| .IR CheckLinkState , |
| .IR CheckLocalPort , |
| .IR CheckSeg , |
| or |
| .IR DualNet ; |
| .I CheckLinkState |
| is the default. |
| The different modes have the following meaning: |
| .IP |
| .I CheckLinkState |
| Check link state only: RLMT uses the link state reported by the adapter |
| hardware for each individual port to determine whether a port can be used |
| for all network traffic or not. |
| .IP |
| .I CheckLocalPort |
| In this mode, RLMT monitors the network path between the two |
| ports of an adapter by regularly exchanging packets between them. |
| This mode requires a network configuration in which the |
| two ports are able to "see" each other (i.e., there |
| must not be any router between the ports). |
| .IP |
| .I CheckSeg |
| Check local port and segmentation: |
| This mode supports the same functions as the CheckLocalPort |
| mode and additionally checks network segmentation between the ports. |
| Therefore, this mode is to be used only if Gigabit Ethernet |
| switches are installed on the network that have been |
| configured to use the Spanning Tree protocol. |
| .IP |
| .I DualNet |
| In this mode, ports A and B are used as separate devices. |
| If you have a dual port adapter, port A will be configured as |
| .I eth[x] |
| and port B as |
| .IR eth[x+1] . |
| Both ports can be used independently with distinct IP addresses. |
| The preferred port setting is not used. |
| RLMT is turned off. |
| .IP |
| Note that RLMT modes |
| .I CheckLocalPort |
| and |
| .I CheckLinkState |
| are designed to operate in configurations where a |
| network path between the ports on one adapter exists. |
| Moreover, they are not designed to work where adapters are |
| connected back-to-back. |
| .SH FILES |
| .TP |
| .I /proc/net/sk98lin/eth[x] |
| The statistics file of a particular interface of an adapter card. |
| It contains generic information about the adapter card plus a detailed |
| summary of all transmit and receive counters. |
| .TP |
| .I /usr/src/linux/Documentation/networking/sk98lin.txt |
| This is the |
| .I README |
| file of the |
| .I sk98lin |
| driver. |
| It contains a detailed installation HOWTO and describes all parameters |
| of the driver. |
| It denotes also common problems and provides the solution to them. |
| .SH BUGS |
| Report any bugs to linux@syskonnect.de |
| .\" .SH AUTHORS |
| .\" Ralph Roesler \[em] rroesler@syskonnect.de |
| .\" .br |
| .\" Mirko Lindner \[em] mlindner@syskonnect.de |
| .SH SEE ALSO |
| .BR ifconfig (8), |
| .BR insmod (8), |
| .BR modprobe (8) |