diff --git a/drivers/net/wireless/cnss2/main.c b/drivers/net/wireless/cnss2/main.c index fc90e30a53ca..4d8ad7c8975f 100644 --- a/drivers/net/wireless/cnss2/main.c +++ b/drivers/net/wireless/cnss2/main.c @@ -59,6 +59,7 @@ enum cnss_debug_quirks { LINK_DOWN_SELF_RECOVERY, SKIP_DEVICE_BOOT, USE_CORE_ONLY_FW, + SKIP_RECOVERY, }; unsigned long quirks; @@ -1454,6 +1455,11 @@ static int cnss_do_recovery(struct cnss_plat_data *plat_priv, plat_priv->driver_ops->update_status(pci_priv->pci_dev, CNSS_RECOVERY); + if (test_bit(SKIP_RECOVERY, &quirks)) { + cnss_pr_dbg("Skip device recovery\n"); + return 0; + } + switch (reason) { case CNSS_REASON_LINK_DOWN: if (test_bit(LINK_DOWN_SELF_RECOVERY, &quirks))