📄 release-notes.txt
字号:
DP8381X - Linux driver Release Notes
Driver Version - 1.6
Tested on Linux 2.6.X
Tested on Linux 2.4.X
MPL Version (Hardware abstration layer) : 1.5
May-9, 2006
NOTE!!!!: See Design Instructions below if you will be modifying this source
=============================================================================
-----------------------------------------------------------------------------
PRODUCT INFORMATION
-----------------------------------------------------------------------------
The driver supports DP8381X series (MacPhyter) 10/100Mbps PCI Ethernet devices
-----------------------------------------------------------------------------
INSTALLATION INSTRUCTIONS
-----------------------------------------------------------------------------
1. Build the driver (macphy.ko or macphy.o) as indicated in the build
instructions (see next section)
2. The driver can be dynamically loaded and unloaded from a running kernel
using insmod/rmmod.
# insmod macphy.ko [for 2.6.x kernel]
# insmod macphy.o [for 2.4.x kernel]
# rmmod macphy
3. Load Options (e.g. insmod macphy.ko option=X)
a. TxDCnt - Number of Transmit Descriptors (32bytes each)
Default : 64
b. TxQCnt - Number of Transmit Queues to be enabled
Default : 1, Max : 4 (only on DP83818)
c. RxDCnt - Number of Receive Descriptors (32bytes each)
Default : 64
d. RxQCnt Number of Receive Queues to be enabled
Default : 1, Max : 1
e. LinkMode - Desired Link Setup Mode
Note1: In Forced mode, if the link partner is configured for Auto-neg then
only half-duplex is valid
Note2: The link settings are effective only after the interface is enabled
0 : Auto Negotiate (Default)
1 : Force Speed and Duplex Mode
f. LinkSpeed - Desired Link Speed
Note1 : If set in AutoNeg mode then this is the Max speed advertized
Note2: The link settings are effective only after the interface is enabled
0 : 100Mbps (Default)
1 : 10Mbps
g. LinkDuplex - Desired Link Duplex Mode
Note1 : If set in AutoNeg mode then this is the mode advertized
Note2 : In Forced mode, if the link partner is configured for Auto-neg then
only half-duplex is valid
Note3: The link settings are effective only after the interface is enabled
0 : Full Duplex (Default)
1 : Half Duplex
h. LinkPause - Desired Link Pause Mode
Note1 : If set in AutoNeg mode then this is the mode advertized
Note2: The link settings are effective only after the interface is enabled
0 : Receive Pause Only (Default)
1 : Transmit Pause Only
2 : Transmit and Receive Pause (Symmetrical)
3 : No Pause generation
i. IntTimeHold - Interrupt Holdoff in usec (Micro)
Default : 100, Max : 25500 (i.e. 25.5 msec)
j. IntTxHold - Interrupt Holdoff in Tx packets
Default : 2
k. IntRxHold - Interrupt Holdoff in Rx packets
Default : 2
l. Wol - Desired Wol Events (Logical OR)
0x01 : MPL_WOL_MAGIC - Enable wake on Magic Pattern.
0x04 : MPL_WOL_BROADCAST - Enable wake on any broadcast packet.
0x08 : MPL_WOL_MULTICAST - Enable wake on multicast packet.
0x10 : MPL_WOL_DIRECTED - Enable wake on directed (unicast) packet to
the device's address.
0x20 : MPL_WOL_LINK - Enable wake on link status change.
0x40 : MPL_WOL_ARP - Enable wake on any ARP packet.
m. NSC Internal (Diag Mode only)
DiagStsQueue - Number of pkts possible in the status queue
Default : 256
4. The ifconfig utility may be used to activate the interface & assign
an IP address.
-----------------------------------------------------------------------------
BUILD INSTRUCTIONS
-----------------------------------------------------------------------------
A) If you receive a single DP8381X-Linux-Ver-X.Y.tgz file then follow these
instructions.
The below descriptions refers to your install directory as <install folder>
1. Untar the driver files - "tar -xvzf DP8381X-Linux-Ver-X.Y.tgz"
2. Change directory to the DP8381X folder
3. Select the right make file (Makefile.2.x) depending on the kernel you
are running (selects between 2.4.X and 2.6.X kernels) and rename it
to Makefile
4. Run the "make" command
[This produces a loadable kernel module called macphy.ko for 2.6.x
and macphy.o for 2.4.x]
B) If you receive two files MPL-Version.tgz and NSM-Version.tgz follow these
instructions.
Driver is built using the gcc compiler. The driver source consists of two
modules,
1. NSM - NOS Specific Module
2. MPL - MacPhyter Portability Layer
The below descriptions refers to your base directory as <base folder>
1. Copy the NSM files to your <base folder>.
2. Copy MPL to <base folder>
[Now directory structure should look like - <base folder>/Mpl ]
3. Select the right make file (Makefile.2.x) and rename it to Makefile
4. Run the "make" command in <base folder>
[This produces a loadable kernel module called macphy.ko for 2.6.x
and macphy.o for 2.4.x]
-----------------------------------------------------------------------------
UNIT TEST
-----------------------------------------------------------------------------
-----------------------------------------------------------------------------
REVISION HISTORY
-----------------------------------------------------------------------------
-----------------------------------------------------------------------------
FUNCTIONAL CHANGES
-----------------------------------------------------------------------------
1. v-0.9 - First Release to Validation
2. v-1.0 - First Release to field
3. v-1.2 - Added Diag support
4. v-1.3 - Fixes to support external PHY
5. v-1.4 - After validating MacPhy3, Added VLAN
5. v-1.5 - Added Pause support
-----------------------------------------------------------------------------
DEFECTS CORRECTED
-----------------------------------------------------------------------------
1. v-1.1 - Fixed forced mode link-up issues
-----------------------------------------------------------------------------
KNOWN ERRATA
-----------------------------------------------------------------------------
-----------------------------------------------------------------------------
VALIDATION NOTES (Responsibility - Validation)
-----------------------------------------------------------------------------
* Validation Issues/Errata
* Issue Details
-----------------------------------------------------------------------------
Design Notes
-----------------------------------------------------------------------------
1. This driver is designed as two layers - One is a hardware specific block
(MPL - MacPhyter Portablity Layer) and the other is OS specific (NSM). Both the layers share APIs as defined in oai.h (for MPL to NSM data-flow) and mplclient.h (for NSM to MPL dataflow).
2. For effecting the behavior of MPL's functional blocks, a NSM implementor needs to modify oai.h (See instructions in the file). Many options like working on Big-endian machines, disabling internal PHY, enabling task offload blocks etc can be done by simply changing the #defines in this file.
3. To change the default register values that are set on the device while it is being initialized modify the constants defined in Mpl/Public/mplregdefaults.h. You need to be careful while changing the values - Refer to the datasheets when in doubt.
5. The NSM_DIAG_MODE flag controls diagnostics APIs that are internal to NSC.
Enabling this will DISABLE the network stack traffic.
6. If you are implementing a new NSM layer then refer to the file
Mpl/Public/mplclient.h for all APIs that you have access to and use the
Mpl/Public/oai_template.h for guidelines on what MPL expects from you.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -