aboutsummaryrefslogtreecommitdiffstats
path: root/include/net
diff options
context:
space:
mode:
authorDavid S. Miller <davem@davemloft.net>2008-12-21 22:57:10 -0500
committerDavid S. Miller <davem@davemloft.net>2008-12-21 22:57:10 -0500
commitc2da953a46b18b7515ad476c1c1686640a12e93a (patch)
treeb384f097718119e715cdebd74710ddceeb80fdc8 /include/net
parentc94cb314503a69492bf4455dce4f6d300cff0851 (diff)
parent9cf7f247bd0cd21e475c71a4e018bb612ef02aab (diff)
Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-next-2.6
Diffstat (limited to 'include/net')
-rw-r--r--include/net/cfg80211.h42
-rw-r--r--include/net/mac80211.h26
2 files changed, 57 insertions, 11 deletions
diff --git a/include/net/cfg80211.h b/include/net/cfg80211.h
index a0c0bf19496c..23c0ab74ded6 100644
--- a/include/net/cfg80211.h
+++ b/include/net/cfg80211.h
@@ -169,6 +169,9 @@ struct station_parameters {
169 * @STATION_INFO_LLID: @llid filled 169 * @STATION_INFO_LLID: @llid filled
170 * @STATION_INFO_PLID: @plid filled 170 * @STATION_INFO_PLID: @plid filled
171 * @STATION_INFO_PLINK_STATE: @plink_state filled 171 * @STATION_INFO_PLINK_STATE: @plink_state filled
172 * @STATION_INFO_SIGNAL: @signal filled
173 * @STATION_INFO_TX_BITRATE: @tx_bitrate fields are filled
174 * (tx_bitrate, tx_bitrate_flags and tx_bitrate_mcs)
172 */ 175 */
173enum station_info_flags { 176enum station_info_flags {
174 STATION_INFO_INACTIVE_TIME = 1<<0, 177 STATION_INFO_INACTIVE_TIME = 1<<0,
@@ -177,6 +180,39 @@ enum station_info_flags {
177 STATION_INFO_LLID = 1<<3, 180 STATION_INFO_LLID = 1<<3,
178 STATION_INFO_PLID = 1<<4, 181 STATION_INFO_PLID = 1<<4,
179 STATION_INFO_PLINK_STATE = 1<<5, 182 STATION_INFO_PLINK_STATE = 1<<5,
183 STATION_INFO_SIGNAL = 1<<6,
184 STATION_INFO_TX_BITRATE = 1<<7,
185};
186
187/**
188 * enum station_info_rate_flags - bitrate info flags
189 *
190 * Used by the driver to indicate the specific rate transmission
191 * type for 802.11n transmissions.
192 *
193 * @RATE_INFO_FLAGS_MCS: @tx_bitrate_mcs filled
194 * @RATE_INFO_FLAGS_40_MHZ_WIDTH: 40 Mhz width transmission
195 * @RATE_INFO_FLAGS_SHORT_GI: 400ns guard interval
196 */
197enum rate_info_flags {
198 RATE_INFO_FLAGS_MCS = 1<<0,
199 RATE_INFO_FLAGS_40_MHZ_WIDTH = 1<<1,
200 RATE_INFO_FLAGS_SHORT_GI = 1<<2,
201};
202
203/**
204 * struct rate_info - bitrate information
205 *
206 * Information about a receiving or transmitting bitrate
207 *
208 * @flags: bitflag of flags from &enum rate_info_flags
209 * @mcs: mcs index if struct describes a 802.11n bitrate
210 * @legacy: bitrate in 100kbit/s for 802.11abg
211 */
212struct rate_info {
213 u8 flags;
214 u8 mcs;
215 u16 legacy;
180}; 216};
181 217
182/** 218/**
@@ -191,6 +227,8 @@ enum station_info_flags {
191 * @llid: mesh local link id 227 * @llid: mesh local link id
192 * @plid: mesh peer link id 228 * @plid: mesh peer link id
193 * @plink_state: mesh peer link state 229 * @plink_state: mesh peer link state
230 * @signal: signal strength of last received packet in dBm
231 * @txrate: current unicast bitrate to this station
194 */ 232 */
195struct station_info { 233struct station_info {
196 u32 filled; 234 u32 filled;
@@ -200,6 +238,8 @@ struct station_info {
200 u16 llid; 238 u16 llid;
201 u16 plid; 239 u16 plid;
202 u8 plink_state; 240 u8 plink_state;
241 s8 signal;
242 struct rate_info txrate;
203}; 243};
204 244
205/** 245/**
@@ -523,7 +563,7 @@ struct cfg80211_ops {
523 563
524 int (*set_channel)(struct wiphy *wiphy, 564 int (*set_channel)(struct wiphy *wiphy,
525 struct ieee80211_channel *chan, 565 struct ieee80211_channel *chan,
526 enum nl80211_sec_chan_offset); 566 enum nl80211_channel_type channel_type);
527}; 567};
528 568
529/* temporary wext handlers */ 569/* temporary wext handlers */
diff --git a/include/net/mac80211.h b/include/net/mac80211.h
index 046ce692a906..b3bd00a9d992 100644
--- a/include/net/mac80211.h
+++ b/include/net/mac80211.h
@@ -165,14 +165,9 @@ enum ieee80211_bss_change {
165 165
166/** 166/**
167 * struct ieee80211_bss_ht_conf - BSS's changing HT configuration 167 * struct ieee80211_bss_ht_conf - BSS's changing HT configuration
168 * @secondary_channel_offset: secondary channel offset, uses
169 * %IEEE80211_HT_PARAM_CHA_SEC_ values
170 * @width_40_ok: indicates that 40 MHz bandwidth may be used for TX
171 * @operation_mode: HT operation mode (like in &struct ieee80211_ht_info) 168 * @operation_mode: HT operation mode (like in &struct ieee80211_ht_info)
172 */ 169 */
173struct ieee80211_bss_ht_conf { 170struct ieee80211_bss_ht_conf {
174 u8 secondary_channel_offset;
175 bool width_40_ok;
176 u16 operation_mode; 171 u16 operation_mode;
177}; 172};
178 173
@@ -441,6 +436,9 @@ ieee80211_tx_info_clear_status(struct ieee80211_tx_info *info)
441 * is valid. This is useful in monitor mode and necessary for beacon frames 436 * is valid. This is useful in monitor mode and necessary for beacon frames
442 * to enable IBSS merging. 437 * to enable IBSS merging.
443 * @RX_FLAG_SHORTPRE: Short preamble was used for this frame 438 * @RX_FLAG_SHORTPRE: Short preamble was used for this frame
439 * @RX_FLAG_HT: HT MCS was used and rate_idx is MCS index
440 * @RX_FLAG_40MHZ: HT40 (40 MHz) was used
441 * @RX_FLAG_SHORT_GI: Short guard interval was used
444 */ 442 */
445enum mac80211_rx_flags { 443enum mac80211_rx_flags {
446 RX_FLAG_MMIC_ERROR = 1<<0, 444 RX_FLAG_MMIC_ERROR = 1<<0,
@@ -451,7 +449,10 @@ enum mac80211_rx_flags {
451 RX_FLAG_FAILED_FCS_CRC = 1<<5, 449 RX_FLAG_FAILED_FCS_CRC = 1<<5,
452 RX_FLAG_FAILED_PLCP_CRC = 1<<6, 450 RX_FLAG_FAILED_PLCP_CRC = 1<<6,
453 RX_FLAG_TSFT = 1<<7, 451 RX_FLAG_TSFT = 1<<7,
454 RX_FLAG_SHORTPRE = 1<<8 452 RX_FLAG_SHORTPRE = 1<<8,
453 RX_FLAG_HT = 1<<9,
454 RX_FLAG_40MHZ = 1<<10,
455 RX_FLAG_SHORT_GI = 1<<11,
455}; 456};
456 457
457/** 458/**
@@ -471,7 +472,8 @@ enum mac80211_rx_flags {
471 * @noise: noise when receiving this frame, in dBm. 472 * @noise: noise when receiving this frame, in dBm.
472 * @qual: overall signal quality indication, in percent (0-100). 473 * @qual: overall signal quality indication, in percent (0-100).
473 * @antenna: antenna used 474 * @antenna: antenna used
474 * @rate_idx: index of data rate into band's supported rates 475 * @rate_idx: index of data rate into band's supported rates or MCS index if
476 * HT rates are use (RX_FLAG_HT)
475 * @flag: %RX_FLAG_* 477 * @flag: %RX_FLAG_*
476 */ 478 */
477struct ieee80211_rx_status { 479struct ieee80211_rx_status {
@@ -508,9 +510,7 @@ static inline int __deprecated __IEEE80211_CONF_SHORT_SLOT_TIME(void)
508 510
509struct ieee80211_ht_conf { 511struct ieee80211_ht_conf {
510 bool enabled; 512 bool enabled;
511 int sec_chan_offset; /* 0 = HT40 disabled; -1 = HT40 enabled, secondary 513 enum nl80211_channel_type channel_type;
512 * channel below primary; 1 = HT40 enabled,
513 * secondary channel above primary */
514}; 514};
515 515
516/** 516/**
@@ -854,6 +854,11 @@ enum ieee80211_tkip_key_type {
854 * 854 *
855 * @IEEE80211_HW_AMPDU_AGGREGATION: 855 * @IEEE80211_HW_AMPDU_AGGREGATION:
856 * Hardware supports 11n A-MPDU aggregation. 856 * Hardware supports 11n A-MPDU aggregation.
857 *
858 * @IEEE80211_HW_NO_STACK_DYNAMIC_PS:
859 * Hardware which has dynamic power save support, meaning
860 * that power save is enabled in idle periods, and don't need support
861 * from stack.
857 */ 862 */
858enum ieee80211_hw_flags { 863enum ieee80211_hw_flags {
859 IEEE80211_HW_RX_INCLUDES_FCS = 1<<1, 864 IEEE80211_HW_RX_INCLUDES_FCS = 1<<1,
@@ -866,6 +871,7 @@ enum ieee80211_hw_flags {
866 IEEE80211_HW_NOISE_DBM = 1<<8, 871 IEEE80211_HW_NOISE_DBM = 1<<8,
867 IEEE80211_HW_SPECTRUM_MGMT = 1<<9, 872 IEEE80211_HW_SPECTRUM_MGMT = 1<<9,
868 IEEE80211_HW_AMPDU_AGGREGATION = 1<<10, 873 IEEE80211_HW_AMPDU_AGGREGATION = 1<<10,
874 IEEE80211_HW_NO_STACK_DYNAMIC_PS = 1<<11,
869}; 875};
870 876
871/** 877/**