patch-2.4.23 linux-2.4.23/Documentation/networking/sk98lin.txt

Next file: linux-2.4.23/Documentation/rmdev_dyn.cciss
Previous file: linux-2.4.23/Documentation/networking/ifenslave.c
Back to the patch index
Back to the overall index

diff -urN linux-2.4.22/Documentation/networking/sk98lin.txt linux-2.4.23/Documentation/networking/sk98lin.txt
@@ -1,11 +1,11 @@
-(C)Copyright 1999-2002 SysKonnect GmbH.
+(C)Copyright 1999-2003 Marvell(R).
 All rights reserved
 ===========================================================================
 
-sk98lin.txt created 19-Dec-2002
+sk98lin.txt created 23-Sep-2003
 
-Readme File for sk98lin v6.02
-SysKonnect SK-98xx Gigabit Ethernet Adapter family driver for LINUX
+Readme File for sk98lin v6.18
+Marvell Yukon/SysKonnect SK-98xx Gigabit Ethernet Adapter family driver for LINUX
 
 This file contains
  1  Overview
@@ -19,7 +19,6 @@
  5  Large Frame Support
  6  VLAN and Link Aggregation Support (IEEE 802.1, 802.1q, 802.3ad)
  7  Troubleshooting
- 8  History
 
 ===========================================================================
 
@@ -27,8 +26,9 @@
 1  Overview
 ===========
 
-The sk98lin driver supports the SysKonnect SK-98xx and SK-95xx family 
-on Linux. It has been tested with Linux on Intel/x86 machines.
+The sk98lin driver supports the Marvell Yukon and SysKonnect 
+SK-98xx/SK-95xx compliant Gigabit Ethernet Adapter on Linux. It has 
+been tested with Linux on Intel/x86 machines.
 ***
 
 
@@ -75,8 +75,8 @@
 To integrate the driver permanently into the kernel, proceed as follows:
 
 1. Select the menu "Network device support" and then "Ethernet(1000Mbit)"
-2. Mark "SysKonnect SK-98xx and SK-95xx Gigabit Ethernet Adapter
-   family support" with (*) 
+2. Mark "Marvell Yukon Chipset / SysKonnect SK-98xx family support" 
+   with (*) 
 3. Build a new kernel when the configuration of the above options is 
    finished.
 4. Install the new kernel.
@@ -87,8 +87,8 @@
 1. Enable 'loadable module support' in the kernel.
 2. For automatic driver start, enable the 'Kernel module loader'.
 3. Select the menu "Network device support" and then "Ethernet(1000Mbit)"
-4. Mark "SysKonnect SK-98xx and SK-95xx Gigabit Ethernet Adapter
-   family support" with (M)
+4. Mark "Marvell Yukon Chipset / SysKonnect SK-98xx family support" 
+   with (M)
 5. Execute the command "make modules".
 6. Execute the command "make modules_install".
    The appropiate modules will be installed.
@@ -100,21 +100,23 @@
 To load the module manually, proceed as follows:
 
 1. Enter "modprobe sk98lin".
-2. If the SysKonnect SK-98xx adapter is installed in your computer and you
-   have a /proc file system, execute the command:
+2. If a Marvell Yukon or SysKonnect SK-98xx adapter is installed in 
+   your computer and you have a /proc file system, execute the command:
    "ls /proc/net/sk98lin/" 
    This should produce an output containing a line with the following 
    format:
    eth0   eth1  ...
    which indicates that your adapter has been found and initialized.
    
-   NOTE 1: If you have more than one SysKonnect SK-98xx adapter installed,
-           the adapters will be listed as 'eth0', 'eth1', 'eth2', etc.
-           For each adapter, repeat steps 3 and 4 below.
-
-   NOTE 2: If you have other Ethernet adapters installed, your SysKonnect
-           SK-98xx adapter will be mapped to the next available number, 
-           e.g. 'eth1'. The mapping is executed automatically.
+   NOTE 1: If you have more than one Marvell Yukon or SysKonnect SK-98xx 
+           adapter installed, the adapters will be listed as 'eth0', 
+                   'eth1', 'eth2', etc.
+                   For each adapter, repeat steps 3 and 4 below.
+
+   NOTE 2: If you have other Ethernet adapters installed, your Marvell
+           Yukon or SysKonnect SK-98xx adapter will be mapped to the 
+                   next available number, e.g. 'eth1'. The mapping is executed 
+                   automatically.
            The module installation message (displayed either in a system
            log file or on the console) prints a line for each adapter 
            found containing the corresponding 'ethX'.
