|
@@ -14351,6 +14351,28 @@ static QDF_STATUS extract_ani_level_tlv(uint8_t *evt_buf,
|
|
|
#endif /* FEATURE_ANI_LEVEL_REQUEST */
|
|
|
|
|
|
#ifdef WLAN_FEATURE_ROAM_OFFLOAD
|
|
|
+/**
|
|
|
+ * convert_wtc_scan_mode() - Function to convert TLV specific
|
|
|
+ * ROAM_TRIGGER_SCAN_MODE scan mode to unified Roam trigger scan mode enum
|
|
|
+ * @scan_mode: scan freq scheme coming from firmware
|
|
|
+ *
|
|
|
+ * Return: ROAM_TRIGGER_SCAN_MODE
|
|
|
+ */
|
|
|
+static enum roam_scan_freq_scheme
|
|
|
+convert_wtc_scan_mode(WMI_ROAM_TRIGGER_SCAN_MODE scan_mode)
|
|
|
+{
|
|
|
+ switch (scan_mode) {
|
|
|
+ case ROAM_TRIGGER_SCAN_MODE_NO_SCAN_DISCONNECTION:
|
|
|
+ return ROAM_SCAN_FREQ_SCHEME_NO_SCAN;
|
|
|
+ case ROAM_TRIGGER_SCAN_MODE_PARTIAL:
|
|
|
+ return ROAM_SCAN_FREQ_SCHEME_PARTIAL_SCAN;
|
|
|
+ case ROAM_TRIGGER_SCAN_MODE_FULL:
|
|
|
+ return ROAM_SCAN_FREQ_SCHEME_FULL_SCAN;
|
|
|
+ default:
|
|
|
+ return ROAM_SCAN_FREQ_SCHEME_NONE;
|
|
|
+ }
|
|
|
+}
|
|
|
+
|
|
|
/**
|
|
|
* extract_roam_trigger_stats_tlv() - Extract the Roam trigger stats
|
|
|
* from the WMI_ROAM_STATS_EVENTID
|
|
@@ -14431,11 +14453,19 @@ extract_roam_trigger_stats_tlv(wmi_unified_t wmi_handle, void *evt_buf,
|
|
|
trig->wtc_btm_trig_data.wtc_mode =
|
|
|
src_data->vendor_specific1[3];
|
|
|
trig->wtc_btm_trig_data.wtc_scan_mode =
|
|
|
- src_data->vendor_specific1[4];
|
|
|
+ convert_wtc_scan_mode(src_data->vendor_specific1[4]);
|
|
|
trig->wtc_btm_trig_data.wtc_rssi_th =
|
|
|
src_data->vendor_specific1[5];
|
|
|
trig->wtc_btm_trig_data.wtc_candi_rssi_th =
|
|
|
src_data->vendor_specific1[6];
|
|
|
+
|
|
|
+ trig->wtc_btm_trig_data.wtc_candi_rssi_ext_present =
|
|
|
+ src_data->vendor_specific2[0];
|
|
|
+ trig->wtc_btm_trig_data.wtc_candi_rssi_th_5g =
|
|
|
+ src_data->vendor_specific2[1];
|
|
|
+ trig->wtc_btm_trig_data.wtc_candi_rssi_th_6g =
|
|
|
+ src_data->vendor_specific2[2];
|
|
|
+
|
|
|
return QDF_STATUS_SUCCESS;
|
|
|
default:
|
|
|
return QDF_STATUS_SUCCESS;
|