qcacmn: Check if FW or host in recovery before invoking assert
Force wake request is sent before register write. If this req fails check if FW is down or host is in recovery before asserting. Change-Id: I6d31b1f95b68ae4e462f59ed32ed933de55cacae CRs-Fixed: 2601364
This commit is contained in:
@@ -25,6 +25,7 @@
|
||||
#include "hal_internal.h"
|
||||
#include "hif.h"
|
||||
#include "hif_io32.h"
|
||||
#include "qdf_platform.h"
|
||||
|
||||
/* calculate the register address offset from bar0 of shadow register x */
|
||||
#if defined(QCA_WIFI_QCA6390) || defined(QCA_WIFI_QCA6490)
|
||||
@@ -296,7 +297,7 @@ static inline void hal_write32_mb(struct hal_soc *hal_soc, uint32_t offset,
|
||||
ret = hif_force_wake_request(hal_soc->hif_handle);
|
||||
if (ret) {
|
||||
hal_err("Wake up request failed");
|
||||
QDF_BUG(0);
|
||||
qdf_check_state_before_panic();
|
||||
return;
|
||||
}
|
||||
}
|
||||
@@ -315,8 +316,8 @@ static inline void hal_write32_mb(struct hal_soc *hal_soc, uint32_t offset,
|
||||
if (!hal_soc->init_phase) {
|
||||
ret = hif_force_wake_release(hal_soc->hif_handle);
|
||||
if (ret) {
|
||||
hal_err("Wake up request failed");
|
||||
QDF_BUG(0);
|
||||
hal_err("Wake up release failed");
|
||||
qdf_check_state_before_panic();
|
||||
return;
|
||||
}
|
||||
}
|
||||
@@ -344,7 +345,7 @@ static inline void hal_write32_mb_confirm(struct hal_soc *hal_soc,
|
||||
ret = hif_force_wake_request(hal_soc->hif_handle);
|
||||
if (ret) {
|
||||
hal_err("Wake up request failed");
|
||||
QDF_BUG(0);
|
||||
qdf_check_state_before_panic();
|
||||
return;
|
||||
}
|
||||
}
|
||||
@@ -370,8 +371,8 @@ static inline void hal_write32_mb_confirm(struct hal_soc *hal_soc,
|
||||
if (!hal_soc->init_phase) {
|
||||
ret = hif_force_wake_release(hal_soc->hif_handle);
|
||||
if (ret) {
|
||||
hal_err("Wake up request failed");
|
||||
QDF_BUG(0);
|
||||
hal_err("Wake up release failed");
|
||||
qdf_check_state_before_panic();
|
||||
return;
|
||||
}
|
||||
}
|
||||
@@ -461,7 +462,7 @@ uint32_t hal_read32_mb(struct hal_soc *hal_soc, uint32_t offset)
|
||||
if ((!hal_soc->init_phase) &&
|
||||
hif_force_wake_request(hal_soc->hif_handle)) {
|
||||
hal_err("Wake up request failed");
|
||||
QDF_BUG(0);
|
||||
qdf_check_state_before_panic();
|
||||
return 0;
|
||||
}
|
||||
|
||||
@@ -479,7 +480,7 @@ uint32_t hal_read32_mb(struct hal_soc *hal_soc, uint32_t offset)
|
||||
if ((!hal_soc->init_phase) &&
|
||||
hif_force_wake_release(hal_soc->hif_handle)) {
|
||||
hal_err("Wake up release failed");
|
||||
QDF_BUG(0);
|
||||
qdf_check_state_before_panic();
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user