From 00410da99c74eb78a3b63c1d78e7e300d4cfd52a Mon Sep 17 00:00:00 2001 From: Sandeep Singh Date: Thu, 15 Oct 2020 19:57:37 +0530 Subject: [PATCH] icnss2: Avoid sending fw down uevent to wlan driver twice Avoid sending fw down uevent to wlan driver twice for one ssr/pdr. Change-Id: I9c99b16c3760ef7b432df16b2f326db39371e3c3 Signed-off-by: Sandeep Singh --- drivers/soc/qcom/icnss2/main.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/drivers/soc/qcom/icnss2/main.c b/drivers/soc/qcom/icnss2/main.c index 363d4e8e790a..8f8de8d35170 100644 --- a/drivers/soc/qcom/icnss2/main.c +++ b/drivers/soc/qcom/icnss2/main.c @@ -417,6 +417,7 @@ static irqreturn_t fw_crash_indication_handler(int irq, void *ctx) icnss_ignore_fw_timeout(true); if (test_bit(ICNSS_FW_READY, &priv->state)) { + clear_bit(ICNSS_FW_READY, &priv->state); fw_down_data.crashed = true; icnss_call_driver_uevent(priv, ICNSS_UEVENT_FW_DOWN, &fw_down_data); @@ -1508,6 +1509,7 @@ static int icnss_modem_notifier_nb(struct notifier_block *nb, icnss_ignore_fw_timeout(true); if (test_bit(ICNSS_FW_READY, &priv->state)) { + clear_bit(ICNSS_FW_READY, &priv->state); fw_down_data.crashed = !!notif->crashed; icnss_call_driver_uevent(priv, ICNSS_UEVENT_FW_DOWN, @@ -1537,6 +1539,7 @@ static int icnss_modem_notifier_nb(struct notifier_block *nb, fw_down_data.crashed = !!notif->crashed; if (test_bit(ICNSS_FW_READY, &priv->state)) { + clear_bit(ICNSS_FW_READY, &priv->state); fw_down_data.crashed = !!notif->crashed; icnss_call_driver_uevent(priv, ICNSS_UEVENT_FW_DOWN, @@ -1665,6 +1668,7 @@ event_post: icnss_ignore_fw_timeout(true); if (test_bit(ICNSS_FW_READY, &priv->state)) { + clear_bit(ICNSS_FW_READY, &priv->state); fw_down_data.crashed = event_data->crashed; icnss_call_driver_uevent(priv, ICNSS_UEVENT_FW_DOWN,