aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBing Zhao <bzhao@marvell.com>2014-02-26 23:11:22 -0500
committerJohn W. Linville <linville@tuxdriver.com>2014-02-28 13:48:01 -0500
commitadb07df1e039e9fe43e66aeea8b4771f83659dbb (patch)
tree3b74f23b72bca75df3115355ba4201b65d7e515f
parentb95eddbb907538d5501d4d659056e987de64d978 (diff)
mwifiex: do not advertise usb autosuspend support
As many Surface Pro I & II users have found out, the mwifiex_usb doesn't support usb autosuspend, and it has caused some system stability issues. Bug 69661 - mwifiex_usb on MS Surface Pro 1 is unstable Bug 60815 - Interface hangs in mwifiex_usb Bug 64111 - mwifiex_usb USB8797 crash failed to get signal information USB autosuspend get triggered when Surface Pro's AC power is removed or powertop enables power saving on USB8797 device. Driver's suspend handler is called here, but resume handler won't be called until the AC power is put back on or powertop disables power saving for USB8797. We need to refactor the suspend/resume handlers to support usb autosuspend properly. For now let's just remove it. Cc: <stable@vger.kernel.org> # 3.5+ Signed-off-by: Bing Zhao <bzhao@marvell.com> Signed-off-by: Amitkumar Karwar <akarwar@marvell.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
-rw-r--r--drivers/net/wireless/mwifiex/usb.c8
1 files changed, 0 insertions, 8 deletions
diff --git a/drivers/net/wireless/mwifiex/usb.c b/drivers/net/wireless/mwifiex/usb.c
index cb6b70a1b34d..208748804a55 100644
--- a/drivers/net/wireless/mwifiex/usb.c
+++ b/drivers/net/wireless/mwifiex/usb.c
@@ -525,13 +525,6 @@ static int mwifiex_usb_resume(struct usb_interface *intf)
525 MWIFIEX_BSS_ROLE_ANY), 525 MWIFIEX_BSS_ROLE_ANY),
526 MWIFIEX_ASYNC_CMD); 526 MWIFIEX_ASYNC_CMD);
527 527
528#ifdef CONFIG_PM
529 /* Resume handler may be called due to remote wakeup,
530 * force to exit suspend anyway
531 */
532 usb_disable_autosuspend(card->udev);
533#endif /* CONFIG_PM */
534
535 return 0; 528 return 0;
536} 529}
537 530
@@ -571,7 +564,6 @@ static struct usb_driver mwifiex_usb_driver = {
571 .id_table = mwifiex_usb_table, 564 .id_table = mwifiex_usb_table,
572 .suspend = mwifiex_usb_suspend, 565 .suspend = mwifiex_usb_suspend,
573 .resume = mwifiex_usb_resume, 566 .resume = mwifiex_usb_resume,
574 .supports_autosuspend = 1,
575}; 567};
576 568
577static int mwifiex_usb_tx_init(struct mwifiex_adapter *adapter) 569static int mwifiex_usb_tx_init(struct mwifiex_adapter *adapter)