qcacmn: Parse tx packets only once in tx datapath

Classify tx packets at one place and store packet type in
skb cb structure to avoid multiple check to determine
packet type at various layers.

Change-Id: If39fb1c9741bb213c7f22e0dfe7f662a256e637c
CRs-Fixed: 1022454
This commit is contained in:
Nirav Shah
2016-07-20 16:05:06 +05:30
committed by Vishwajith Upendra
parent 595dc58d77
commit 9c3b3fe251
4 changed files with 76 additions and 66 deletions

View File

@@ -55,6 +55,7 @@
#define QDF_NBUF_TRAC_DHCP_CLI_PORT 68
#define QDF_NBUF_TRAC_ETH_TYPE_OFFSET 12
#define QDF_NBUF_TRAC_EAPOL_ETH_TYPE 0x888E
#define QDF_NBUF_TRAC_WAPI_ETH_TYPE 0x88b4
#define QDF_NBUF_TRAC_ARP_ETH_TYPE 0x0806
#define QDF_NBUF_DEST_MAC_OFFSET 0
#define QDF_NBUF_SRC_MAC_OFFSET 6
@@ -1126,6 +1127,20 @@ bool qdf_nbuf_is_ipv4_eapol_pkt(qdf_nbuf_t buf)
return __qdf_nbuf_is_ipv4_eapol_pkt(buf);
}
/**
* qdf_nbuf_is_ipv4_wapi_pkt() - check if packet is a wapi packet or not
* @buf: buffer
*
* This api is for ipv4 packet.
*
* Return: true if packet is WAPI packet
*/
static inline
bool qdf_nbuf_is_ipv4_wapi_pkt(qdf_nbuf_t buf)
{
return __qdf_nbuf_is_ipv4_wapi_pkt(buf);
}
/**
* qdf_nbuf_is_ipv4_arp_pkt() - check if packet is a arp packet or not
* @buf: buffer