From 604d4a0b01e22ecf42f4430d938b30fa68b74554 Mon Sep 17 00:00:00 2001 From: Manikandan Mohan Date: Thu, 13 Aug 2020 23:28:56 -0700 Subject: [PATCH] cnss2: Check for FW / IMS status for WFC QMI messages Drop WFC QMI indications from FW / IMS based on corresponding connection status withs platform driver. Change-Id: Ifa5877e551503e371750cbc7fdf958cc975725dd Signed-off-by: Manikandan Mohan --- drivers/net/wireless/cnss2/qmi.c | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/drivers/net/wireless/cnss2/qmi.c b/drivers/net/wireless/cnss2/qmi.c index 5418290653f5..76c8cf081f3f 100644 --- a/drivers/net/wireless/cnss2/qmi.c +++ b/drivers/net/wireless/cnss2/qmi.c @@ -1575,6 +1575,10 @@ static int cnss_wlfw_wfc_call_status_send_sync struct qmi_txn txn; int ret = 0; + if (!test_bit(CNSS_FW_READY, &plat_priv->driver_state)) { + cnss_pr_err("Drop IMS WFC indication as FW not initialized\n"); + return -EINVAL; + } req = kzalloc(sizeof(*req), GFP_KERNEL); if (!req) return -ENOMEM; @@ -2095,6 +2099,11 @@ static int cnss_ims_wfc_call_twt_cfg_send_sync struct qmi_txn txn; int ret = 0; + if (!test_bit(CNSS_IMS_CONNECTED, &plat_priv->driver_state)) { + cnss_pr_err("Drop FW WFC indication as IMS QMI not connected\n"); + return -EINVAL; + } + req = kzalloc(sizeof(*req), GFP_KERNEL); if (!req) return -ENOMEM;