1.2.5.2.48 TCPIP_MAC_RX_FILTER_TYPE Enumeration

C

typedef enum {
TCPIP_MAC_RX_FILTER_TYPE_BCAST_ACCEPT,
TCPIP_MAC_RX_FILTER_TYPE_MCAST_ACCEPT,
TCPIP_MAC_RX_FILTER_TYPE_UCAST_ACCEPT,
TCPIP_MAC_RX_FILTER_TYPE_UCAST_OTHER_ACCEPT,
TCPIP_MAC_RX_FILTER_TYPE_RUNT_REJECT,
TCPIP_MAC_RX_FILTER_TYPE_RUNT_ACCEPT,
TCPIP_MAC_RX_FILTER_TYPE_CRC_ERROR_REJECT,
TCPIP_MAC_RX_FILTER_TYPE_CRC_ERROR_ACCEPT,
TCPIP_MAC_RX_FILTER_TYPE_MCAST_HASH_ACCEPT,
TCPIP_MAC_RX_FILTER_TYPE_UCAST_HASH_ACCEPT,
TCPIP_MAC_RX_FILTER_TYPE_MAXFRAME_ACCEPT,
TCPIP_MAC_RX_FILTER_TYPE_ALL_ACCEPT,
TCPIP_MAC_RX_FILTER_TYPE_FRAMEERROR_ACCEPT,
TCPIP_MAC_RX_FILTER_TYPE_JUMBOFRAME_ACCEPT,
TCPIP_MAC_RX_FILTER_TYPE_DEFAULT
} TCPIP_MAC_RX_FILTER_TYPE;

Description

MAC RX Filter Types.

This enumeration defines the RX filtering capabilities for the TCP/IP MAC driver.

Members

MembersDescription
TCPIP_MAC_RX_FILTER_TYPE_BCAST_ACCEPTBroadcast packets are accepted.
TCPIP_MAC_RX_FILTER_TYPE_MCAST_ACCEPTMulticast packets are accepted.
TCPIP_MAC_RX_FILTER_TYPE_UCAST_ACCEPTUnicast packets to this host are accepted.
TCPIP_MAC_RX_FILTER_TYPE_UCAST_OTHER_ACCEPTUnicast packets to a different host are accepted
TCPIP_MAC_RX_FILTER_TYPE_RUNT_REJECTRunt packets (< 64 bytes) are rejected.
TCPIP_MAC_RX_FILTER_TYPE_RUNT_ACCEPTRunt packets (< 64 bytes) are accepted.
TCPIP_MAC_RX_FILTER_TYPE_CRC_ERROR_REJECTPackets with CRC errors are rejected.
TCPIP_MAC_RX_FILTER_TYPE_CRC_ERROR_ACCEPTPackets with CRC errors are accepted.
TCPIP_MAC_RX_FILTER_TYPE_MCAST_HASH_ACCEPTMulticast HASH matching packets are accepted.
TCPIP_MAC_RX_FILTER_TYPE_UCAST_HASH_ACCEPTUnicast HASH matching packets are accepted.
TCPIP_MAC_RX_FILTER_TYPE_MAXFRAME_ACCEPTMaximum frame size packets(1536 bytes) are accepted.
TCPIP_MAC_RX_FILTER_TYPE_ALL_ACCEPTAll packets are accepted.
TCPIP_MAC_RX_FILTER_TYPE_FRAMEERROR_ACCEPTPackets with Frame error are accepted.
TCPIP_MAC_RX_FILTER_TYPE_JUMBOFRAME_ACCEPTPackets with JUMBO Frame (up to 10240 bytes) is accepted.
TCPIP_MAC_RX_FILTER_TYPE_DEFAULTDefault RX filter: will accept most valid packets.

Remarks

The Ethernet/Wi-Fi controllers have an RX filter module that takes part in the packet acceptance decision.

Multiple values can be OR-ed together.

There usually is a priority in the RX filter processing for a MAC module. In order for a packet to be accepted, it has to be specifically accepted by a filter. Once a filter accepts or rejects a packet, further filters are not tried. If a packet isn't rejected/accepted after all filters are tried, it will be rejected by default.

Not all MACs support all the RX filter types.

Current implementation does not suport more than 16 filters.