mirror of
https://github.com/BobTheBlinker/android_kernel_motorola_sm6375.git
synced 2026-10-10 06:09:23 -04:00
qcacld-3.0: Fix roam failed for SAP CSA concurrency
When vdev0 STA roamed to another channel, vdev1 SAP CSA for SCC when ROAM_SYNCH_IN_PROG, will disable roam, but no RSO stop to F/W, F/W RSO isn't disabled, but host vdev0 will enter RSO_STOPPED, host F/W RSO state out of sync. If vdev0 STA next roam sync come soon, it won't be handled for host RSO_STOPPED, neither roam sync complete nor disconnect will happen, F/W will asert after wait roam sync complete timeout. To fix it, Only do SAP CSA check after roam complete and RSO reenabled, can avoid host F/W RSO state out of sync issue. Change-Id: I77ccf30cac38f62c6ef8330c6da00364249b242e CRs-Fixed: 3076935
This commit is contained in:
parent
dc721ec357
commit
1881bb989e
2 changed files with 5 additions and 2 deletions
|
|
@ -1,5 +1,6 @@
|
|||
/*
|
||||
* Copyright (c) 2020, The Linux Foundation. All rights reserved.
|
||||
* Copyright (c) 2022 Qualcomm Innovation Center, Inc. All rights reserved.
|
||||
*
|
||||
* Permission to use, copy, modify, and/or distribute this software for any
|
||||
* purpose with or without fee is hereby granted, provided that the above
|
||||
|
|
@ -28,6 +29,7 @@
|
|||
#include "wlan_p2p_ucfg_api.h"
|
||||
#include "wlan_tdls_ucfg_api.h"
|
||||
#include "wlan_tdls_api.h"
|
||||
#include "wlan_cm_roam_api.h"
|
||||
|
||||
QDF_STATUS if_mgr_connect_start(struct wlan_objmgr_vdev *vdev,
|
||||
struct if_mgr_event_data *event_data)
|
||||
|
|
@ -140,7 +142,8 @@ QDF_STATUS if_mgr_connect_complete(struct wlan_objmgr_vdev *vdev,
|
|||
|
||||
policy_mgr_check_n_start_opportunistic_timer(psoc);
|
||||
|
||||
policy_mgr_check_concurrent_intf_and_restart_sap(psoc);
|
||||
if (!wlan_cm_roaming_in_progress(pdev, vdev->vdev_objmgr.vdev_id))
|
||||
policy_mgr_check_concurrent_intf_and_restart_sap(psoc);
|
||||
|
||||
return QDF_STATUS_SUCCESS;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -21309,7 +21309,6 @@ csr_process_roam_sync_callback(struct mac_context *mac_ctx,
|
|||
}
|
||||
|
||||
policy_mgr_check_n_start_opportunistic_timer(mac_ctx->psoc);
|
||||
policy_mgr_check_concurrent_intf_and_restart_sap(mac_ctx->psoc);
|
||||
vdev_roam_params->roam_invoke_in_progress = false;
|
||||
|
||||
if (roam_synch_data->authStatus ==
|
||||
|
|
@ -21328,6 +21327,7 @@ csr_process_roam_sync_callback(struct mac_context *mac_ctx,
|
|||
WLAN_ROAM_INIT,
|
||||
REASON_CONNECT);
|
||||
}
|
||||
policy_mgr_check_concurrent_intf_and_restart_sap(mac_ctx->psoc);
|
||||
goto end;
|
||||
case SIR_ROAMING_DEAUTH:
|
||||
csr_roam_roaming_offload_timer_action(
|
||||
|
|
|
|||
Loading…
Reference in a new issue