Data Sheet
Inline Functions—Ethernet Controller I210
257
Note: Software should not assign the same Ether-type value to different ETQF filters with different
Rx Queue assignments.
Note: The Etype Length and Etype Length Enable should only be used when parsing beyond the
defined Ethertype is required to enable Rx offloading for non L2 only packets.
Note: Queuing and Immediate interrupt decisions for an incoming packet that matches more than a
single ETQF entry are done according to the setting of the last ETQF match.
7.1.2.4 2-Tuple Filters
These filters identify specific packets destined to a certain TCP/UDP port and implement a specific
protocol. Each filter consists of a 2-tuple (protocol and destination TCP/UDP port) and forwards packets
into one of the receive queues.
The I210 incorporates 8 such filters.
The 2-tuple filters are configured via the TTQF (See Section 8.11.3), IMIR (See Section 8.11.1) and
IMIR_EXT (See Section 8.11.2) registers as follows (per filter):
•Protocol — Identifies the IP protocol, part of the 2-tuple queue filters. Enabled by a bit in the
TTQF.Mask field.
• Destination port — Identifies the TCP/UDP destination port, part of the 2-tuple queue filters.
Enabled by the IMIR.PORT_BP bit.
•Size threshold (IMIREXT.Size_Thresh) — Identifies the length of the packet that should trigger the
filter. This is the length as received by the host, not including any part of the packet removed by
hardware. Enabled by the IMIREXT.Size_BP field.
• Control Bits — Identify TCP flags that might be part of the filtering process. Enabled by the
IMIREXT.CtrlBit_BP field.
• Rx queue — Determines the Rx queue for packets that match this filter:
—The TTQF.Rx Queue field contains the queue serial number.
• Queue enable — Enables forwarding a packet that uses this filter to the queue defined in the
TTQF.Rx Queue field.
•Mask — A 1-bit field that masks the L4 protocol check. The filter is a logical AND of the non-masked
2-tuple fields. If all 2-tuple fields are masked, the filter is not used for queue forwarding.
Notes:
• If more than one 2-tuple filter with the same priority is matched by the packet, the first
filter (lowest ordinal number) is used in order to define the queue destination of this
packet.
• The immediate interrupt and 1588 actions are defined by the OR of all the matching
filters.
7.1.2.5 Flex Filters
The I210 supports a total of 8 flexible filters. Each filter can be configured to recognize any arbitrary
pattern within the first 128 bytes of the packet. To configure the flexible filters, software programs the
mask values (required values and the minimum packet length), into the Flexible Host Filter Table (FHFT
and FHFT_EXT, See Section 8.21.18 and Section 8.21.19). These 8 flexible filters can be used as for
wake-up or proxying when in D3 state or for queueing when in D0 state. Software must enable the
filters in the Wake Up Filter Control (WUFC See Section 8.21.2) register or Proxying Filter Control
(PROXYFC see Section 8.21.6) for operation in D3 low power mode or in the WUFC register in D0 mode.