Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(840)

Side by Side Diff: chromeos/compat-wireless/include/net/mac80211.h

Issue 5326002: Update compat-wireless to 2.6.36-5-spn (Closed) Base URL: http://git.chromium.org/git/kernel.git@master
Patch Set: Fixes for !ACK handling, missing local changes, log message fixes Created 10 years ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 /* 1 /*
2 * mac80211 <-> driver interface 2 * mac80211 <-> driver interface
3 * 3 *
4 * Copyright 2002-2005, Devicescape Software, Inc. 4 * Copyright 2002-2005, Devicescape Software, Inc.
5 * Copyright 2006-2007 Jiri Benc <jbenc@suse.cz> 5 * Copyright 2006-2007 Jiri Benc <jbenc@suse.cz>
6 * Copyright 2007-2010 Johannes Berg <johannes@sipsolutions.net> 6 * Copyright 2007-2010 Johannes Berg <johannes@sipsolutions.net>
7 * 7 *
8 * This program is free software; you can redistribute it and/or modify 8 * This program is free software; you can redistribute it and/or modify
9 * it under the terms of the GNU General Public License version 2 as 9 * it under the terms of the GNU General Public License version 2 as
10 * published by the Free Software Foundation. 10 * published by the Free Software Foundation.
(...skipping 297 matching lines...) Expand 10 before | Expand all | Expand 10 after
308 * after TX status because the destination was asleep, it must not 308 * after TX status because the destination was asleep, it must not
309 * be modified again (no seqno assignment, crypto, etc.) 309 * be modified again (no seqno assignment, crypto, etc.)
310 * @IEEE80211_TX_INTFL_HAS_RADIOTAP: This frame was injected and still 310 * @IEEE80211_TX_INTFL_HAS_RADIOTAP: This frame was injected and still
311 * has a radiotap header at skb->data. 311 * has a radiotap header at skb->data.
312 * @IEEE80211_TX_INTFL_NL80211_FRAME_TX: Frame was requested through nl80211 312 * @IEEE80211_TX_INTFL_NL80211_FRAME_TX: Frame was requested through nl80211
313 * MLME command (internal to mac80211 to figure out whether to send TX 313 * MLME command (internal to mac80211 to figure out whether to send TX
314 * status to user space) 314 * status to user space)
315 * @IEEE80211_TX_CTL_LDPC: tells the driver to use LDPC for this frame 315 * @IEEE80211_TX_CTL_LDPC: tells the driver to use LDPC for this frame
316 * @IEEE80211_TX_CTL_STBC: Enables Space-Time Block Coding (STBC) for this 316 * @IEEE80211_TX_CTL_STBC: Enables Space-Time Block Coding (STBC) for this
317 * frame and selects the maximum number of streams that it can use. 317 * frame and selects the maximum number of streams that it can use.
318 *
319 * Note: If you have to add new flags to the enumeration, then don't
320 * forget to update %IEEE80211_TX_TEMPORARY_FLAGS when necessary.
318 */ 321 */
319 enum mac80211_tx_control_flags { 322 enum mac80211_tx_control_flags {
320 IEEE80211_TX_CTL_REQ_TX_STATUS = BIT(0), 323 IEEE80211_TX_CTL_REQ_TX_STATUS = BIT(0),
321 IEEE80211_TX_CTL_ASSIGN_SEQ = BIT(1), 324 IEEE80211_TX_CTL_ASSIGN_SEQ = BIT(1),
322 IEEE80211_TX_CTL_NO_ACK = BIT(2), 325 IEEE80211_TX_CTL_NO_ACK = BIT(2),
323 IEEE80211_TX_CTL_CLEAR_PS_FILT = BIT(3), 326 IEEE80211_TX_CTL_CLEAR_PS_FILT = BIT(3),
324 IEEE80211_TX_CTL_FIRST_FRAGMENT = BIT(4), 327 IEEE80211_TX_CTL_FIRST_FRAGMENT = BIT(4),
325 IEEE80211_TX_CTL_SEND_AFTER_DTIM = BIT(5), 328 IEEE80211_TX_CTL_SEND_AFTER_DTIM = BIT(5),
326 IEEE80211_TX_CTL_AMPDU = BIT(6), 329 IEEE80211_TX_CTL_AMPDU = BIT(6),
327 IEEE80211_TX_CTL_INJECTED = BIT(7), 330 IEEE80211_TX_CTL_INJECTED = BIT(7),
328 IEEE80211_TX_STAT_TX_FILTERED = BIT(8), 331 IEEE80211_TX_STAT_TX_FILTERED = BIT(8),
329 IEEE80211_TX_STAT_ACK = BIT(9), 332 IEEE80211_TX_STAT_ACK = BIT(9),
330 IEEE80211_TX_STAT_AMPDU = BIT(10), 333 IEEE80211_TX_STAT_AMPDU = BIT(10),
331 IEEE80211_TX_STAT_AMPDU_NO_BACK = BIT(11), 334 IEEE80211_TX_STAT_AMPDU_NO_BACK = BIT(11),
332 IEEE80211_TX_CTL_RATE_CTRL_PROBE = BIT(12), 335 IEEE80211_TX_CTL_RATE_CTRL_PROBE = BIT(12),
333 IEEE80211_TX_INTFL_NEED_TXPROCESSING = BIT(14), 336 IEEE80211_TX_INTFL_NEED_TXPROCESSING = BIT(14),
334 IEEE80211_TX_INTFL_RETRIED = BIT(15), 337 IEEE80211_TX_INTFL_RETRIED = BIT(15),
335 IEEE80211_TX_INTFL_DONT_ENCRYPT = BIT(16), 338 IEEE80211_TX_INTFL_DONT_ENCRYPT = BIT(16),
336 IEEE80211_TX_CTL_PSPOLL_RESPONSE = BIT(17), 339 IEEE80211_TX_CTL_PSPOLL_RESPONSE = BIT(17),
337 IEEE80211_TX_CTL_MORE_FRAMES = BIT(18), 340 IEEE80211_TX_CTL_MORE_FRAMES = BIT(18),
338 IEEE80211_TX_INTFL_RETRANSMISSION = BIT(19), 341 IEEE80211_TX_INTFL_RETRANSMISSION = BIT(19),
339 IEEE80211_TX_INTFL_HAS_RADIOTAP = BIT(20), 342 IEEE80211_TX_INTFL_HAS_RADIOTAP = BIT(20),
340 IEEE80211_TX_INTFL_NL80211_FRAME_TX = BIT(21), 343 IEEE80211_TX_INTFL_NL80211_FRAME_TX = BIT(21),
341 IEEE80211_TX_CTL_LDPC = BIT(22), 344 IEEE80211_TX_CTL_LDPC = BIT(22),
342 IEEE80211_TX_CTL_STBC = BIT(23) | BIT(24), 345 IEEE80211_TX_CTL_STBC = BIT(23) | BIT(24),
343 }; 346 };
344 347
345 #define IEEE80211_TX_CTL_STBC_SHIFT 23 348 #define IEEE80211_TX_CTL_STBC_SHIFT 23
346 349
350 /*
351 * This definition is used as a mask to clear all temporary flags, which are
352 * set by the tx handlers for each transmission attempt by the mac80211 stack.
353 */
354 #define IEEE80211_TX_TEMPORARY_FLAGS (IEEE80211_TX_CTL_NO_ACK | \
355 IEEE80211_TX_CTL_CLEAR_PS_FILT | IEEE80211_TX_CTL_FIRST_FRAGMENT | \
356 IEEE80211_TX_CTL_SEND_AFTER_DTIM | IEEE80211_TX_CTL_AMPDU | \
357 IEEE80211_TX_STAT_TX_FILTERED | IEEE80211_TX_STAT_ACK | \
358 IEEE80211_TX_STAT_AMPDU | IEEE80211_TX_STAT_AMPDU_NO_BACK | \
359 IEEE80211_TX_CTL_RATE_CTRL_PROBE | IEEE80211_TX_CTL_PSPOLL_RESPONSE | \
360 IEEE80211_TX_CTL_MORE_FRAMES | IEEE80211_TX_CTL_LDPC | \
361 IEEE80211_TX_CTL_STBC)
362
347 /** 363 /**
348 * enum mac80211_rate_control_flags - per-rate flags set by the 364 * enum mac80211_rate_control_flags - per-rate flags set by the
349 * Rate Control algorithm. 365 * Rate Control algorithm.
350 * 366 *
351 * These flags are set by the Rate control algorithm for each rate during tx, 367 * These flags are set by the Rate control algorithm for each rate during tx,
352 * in the @flags member of struct ieee80211_tx_rate. 368 * in the @flags member of struct ieee80211_tx_rate.
353 * 369 *
354 * @IEEE80211_TX_RC_USE_RTS_CTS: Use RTS/CTS exchange for this rate. 370 * @IEEE80211_TX_RC_USE_RTS_CTS: Use RTS/CTS exchange for this rate.
355 * @IEEE80211_TX_RC_USE_CTS_PROTECT: CTS-to-self protection is required. 371 * @IEEE80211_TX_RC_USE_CTS_PROTECT: CTS-to-self protection is required.
356 * This is set if the current BSS requires ERP protection. 372 * This is set if the current BSS requires ERP protection.
(...skipping 2322 matching lines...) Expand 10 before | Expand all | Expand 10 after
2679 return conf_is_ht40_minus(conf) || conf_is_ht40_plus(conf); 2695 return conf_is_ht40_minus(conf) || conf_is_ht40_plus(conf);
2680 } 2696 }
2681 2697
2682 static inline bool 2698 static inline bool
2683 conf_is_ht(struct ieee80211_conf *conf) 2699 conf_is_ht(struct ieee80211_conf *conf)
2684 { 2700 {
2685 return conf->channel_type != NL80211_CHAN_NO_HT; 2701 return conf->channel_type != NL80211_CHAN_NO_HT;
2686 } 2702 }
2687 2703
2688 #endif /* MAC80211_H */ 2704 #endif /* MAC80211_H */
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698