qcacld-3.0: Add roam offload state machine changes

Add changes to handle transition to the 2 new states:
1. Roaming in progress: Switch to this state when roam
start notification is received from firmware.
2. Roam Synch in progress: Switch to this from RSO
STARTED state if roam synch indication event is received
from firmware. Change to this state is also allowed in
RSO STOPPED state if supplicant disabled roaming on that
vdev - to allow roam invoke to be processed.

Also query the state machine to get the roaming status instead
of using discrete flags at various layers. Clean the redundant
roaming in progress, roam synch related flags.

Change-Id: Ide20a30d9d8c20a96d8bba70367b51b8643cae09
CRs-Fixed: 2725443
这个提交包含在:
Pragaspathi Thilagaraj
2020-07-09 23:20:12 +05:30
提交者 nshrivas
父节点 45d1a5e075
当前提交 eb128b5dfe
修改 34 个文件,包含 544 行新增516 行删除

查看文件

@@ -721,7 +721,6 @@ struct wma_txrx_node {
uint32_t nwType;
tSetStaKeyParams *staKeyParams;
uint32_t peer_count;
bool roam_synch_in_progress;
void *plink_status_req;
void *psnr_req;
uint8_t delay_before_vdev_stop;
@@ -1649,11 +1648,10 @@ void wma_process_set_pdev_vht_ie_req(tp_wma_handle wma,
struct set_ie_param *ie_params);
QDF_STATUS wma_remove_peer(tp_wma_handle wma, uint8_t *mac_addr,
uint8_t vdev_id, bool roam_synch_in_progress);
uint8_t vdev_id);
QDF_STATUS wma_create_peer(tp_wma_handle wma, uint8_t peer_addr[6],
u_int32_t peer_type, u_int8_t vdev_id,
bool roam_synch_in_progress);
u_int32_t peer_type, u_int8_t vdev_id);
QDF_STATUS wma_peer_unmap_conf_cb(uint8_t vdev_id,
uint32_t peer_id_cnt,
@@ -2409,8 +2407,7 @@ int wma_motion_det_base_line_host_event_handler(void *handle, u_int8_t *event,
*
* Return: 0 on success, else error on failure
*/
QDF_STATUS wma_add_bss_peer_sta(uint8_t vdev_id, uint8_t *bssid,
bool roam_sync);
QDF_STATUS wma_add_bss_peer_sta(uint8_t vdev_id, uint8_t *bssid);
/**
* wma_send_vdev_stop() - WMA api to send vdev stop to fw