]> git.ipfire.org Git - thirdparty/kernel/stable-queue.git/blame - releases/2.6.32.17/ath9k-avoid-corrupt-frames-being-forwarded-to-mac80211.patch
4.9-stable patches
[thirdparty/kernel/stable-queue.git] / releases / 2.6.32.17 / ath9k-avoid-corrupt-frames-being-forwarded-to-mac80211.patch
CommitLineData
a0402406
GKH
1From 3a37495268ab45507b4cab9d4cb18c5496ab7a10 Mon Sep 17 00:00:00 2001
2From: Vivek Natarajan <vnatarajan@atheros.com>
3Date: Tue, 27 Apr 2010 13:05:38 +0530
4Subject: ath9k: Avoid corrupt frames being forwarded to mac80211.
5
6From: Vivek Natarajan <vnatarajan@atheros.com>
7
8commit 3a37495268ab45507b4cab9d4cb18c5496ab7a10 upstream.
9
10If bit 29 is set, MAC H/W can attempt to decrypt the received aggregate
11with WEP or TKIP, eventhough the received frame may be a CRC failed
12corrupted frame. If this bit is set, H/W obeys key type in keycache.
13If it is not set and if the key type in keycache is neither open nor
14AES, H/W forces key type to be open. But bit 29 should be set to 1
15for AsyncFIFO feature to encrypt/decrypt the aggregate with WEP or TKIP.
16
17Reported-by: Johan Hovold <johan.hovold@lundinova.se>
18Signed-off-by: Vivek Natarajan <vnatarajan@atheros.com>
19Signed-off-by: Ranga Rao Ravuri <ranga.ravuri@atheros.com>
20Signed-off-by: John W. Linville <linville@tuxdriver.com>
21Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
22
23
24---
25 drivers/net/wireless/ath/ath9k/initvals.h | 8 ++++----
26 1 file changed, 4 insertions(+), 4 deletions(-)
27
28--- a/drivers/net/wireless/ath/ath9k/initvals.h
29+++ b/drivers/net/wireless/ath/ath9k/initvals.h
30@@ -2762,7 +2762,7 @@ static const u32 ar9280Common_9280_2[][2
31 { 0x00008258, 0x00000000 },
32 { 0x0000825c, 0x400000ff },
33 { 0x00008260, 0x00080922 },
34- { 0x00008264, 0xa8a00010 },
35+ { 0x00008264, 0x88a00010 },
36 { 0x00008270, 0x00000000 },
37 { 0x00008274, 0x40000000 },
38 { 0x00008278, 0x003e4180 },
39@@ -3935,7 +3935,7 @@ static const u_int32_t ar9285Common_9285
40 { 0x00008258, 0x00000000 },
41 { 0x0000825c, 0x400000ff },
42 { 0x00008260, 0x00080922 },
43- { 0x00008264, 0xa8a00010 },
44+ { 0x00008264, 0x88a00010 },
45 { 0x00008270, 0x00000000 },
46 { 0x00008274, 0x40000000 },
47 { 0x00008278, 0x003e4180 },
48@@ -5072,7 +5072,7 @@ static const u_int32_t ar9287Common_9287
49 { 0x00008258, 0x00000000 },
50 { 0x0000825c, 0x400000ff },
51 { 0x00008260, 0x00080922 },
52- { 0x00008264, 0xa8a00010 },
53+ { 0x00008264, 0x88a00010 },
54 { 0x00008270, 0x00000000 },
55 { 0x00008274, 0x40000000 },
56 { 0x00008278, 0x003e4180 },
57@@ -6864,7 +6864,7 @@ static const u_int32_t ar9271Common_9271
58 { 0x00008258, 0x00000000 },
59 { 0x0000825c, 0x400000ff },
60 { 0x00008260, 0x00080922 },
61- { 0x00008264, 0xa8a00010 },
62+ { 0x00008264, 0x88a00010 },
63 { 0x00008270, 0x00000000 },
64 { 0x00008274, 0x40000000 },
65 { 0x00008278, 0x003e4180 },