|
@@ -356,6 +356,23 @@ wlan_connectivity_mgmt_event(struct wlan_frame_hdr *mac_hdr,
|
|
|
struct wlan_objmgr_vdev *vdev;
|
|
|
bool is_initial_connection = false;
|
|
|
bool is_auth_frame_caching_required = false;
|
|
|
+ enum QDF_OPMODE opmode;
|
|
|
+
|
|
|
+ vdev = wlan_objmgr_get_vdev_by_id_from_psoc(global_cl.psoc, vdev_id,
|
|
|
+ WLAN_MLME_OBJMGR_ID);
|
|
|
+ if (!vdev) {
|
|
|
+ logging_debug("Unable to find vdev:%d", vdev_id);
|
|
|
+ return;
|
|
|
+ }
|
|
|
+
|
|
|
+ opmode = wlan_vdev_mlme_get_opmode(vdev);
|
|
|
+ if (opmode != QDF_STA_MODE && opmode != QDF_P2P_CLIENT_MODE) {
|
|
|
+ wlan_objmgr_vdev_release_ref(vdev, WLAN_MLME_OBJMGR_ID);
|
|
|
+ return;
|
|
|
+ }
|
|
|
+
|
|
|
+ is_initial_connection = wlan_cm_is_vdev_connecting(vdev);
|
|
|
+ wlan_objmgr_vdev_release_ref(vdev, WLAN_MLME_OBJMGR_ID);
|
|
|
|
|
|
new_rec = qdf_mem_malloc(sizeof(*new_rec));
|
|
|
if (!new_rec)
|
|
@@ -380,16 +397,6 @@ wlan_connectivity_mgmt_event(struct wlan_frame_hdr *mac_hdr,
|
|
|
new_rec->pkt_info.is_retry_frame =
|
|
|
(mac_hdr->i_fc[1] & IEEE80211_FC1_RETRY);
|
|
|
|
|
|
- vdev = wlan_objmgr_get_vdev_by_id_from_psoc(global_cl.psoc, vdev_id,
|
|
|
- WLAN_MLME_OBJMGR_ID);
|
|
|
- if (vdev) {
|
|
|
- is_initial_connection = wlan_cm_is_vdev_connecting(vdev);
|
|
|
- wlan_objmgr_vdev_release_ref(vdev, WLAN_MLME_OBJMGR_ID);
|
|
|
- } else {
|
|
|
- logging_debug("Unable to find vdev:%d", vdev_id);
|
|
|
- goto err;
|
|
|
- }
|
|
|
-
|
|
|
if (global_cl.psoc)
|
|
|
is_auth_frame_caching_required =
|
|
|
wlan_psoc_nif_fw_ext2_cap_get(
|
|
@@ -405,7 +412,7 @@ wlan_connectivity_mgmt_event(struct wlan_frame_hdr *mac_hdr,
|
|
|
} else {
|
|
|
wlan_connectivity_log_enqueue(new_rec);
|
|
|
}
|
|
|
-err:
|
|
|
+
|
|
|
qdf_mem_free(new_rec);
|
|
|
}
|
|
|
|