tsec
— Freescale
Three-Speed Ethernet Controller device driver
To compile this driver into the kernel, place the following lines
in your kernel configuration file:
device tsec
device miibus
The tsec
driver provides support for the
gigabit Ethernet controller integrated in some of the Freescale
system-on-chip devices.
The tsec
driver supports the following
media types:
- autoselect
- Enable autoselection of the media type and options
- 10baseT/UTP
- Set 10Mbps operation
- 100baseTX
- Set 100Mbps operation
- 1000baseT
- Set 1000baseT operation
The tsec
driver supports the following
media options:
- full-duplex
- Set full duplex operation
The tsec
driver supports polled operation
when the system is configured with DEVICE_POLLING kernel option, see
polling(4)
for more details.
The tsec
driver supports reception and
transmission of extended frames for
vlan(4).
This capability of tsec
can be controlled by means
of the vlanmtu
parameter to
ifconfig(8).
The tsec
driver supports interrupts
coalescing (IC) so that raising a transmit/receive frame interrupt is
delayed, if possible, until a threshold-defined period of time has elapsed,
or a threshold-defined frame counter has been reached (whichever occurs
first). The following sysctls regulate this behaviour:
- dev.tsec.X.int_coal.rx_time
-
- dev.tsec.X.int_coal.rx_count
-
- dev.tsec.X.int_coal.tx_time
-
- dev.tsec.X.int_coal.tx_count
-
Value of 0 for either time or count disables IC on the given
path. Time value 1-65535 corresponds to a real time period and is
expressed in units equivalent to 64 ticks of the TSEC clock. Count 1-255
represents the number of frames (note that value of 1 is equivalent to
IC disabled). User provided values larger than supported will be trimmed
to the maximum supported. More details are available in the reference
manual of the device.
Gigabit Ethernet controllers built into the following Freescale
system-on-chip devices are known to work with the
tsec
driver:
- MPC8349
- MPC8533, MPC8541, MPC8555
The enhanced version of the controller (eTSEC), integrated in the
following devices, is also supported by this driver:
The tsec
device driver first appeared in
FreeBSD 8.0.
The base version of tsec
device driver was
written by Piotr Kruszynski. It has been extended
with polling and interrupt coalescing support by Rafal
Jaworowski. It has been further enhanced with multicast, h/w checksum
calculation and vlan support by Piotr Ziecik. This
manual page was written by Rafal Jaworowski.