diff options
| -rw-r--r-- | drivers/soc/qcom/icnss.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/drivers/soc/qcom/icnss.c b/drivers/soc/qcom/icnss.c index 73d6bea83b95..e7f83ed1307b 100644 --- a/drivers/soc/qcom/icnss.c +++ b/drivers/soc/qcom/icnss.c @@ -2246,6 +2246,12 @@ static int icnss_driver_event_register_driver(void *data) if (test_bit(SKIP_QMI, &quirks)) set_bit(ICNSS_FW_READY, &penv->state); + if (test_bit(ICNSS_FW_DOWN, &penv->state)) { + icnss_pr_err("FW is in bad state, state: 0x%lx\n", + penv->state); + return -ENODEV; + } + if (!test_bit(ICNSS_FW_READY, &penv->state)) { icnss_pr_dbg("FW is not ready yet, state: 0x%lx\n", penv->state); |
