1.2.5.2.29 TCPIP_MAC_PACKET_FLAGS Enumeration

C

typedef enum {
TCPIP_MAC_PKT_FLAG_STATIC = 0x0001,
TCPIP_MAC_PKT_FLAG_TX = 0x0002,
TCPIP_MAC_PKT_FLAG_SPLIT = 0x0004,
TCPIP_MAC_PKT_FLAG_QUEUED = 0x0008,
TCPIP_MAC_PKT_FLAG_UNICAST = 0x0010,
TCPIP_MAC_PKT_FLAG_BCAST = 0x0020,
TCPIP_MAC_PKT_FLAG_MCAST = 0x0040,
TCPIP_MAC_PKT_FLAG_CAST_MASK = 0x0070,
TCPIP_MAC_PKT_FLAG_CAST_DISABLED = 0x0000,
TCPIP_MAC_PKT_FLAG_USER = 0x0100
} TCPIP_MAC_PACKET_FLAGS;

Description

MAC Packet Flags.

This enumeration contains the definitions of MAC packet flags: packet allocation flags and general purpose flags.

Members

MembersDescription
TCPIP_MAC_PKT_FLAG_STATIC = 0x0001Packet can not be dynamically deallocated. Set when the packet is allocated.
TCPIP_MAC_PKT_FLAG_TX = 0x0002If set, it is a TX packet/segment. Otherwise, it is a RX packet.
TCPIP_MAC_PKT_FLAG_SPLIT = 0x0004Packet data spans multiple segments - ZC functionality. If not set then the packet has only one data segment. It is set by the MAC driver when a RX packet spans multiple data segments.
TCPIP_MAC_PKT_FLAG_QUEUED = 0x0008Packet data is queued somewhere, cannot be freed. The flag is set by a module processing the packet to show that the packet is in use and queued for further processing (normally the MAC driver does that). Cleared by the packet destination when the packet processing was completed.
TCPIP_MAC_PKT_FLAG_UNICAST = 0x0010RX flag, MAC updated. Specifies an unicast packet.
TCPIP_MAC_PKT_FLAG_BCAST = 0x0020RX flag, MAC updated. Specifies a broadcast packet.
TCPIP_MAC_PKT_FLAG_MCAST = 0x0040RX flag, MAC updated. Specifies an multicast packet.
TCPIP_MAC_PKT_FLAG_CAST_MASK = 0x0070Packet cast mask bits.
TCPIP_MAC_PKT_FLAG_CAST_DISABLED = 0x0000Packet cast mask. Specifies a packet where the MCAST/BCAST fields are not updated by the MAC RX process.
TCPIP_MAC_PKT_FLAG_USER = 0x0100Available user flags.

Remarks

16 bits only packet flags are supported.