---
name: "tsec"
section: "4"
platform: "freebsd"
package: "base"
version: "16.0-CURRENT-20261027-61c70dc16a79"
release: "FreeBSD 16.0-CURRENT (2026-10-27)"
platforms: ["freebsd"]
url: "https://new.carta.tech/tsec"
---

# tsec(4)

Freescale Three-Speed Ethernet Controller device driver

Part of [tsec(4)](/tsec/4.md).

## NAME

**tsec** – Freescale Three-Speed Ethernet Controller device driver

## SYNOPSIS

To compile this driver into the kernel, place the following lines in your kernel configuration file:

**device tsec** **device miibus**

## DESCRIPTION

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)](/polling/4.md) for more details.

The **tsec** driver supports reception and transmission of extended frames for [vlan(4)](/vlan/4.md). This capability of **tsec** can be controlled by means of the **vlanmtu** parameter to [ifconfig(8)](/ifconfig/8.md).

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.

## HARDWARE

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:

- MPC8548, MPC8572

## SEE ALSO

[altq(4)](/altq/4.md), [arp(4)](/arp/4.md), [miibus(4)](/miibus/4.md), [netintro(4)](/netintro/4.md), [ng\_ether(4)](/ng_ether/4.md), [polling(4)](/polling/4.md), [vlan(4)](/vlan/4.md), [ifconfig(8)](/ifconfig/8.md)

## HISTORY

The **tsec** device driver first appeared in FreeBSD 8.0.

## AUTHORS

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.
