qcacmn: Stop wmi sequence check during SOC stop

Skip wmi sequence check during SOC stop and enable after
initializing wmi handle. It is required to skip sequence check
during soc stop as the endpoint flush is preceding CE flush.

CRs-Fixed: 2813341

Change-Id: Ieb821483e9786471d033773dc2365ab456345f83
This commit is contained in:
Balaganapathy Palanisamy
2020-11-05 18:49:09 +05:30
committed by snandini
parent 9f9dfdc2b4
commit 0d9dc04d48
3 changed files with 24 additions and 0 deletions

View File

@@ -1809,6 +1809,7 @@ static inline void wmi_interface_sequence_reset(struct wmi_unified *wmi_handle)
{
wmi_handle->wmi_sequence = 0;
wmi_handle->wmi_exp_sequence = 0;
wmi_handle->wmi_sequence_stop = false;
}
static inline void wmi_interface_sequence_init(struct wmi_unified *wmi_handle)
@@ -1822,6 +1823,11 @@ static inline void wmi_interface_sequence_deinit(struct wmi_unified *wmi_handle)
qdf_spinlock_destroy(&wmi_handle->wmi_seq_lock);
}
void wmi_interface_sequence_stop(struct wmi_unified *wmi_handle)
{
wmi_handle->wmi_sequence_stop = true;
}
static inline QDF_STATUS wmi_htc_send_pkt(struct wmi_unified *wmi_handle,
HTC_PACKET *pkt,
const char *func, uint32_t line)
@@ -1852,6 +1858,10 @@ static inline QDF_STATUS wmi_htc_send_pkt(struct wmi_unified *wmi_handle,
static inline void wmi_interface_sequence_check(struct wmi_unified *wmi_handle,
wmi_buf_t buf)
{
/* Skip sequence check when wmi sequence stop is set */
if (wmi_handle->wmi_sequence_stop)
return;
qdf_spin_lock_bh(&wmi_handle->wmi_seq_lock);
/* Match the completion sequence and expected sequence number */
if (qdf_nbuf_get_mark(buf) != wmi_handle->wmi_exp_sequence) {
@@ -1884,6 +1894,10 @@ static inline void wmi_interface_sequence_deinit(struct wmi_unified *wmi_handle)
{
}
void wmi_interface_sequence_stop(struct wmi_unified *wmi_handle)
{
}
static inline QDF_STATUS wmi_htc_send_pkt(struct wmi_unified *wmi_handle,
HTC_PACKET *pkt,
const char *func, uint32_t line)