1The Gianfar Ethernet Driver 2Sysfs File description 3 4Author: Andy Fleming <afleming@freescale.com> 5Updated: 2005-07-28 6 7SYSFS 8 9Several of the features of the gianfar driver are controlled 10through sysfs files. These are: 11 12bd_stash: 13To stash RX Buffer Descriptors in the L2, echo 'on' or '1' to 14bd_stash, echo 'off' or '0' to disable 15 16rx_stash_len: 17To stash the first n bytes of the packet in L2, echo the number 18of bytes to buf_stash_len. echo 0 to disable. 19 20WARNING: You could really screw these up if you set them too low or high! 21fifo_threshold: 22To change the number of bytes the controller needs in the 23fifo before it starts transmission, echo the number of bytes to 24fifo_thresh. Range should be 0-511. 25 26fifo_starve: 27When the FIFO has less than this many bytes during a transmit, it 28enters starve mode, and increases the priority of TX memory 29transactions. To change, echo the number of bytes to 30fifo_starve. Range should be 0-511. 31 32fifo_starve_off: 33Once in starve mode, the FIFO remains there until it has this 34many bytes. To change, echo the number of bytes to 35fifo_starve_off. Range should be 0-511. 36 37CHECKSUM OFFLOADING 38 39The eTSEC controller (first included in parts from late 2005 like 40the 8548) has the ability to perform TCP, UDP, and IP checksums 41in hardware. The Linux kernel only offloads the TCP and UDP 42checksums (and always performs the pseudo header checksums), so 43the driver only supports checksumming for TCP/IP and UDP/IP 44packets. Use ethtool to enable or disable this feature for RX 45and TX. 46 47VLAN 48 49In order to use VLAN, please consult Linux documentation on 50configuring VLANs. The gianfar driver supports hardware insertion and 51extraction of VLAN headers, but not filtering. Filtering will be 52done by the kernel. 53 54MULTICASTING 55 56The gianfar driver supports using the group hash table on the 57TSEC (and the extended hash table on the eTSEC) for multicast 58filtering. On the eTSEC, the exact-match MAC registers are used 59before the hash tables. See Linux documentation on how to join 60multicast groups. 61 62PADDING 63 64The gianfar driver supports padding received frames with 2 bytes 65to align the IP header to a 16-byte boundary, when supported by 66hardware. 67 68ETHTOOL 69 70The gianfar driver supports the use of ethtool for many 71configuration options. You must run ethtool only on currently 72open interfaces. See ethtool documentation for details. 73