summaryrefslogtreecommitdiffstats
path: root/sys/net80211/_ieee80211.h
diff options
context:
space:
mode:
authorsam <sam@FreeBSD.org>2006-12-27 18:46:18 +0000
committersam <sam@FreeBSD.org>2006-12-27 18:46:18 +0000
commit4442f89b49a898383c874def50a11aab97b03845 (patch)
tree8bd925a7f6c33cd28325df02b1a6153b8b091d2d /sys/net80211/_ieee80211.h
parent03269f3b4c923667476d52b5c6c3711ae678d017 (diff)
downloadFreeBSD-src-4442f89b49a898383c874def50a11aab97b03845.zip
FreeBSD-src-4442f89b49a898383c874def50a11aab97b03845.tar.gz
First cut at half/quarter-rate 11a channel support (e.g. for use
in the Public Safety Band): o add channel flags to identify half/quarter-rate operation o add rate sets (need to check spec on 4Mb/s in 1/4 rate) o add if_media definitions for new rates o split net80211 channel setup out into ieee80211_chan_init o fixup ieee80211_mhz2ieee and ieee80211_ieee2mhz to understand half/quarter rate channels: note we temporarily use a nonstandard/hack numbering that avoids overlap with 2.4G channels because we don't (yet) have enough state to identify and/or map overlapping channel sets o fixup ieee80211_ifmedia_init so it can be called post attach and will recalculate the channel list and associated state; this enables changing channel-related state like the regulatory domain after attach (will be needed for 802.11d support too) o add ieee80211_get_suprates to return a reference to the supported rate set for a given channel o add 3, 4.5, and 27 MB/s tx rates to rate <-> media conversion routines o const-poison channel arg to ieee80211_chan2mode
Diffstat (limited to 'sys/net80211/_ieee80211.h')
-rw-r--r--sys/net80211/_ieee80211.h6
1 files changed, 6 insertions, 0 deletions
diff --git a/sys/net80211/_ieee80211.h b/sys/net80211/_ieee80211.h
index 0872c5d..4eb522c 100644
--- a/sys/net80211/_ieee80211.h
+++ b/sys/net80211/_ieee80211.h
@@ -123,6 +123,8 @@ struct ieee80211_channel {
#define IEEE80211_CHAN_PASSIVE 0x0200 /* Only passive scan allowed */
#define IEEE80211_CHAN_DYN 0x0400 /* Dynamic CCK-OFDM channel */
#define IEEE80211_CHAN_GFSK 0x0800 /* GFSK channel (FHSS PHY) */
+#define IEEE80211_CHAN_HALF 0x4000 /* Half rate channel */
+#define IEEE80211_CHAN_QUARTER 0x8000 /* Quarter rate channel */
/*
* Useful combinations of channel characteristics.
@@ -175,6 +177,10 @@ struct ieee80211_channel {
(((_c)->ic_flags & IEEE80211_CHAN_CCK) != 0)
#define IEEE80211_IS_CHAN_GFSK(_c) \
(((_c)->ic_flags & IEEE80211_CHAN_GFSK) != 0)
+#define IEEE80211_IS_CHAN_HALF(_c) \
+ (((_c)->ic_flags & IEEE80211_CHAN_HALF) != 0)
+#define IEEE80211_IS_CHAN_QUARTER(_c) \
+ (((_c)->ic_flags & IEEE80211_CHAN_QUARTER) != 0)
/* ni_chan encoding for FH phy */
#define IEEE80211_FH_CHANMOD 80
OpenPOWER on IntegriCloud