qcacld-3.0: Send async event to user space in case of roaming
Currently, if SR (Spatial Reuse) is supported by AP and then STA roams to another AP then host needs to parse SR IE and send events to userspace and commands to Fw based on below scenarios: i.) Roamed AP doesn't support SR: If roamed AP doesn't support SR then async event with SR disable is required to be sent to userspace. ii.) Roamed AP supports SR: If roamed AP supports SR then below validations are required. a.) existing thresholds are in range of roamed AP: Send SR enable command to FW with previous thresholds , as FW disables SR during roaming. b.) existing thresholds are not in range of roamed AP: then decision will be based on whether threshold is provided during SR enable command or not. If threshold is provided along with SR enable command then send disable to userspace and in other case update thresholds as per roamed AP , send async event to userspace with new configured values and send enable command to fw with new thresholds. Change-Id: I0c39de349c0f723d49d510c6e8ba09dcb98c6d17 CRs-Fixed: 3316985
This commit is contained in:

committed by
Madan Koyyalamudi

parent
1689071af8
commit
728998c4af
@@ -33,7 +33,7 @@ void ucfg_spatial_reuse_get_sr_config(struct wlan_objmgr_vdev *vdev,
|
||||
bool *he_spr_enabled)
|
||||
{
|
||||
*sr_ctrl = wlan_vdev_mlme_get_sr_ctrl(vdev);
|
||||
*non_srg_max_pd_offset = wlan_vdev_mlme_get_pd_offset(vdev);
|
||||
*non_srg_max_pd_offset = wlan_vdev_mlme_get_non_srg_pd_offset(vdev);
|
||||
*he_spr_enabled = wlan_vdev_mlme_get_he_spr_enabled(vdev);
|
||||
}
|
||||
|
||||
@@ -42,7 +42,7 @@ void ucfg_spatial_reuse_set_sr_config(struct wlan_objmgr_vdev *vdev,
|
||||
uint8_t non_srg_max_pd_offset)
|
||||
{
|
||||
wlan_vdev_mlme_set_sr_ctrl(vdev, sr_ctrl);
|
||||
wlan_vdev_mlme_set_pd_offset(vdev, non_srg_max_pd_offset);
|
||||
wlan_vdev_mlme_set_non_srg_pd_offset(vdev, non_srg_max_pd_offset);
|
||||
}
|
||||
|
||||
bool ucfg_spatial_reuse_is_sr_disabled_due_conc(struct wlan_objmgr_vdev *vdev)
|
||||
@@ -72,7 +72,8 @@ void ucfg_spatial_reuse_send_sr_config(struct wlan_objmgr_vdev *vdev,
|
||||
|
||||
if (enable) {
|
||||
sr_ctrl = wlan_vdev_mlme_get_sr_ctrl(vdev);
|
||||
non_srg_max_pd_offset = wlan_vdev_mlme_get_pd_offset(vdev);
|
||||
non_srg_max_pd_offset =
|
||||
wlan_vdev_mlme_get_non_srg_pd_offset(vdev);
|
||||
if (sr_ctrl && non_srg_max_pd_offset)
|
||||
wlan_spatial_reuse_config_set(vdev, sr_ctrl,
|
||||
non_srg_max_pd_offset);
|
||||
|
Reference in New Issue
Block a user