aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/wireless
diff options
context:
space:
mode:
authorVidhya Govindan <vidhya.govindan@nokia.com>2009-11-17 11:49:54 -0500
committerJohn W. Linville <linville@tuxdriver.com>2009-11-18 17:09:23 -0500
commit06cc5d3bb01350466f7a1bf64d9afe06870b6480 (patch)
tree0399eb525335d422edd23487f620b823d444e488 /drivers/net/wireless
parent79553f82c993ed511450748f01e16e4dccdc8c02 (diff)
wl1251: Send null data packet with "TODS" bit set
According to IEEE80211 standard all the data packets have to be sent with TODS bit set. This patch fixes the null data packet format which was sent without TODS bit set. This should fix many problems associated with power save. Janne Ylalehto also found this fix in the same time as mine, for a different bug he was working on. Signed-off-by: Vidhya Govindan <vidhya.govindan@nokia.com> Reviewed-by: Janne Ylalehto <janne.ylalehto@nokia.com> Signed-off-by: Kalle Valo <kalle.valo@nokia.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'drivers/net/wireless')
-rw-r--r--drivers/net/wireless/wl12xx/wl1251_main.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/net/wireless/wl12xx/wl1251_main.c b/drivers/net/wireless/wl12xx/wl1251_main.c
index 2e1c10f9670a..ff4be7bf5d36 100644
--- a/drivers/net/wireless/wl12xx/wl1251_main.c
+++ b/drivers/net/wireless/wl12xx/wl1251_main.c
@@ -576,7 +576,8 @@ static int wl1251_build_null_data(struct wl1251 *wl)
576 576
577 memcpy(template.header.sa, wl->mac_addr, ETH_ALEN); 577 memcpy(template.header.sa, wl->mac_addr, ETH_ALEN);
578 template.header.frame_ctl = cpu_to_le16(IEEE80211_FTYPE_DATA | 578 template.header.frame_ctl = cpu_to_le16(IEEE80211_FTYPE_DATA |
579 IEEE80211_STYPE_NULLFUNC); 579 IEEE80211_STYPE_NULLFUNC |
580 IEEE80211_FCTL_TODS);
580 581
581 return wl1251_cmd_template_set(wl, CMD_NULL_DATA, &template, 582 return wl1251_cmd_template_set(wl, CMD_NULL_DATA, &template,
582 sizeof(template)); 583 sizeof(template));