qcacld-3.0: Add config to enable/disable RX PN_check offload

Add config to enable/disable RX PN_check offload.
Offload PN check to FW for QCN7605 HL data path.

Change-Id: Ieab4442d73957a9e0314d637a513452616f7a48c
CRs-Fixed: 2433079
This commit is contained in:
Ajit Pal Singh 2019-04-12 11:17:36 +05:30 • committed by nshrivas
commit 17634e1e48
6 changed files with 23 additions and 3 deletions

1
Kbuild
View file

@ -2211,6 +2211,7 @@ cppflags-$(CONFIG_QCA_HL_NETDEV_FLOW_CONTROL) += -DQCA_HL_NETDEV_FLOW_CONTROL
cppflags-$(CONFIG_FEATURE_HL_GROUP_CREDIT_FLOW_CONTROL) += -DFEATURE_HL_GROUP_CREDIT_FLOW_CONTROL
cppflags-$(CONFIG_FEATURE_HL_DBS_GROUP_CREDIT_SHARING) += -DFEATURE_HL_DBS_GROUP_CREDIT_SHARING
cppflags-$(CONFIG_CREDIT_REP_THROUGH_CREDIT_UPDATE) += -DCONFIG_CREDIT_REP_THROUGH_CREDIT_UPDATE
cppflags-$(CONFIG_RX_PN_CHECK_OFFLOAD) += -DCONFIG_RX_PN_CHECK_OFFLOAD
cppflags-$(CONFIG_WLAN_SYNC_TSF_PTP) += -DWLAN_FEATURE_TSF_PTP
cppflags-$(CONFIG_WLAN_SYNC_TSF_PLUS_EXT_GPIO_IRQ) += -DWLAN_FEATURE_TSF_PLUS_EXT_GPIO_IRQ

View file

@ -48,4 +48,5 @@ else
endif
CONFIG_LINUX_QCMBR :=y
CONFIG_TGT_NUM_MSDU_DESC := 0
CONFIG_RX_PN_CHECK_OFFLOAD := y
###################################

View file

@ -54,4 +54,5 @@ CONFIG_QCA_WIFI_FTM := n
QCA_WIFI_FTM_NL80211 := n
CONFIG_LINUX_QCMBR := n
CONFIG_TGT_NUM_MSDU_DESC := 0
CONFIG_RX_PN_CHECK_OFFLOAD := y
###################################

View file

@ -44,6 +44,7 @@ CONFIG_LEAK_DETECTION := y
endif
# Genoa features vs Rome
CONFIG_RX_PN_CHECK_OFFLOAD := y
CONFIG_HTT_PADDR64 := y
CONFIG_QCA_WIFI_FTM := y

View file

@ -53,6 +53,7 @@ CONFIG_CFG_NUM_ROAM_DEBUG_RECORD := 64
endif
# Genoa features vs Rome
CONFIG_RX_PN_CHECK_OFFLOAD := y
CONFIG_HTT_PADDR64 := y
CONFIG_QCA_WIFI_FTM := n

View file

@ -76,8 +76,8 @@ void ol_pdev_cfg_param_update(struct txrx_pdev_cfg_t *cfg_ctx)
cfg_ctx->tx_download_size = 1500;
ol_pdev_cfg_credit_update(cfg_ctx);
}
#else
#else /* CONFIG_HL_SUPPORT */
static inline
void ol_pdev_cfg_param_update(struct txrx_pdev_cfg_t *cfg_ctx)
{
@ -89,6 +89,22 @@ void ol_pdev_cfg_param_update(struct txrx_pdev_cfg_t *cfg_ctx)
}
#endif
#ifdef CONFIG_RX_PN_CHECK_OFFLOAD
static inline
void ol_pdev_cfg_rx_pn_check(struct txrx_pdev_cfg_t *cfg_ctx)
{
/* Do not do pn check on host */
cfg_ctx->rx_pn_check = 0;
}
#else
static inline
void ol_pdev_cfg_rx_pn_check(struct txrx_pdev_cfg_t *cfg_ctx)
{
/* Do pn check on host */
cfg_ctx->rx_pn_check = 1;
}
#endif /* CONFIG_RX_PN_CHECK_OFFLOAD */
#if CFG_TGT_DEFAULT_RX_SKIP_DEFRAG_TIMEOUT_DUP_DETECTION_CHECK
static inline
uint8_t ol_defrag_timeout_check(void)
@ -119,9 +135,8 @@ struct cdp_cfg *ol_pdev_cfg_attach(qdf_device_t osdev, void *pcfg_param)
return NULL;
ol_pdev_cfg_param_update(cfg_ctx);
ol_pdev_cfg_rx_pn_check(cfg_ctx);
/* temporarily disabled PN check for Riva/Pronto */
cfg_ctx->rx_pn_check = 1;
cfg_ctx->defrag_timeout_check = ol_defrag_timeout_check();
cfg_ctx->max_peer_id = 511;
cfg_ctx->max_vdev = CFG_TGT_NUM_VDEV;