Explorar o código

qcacld-3.0: Cache set HW mode response status

Currently, Host is not caching the response status for the set HW mode
request. Without this status, it is difficult to debug HW mode mismatch
between host and FW when the logs are not available during the set HW
mode command.

To address this, cache the set HW mode response status.

Change-Id: I61b935d54648bc80901bfe7127227ffaa8d7cd7b
CRs-Fixed: 3076445
Arun Kumar Khandavalli %!s(int64=3) %!d(string=hai) anos
pai
achega
f61a0e0cea
Modificáronse 2 ficheiros con 3 adicións e 0 borrados
  1. 2 0
      core/wma/inc/wma.h
  2. 1 0
      core/wma/src/wma_main.c

+ 2 - 0
core/wma/inc/wma.h

@@ -903,6 +903,7 @@ struct wma_wlm_stats_data {
  * @wma_fw_time_sync_timer: timer used for firmware time sync
  * * @fw_therm_throt_support: FW Supports thermal throttling?
  * @eht_cap: 802.11be capabilities
+ * @set_hw_mode_resp_status: Set HW mode response status
  *
  * This structure is the global wma context.  It contains global wma
  * module parameters and handles of other modules.
@@ -1037,6 +1038,7 @@ typedef struct {
 	qdf_atomic_t go_num_clients_connected;
 	qdf_wake_lock_t sap_d3_wow_wake_lock;
 	qdf_wake_lock_t go_d3_wow_wake_lock;
+	enum set_hw_mode_status set_hw_mode_resp_status;
 } t_wma_handle, *tp_wma_handle;
 
 /**

+ 1 - 0
core/wma/src/wma_main.c

@@ -3717,6 +3717,7 @@ static int wma_pdev_set_hw_mode_resp_evt_handler(void *handle,
 	hw_mode_resp->cfgd_hw_mode_index = wmi_event->cfgd_hw_mode_index;
 	hw_mode_resp->num_vdev_mac_entries = wmi_event->num_vdev_mac_entries;
 
+	wma->set_hw_mode_resp_status = wmi_event->status;
 	wma_debug("status:%d cfgd_hw_mode_index:%d num_vdev_mac_entries:%d",
 			wmi_event->status,
 			wmi_event->cfgd_hw_mode_index,