aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/wireless/rt2x00/rt73usb.c
diff options
context:
space:
mode:
authorGertjan van Wingerde <gwingerde@gmail.com>2010-03-30 17:50:23 -0400
committerJohn W. Linville <linville@tuxdriver.com>2010-04-06 16:52:07 -0400
commit5731858d0047cad309d334c4cd6ccb6199bf28fe (patch)
tree7fd0c4738843b41a6490a57d20cfea6a6d76ff2a /drivers/net/wireless/rt2x00/rt73usb.c
parent8a64c0f6b7ec7f758c4ef445e49f479e27fa2236 (diff)
rt2x00: Disable auto wakeup before waking up device.
In all drivers ensure that auto wakeup is disabled before waking up the device. This is needed to prevent connection stability issues and problems in waking up the device. Based upon a patch from Ondrej Zary <linux@rainbow-software.org> Signed-off-by: Gertjan van Wingerde <gwingerde@gmail.com> Cc: Ondrej Zary <linux@rainbow-software.org> Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'drivers/net/wireless/rt2x00/rt73usb.c')
-rw-r--r--drivers/net/wireless/rt2x00/rt73usb.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/drivers/net/wireless/rt2x00/rt73usb.c b/drivers/net/wireless/rt2x00/rt73usb.c
index 47f3e4a26d77..7ebe14b64fe8 100644
--- a/drivers/net/wireless/rt2x00/rt73usb.c
+++ b/drivers/net/wireless/rt2x00/rt73usb.c
@@ -860,15 +860,15 @@ static void rt73usb_config_ps(struct rt2x00_dev *rt2x00dev,
860 rt2x00usb_vendor_request_sw(rt2x00dev, USB_DEVICE_MODE, 0, 860 rt2x00usb_vendor_request_sw(rt2x00dev, USB_DEVICE_MODE, 0,
861 USB_MODE_SLEEP, REGISTER_TIMEOUT); 861 USB_MODE_SLEEP, REGISTER_TIMEOUT);
862 } else { 862 } else {
863 rt2x00usb_vendor_request_sw(rt2x00dev, USB_DEVICE_MODE, 0,
864 USB_MODE_WAKEUP, REGISTER_TIMEOUT);
865
866 rt2x00usb_register_read(rt2x00dev, MAC_CSR11, &reg); 863 rt2x00usb_register_read(rt2x00dev, MAC_CSR11, &reg);
867 rt2x00_set_field32(&reg, MAC_CSR11_DELAY_AFTER_TBCN, 0); 864 rt2x00_set_field32(&reg, MAC_CSR11_DELAY_AFTER_TBCN, 0);
868 rt2x00_set_field32(&reg, MAC_CSR11_TBCN_BEFORE_WAKEUP, 0); 865 rt2x00_set_field32(&reg, MAC_CSR11_TBCN_BEFORE_WAKEUP, 0);
869 rt2x00_set_field32(&reg, MAC_CSR11_AUTOWAKE, 0); 866 rt2x00_set_field32(&reg, MAC_CSR11_AUTOWAKE, 0);
870 rt2x00_set_field32(&reg, MAC_CSR11_WAKEUP_LATENCY, 0); 867 rt2x00_set_field32(&reg, MAC_CSR11_WAKEUP_LATENCY, 0);
871 rt2x00usb_register_write(rt2x00dev, MAC_CSR11, reg); 868 rt2x00usb_register_write(rt2x00dev, MAC_CSR11, reg);
869
870 rt2x00usb_vendor_request_sw(rt2x00dev, USB_DEVICE_MODE, 0,
871 USB_MODE_WAKEUP, REGISTER_TIMEOUT);
872 } 872 }
873} 873}
874 874