qcacmn: Cleanup assert in mgmt rx reo - Part 6
Cleanup asserts in management Rx reorder module. Change-Id: Ief86560bab36a59c7e82707a4c0b58ff4ce954a8 CRs-Fixed: 3593933
This commit is contained in:

gecommit door
Rahul Choudhary

bovenliggende
4aa45fd033
commit
105a5fc213
@@ -29,6 +29,7 @@
|
||||
#include <wlan_lmac_if_api.h>
|
||||
#include <init_deinit_lmac.h>
|
||||
#include <wlan_mlo_mgr_setup.h>
|
||||
#include <qdf_platform.h>
|
||||
|
||||
/**
|
||||
* target_if_mgmt_rx_reo_fw_consumed_event_handler() - WMI event handler to
|
||||
@@ -280,6 +281,7 @@ target_if_mgmt_rx_reo_get_valid_hw_link_bitmap(struct wlan_objmgr_psoc *psoc,
|
||||
/**
|
||||
* target_if_mgmt_rx_reo_read_snapshot_raw() - Read raw value of management
|
||||
* rx-reorder snapshot
|
||||
* @pdev: pointer to pdev object
|
||||
* @snapshot_address: snapshot address
|
||||
* @mgmt_rx_reo_snapshot_low: Pointer to lower 32 bits of snapshot value
|
||||
* @mgmt_rx_reo_snapshot_high: Pointer to higher 32 bits of snapshot value
|
||||
@@ -292,7 +294,8 @@ target_if_mgmt_rx_reo_get_valid_hw_link_bitmap(struct wlan_objmgr_psoc *psoc,
|
||||
*/
|
||||
static QDF_STATUS
|
||||
target_if_mgmt_rx_reo_read_snapshot_raw
|
||||
(struct mgmt_rx_reo_shared_snapshot *snapshot_address,
|
||||
(struct wlan_objmgr_pdev *pdev,
|
||||
struct mgmt_rx_reo_shared_snapshot *snapshot_address,
|
||||
uint32_t *mgmt_rx_reo_snapshot_low,
|
||||
uint32_t *mgmt_rx_reo_snapshot_high,
|
||||
uint8_t snapshot_version,
|
||||
@@ -343,8 +346,14 @@ target_if_mgmt_rx_reo_read_snapshot_raw
|
||||
prev_snapshot_high = cur_snapshot_high;
|
||||
}
|
||||
|
||||
qdf_assert_always(retry_count !=
|
||||
(MGMT_RX_REO_SNAPSHOT_B2B_READ_SWAR_RETRY_LIMIT - 1));
|
||||
if (retry_count ==
|
||||
(MGMT_RX_REO_SNAPSHOT_B2B_READ_SWAR_RETRY_LIMIT - 1)) {
|
||||
enum qdf_hang_reason reason;
|
||||
|
||||
reason = QDF_MGMT_RX_REO_INCONSISTENT_SNAPSHOT;
|
||||
mgmt_rx_reo_err("Triggering self recovery, inconsistent SS");
|
||||
qdf_trigger_self_recovery(wlan_pdev_get_psoc(pdev), reason);
|
||||
}
|
||||
|
||||
*mgmt_rx_reo_snapshot_low = cur_snapshot_low;
|
||||
*mgmt_rx_reo_snapshot_high = cur_snapshot_high;
|
||||
@@ -426,7 +435,7 @@ target_if_mgmt_rx_reo_read_snapshot(
|
||||
for (; retry_count < MGMT_RX_REO_SNAPSHOT_READ_RETRY_LIMIT;
|
||||
retry_count++) {
|
||||
status = target_if_mgmt_rx_reo_read_snapshot_raw
|
||||
(snapshot_address,
|
||||
(pdev, snapshot_address,
|
||||
&mgmt_rx_reo_snapshot_low,
|
||||
&mgmt_rx_reo_snapshot_high,
|
||||
snapshot_version,
|
||||
@@ -481,13 +490,18 @@ target_if_mgmt_rx_reo_read_snapshot(
|
||||
}
|
||||
|
||||
if (retry_count == MGMT_RX_REO_SNAPSHOT_READ_RETRY_LIMIT) {
|
||||
enum qdf_hang_reason reason;
|
||||
|
||||
mgmt_rx_reo_err("Read retry limit, id = %d, ver = %u",
|
||||
id, snapshot_version);
|
||||
snapshot_value->valid = false;
|
||||
snapshot_value->mgmt_pkt_ctr = 0xFFFF;
|
||||
snapshot_value->global_timestamp = 0xFFFFFFFF;
|
||||
snapshot_value->retry_count = retry_count;
|
||||
qdf_assert_always(0);
|
||||
reason = QDF_MGMT_RX_REO_INCONSISTENT_SNAPSHOT;
|
||||
mgmt_rx_reo_err("Triggering self recovery, retry fail");
|
||||
qdf_trigger_self_recovery(wlan_pdev_get_psoc(pdev),
|
||||
reason);
|
||||
return QDF_STATUS_E_FAILURE;
|
||||
}
|
||||
|
||||
|
Verwijs in nieuw issue
Block a user