@@ -141,7 +143,7 @@
    Use 'ping <otherstation>' to verify the connection to other computers 
    on your network.
 5. To check the adapter configuration view /proc/net/sk98lin/[devicename].
-   For example by executing:	
+   For example by executing:    
    "cat /proc/net/sk98lin/eth0" 
 
 Unload the module
@@ -184,7 +186,7 @@
    unload and reload the driver.
    The syntax of the driver parameters is:
 
- 	modprobe sk98lin parameter=value1[,value2[,value3...]]
+        modprobe sk98lin parameter=value1[,value2[,value3...]]
 
    where value1 refers to the first adapter, value2 to the second etc.
 
@@ -198,7 +200,7 @@
 to FULL, and on the second adapter to HALF.
 Then, you must enter:
 
- 	modprobe sk98lin AutoNeg=On,Off DupCap=Full,Half
+        modprobe sk98lin AutoNeg_A=On,Off DupCap_A=Full,Half
 
 NOTE: The number of adapters that can be configured this way is
       limited in the driver (file skge.c, constant SK_MAX_CARD_PARAM).
@@ -256,9 +258,9 @@
 port reports during auto-negotiation. It can be set for each port 
 individually.
 Possible modes:
-   -- Sym      = Symetric: both link partners are allowed to send 
+   -- Sym      = Symmetric: both link partners are allowed to send 
                   PAUSE frames
-   -- SymOrRem = SymetricOrRemote: both or only remote partner 
+   -- SymOrRem = SymmetricOrRemote: both or only remote partner 
                   are allowed to send PAUSE frames
    -- LocSend  = LocalSend: only local link partner is allowed 
                   to send PAUSE frames
@@ -283,6 +285,101 @@
 4.2  Adapter Parameters
 -----------------------
 
+Connection Type (SK-98xx V2.0 copper adapters only)
+---------------
+Parameter:    ConType
+Values:       Auto, 100FD, 100HD, 10FD, 10HD
+Default:      Auto
+
+The parameter 'ConType' 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.
+
+The following table shows the values of 'ConType' and the corresponding
+combinations of the per-port parameters:
+
+    ConType   |  DupCap   AutoNeg   FlowCtrl   Role             Speed
+    ----------+------------------------------------------------------
+    Auto      |  Both     On        SymOrRem   Auto             Auto
+    100FD     |  Full     Off       None       Auto (ignored)   100
+    100HD     |  Half     Off       None       Auto (ignored)   100
+    10FD      |  Full     Off       None       Auto (ignored)   10
+    10HD      |  Half     Off       None       Auto (ignored)   10
+
+Stating any other port parameter together with this 'ConType' variable
+will result in a merged configuration of those settings. This due to 
+the fact, that the per-port parameters (e.g. Speed_? ) have a higher
+priority than the combined variable 'ConType'.
+
+NOTE: This parameter is always used on both ports of the adapter card.
+
+Interrupt Moderation
+--------------------
+Parameter:    Moderation
+Values:       None, Static, Dynamic
+Default:      None
+
+Interrupt moderation is employed to limit the maxmimum 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
+'IntsPerSec' parameter, which is explained later below.
+
+Possible modes:
+
+   -- 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.
+
+   -- 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 '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.
+
+   -- 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 - at a later
+      time - the CPU utilizaton decreases again (or if the network load is 
+      negligible) the interrupt moderation will automatically be disabled.
+
+Interrupt moderation should be used when the driver has to handle one or more
+interfaces with a high network load, which - as a consequence - leads also to a
+high CPU utilization. When moderation is applied in such high network load 
+situations, CPU load might be reduced by 20-30%.
+
+NOTE: The drawback of using interrupt moderation is an increase of the round-
+trip-time (RTT), due to the queueing and serving of interrupts at dedicated
+moderation times.
+
+Interrupts per second
+---------------------
+Parameter:    IntsPerSec
+Values:       30...40000 (interrupts per second)
+Default:      2000
+
+This parameter is only used, if either static or dynamic interrupt moderation
+is used on a network adapter card. Using this paramter if no moderation is
+applied, will lead to no action performed.
+
+This parameter determines the length of any interrupt moderation interval. 
+Assuming that static interrupt moderation is to be used, an 'IntsPerSec' 
+parameter value of 2000 will lead to an interrupt moderation interval of
+500 microseconds. 
+
+NOTE: 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.
+
+
 Preferred Port
 --------------
 Parameter:    PrefPort
