};
/** Offload features */
-union ixgbe_vlan_macip {
- uint32_t data;
+union ixgbe_tx_offload {
+ uint64_t data;
struct {
- uint16_t l2_l3_len; /**< combined 9-bit l3, 7-bit l2 lengths */
- uint16_t vlan_tci;
+ uint64_t l2_len:7; /**< L2 (MAC) Header Length. */
+ uint64_t l3_len:9; /**< L3 (IP) Header Length. */
+ uint64_t l4_len:8; /**< L4 (TCP/UDP) Header Length. */
+ uint64_t tso_segsz:16; /**< TCP TSO segment size */
+ uint64_t vlan_tci:16;
/**< VLAN Tag Control Identifier (CPU order). */
- } f;
+ };
};
/*
struct ixgbe_advctx_info {
uint64_t flags; /**< ol_flags for context build. */
- uint32_t cmp_mask; /**< compare mask for vlan_macip_lens */
- union ixgbe_vlan_macip vlan_macip_lens; /**< vlan, mac ip length. */
+ /**< tx offload: vlan, tso, l2-l3-l4 lengths. */
+ union ixgbe_tx_offload tx_offload;
+ /** compare mask for tx offload. */
+ union ixgbe_tx_offload tx_offload_mask;
};
/**