mirror of
https://github.com/BobTheBlinker/android_kernel_motorola_sm6375.git
synced 2026-10-14 16:46:15 -04:00
qcacmn: Do not use wds_en flag for ADDR search flag update
Using wds_en flag to control ADDR search flags in Transmit Descriptor was causing DP to wrongly use ADDRY search instead of ADDRX search on WDS repeater for DBDC repeater and SON scenarios. Fix this by removing the use of this flag in dp_tx_vdev_update_search_flags API Change-Id: Id8ca40f926d58b8267e89d30c2b54cc42b4d4182 CRs-Fixed: 2335867
This commit is contained in:
parent
a2f9c7c8b4
commit
22c79d586e
1 changed files with 25 additions and 3 deletions
|
|
@ -3265,6 +3265,30 @@ QDF_STATUS dp_tx_vdev_attach(struct dp_vdev *vdev)
|
|||
return QDF_STATUS_SUCCESS;
|
||||
}
|
||||
|
||||
#ifdef FEATURE_WDS
|
||||
static inline bool dp_tx_da_search_override(struct dp_vdev *vdev)
|
||||
{
|
||||
struct dp_soc *soc = vdev->pdev->soc;
|
||||
|
||||
/*
|
||||
* If AST index override support is available (HKv2 etc),
|
||||
* DA search flag be enabled always
|
||||
*
|
||||
* If AST index override support is not available (HKv1),
|
||||
* DA search flag should be used for all modes except QWRAP
|
||||
*/
|
||||
if (soc->ast_override_support || !vdev->proxysta_vdev)
|
||||
return true;
|
||||
|
||||
return false;
|
||||
}
|
||||
#else
|
||||
static inline bool dp_tx_da_search_override(struct dp_vdev *vdev)
|
||||
{
|
||||
return false;
|
||||
}
|
||||
#endif
|
||||
|
||||
/**
|
||||
* dp_tx_vdev_update_search_flags() - Update vdev flags as per opmode
|
||||
* @vdev: virtual device instance
|
||||
|
|
@ -3291,9 +3315,7 @@ void dp_tx_vdev_update_search_flags(struct dp_vdev *vdev)
|
|||
vdev->hal_desc_addr_search_flags =
|
||||
(HAL_TX_DESC_ADDRX_EN | HAL_TX_DESC_ADDRY_EN);
|
||||
else if ((vdev->opmode == wlan_op_mode_sta) &&
|
||||
(!vdev->wds_enabled ||
|
||||
(vdev->proxysta_vdev &&
|
||||
!soc->ast_override_support)))
|
||||
!dp_tx_da_search_override(vdev))
|
||||
vdev->hal_desc_addr_search_flags = HAL_TX_DESC_ADDRY_EN;
|
||||
else
|
||||
vdev->hal_desc_addr_search_flags = HAL_TX_DESC_ADDRX_EN;
|
||||
|
|
|
|||
Loading…
Reference in a new issue