@@ -365,10 +462,10 @@
 6  VLAN and Link Aggregation Support (IEEE 802.1, 802.1q, 802.3ad)
 ==================================================================
 
-The SysKonnect Linux drivers are able to support VLAN and Link Aggregation
-according to IEEE standards 802.1, 802.1q, and 802.3ad. These features are
-only available after installation of open source modules available on the 
-Internet:
+The Marvell Yukon/SysKonnect Linux drivers are able to support VLAN and 
+Link Aggregation according to IEEE standards 802.1, 802.1q, and 802.3ad. 
+These features are only available after installation of open source 
+modules available on the Internet:
 For VLAN go to: http://scry.wanfear.com/~greear/vlan.html
 For Link Aggregation go to: http://www.st.rim.or.jp/~yumo
 
@@ -448,7 +545,7 @@
           Nr:    0xcc
           Msg:   SkGeInitPort() cannot init running ports"
 Reason:   You are using a driver compiled for single processor machines 
-          on a multiprocessor machine with SMP (Symetric MultiProcessor) 
+          on a multiprocessor machine with SMP (Symmetric MultiProcessor) 
           kernel.
 Solution: Configure your kernel appropriately and recompile the kernel or
           the modules.
@@ -459,208 +556,13 @@
 support for help (linux@syskonnect.de).
 When contacting our technical support, please ensure that the following 
 information is available:
-- System Manufacturer and Model
-- Boards in your system
+- System Manufacturer and HW Informations (CPU, Memory... )
+- PCI-Boards in your system
 - Distribution
 - Kernel version
 - Driver version
 ***
 
-8  History
-==========
 
