mirror of
git://projects.qi-hardware.com/openwrt-xburst.git
synced 2024-12-25 11:02:26 +02:00
mac80211: add ldpc and stbc support to minstrel_ht
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@20975 3c298f89-4303-0410-b956-a3cf2f4a3e73
This commit is contained in:
parent
639151d788
commit
accf7948da
@ -68,7 +68,7 @@
|
|||||||
|
|
||||||
--- /dev/null
|
--- /dev/null
|
||||||
+++ b/net/mac80211/rc80211_minstrel_ht.c
|
+++ b/net/mac80211/rc80211_minstrel_ht.c
|
||||||
@@ -0,0 +1,815 @@
|
@@ -0,0 +1,822 @@
|
||||||
+/*
|
+/*
|
||||||
+ * Copyright (C) 2010 Felix Fietkau <nbd@openwrt.org>
|
+ * Copyright (C) 2010 Felix Fietkau <nbd@openwrt.org>
|
||||||
+ *
|
+ *
|
||||||
@ -660,6 +660,7 @@
|
|||||||
+ if (!msp->is_ht)
|
+ if (!msp->is_ht)
|
||||||
+ return mac80211_minstrel.get_rate(priv, sta, &msp->legacy, txrc);
|
+ return mac80211_minstrel.get_rate(priv, sta, &msp->legacy, txrc);
|
||||||
+
|
+
|
||||||
|
+ info->flags |= mi->tx_flags;
|
||||||
+ sample_idx = minstrel_get_sample_rate(mp, mi);
|
+ sample_idx = minstrel_get_sample_rate(mp, mi);
|
||||||
+ if (sample_idx >= 0) {
|
+ if (sample_idx >= 0) {
|
||||||
+ minstrel_ht_set_rate(mp, mi, &ar[0], sample_idx,
|
+ minstrel_ht_set_rate(mp, mi, &ar[0], sample_idx,
|
||||||
@ -733,6 +734,12 @@
|
|||||||
+ }
|
+ }
|
||||||
+ mi->sample_tries = 4;
|
+ mi->sample_tries = 4;
|
||||||
+
|
+
|
||||||
|
+ if (sta_cap & IEEE80211_HT_CAP_TX_STBC)
|
||||||
|
+ mi->tx_flags |= IEEE80211_TX_CTL_STBC;
|
||||||
|
+
|
||||||
|
+ if (sta_cap & IEEE80211_HT_CAP_LDPC_CODING)
|
||||||
|
+ mi->tx_flags |= IEEE80211_TX_CTL_LDPC;
|
||||||
|
+
|
||||||
+ if (oper_chan_type != NL80211_CHAN_HT40MINUS &&
|
+ if (oper_chan_type != NL80211_CHAN_HT40MINUS &&
|
||||||
+ oper_chan_type != NL80211_CHAN_HT40PLUS)
|
+ oper_chan_type != NL80211_CHAN_HT40PLUS)
|
||||||
+ sta_cap &= ~IEEE80211_HT_CAP_SUP_WIDTH_20_40;
|
+ sta_cap &= ~IEEE80211_HT_CAP_SUP_WIDTH_20_40;
|
||||||
@ -886,7 +893,7 @@
|
|||||||
+}
|
+}
|
||||||
--- /dev/null
|
--- /dev/null
|
||||||
+++ b/net/mac80211/rc80211_minstrel_ht.h
|
+++ b/net/mac80211/rc80211_minstrel_ht.h
|
||||||
@@ -0,0 +1,125 @@
|
@@ -0,0 +1,128 @@
|
||||||
+/*
|
+/*
|
||||||
+ * Copyright (C) 2010 Felix Fietkau <nbd@openwrt.org>
|
+ * Copyright (C) 2010 Felix Fietkau <nbd@openwrt.org>
|
||||||
+ *
|
+ *
|
||||||
@ -983,6 +990,9 @@
|
|||||||
+ unsigned int total_packets;
|
+ unsigned int total_packets;
|
||||||
+ unsigned int sample_packets;
|
+ unsigned int sample_packets;
|
||||||
+
|
+
|
||||||
|
+ /* tx flags to add for frames for this sta */
|
||||||
|
+ u32 tx_flags;
|
||||||
|
+
|
||||||
+ u8 sample_wait;
|
+ u8 sample_wait;
|
||||||
+ u8 sample_tries;
|
+ u8 sample_tries;
|
||||||
+ u8 sample_count;
|
+ u8 sample_count;
|
||||||
|
Loading…
Reference in New Issue
Block a user