qcacld-3.0: Handle WMI_ROAM_STATS_EVENTID from firmware
The event WMI_ROAM_STATS_EVENTID is received after every roam, once the roam synch complete is sent by the host. This event contains details regarding the roam trigger reason, values associated with the trigger, roam scan candidate info, roam status, roam failure reason. This helps in debugging/understanding the scenario when roam failure happens. WMI_ROAM_STATS_EVENTID Format: ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ roam_stats_event_fixed_param |-> Contains vdev id and number of | roams detail. ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ roam_trigger data TLV |-> Has details on the roam trigger | reason. Number of roam triggers | TLV detail is present in the | fixed param. Maximum 5 roam | per event is supported ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ wmi_roam_scan_info TLV |-> Has details on the roam scan - | scan type, rssi threshold, | reason. ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ wmi_roam_scan_channel_info |-> Has details on the roam scan TLV | channels. Number of channels | per trigger is found on the | wmi_roam_scan_info TLV. ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ wmi_roam_ap_info TLV |-> Has details on Roam candidate | APs found during scan. Number | of roam candidate APs per | trigger is found on the | on the wmi_roam_scan_info tlv. | Max 8 candidates are allowed | per roam scan. ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ wmi_roam_result TLV |-> Info on roam success or failure. | Fail reason, if roaming failed. ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ wmi_roam_neighbor_report_info|->After roaming, firmware sends TLV | neighbor/btm report to roamed AP | to get list of roam candidates. | This tlv provides info on this. ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ wmi_roam_neighbor_channel_info|-> This has the info on the | channel list received as part | of BTM/Neighbor report. ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Print the info received as part of this event into kmsg. Featurize all the function defines for this roam logging under WLAN_FEATURE_ROAM_OFFLOAD flag. Change-Id: Iddc70b572f2e3dc47f08fd1c3c3597cb44981a17 CRs-Fixed: 2576222
This commit is contained in:

committed by
nshrivas

parent
fc03a36791
commit
5292e0ab83
@@ -2258,4 +2258,41 @@ QDF_STATUS mlme_set_tgt_wpa3_roam_cap(struct wlan_objmgr_psoc *psoc,
|
||||
QDF_STATUS
|
||||
wlan_mlme_get_ignore_fw_reg_offload_ind(struct wlan_objmgr_psoc *psoc,
|
||||
bool *disabled);
|
||||
|
||||
/**
|
||||
* mlme_get_roam_trigger_str() - Get the string for enum
|
||||
* WMI_ROAM_TRIGGER_REASON_ID reason.
|
||||
* @roam_scan_trigger: roam scan trigger ID
|
||||
*
|
||||
* Return: Meaningful string from enum WMI_ROAM_TRIGGER_REASON_ID
|
||||
*/
|
||||
char *mlme_get_roam_trigger_str(uint32_t roam_scan_trigger);
|
||||
|
||||
/**
|
||||
* mlme_get_converted_timestamp() - Return time of the day
|
||||
* from timestamp
|
||||
* @timestamp: Timestamp value in milliseconds
|
||||
* @time: Output buffer to fill time into
|
||||
*
|
||||
* Return: Time of the day in [HH:MM:SS.uS]
|
||||
*/
|
||||
void mlme_get_converted_timestamp(uint32_t timestamp, char *time);
|
||||
|
||||
/**
|
||||
* mlme_get_roam_fail_reason_str() - Get fail string from enum
|
||||
* WMI_ROAM_FAIL_REASON_ID
|
||||
* @result: Roam fail reason
|
||||
*
|
||||
* Return: Meaningful string from enum
|
||||
*/
|
||||
char *mlme_get_roam_fail_reason_str(uint32_t result);
|
||||
|
||||
/**
|
||||
* mlme_get_sub_reason_str() - Get roam trigger sub reason from enum
|
||||
* WMI_ROAM_TRIGGER_SUB_REASON_ID
|
||||
* @sub_reason: Sub reason value
|
||||
*
|
||||
* Return: Meaningful string from enum WMI_ROAM_TRIGGER_SUB_REASON_ID
|
||||
*/
|
||||
char *mlme_get_sub_reason_str(uint32_t sub_reason);
|
||||
#endif /* _WLAN_MLME_API_H_ */
|
||||
|
Reference in New Issue
Block a user