diff options
Diffstat (limited to 'Documentation/networking')
-rw-r--r-- | Documentation/networking/gianfar.txt | 72 | ||||
-rw-r--r-- | Documentation/networking/ip-sysctl.txt | 23 |
2 files changed, 95 insertions, 0 deletions
diff --git a/Documentation/networking/gianfar.txt b/Documentation/networking/gianfar.txt new file mode 100644 index 000000000000..ad474ea07d07 --- /dev/null +++ b/Documentation/networking/gianfar.txt | |||
@@ -0,0 +1,72 @@ | |||
1 | The Gianfar Ethernet Driver | ||
2 | Sysfs File description | ||
3 | |||
4 | Author: Andy Fleming <afleming@freescale.com> | ||
5 | Updated: 2005-07-28 | ||
6 | |||
7 | SYSFS | ||
8 | |||
9 | Several of the features of the gianfar driver are controlled | ||
10 | through sysfs files. These are: | ||
11 | |||
12 | bd_stash: | ||
13 | To stash RX Buffer Descriptors in the L2, echo 'on' or '1' to | ||
14 | bd_stash, echo 'off' or '0' to disable | ||
15 | |||
16 | rx_stash_len: | ||
17 | To stash the first n bytes of the packet in L2, echo the number | ||
18 | of bytes to buf_stash_len. echo 0 to disable. | ||
19 | |||
20 | WARNING: You could really screw these up if you set them too low or high! | ||
21 | fifo_threshold: | ||
22 | To change the number of bytes the controller needs in the | ||
23 | fifo before it starts transmission, echo the number of bytes to | ||
24 | fifo_thresh. Range should be 0-511. | ||
25 | |||
26 | fifo_starve: | ||
27 | When the FIFO has less than this many bytes during a transmit, it | ||
28 | enters starve mode, and increases the priority of TX memory | ||
29 | transactions. To change, echo the number of bytes to | ||
30 | fifo_starve. Range should be 0-511. | ||
31 | |||
32 | fifo_starve_off: | ||
33 | Once in starve mode, the FIFO remains there until it has this | ||
34 | many bytes. To change, echo the number of bytes to | ||
35 | fifo_starve_off. Range should be 0-511. | ||
36 | |||
37 | CHECKSUM OFFLOADING | ||
38 | |||
39 | The eTSEC controller (first included in parts from late 2005 like | ||
40 | the 8548) has the ability to perform TCP, UDP, and IP checksums | ||
41 | in hardware. The Linux kernel only offloads the TCP and UDP | ||
42 | checksums (and always performs the pseudo header checksums), so | ||
43 | the driver only supports checksumming for TCP/IP and UDP/IP | ||
44 | packets. Use ethtool to enable or disable this feature for RX | ||
45 | and TX. | ||
46 | |||
47 | VLAN | ||
48 | |||
49 | In order to use VLAN, please consult Linux documentation on | ||
50 | configuring VLANs. The gianfar driver supports hardware insertion and | ||
51 | extraction of VLAN headers, but not filtering. Filtering will be | ||
52 | done by the kernel. | ||
53 | |||
54 | MULTICASTING | ||
55 | |||
56 | The gianfar driver supports using the group hash table on the | ||
57 | TSEC (and the extended hash table on the eTSEC) for multicast | ||
58 | filtering. On the eTSEC, the exact-match MAC registers are used | ||
59 | before the hash tables. See Linux documentation on how to join | ||
60 | multicast groups. | ||
61 | |||
62 | PADDING | ||
63 | |||
64 | The gianfar driver supports padding received frames with 2 bytes | ||
65 | to align the IP header to a 16-byte boundary, when supported by | ||
66 | hardware. | ||
67 | |||
68 | ETHTOOL | ||
69 | |||
70 | The gianfar driver supports the use of ethtool for many | ||
71 | configuration options. You must run ethtool only on currently | ||
72 | open interfaces. See ethtool documentation for details. | ||
diff --git a/Documentation/networking/ip-sysctl.txt b/Documentation/networking/ip-sysctl.txt index ebc09a159f62..2b7cf19a06ad 100644 --- a/Documentation/networking/ip-sysctl.txt +++ b/Documentation/networking/ip-sysctl.txt | |||
@@ -46,6 +46,29 @@ ipfrag_secret_interval - INTEGER | |||
46 | for the hash secret) for IP fragments. | 46 | for the hash secret) for IP fragments. |
47 | Default: 600 | 47 | Default: 600 |
48 | 48 | ||
49 | ipfrag_max_dist - INTEGER | ||
50 | ipfrag_max_dist is a non-negative integer value which defines the | ||
51 | maximum "disorder" which is allowed among fragments which share a | ||
52 | common IP source address. Note that reordering of packets is | ||
53 | not unusual, but if a large number of fragments arrive from a source | ||
54 | IP address while a particular fragment queue remains incomplete, it | ||
55 | probably indicates that one or more fragments belonging to that queue | ||
56 | have been lost. When ipfrag_max_dist is positive, an additional check | ||
57 | is done on fragments before they are added to a reassembly queue - if | ||
58 | ipfrag_max_dist (or more) fragments have arrived from a particular IP | ||
59 | address between additions to any IP fragment queue using that source | ||
60 | address, it's presumed that one or more fragments in the queue are | ||
61 | lost. The existing fragment queue will be dropped, and a new one | ||
62 | started. An ipfrag_max_dist value of zero disables this check. | ||
63 | |||
64 | Using a very small value, e.g. 1 or 2, for ipfrag_max_dist can | ||
65 | result in unnecessarily dropping fragment queues when normal | ||
66 | reordering of packets occurs, which could lead to poor application | ||
67 | performance. Using a very large value, e.g. 50000, increases the | ||
68 | likelihood of incorrectly reassembling IP fragments that originate | ||
69 | from different IP datagrams, which could result in data corruption. | ||
70 | Default: 64 | ||
71 | |||
49 | INET peer storage: | 72 | INET peer storage: |
50 | 73 | ||
51 | inet_peer_threshold - INTEGER | 74 | inet_peer_threshold - INTEGER |