diff options
-rw-r--r-- | drivers/net/wireless/mwifiex/ioctl.h | 1 | ||||
-rw-r--r-- | drivers/net/wireless/mwifiex/main.h | 1 | ||||
-rw-r--r-- | drivers/net/wireless/mwifiex/sdio.c | 3 | ||||
-rw-r--r-- | drivers/net/wireless/mwifiex/sta_ioctl.c | 14 |
4 files changed, 19 insertions, 0 deletions
diff --git a/drivers/net/wireless/mwifiex/ioctl.h b/drivers/net/wireless/mwifiex/ioctl.h index 7c1c5ee40eb9..f6bcc868562f 100644 --- a/drivers/net/wireless/mwifiex/ioctl.h +++ b/drivers/net/wireless/mwifiex/ioctl.h | |||
@@ -249,6 +249,7 @@ struct mwifiex_ds_hs_cfg { | |||
249 | }; | 249 | }; |
250 | 250 | ||
251 | #define DEEP_SLEEP_ON 1 | 251 | #define DEEP_SLEEP_ON 1 |
252 | #define DEEP_SLEEP_OFF 0 | ||
252 | #define DEEP_SLEEP_IDLE_TIME 100 | 253 | #define DEEP_SLEEP_IDLE_TIME 100 |
253 | #define PS_MODE_AUTO 1 | 254 | #define PS_MODE_AUTO 1 |
254 | 255 | ||
diff --git a/drivers/net/wireless/mwifiex/main.h b/drivers/net/wireless/mwifiex/main.h index 03691c02a6e8..2215c3c97354 100644 --- a/drivers/net/wireless/mwifiex/main.h +++ b/drivers/net/wireless/mwifiex/main.h | |||
@@ -929,6 +929,7 @@ int mwifiex_set_hs_params(struct mwifiex_private *priv, | |||
929 | struct mwifiex_ds_hs_cfg *hscfg); | 929 | struct mwifiex_ds_hs_cfg *hscfg); |
930 | int mwifiex_cancel_hs(struct mwifiex_private *priv, int cmd_type); | 930 | int mwifiex_cancel_hs(struct mwifiex_private *priv, int cmd_type); |
931 | int mwifiex_enable_hs(struct mwifiex_adapter *adapter); | 931 | int mwifiex_enable_hs(struct mwifiex_adapter *adapter); |
932 | int mwifiex_disable_auto_ds(struct mwifiex_private *priv); | ||
932 | int mwifiex_get_signal_info(struct mwifiex_private *priv, | 933 | int mwifiex_get_signal_info(struct mwifiex_private *priv, |
933 | struct mwifiex_ds_get_signal *signal); | 934 | struct mwifiex_ds_get_signal *signal); |
934 | int mwifiex_drv_get_data_rate(struct mwifiex_private *priv, | 935 | int mwifiex_drv_get_data_rate(struct mwifiex_private *priv, |
diff --git a/drivers/net/wireless/mwifiex/sdio.c b/drivers/net/wireless/mwifiex/sdio.c index f7105a97e847..82098ac483b8 100644 --- a/drivers/net/wireless/mwifiex/sdio.c +++ b/drivers/net/wireless/mwifiex/sdio.c | |||
@@ -133,6 +133,9 @@ mwifiex_sdio_remove(struct sdio_func *func) | |||
133 | adapter->priv[i]->media_connected) | 133 | adapter->priv[i]->media_connected) |
134 | mwifiex_deauthenticate(adapter->priv[i], NULL); | 134 | mwifiex_deauthenticate(adapter->priv[i], NULL); |
135 | 135 | ||
136 | mwifiex_disable_auto_ds(mwifiex_get_priv(adapter, | ||
137 | MWIFIEX_BSS_ROLE_ANY)); | ||
138 | |||
136 | mwifiex_init_shutdown_fw(mwifiex_get_priv(adapter, | 139 | mwifiex_init_shutdown_fw(mwifiex_get_priv(adapter, |
137 | MWIFIEX_BSS_ROLE_ANY), | 140 | MWIFIEX_BSS_ROLE_ANY), |
138 | MWIFIEX_FUNC_SHUTDOWN); | 141 | MWIFIEX_FUNC_SHUTDOWN); |
diff --git a/drivers/net/wireless/mwifiex/sta_ioctl.c b/drivers/net/wireless/mwifiex/sta_ioctl.c index d05907d05039..c34ff8c4f4f8 100644 --- a/drivers/net/wireless/mwifiex/sta_ioctl.c +++ b/drivers/net/wireless/mwifiex/sta_ioctl.c | |||
@@ -487,6 +487,20 @@ int mwifiex_set_radio_band_cfg(struct mwifiex_private *priv, | |||
487 | } | 487 | } |
488 | 488 | ||
489 | /* | 489 | /* |
490 | * The function disables auto deep sleep mode. | ||
491 | */ | ||
492 | int mwifiex_disable_auto_ds(struct mwifiex_private *priv) | ||
493 | { | ||
494 | struct mwifiex_ds_auto_ds auto_ds; | ||
495 | |||
496 | auto_ds.auto_ds = DEEP_SLEEP_OFF; | ||
497 | |||
498 | return mwifiex_send_cmd_sync(priv, HostCmd_CMD_802_11_PS_MODE_ENH, | ||
499 | DIS_AUTO_PS, BITMAP_AUTO_DS, &auto_ds); | ||
500 | } | ||
501 | EXPORT_SYMBOL_GPL(mwifiex_disable_auto_ds); | ||
502 | |||
503 | /* | ||
490 | * IOCTL request handler to set/get active channel. | 504 | * IOCTL request handler to set/get active channel. |
491 | * | 505 | * |
492 | * This function performs validity checking on channel/frequency | 506 | * This function performs validity checking on channel/frequency |