summaryrefslogtreecommitdiffstats
path: root/sys/net80211/ieee80211_tdma.c
diff options
context:
space:
mode:
authorsam <sam@FreeBSD.org>2009-02-19 05:21:54 +0000
committersam <sam@FreeBSD.org>2009-02-19 05:21:54 +0000
commitac3671600d3f9dfcb9dec1c308b4273cfb9422e8 (patch)
tree8c26850231f8a1c174df4857a224272370e028d2 /sys/net80211/ieee80211_tdma.c
parentc56d117735c50a60c1061bf389db81f0cbd8ed8b (diff)
downloadFreeBSD-src-ac3671600d3f9dfcb9dec1c308b4273cfb9422e8.zip
FreeBSD-src-ac3671600d3f9dfcb9dec1c308b4273cfb9422e8.tar.gz
Add modes for 1/2 and 1/4-width channels so we have separate roaming
and xmit parameters. This makes it possible to use tdma on fractional channels. o add IEEE80211_MODE_HALF and IEEE80211_MODE_QUARTER; note these are band-agnostic (may need revisiting) o setup all default rates in ic_sup_rates instead of doing it only for active modes; we need these to calculate the default tx parameters which are not recalculated after a regulatory update (can't just recalculate after installing a new channel list because we might clobber user settings) o remove special case code in ieee80211_get_suprates; this is now a candidate for an inline or removal o add various entries for new modes (roaming+tx params, wme, rate mapping, scan set setup, country ie construction, tdma, basic rates) Note these modes are intentionally not visible through if_media.
Diffstat (limited to 'sys/net80211/ieee80211_tdma.c')
-rw-r--r--sys/net80211/ieee80211_tdma.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/sys/net80211/ieee80211_tdma.c b/sys/net80211/ieee80211_tdma.c
index e3796e2..be9de26 100644
--- a/sys/net80211/ieee80211_tdma.c
+++ b/sys/net80211/ieee80211_tdma.c
@@ -82,6 +82,12 @@ __FBSDID("$FreeBSD$");
#ifndef TDMA_TXRATE_STURBO_A_DEFAULT
#define TDMA_TXRATE_STURBO_A_DEFAULT 2*24
#endif
+#ifndef TDMA_TXRATE_HALF_DEFAULT
+#define TDMA_TXRATE_HALF_DEFAULT 2*12
+#endif
+#ifndef TDMA_TXRATE_QUARTER_DEFAULT
+#define TDMA_TXRATE_QUARTER_DEFAULT 2*6
+#endif
#ifndef TDMA_TXRATE_11NA_DEFAULT
#define TDMA_TXRATE_11NA_DEFAULT (4 | IEEE80211_RATE_MCS)
#endif
@@ -148,6 +154,8 @@ ieee80211_tdma_vattach(struct ieee80211vap *vap)
settxparms(vap, IEEE80211_MODE_STURBO_A, TDMA_TXRATE_STURBO_A_DEFAULT);
settxparms(vap, IEEE80211_MODE_11NA, TDMA_TXRATE_11NA_DEFAULT);
settxparms(vap, IEEE80211_MODE_11NG, TDMA_TXRATE_11NG_DEFAULT);
+ settxparms(vap, IEEE80211_MODE_HALF, TDMA_TXRATE_HALF_DEFAULT);
+ settxparms(vap, IEEE80211_MODE_QUARTER, TDMA_TXRATE_QUARTER_DEFAULT);
setackpolicy(vap->iv_ic, 1); /* disable ACK's */
OpenPOWER on IntegriCloud