aboutsummaryrefslogtreecommitdiffstats
path: root/package/madwifi/patches
diff options
context:
space:
mode:
authorFelix Fietkau <nbd@openwrt.org>2009-04-07 16:13:25 +0000
committerFelix Fietkau <nbd@openwrt.org>2009-04-07 16:13:25 +0000
commit7e66326c068c9f08ffe276c3b407f5ed82ee234a (patch)
tree75efa5fa44100377983940a0655c1fd5d4c64bef /package/madwifi/patches
parentc0e3ae80b5fa2d355d29c02300e5046dbeac5882 (diff)
downloadupstream-7e66326c068c9f08ffe276c3b407f5ed82ee234a.tar.gz
upstream-7e66326c068c9f08ffe276c3b407f5ed82ee234a.tar.bz2
upstream-7e66326c068c9f08ffe276c3b407f5ed82ee234a.zip
madwifi: remove braindead code that overwrote the user's antenna diversity setting (thx, brainslayer)
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@15141 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'package/madwifi/patches')
-rw-r--r--package/madwifi/patches/420-diversity_fix.patch30
1 files changed, 30 insertions, 0 deletions
diff --git a/package/madwifi/patches/420-diversity_fix.patch b/package/madwifi/patches/420-diversity_fix.patch
new file mode 100644
index 0000000000..b7d26d976d
--- /dev/null
+++ b/package/madwifi/patches/420-diversity_fix.patch
@@ -0,0 +1,30 @@
+--- a/ath/if_ath.c
++++ b/ath/if_ath.c
+@@ -5344,27 +5344,6 @@ ath_beacon_send(struct ath_softc *sc, in
+ } else if ((sc->sc_updateslot == COMMIT) && (sc->sc_slotupdate == slot))
+ ath_setslottime(sc); /* commit change to hardware */
+
+- if ((!sc->sc_stagbeacons || slot == 0) && (!sc->sc_diversity)) {
+- unsigned int otherant;
+- /*
+- * Check recent per-antenna transmit statistics and flip
+- * the default rx antenna if noticeably more frames went out
+- * on the non-default antenna. Only do this if rx diversity
+- * is off.
+- * XXX assumes 2 antennae
+- */
+- otherant = sc->sc_defant & 1 ? 2 : 1;
+- if (sc->sc_ant_tx[otherant] > sc->sc_ant_tx[sc->sc_defant] +
+- ATH_ANTENNA_DIFF) {
+- DPRINTF(sc, ATH_DEBUG_BEACON,
+- "Flip default antenna to %u, %u > %u\n",
+- otherant, sc->sc_ant_tx[otherant],
+- sc->sc_ant_tx[sc->sc_defant]);
+- ath_setdefantenna(sc, otherant);
+- }
+- sc->sc_ant_tx[1] = sc->sc_ant_tx[2] = 0;
+- }
+-
+ if (bfaddr != 0) {
+ /*
+ * Stop any current DMA and put the new frame(s) on the queue.