diff options
Diffstat (limited to 'recipes-kernel/linux/linux-ti33x-psp-3.2/3.2.1/0016-iwlagn-fix-TID-use-bug.patch')
-rw-r--r-- | recipes-kernel/linux/linux-ti33x-psp-3.2/3.2.1/0016-iwlagn-fix-TID-use-bug.patch | 50 |
1 files changed, 50 insertions, 0 deletions
diff --git a/recipes-kernel/linux/linux-ti33x-psp-3.2/3.2.1/0016-iwlagn-fix-TID-use-bug.patch b/recipes-kernel/linux/linux-ti33x-psp-3.2/3.2.1/0016-iwlagn-fix-TID-use-bug.patch new file mode 100644 index 00000000..7c020372 --- /dev/null +++ b/recipes-kernel/linux/linux-ti33x-psp-3.2/3.2.1/0016-iwlagn-fix-TID-use-bug.patch | |||
@@ -0,0 +1,50 @@ | |||
1 | From 274a64cd739d2b5e33e6e2112f78c896b18849a9 Mon Sep 17 00:00:00 2001 | ||
2 | From: Johannes Berg <johannes.berg@intel.com> | ||
3 | Date: Fri, 2 Dec 2011 12:22:54 -0800 | ||
4 | Subject: [PATCH 16/49] iwlagn: fix TID use bug | ||
5 | |||
6 | commit 9a215e40d70ae63762963ab3ccc7f31dd966dc6a upstream. | ||
7 | |||
8 | The driver everywhere uses max TID count as 9, | ||
9 | which is wrong, it should be 8. | ||
10 | |||
11 | I think the reason it uses 9 here is off-by-one | ||
12 | confusion by whoever wrote this. We do use the | ||
13 | value IWL_MAX_TID_COUNT for "not QoS/no TID" | ||
14 | but that is completely correct even if it is 8 | ||
15 | and not 9 since 0-7 are only valid. | ||
16 | |||
17 | As a side effect, this fixes the following bug: | ||
18 | |||
19 | Open BA session requested for 00:23:cd:16:8a:7e tid 8 | ||
20 | ------------[ cut here ]------------ | ||
21 | kernel BUG at drivers/net/wireless/iwlwifi/iwl-trans-pcie-int.h:350! | ||
22 | ... | ||
23 | |||
24 | when you do | ||
25 | echo "tx start 8" > /sys/kernel/debug/ieee80211/*/*/*/*/agg_status | ||
26 | |||
27 | Reported-by: Nikolay Martynov <mar.kolya@gmail.com> | ||
28 | Signed-off-by: Johannes Berg <johannes.berg@intel.com> | ||
29 | Signed-off-by: Wey-Yi Guy <wey-yi.w.guy@intel.com> | ||
30 | Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de> | ||
31 | --- | ||
32 | drivers/net/wireless/iwlwifi/iwl-commands.h | 2 +- | ||
33 | 1 files changed, 1 insertions(+), 1 deletions(-) | ||
34 | |||
35 | diff --git a/drivers/net/wireless/iwlwifi/iwl-commands.h b/drivers/net/wireless/iwlwifi/iwl-commands.h | ||
36 | index 69d5f85..8b9ff28 100644 | ||
37 | --- a/drivers/net/wireless/iwlwifi/iwl-commands.h | ||
38 | +++ b/drivers/net/wireless/iwlwifi/iwl-commands.h | ||
39 | @@ -809,7 +809,7 @@ struct iwl_qosparam_cmd { | ||
40 | #define IWLAGN_STATION_COUNT 16 | ||
41 | |||
42 | #define IWL_INVALID_STATION 255 | ||
43 | -#define IWL_MAX_TID_COUNT 9 | ||
44 | +#define IWL_MAX_TID_COUNT 8 | ||
45 | |||
46 | #define STA_FLG_TX_RATE_MSK cpu_to_le32(1 << 2) | ||
47 | #define STA_FLG_PWR_SAVE_MSK cpu_to_le32(1 << 8) | ||
48 | -- | ||
49 | 1.7.7.4 | ||
50 | |||