+++ /dev/null
-From 761ce8c41ed20ee3af77f2df527edc3f92e6f3bf Mon Sep 17 00:00:00 2001
-From: Stanislaw Gruszka <sgruszka@redhat.com>
-Date: Tue, 16 Oct 2012 14:34:12 +0200
-Subject: rt2x00: usb: fix reset resume
-
-From: Stanislaw Gruszka <sgruszka@redhat.com>
-
-commit 761ce8c41ed20ee3af77f2df527edc3f92e6f3bf upstream.
-
-Patch fixes warnings like below happened on resume:
-
-WARNING: at net/mac80211/driver-ops.h:12 check_sdata_in_driver+0x32/0x34()
-
-Problem is that in __ieee80211_susped() we remove sdata (i.e wlan0
-interface) and then during resume we call usb_unbind_interface() ->
-ieee80211_unregister_hw() with sdata removed.
-
-Patch fixes problem by adding .reset_resume calback, hence we do not
-unbind usb device on resume. This callback can be the same as normal
-.resume callback, sice we do all needed initalization during interface
-start, which is performed on resume [ ieee80211_resume() ->
-ieee80211_reconfig() -> rt2x00mac_start() -> rt2x00lib_start ].
-
-Resolves:
-https://bugzilla.kernel.org/show_bug.cgi?id=48041
-
-Reported-by: David Herrmann <dh.herrmann@googlemail.com>
-Reported-and-tested-by: Stephen Boyd <bebarino@gmail.com>
-Signed-off-by: Stanislaw Gruszka <sgruszka@redhat.com>
-Acked-by: Gertjan van Wingerde <gwingerde@gmail.com>
-Signed-off-by: John W. Linville <linville@tuxdriver.com>
-Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
-
----
- drivers/net/wireless/rt2x00/rt2500usb.c | 1 +
- drivers/net/wireless/rt2x00/rt2800usb.c | 1 +
- drivers/net/wireless/rt2x00/rt73usb.c | 1 +
- 3 files changed, 3 insertions(+)
-
---- a/drivers/net/wireless/rt2x00/rt2500usb.c
-+++ b/drivers/net/wireless/rt2x00/rt2500usb.c
-@@ -1989,6 +1989,7 @@ static struct usb_driver rt2500usb_drive
- .disconnect = rt2x00usb_disconnect,
- .suspend = rt2x00usb_suspend,
- .resume = rt2x00usb_resume,
-+ .reset_resume = rt2x00usb_resume,
- .disable_hub_initiated_lpm = 1,
- };
-
---- a/drivers/net/wireless/rt2x00/rt2800usb.c
-+++ b/drivers/net/wireless/rt2x00/rt2800usb.c
-@@ -1322,6 +1322,7 @@ static struct usb_driver rt2800usb_drive
- .disconnect = rt2x00usb_disconnect,
- .suspend = rt2x00usb_suspend,
- .resume = rt2x00usb_resume,
-+ .reset_resume = rt2x00usb_resume,
- .disable_hub_initiated_lpm = 1,
- };
-
---- a/drivers/net/wireless/rt2x00/rt73usb.c
-+++ b/drivers/net/wireless/rt2x00/rt73usb.c
-@@ -2536,6 +2536,7 @@ static struct usb_driver rt73usb_driver
- .disconnect = rt2x00usb_disconnect,
- .suspend = rt2x00usb_suspend,
- .resume = rt2x00usb_resume,
-+ .reset_resume = rt2x00usb_resume,
- .disable_hub_initiated_lpm = 1,
- };
-