aboutsummaryrefslogtreecommitdiffstats
path: root/Documentation/networking/stmmac.txt
diff options
context:
space:
mode:
Diffstat (limited to 'Documentation/networking/stmmac.txt')
-rw-r--r--Documentation/networking/stmmac.txt45
1 files changed, 39 insertions, 6 deletions
diff --git a/Documentation/networking/stmmac.txt b/Documentation/networking/stmmac.txt
index f9fa6db40a52..654d2e55c8cb 100644
--- a/Documentation/networking/stmmac.txt
+++ b/Documentation/networking/stmmac.txt
@@ -1,6 +1,6 @@
1 STMicroelectronics 10/100/1000 Synopsys Ethernet driver 1 STMicroelectronics 10/100/1000 Synopsys Ethernet driver
2 2
3Copyright (C) 2007-2010 STMicroelectronics Ltd 3Copyright (C) 2007-2013 STMicroelectronics Ltd
4Author: Giuseppe Cavallaro <peppe.cavallaro@st.com> 4Author: Giuseppe Cavallaro <peppe.cavallaro@st.com>
5 5
6This is the driver for the MAC 10/100/1000 on-chip Ethernet controllers 6This is the driver for the MAC 10/100/1000 on-chip Ethernet controllers
@@ -10,7 +10,7 @@ Currently this network device driver is for all STM embedded MAC/GMAC
10(i.e. 7xxx/5xxx SoCs), SPEAr (arm), Loongson1B (mips) and XLINX XC2V3000 10(i.e. 7xxx/5xxx SoCs), SPEAr (arm), Loongson1B (mips) and XLINX XC2V3000
11FF1152AMT0221 D1215994A VIRTEX FPGA board. 11FF1152AMT0221 D1215994A VIRTEX FPGA board.
12 12
13DWC Ether MAC 10/100/1000 Universal version 3.60a (and older) and DWC Ether 13DWC Ether MAC 10/100/1000 Universal version 3.70a (and older) and DWC Ether
14MAC 10/100 Universal version 4.0 have been used for developing this driver. 14MAC 10/100 Universal version 4.0 have been used for developing this driver.
15 15
16This driver supports both the platform bus and PCI. 16This driver supports both the platform bus and PCI.
@@ -32,6 +32,8 @@ The kernel configuration option is STMMAC_ETH:
32 watchdog: transmit timeout (in milliseconds); 32 watchdog: transmit timeout (in milliseconds);
33 flow_ctrl: Flow control ability [on/off]; 33 flow_ctrl: Flow control ability [on/off];
34 pause: Flow Control Pause Time; 34 pause: Flow Control Pause Time;
35 eee_timer: tx EEE timer;
36 chain_mode: select chain mode instead of ring.
35 37
363) Command line options 383) Command line options
37Driver parameters can be also passed in command line by using: 39Driver parameters can be also passed in command line by using:
@@ -164,12 +166,12 @@ Where:
164 o bus_setup: perform HW setup of the bus. For example, on some ST platforms 166 o bus_setup: perform HW setup of the bus. For example, on some ST platforms
165 this field is used to configure the AMBA bridge to generate more 167 this field is used to configure the AMBA bridge to generate more
166 efficient STBus traffic. 168 efficient STBus traffic.
167 o init/exit: callbacks used for calling a custom initialisation; 169 o init/exit: callbacks used for calling a custom initialization;
168 this is sometime necessary on some platforms (e.g. ST boxes) 170 this is sometime necessary on some platforms (e.g. ST boxes)
169 where the HW needs to have set some PIO lines or system cfg 171 where the HW needs to have set some PIO lines or system cfg
170 registers. 172 registers.
171 o custom_cfg/custom_data: this is a custom configuration that can be passed 173 o custom_cfg/custom_data: this is a custom configuration that can be passed
172 while initialising the resources. 174 while initializing the resources.
173 o bsp_priv: another private poiter. 175 o bsp_priv: another private poiter.
174 176
175For MDIO bus The we have: 177For MDIO bus The we have:
@@ -273,6 +275,8 @@ reset procedure etc).
273 o norm_desc.c: functions for handling normal descriptors; 275 o norm_desc.c: functions for handling normal descriptors;
274 o chain_mode.c/ring_mode.c:: functions to manage RING/CHAINED modes; 276 o chain_mode.c/ring_mode.c:: functions to manage RING/CHAINED modes;
275 o mmc_core.c/mmc.h: Management MAC Counters; 277 o mmc_core.c/mmc.h: Management MAC Counters;
278 o stmmac_hwtstamp.c: HW timestamp support for PTP
279 o stmmac_ptp.c: PTP 1588 clock
276 280
2775) Debug Information 2815) Debug Information
278 282
@@ -326,6 +330,35 @@ To enter in Tx LPI mode the driver needs to have a software timer
326that enable and disable the LPI mode when there is nothing to be 330that enable and disable the LPI mode when there is nothing to be
327transmitted. 331transmitted.
328 332
3297) TODO: 3337) Extended descriptors
334The extended descriptors give us information about the receive Ethernet payload
335when it is carrying PTP packets or TCP/UDP/ICMP over IP.
336These are not available on GMAC Synopsys chips older than the 3.50.
337At probe time the driver will decide if these can be actually used.
338This support also is mandatory for PTPv2 because the extra descriptors 6 and 7
339are used for saving the hardware timestamps.
340
3418) Precision Time Protocol (PTP)
342The driver supports the IEEE 1588-2002, Precision Time Protocol (PTP),
343which enables precise synchronization of clocks in measurement and
344control systems implemented with technologies such as network
345communication.
346
347In addition to the basic timestamp features mentioned in IEEE 1588-2002
348Timestamps, new GMAC cores support the advanced timestamp features.
349IEEE 1588-2008 that can be enabled when configure the Kernel.
350
3519) SGMII/RGMII supports
352New GMAC devices provide own way to manage RGMII/SGMII.
353This information is available at run-time by looking at the
354HW capability register. This means that the stmmac can manage
355auto-negotiation and link status w/o using the PHYLIB stuff
356In fact, the HW provides a subset of extended registers to
357restart the ANE, verify Full/Half duplex mode and Speed.
358Also thanks to these registers it is possible to look at the
359Auto-negotiated Link Parter Ability.
360
36110) TODO:
330 o XGMAC is not supported. 362 o XGMAC is not supported.
331 o Add the PTP - precision time protocol 363 o Complete the TBI & RTBI support.
364 o extened VLAN support for 3.70a SYNP GMAC.