Quellcode durchsuchen

qcacmn: Do not fill roam fail reason in roam success case

Firmware doesn't fill any roam fail reason in roam success case,
which would result in having fail reason value as '0'.
But driver ends up converting the reason '0' to 'unknown'.
So, convert the roam fail reason only in roam fail case.

Change-Id: I0fea2788673e049fd078bcc6200b9612e538ee37
CRs-Fixed: 3632850
Srikanth Marepalli vor 1 Jahr
Ursprung
Commit
8e03aad368
1 geänderte Dateien mit 5 neuen und 2 gelöschten Zeilen
  1. 5 2
      wmi/src/wmi_unified_tlv.c

+ 5 - 2
wmi/src/wmi_unified_tlv.c

@@ -19901,6 +19901,8 @@ extract_roam_scan_ap_stats_tlv(wmi_unified_t wmi_handle, void *evt_buf,
 	return QDF_STATUS_SUCCESS;
 }
 
+#define ROAM_SUCCESS 0
+
 /**
  * extract_roam_scan_stats_tlv() - Extract the Roam trigger stats
  * from the WMI_ROAM_STATS_EVENTID
@@ -20009,8 +20011,9 @@ extract_roam_result_stats_tlv(wmi_unified_t wmi_handle, void *evt_buf,
 	dst->present = true;
 	dst->status = src_data->roam_status;
 	dst->timestamp = src_data->timestamp;
-	dst->fail_reason =
-	wlan_roam_fail_reason_code(src_data->roam_fail_reason);
+	if (src_data->roam_fail_reason != ROAM_SUCCESS)
+		dst->fail_reason =
+			wlan_roam_fail_reason_code(src_data->roam_fail_reason);
 	WMI_MAC_ADDR_TO_CHAR_ARRAY(&src_data->bssid, dst->fail_bssid.bytes);
 
 	return QDF_STATUS_SUCCESS;