qcacld-3.0: Add INI support to disable STA roaming
Use INI "sta_disable_roam" to disable roaming on STA interface if connection on other interfaces ex. p2p, ndp comes up. Each bit of the INI "sta_disable_roam" represents an interface. ex. LFR3_STA_ROAM_DISABLE_BY_P2P BIT(0) LFR3_STA_ROAM_DISABLE_BY_NAN BIT(1) As INI "sta_disable_roam" is generic for all the interfaces, cleanup for INI "p2p_disable_roam" done. Change-Id: Icd05a97c640ca07978d9960a33de036ed6fe38df CRs-Fixed: 2637555
This commit is contained in:

committed by
nshrivas

parent
c1b5bd080a
commit
48b790c62d
@@ -98,32 +98,9 @@
|
||||
1, \
|
||||
"derive the P2P MAC address from the primary MAC address")
|
||||
|
||||
/*
|
||||
* <ini>
|
||||
* p2p_disable_roam - Disable Roam on sta interface during P2P connection
|
||||
* @Min: 0 - Roam Enabled on sta interface during P2P connection
|
||||
* @Max: 1 - Roam Disabled on sta interface during P2P connection
|
||||
* @Default: 0
|
||||
*
|
||||
* Disable roaming on STA iface to avoid audio glitches on p2p if its connected
|
||||
*
|
||||
* Related: None.
|
||||
*
|
||||
* Supported Feature: Disable Roam during P2P
|
||||
*
|
||||
* Usage: Internal
|
||||
*
|
||||
* </ini>
|
||||
*/
|
||||
#define CFG_P2P_DISABLE_ROAM CFG_INI_BOOL( \
|
||||
"p2p_disable_roam", \
|
||||
0, \
|
||||
"disable roam on STA iface if p2p is connected")
|
||||
|
||||
#define CFG_P2P_ALL \
|
||||
CFG(CFG_GO_KEEP_ALIVE_PERIOD) \
|
||||
CFG(CFG_GO_LINK_MONITOR_PERIOD) \
|
||||
CFG(CFG_P2P_DEVICE_ADDRESS_ADMINISTRATED) \
|
||||
CFG(CFG_P2P_DISABLE_ROAM)
|
||||
CFG(CFG_P2P_DEVICE_ADDRESS_ADMINISTRATED)
|
||||
|
||||
#endif
|
||||
|
@@ -24,6 +24,7 @@
|
||||
#include "wlan_p2p_public_struct.h"
|
||||
#include "wlan_p2p_cfg_api.h"
|
||||
#include "../../core/src/wlan_p2p_main.h"
|
||||
#include "wlan_mlme_ucfg_api.h"
|
||||
|
||||
static inline struct p2p_soc_priv_obj *
|
||||
wlan_psoc_get_p2p_object(struct wlan_objmgr_psoc *psoc)
|
||||
@@ -88,13 +89,11 @@ cfg_p2p_get_device_addr_admin(struct wlan_objmgr_psoc *psoc,
|
||||
|
||||
bool cfg_p2p_is_roam_config_disabled(struct wlan_objmgr_psoc *psoc)
|
||||
{
|
||||
struct p2p_soc_priv_obj *p2p_soc_obj;
|
||||
uint32_t sta_roam_disable = 0;
|
||||
|
||||
p2p_soc_obj = wlan_psoc_get_p2p_object(psoc);
|
||||
if (!p2p_soc_obj) {
|
||||
p2p_err("p2p psoc null");
|
||||
return false;
|
||||
}
|
||||
if (ucfg_mlme_get_roam_disable_config(psoc, &sta_roam_disable) ==
|
||||
QDF_STATUS_SUCCESS)
|
||||
return sta_roam_disable & LFR3_STA_ROAM_DISABLE_BY_P2P;
|
||||
|
||||
return p2p_soc_obj->param.p2p_disable_roam;
|
||||
return false;
|
||||
}
|
||||
|
Reference in New Issue
Block a user