CONFIG_NET_TC_TX_COUNT

How many Tx traffic classes to have for each network device

Type: int

Help

Define how many Tx traffic classes (queues) the system should have
when sending a network packet. The network packet priority can then
be mapped to this traffic class so that higher prioritized packets
can be processed before lower prioritized ones. Each queue is handled
by a separate thread which will need RAM for stack space.
Only increase the value from 1 if you really need this feature.
The default value is 1 which means that all the network traffic is
handled equally. In this implementation, the higher traffic class
value corresponds to lower thread priority.
If you select 0 here, then it means that all the network traffic
is pushed to the driver directly without any queues.
Note that if USERSPACE support is enabled, then currently we need to
enable at least 1 TX thread.

Direct dependencies

!NET_RAW_MODE && NETWORKING

(Includes any dependencies from ifs and menus.)

Defaults

Kconfig definition

At <Zephyr>/subsys/net/ip/Kconfig:141

Included via <Zephyr>/Kconfig:8<Zephyr>/Kconfig.zephyr:34<Zephyr>/subsys/Kconfig:39<Zephyr>/subsys/net/Kconfig:87

Menu path: (Top) → Sub Systems and OS Services → Networking → Link layer and IP networking support → IP stack

config NET_TC_TX_COUNT
    int "How many Tx traffic classes to have for each network device"
    range 1 NET_TC_NUM_PRIORITIES if NET_TC_NUM_PRIORITIES <= 8 && USERSPACE
    range 0 NET_TC_NUM_PRIORITIES if NET_TC_NUM_PRIORITIES <= 8
    range 1 8 if USERSPACE
    range 0 8
    default 1 if USERSPACE || USB_DEVICE_NETWORK
    default 0
    depends on !NET_RAW_MODE && NETWORKING
    help
      Define how many Tx traffic classes (queues) the system should have
      when sending a network packet. The network packet priority can then
      be mapped to this traffic class so that higher prioritized packets
      can be processed before lower prioritized ones. Each queue is handled
      by a separate thread which will need RAM for stack space.
      Only increase the value from 1 if you really need this feature.
      The default value is 1 which means that all the network traffic is
      handled equally. In this implementation, the higher traffic class
      value corresponds to lower thread priority.
      If you select 0 here, then it means that all the network traffic
      is pushed to the driver directly without any queues.
      Note that if USERSPACE support is enabled, then currently we need to
      enable at least 1 TX thread.

(The ‘depends on’ condition includes propagated dependencies from ifs and menus.)