-VERSION 6.00 (In-Kernel version)
-New Features:
-- Support for SK-98xx V2.0 adapters
-- Support for gmac
-- Support for kernel 2.4.x and kernel 2.2.x
-- Zerocopy support for kernel 2.4.x with sendfile()
-- Support for scatter-gather functionality with sendfile()
-- Speed support for SK-98xx V2.0 adapters
-- New ProcFs entries
-- New module parameters
-Problems fixed:
-- ProcFS initialization
-- csum packet error
-- Ierror/crc counter error (#10767)
-- rx_too_long counter error (#10751)
-Known limitations:
-- None
-
-VERSION 4.11
-New Features:
-- none
-Problems fixed:
-- Error statistic counter fix (#10620)
-- RLMT-Fixes (#10659, #10639, #10650)
-- LM80 sensor initialization fix (#10623)
-- SK-CSUM memory fixes (#10610).
-Known limitations:
-- None
-
-VERSION 4.10
-New Features:
-- New ProcFs entries
-Problems fixed:
-- Corrected some printk's
-Known limitations:
-- None
-
-VERSION 4.09
-New Features:
-- IFF_RUNNING support (link status)
-- New ProcFs entries
-Problems fixed:
-- too long counters
-- too short counters
-- Kernel error compilation
-Known limitations:
-- None
- 
-VERSION 4.06 (In-Kernel version)
-Problems fixed:
-- MTU init problems
- 
-VERSION 4.04
-Problems fixed:
-- removed VLAN error messages
-
-VERSION 4.02 (In-Kernel version)
-New Features:
-- Add Kernel 2.4 changes
-Known limitations:
-- None
-
-VERSION 4.01 (In-Kernel version)
-Problems fixed:
-- Full statistics support for DualNet mode
-Known limitations:
-- None
-
-VERSION 4.00 (In-Kernel version)
-Problems fixed:
-- Memory leak found 
-New Features:
-- Proc filesystem integration
-- DualNet functionality integrated
-- Rlmt networks added
-Known limitations:
-- statistics partially incorrect in DualNet mode
-
-VERSION 3.04 (In-Kernel version)
-Problems fixed:
-- Driver start failed on UltraSPARC
-- Rx checksum calculation for big endian machines did not work
-- Jumbo frames were counted as input-errors in netstat
-
-VERSION 3.03 (Standalone version)
-Problems fixed:
-- Compilation did not find script "printver.sh" if "." not in PATH
-Known limitations:
-- None
-
-VERSION 3.02 (In-Kernel version)
-Problems fixed:
-- None
-New Features:
-- Integration in Linux kernel source (2.2.14 and 2.3.29) 
-Known limitations:
-- None
-
-VERSION 3.01
-Problems fixed:
-- None
-New Features:
-- Full source release
-Known limitations:
-- None
-
-VERSION 3.00
-Problems fixed:
-- None
-New Features:
-- Support for 1000Base-T adapters (SK-9821 and SK-9822)
-Known limitations:
-- None
-
-VERSION 1.07
-Problems fixed:
-- RlmtMode parameter value strings were wrong (#10437)
-- Driver sent too many RLMT frames (#10439)
-- Driver did not recognize network segmentation (#10440)
-- RLMT switched too often on segmented network (#10441)
-Known limitations:
-- None
-
-VERSION 1.06
-Problems fixed:
-- System panic'ed after some time when running with 
-  RlmtMode=CheckOtherLink or RlmtMode=CheckSeg (#10421)
-  Panic message: "Kernel panic: skput: over ... dev: eth0"
-- Driver did not switch back to default port when connected
-  back-to-back (#10422).
-Changes:
-- RlmtMode parameter names have changed
-New features:
-- There is now a version for ALPHA processors
-Known limitations:
-- None
-
-VERSION 1.05
-Problems fixed:
-- Driver failed to load on kernels with version information
-  for module symbols enabled
-Known limitations:
-- None
-
-VERSION 1.04
-Problems fixed:
-- Large frame support does work now (no autonegotiation
-  support for large frames, just manually selectable)
-New Features:
-- Receive checksumming in hardware
-- Performance optimizations
-  Some numbers (on two PII-400 machines, back-to-back):
-  netpipe: 300 MBit/sec, with large frames: 470 MBit/sec
-  ttcp:  38 MByte/sec, with large frames: 60 MByte/sec
-  ttcp (UDP send): 66 MByte/sec, with large frames: 106 MByte/sec
-Known limitations:
-- None
-
-VERSION 1.03
-Problems fixed:
-- Unloading with "rmmod" caused segmentation fault (#10415)
-- The link LED flickered from time to time, if no link was
-  established (#10402)
-- Installation problems with RedHat 6.0 (#10409)
-New Features:
-- Connection state ouput at "network connection up"
-Known limitations:
-- None
-
-VERSION 1.02
-Problems fixed:
-- Failed with multiple adapters
-- Failed with Single Port adapters
-- Startup string was only displayed if adapter found
-- No link could be established on certain switches when the switches were
-  rebooted. (#10377)
-Known limitations:
-- Segmentation fault at "rmmod" with kernel 2.2.3 on some machines
-
-VERSION 1.01
-Problems fixed:
-- Sensor status was not set back to 'ok' after 'warning/error'. (#10386)
-Changes:
-- improved parallelism in driver
-
-VERSION 1.00
-Known limitations:
-- not tested with all kernel versions (I don't have that much time :-)
-- only x86 version available (if you need others, ask for it)
-- source code not completely available
 
 ***End of Readme File***
-
-
-

FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen (who was at: slshen@lbl.gov)