diff options
author | Arik Nemtsov <arik@wizery.com> | 2011-12-08 13:06:45 +0200 |
---|---|---|
committer | Luciano Coelho <coelho@ti.com> | 2012-04-12 08:44:02 +0300 |
commit | 34785be5e0472ec7270a96c2a05ad5b5a1e25236 (patch) | |
tree | de7c787272386bccf2e407ea64a9a57cc37e084b | |
parent | 80cd661097f3cb1dcfe45cac983c55d03cdcf64d (diff) | |
download | blackbird-obmc-linux-34785be5e0472ec7270a96c2a05ad5b5a1e25236.tar.gz blackbird-obmc-linux-34785be5e0472ec7270a96c2a05ad5b5a1e25236.zip |
wlcore: add module param to prevent HW recovery
Allow preventing HW recovery from a module param. The driver/FW will
remain stuck, to allow easier FW debugging.
Signed-off-by: Arik Nemtsov <arik@wizery.com>
Signed-off-by: Luciano Coelho <coelho@ti.com>
-rw-r--r-- | drivers/net/wireless/ti/wlcore/main.c | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/drivers/net/wireless/ti/wlcore/main.c b/drivers/net/wireless/ti/wlcore/main.c index 730bbb1ad95b..b80f08bbfebf 100644 --- a/drivers/net/wireless/ti/wlcore/main.c +++ b/drivers/net/wireless/ti/wlcore/main.c @@ -57,6 +57,7 @@ static char *fwlog_param; static bool bug_on_recovery; +static bool no_recovery; static void __wl1271_op_remove_interface(struct wl1271 *wl, struct ieee80211_vif *vif, @@ -874,6 +875,14 @@ static void wl1271_recovery_work(struct work_struct *work) BUG_ON(bug_on_recovery && !test_bit(WL1271_FLAG_INTENDED_FW_RECOVERY, &wl->flags)); + if (no_recovery) { + wl1271_info("No recovery (chosen on module load). Fw will remain stuck."); + clear_bit(WL1271_FLAG_RECOVERY_IN_PROGRESS, &wl->flags); + goto out_unlock; + } + + BUG_ON(bug_on_recovery); + /* * Advance security sequence number to overcome potential progress * in the firmware during recovery. This doens't hurt if the network is @@ -5071,6 +5080,9 @@ MODULE_PARM_DESC(fwlog, module_param(bug_on_recovery, bool, S_IRUSR | S_IWUSR); MODULE_PARM_DESC(bug_on_recovery, "BUG() on fw recovery"); +module_param(no_recovery, bool, S_IRUSR | S_IWUSR); +MODULE_PARM_DESC(no_recovery, "Prevent HW recovery. FW will remain stuck."); + MODULE_LICENSE("GPL"); MODULE_AUTHOR("Luciano Coelho <coelho@ti.com>"); MODULE_AUTHOR("Juuso Oikarinen <juuso.oikarinen@nokia.com>"); |