mwifiex: module parameter for deep sleep configuration
authorAvinash Patil <patila@marvell.com>
Tue, 23 Dec 2014 13:44:12 +0000 (19:14 +0530)
committerKalle Valo <kvalo@codeaurora.org>
Tue, 6 Jan 2015 18:54:37 +0000 (20:54 +0200)
This patch adds module parameter for auto deepsleep configuration.
By default, module_param is 0 and auto deep sleep is enabled.
If mwifiex driver is loaded with disable_auto_ds=1, deep sleep
configuration would not be downloaded to FW and FW would not enter
deepsleep upon initializing.

Signed-off-by: Avinash Patil <patila@marvell.com>
Signed-off-by: Amitkumar Karwar <akarwar@marvell.com>
Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
drivers/net/wireless/mwifiex/sta_cmd.c

index 1c2ca291d1f5351447130cc30cfcccc00b99dc17..f7b920d7a95a7b599417775635e699092b0b37f0 100644 (file)
 #include "11n.h"
 #include "11ac.h"
 
+static bool disable_auto_ds;
+module_param(disable_auto_ds, bool, 0);
+MODULE_PARM_DESC(disable_auto_ds,
+                "deepsleep enabled=0(default), deepsleep disabled=1");
 /*
  * This function prepares command to set/get RSSI information.
  *
@@ -2031,7 +2035,8 @@ int mwifiex_sta_init_cmd(struct mwifiex_private *priv, u8 first_sta)
        if (ret)
                return -1;
 
-       if (first_sta && priv->adapter->iface_type != MWIFIEX_USB &&
+       if (!disable_auto_ds &&
+           first_sta && priv->adapter->iface_type != MWIFIEX_USB &&
            priv->bss_type != MWIFIEX_BSS_TYPE_UAP) {
                /* Enable auto deep sleep */
                auto_ds.auto_ds = DEEP_SLEEP_ON;