qcacmn: Add new feature to support protocol tags

With this feature, using appropriate commands, link layer, network layer,
transport layer and some of the application protocols can be tagged with
the user provided tag values for easier identification of protocols. The
supported protocols today are as follows.

ARP, DHCPv4, DHCPv6, DNS over TCP (v4), DNS over TCP (v6), DNS over UDP
(v4), DNS over UDP (v6), ICMPv4, ICMPv6, TCPv4, TCPv6, UDPv4,
UDPv6, IPv4, IPv6, EAP.

Receive packets are tagged by hardware. Tags are applied after the first
matching rule. Hence it is recommended that the rules are
programmed in such a way that tags are configured from application layer
to data link layer to get expected results.

Change-Id: Ibdc2bd2b78234f482074955e89fb93f05988eaca
This commit is contained in:
Karunakar Dasineni
2019-03-19 23:04:59 -07:00
committed by nshrivas
parent c71219ea55
commit 142f9baf47
20 changed files with 631 additions and 12 deletions

View File

@@ -226,6 +226,8 @@
* @chan_noise_floor: Channel Noise Floor for the pdev
* @data_sequence_control_info_valid: field to indicate validity of seq control
* @first_data_seq_ctrl: Sequence ctrl field of first data frame
* @rxpcu_filter_pass: Flag which indicates whether RX packets are received in
* BSS mode(not in promisc mode)
*/
struct mon_rx_status {
uint64_t tsft;
@@ -304,6 +306,7 @@ struct mon_rx_status {
uint8_t data_sequence_control_info_valid;
uint16_t first_data_seq_ctrl;
uint8_t ltf_size;
uint8_t rxpcu_filter_pass;
};
/**