diff options
Diffstat (limited to 'drivers')
-rw-r--r-- | drivers/net/wireless/libertas/dev.h | 1 | ||||
-rw-r--r-- | drivers/net/wireless/libertas/host.h | 5 | ||||
-rw-r--r-- | drivers/net/wireless/libertas/wext.c | 7 |
3 files changed, 13 insertions, 0 deletions
diff --git a/drivers/net/wireless/libertas/dev.h b/drivers/net/wireless/libertas/dev.h index fe5045757356..1c6ec4d61988 100644 --- a/drivers/net/wireless/libertas/dev.h +++ b/drivers/net/wireless/libertas/dev.h | |||
@@ -260,6 +260,7 @@ struct lbs_private { | |||
260 | u16 psmode; /* Wlan802_11PowermodeCAM=disable | 260 | u16 psmode; /* Wlan802_11PowermodeCAM=disable |
261 | Wlan802_11PowermodeMAX_PSP=enable */ | 261 | Wlan802_11PowermodeMAX_PSP=enable */ |
262 | u32 psstate; | 262 | u32 psstate; |
263 | char ps_supported; | ||
263 | u8 needtowakeup; | 264 | u8 needtowakeup; |
264 | 265 | ||
265 | struct PS_CMD_ConfirmSleep lbs_ps_confirm_sleep; | 266 | struct PS_CMD_ConfirmSleep lbs_ps_confirm_sleep; |
diff --git a/drivers/net/wireless/libertas/host.h b/drivers/net/wireless/libertas/host.h index 4c03e12fd6a3..1aa04076b1ac 100644 --- a/drivers/net/wireless/libertas/host.h +++ b/drivers/net/wireless/libertas/host.h | |||
@@ -209,6 +209,11 @@ | |||
209 | #define CMD_TYPE_MAX_PSP 0x0001 | 209 | #define CMD_TYPE_MAX_PSP 0x0001 |
210 | #define CMD_TYPE_FAST_PSP 0x0002 | 210 | #define CMD_TYPE_FAST_PSP 0x0002 |
211 | 211 | ||
212 | /* Options for CMD_802_11_FW_WAKE_METHOD */ | ||
213 | #define CMD_WAKE_METHOD_UNCHANGED 0x0000 | ||
214 | #define CMD_WAKE_METHOD_COMMAND_INT 0x0001 | ||
215 | #define CMD_WAKE_METHOD_GPIO 0x0002 | ||
216 | |||
212 | /* Define action or option for CMD_BT_ACCESS */ | 217 | /* Define action or option for CMD_BT_ACCESS */ |
213 | enum cmd_bt_access_opts { | 218 | enum cmd_bt_access_opts { |
214 | /* The bt commands start at 5 instead of 1 because the old dft commands | 219 | /* The bt commands start at 5 instead of 1 because the old dft commands |
diff --git a/drivers/net/wireless/libertas/wext.c b/drivers/net/wireless/libertas/wext.c index b1e24723f2f9..3e8d555ba3a9 100644 --- a/drivers/net/wireless/libertas/wext.c +++ b/drivers/net/wireless/libertas/wext.c | |||
@@ -734,6 +734,13 @@ static int lbs_set_power(struct net_device *dev, struct iw_request_info *info, | |||
734 | 734 | ||
735 | lbs_deb_enter(LBS_DEB_WEXT); | 735 | lbs_deb_enter(LBS_DEB_WEXT); |
736 | 736 | ||
737 | if (!priv->ps_supported) { | ||
738 | if (vwrq->disabled) | ||
739 | return 0; | ||
740 | else | ||
741 | return -EINVAL; | ||
742 | } | ||
743 | |||
737 | /* PS is currently supported only in Infrastructure mode | 744 | /* PS is currently supported only in Infrastructure mode |
738 | * Remove this check if it is to be supported in IBSS mode also | 745 | * Remove this check if it is to be supported in IBSS mode also |
739 | */ | 746 | */ |