diff options
author | Johannes Berg <johannes.berg@intel.com> | 2012-03-10 16:00:07 -0500 |
---|---|---|
committer | John W. Linville <linville@tuxdriver.com> | 2012-03-12 14:21:56 -0400 |
commit | d663ee73f62903aed334eca25832a76c4a7e4c1c (patch) | |
tree | 3a8885ee9ddae0c6c18097f2530c42d221e433b0 /drivers/net/wireless/iwlwifi/iwl-trans.h | |
parent | 10d8f31ebbd6ea9aa8d65d2f04ebef63225052de (diff) |
iwlwifi: abstract out missing SEQ_RX_FRAME workaround
Mohammed Shafi ran into [1] the SEQ_RX_FRAME workaround
warning with a statistics notification, this means we
can't just remove it as we'd hoped.
Abstract it out so that the higher layer can configure
this as a kind of "filter" in the transport.
[1] http://mid.gmane.org/CAD2nsn1_DzbRHuSbS_1rFNzuux_9pW1-pABEasQ01_y7-ndO5w@mail.gmail.com
Reported-by: Mohammed Shafi <shafi.wireless@gmail.com>
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Signed-off-by: Wey-Yi Guy <wey-yi.w.guy@intel.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'drivers/net/wireless/iwlwifi/iwl-trans.h')
-rw-r--r-- | drivers/net/wireless/iwlwifi/iwl-trans.h | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/drivers/net/wireless/iwlwifi/iwl-trans.h b/drivers/net/wireless/iwlwifi/iwl-trans.h index 7d1990c7f658..95f3faf4e866 100644 --- a/drivers/net/wireless/iwlwifi/iwl-trans.h +++ b/drivers/net/wireless/iwlwifi/iwl-trans.h | |||
@@ -274,6 +274,8 @@ static inline struct page *rxb_steal_page(struct iwl_rx_cmd_buffer *r) | |||
274 | return p; | 274 | return p; |
275 | } | 275 | } |
276 | 276 | ||
277 | #define MAX_NO_RECLAIM_CMDS 6 | ||
278 | |||
277 | /** | 279 | /** |
278 | * struct iwl_trans_config - transport configuration | 280 | * struct iwl_trans_config - transport configuration |
279 | * | 281 | * |
@@ -281,10 +283,17 @@ static inline struct page *rxb_steal_page(struct iwl_rx_cmd_buffer *r) | |||
281 | * Must be set before any other call. | 283 | * Must be set before any other call. |
282 | * @cmd_queue: the index of the command queue. | 284 | * @cmd_queue: the index of the command queue. |
283 | * Must be set before start_fw. | 285 | * Must be set before start_fw. |
286 | * @no_reclaim_cmds: Some devices erroneously don't set the | ||
287 | * SEQ_RX_FRAME bit on some notifications, this is the | ||
288 | * list of such notifications to filter. Max length is | ||
289 | * %MAX_NO_RECLAIM_CMDS. | ||
290 | * @n_no_reclaim_cmds: # of commands in list | ||
284 | */ | 291 | */ |
285 | struct iwl_trans_config { | 292 | struct iwl_trans_config { |
286 | struct iwl_op_mode *op_mode; | 293 | struct iwl_op_mode *op_mode; |
287 | u8 cmd_queue; | 294 | u8 cmd_queue; |
295 | const u8 *no_reclaim_cmds; | ||
296 | int n_no_reclaim_cmds; | ||
288 | }; | 297 | }; |
289 | 298 | ||
290 | /** | 299 | /** |