qcacmn: Add support for TCP delayed ack in driver

qcacld-2.0 to qcacmn propagation

This change adds support for driver supported TCP
delayed ack to increase TCP RX performance in
third-party platform which don't support kernel
TCP delayed ack feature.

TCP delayed ack is dependent on count and timer
values. Whatever is achieved first will trigger
sending TCP ack.

This feature can be controlled through ini values.
gDriverDelAckTimerValue - timer value in ms
gDriverDelAckPktCount - delayed ack count
gDriverDelAckEnable - enable/disable feature

Change-Id: I8105bbb90965295b5a4aefeb00d344a90155974d
CRs-fixed: 2414231
Esse commit está contido em:
Tiger Yu
2019-04-25 10:41:30 +08:00
commit de nshrivas
commit 6f1fc0070f
5 arquivos alterados com 98 adições e 5 exclusões

Ver arquivo

@@ -44,6 +44,7 @@
#define QDF_NBUF_PKT_ERROR 1
#define QDF_NBUF_TRAC_IPV4_OFFSET 14
#define QDF_NBUF_TRAC_IPV4_HEADER_MASK 0xF
#define QDF_NBUF_TRAC_IPV4_HEADER_SIZE 20
#define QDF_NBUF_TRAC_DHCP_SRV_PORT 67
#define QDF_NBUF_TRAC_DHCP_CLI_PORT 68
@@ -60,6 +61,7 @@
#define QDF_NBUF_SRC_MAC_OFFSET 6
#define QDF_NBUF_TRAC_IPV4_PROTO_TYPE_OFFSET 23
#define QDF_NBUF_TRAC_IPV4_DEST_ADDR_OFFSET 30
#define QDF_NBUF_TRAC_IPV4_SRC_ADDR_OFFSET 26
#define QDF_NBUF_TRAC_IPV6_PROTO_TYPE_OFFSET 20
#define QDF_NBUF_TRAC_IPV4_ADDR_MCAST_MASK 0xE0000000
#define QDF_NBUF_TRAC_IPV4_ADDR_BCAST_MASK 0xF0000000
@@ -69,6 +71,12 @@
#define QDF_NBUF_TRAC_IPV6_HEADER_SIZE 40
#define QDF_NBUF_TRAC_ICMP_TYPE 1
#define QDF_NBUF_TRAC_TCP_TYPE 6
#define QDF_NBUF_TRAC_TCP_FLAGS_OFFSET (47 - 34)
#define QDF_NBUF_TRAC_TCP_ACK_OFFSET (42 - 34)
#define QDF_NBUF_TRAC_TCP_HEADER_LEN_OFFSET (46 - 34)
#define QDF_NBUF_TRAC_TCP_ACK_MASK 0x10
#define QDF_NBUF_TRAC_TCP_SPORT_OFFSET (34 - 34)
#define QDF_NBUF_TRAC_TCP_DPORT_OFFSET (36 - 34)
#define QDF_NBUF_TRAC_UDP_TYPE 17
#define QDF_NBUF_TRAC_ICMPV6_TYPE 0x3a
#define QDF_NBUF_TRAC_DHCP6_SRV_PORT 547