Merge "icnss: Avoid wlan driver remove during modem graceful shutdown"
This commit is contained in:
commit
d326b7ac6b
1 changed files with 1 additions and 27 deletions
|
@ -2329,29 +2329,6 @@ out:
|
|||
return 0;
|
||||
}
|
||||
|
||||
static int icnss_call_driver_remove(struct icnss_priv *priv)
|
||||
{
|
||||
icnss_pr_dbg("Calling driver remove state: 0x%lx\n", priv->state);
|
||||
|
||||
clear_bit(ICNSS_FW_READY, &priv->state);
|
||||
|
||||
if (!test_bit(ICNSS_DRIVER_PROBED, &penv->state))
|
||||
return 0;
|
||||
|
||||
if (!priv->ops || !priv->ops->remove)
|
||||
return 0;
|
||||
|
||||
set_bit(ICNSS_DRIVER_UNLOADING, &penv->state);
|
||||
penv->ops->remove(&priv->pdev->dev);
|
||||
|
||||
clear_bit(ICNSS_DRIVER_UNLOADING, &penv->state);
|
||||
clear_bit(ICNSS_DRIVER_PROBED, &priv->state);
|
||||
|
||||
icnss_hw_power_off(penv);
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
static int icnss_fw_crashed(struct icnss_priv *priv,
|
||||
struct icnss_event_pd_service_down_data *event_data)
|
||||
{
|
||||
|
@ -2387,10 +2364,7 @@ static int icnss_driver_event_pd_service_down(struct icnss_priv *priv,
|
|||
goto out;
|
||||
}
|
||||
|
||||
if (event_data->crashed)
|
||||
icnss_fw_crashed(priv, event_data);
|
||||
else
|
||||
icnss_call_driver_remove(priv);
|
||||
icnss_fw_crashed(priv, event_data);
|
||||
|
||||
out:
|
||||
kfree(data);
|
||||
|
|
Loading…
Add table
Reference in a new issue