freebsd-dev/sys/net80211
Adrian Chadd 5140f9e6ae Fix AMRR to correctly select the initial rate.
There were two bugs:

* If the initial lowest rate didn't go through the loop at least once,
  the AMRR rate index would be the highest rate in the table
  (eg the rix mapping to MCS15) but rate would stay at the default
  value, namely 0.

  This meant that the initial rate selection would be MCS15 _but_ the
  node ni_txrate value would be MCS0.

* If the node is 11n, then break out of the loop correctly.  Beforehand,
  my initial 11n AMRR commit would immediately exit out as it would
  fail the 11n check, then it would always fall through to the non-11n
  rate which would then see if it was < 36mbit (ie, "72"), which would
  always match.  Hence, it'd always return MCS15.

Tested:

* Intel Centrino 2230 STA (local changes), STA mode
* Intel Wifi 5100, STA
2013-11-09 07:30:13 +00:00
..
_ieee80211.h Add a check for dynamic OFDM/CCK channel types. 2012-07-01 04:25:49 +00:00
ieee80211_acl.c Remove now redundant mac argument. 2011-12-17 10:32:31 +00:00
ieee80211_action.c The r48589 promised to remove implicit inclusion of if_var.h soon. Prepare 2013-10-26 17:58:36 +00:00
ieee80211_action.h
ieee80211_adhoc.c The r48589 promised to remove implicit inclusion of if_var.h soon. Prepare 2013-10-26 17:58:36 +00:00
ieee80211_adhoc.h
ieee80211_ageq.c The r48589 promised to remove implicit inclusion of if_var.h soon. Prepare 2013-10-26 17:58:36 +00:00
ieee80211_ageq.h
ieee80211_alq.c - Provide necessary includes, that before came via if.h pollution. 2013-10-28 22:26:03 +00:00
ieee80211_alq.h .. revert out a local change that I hadn't yet completely finished fleshing 2012-03-18 21:54:59 +00:00
ieee80211_amrr.c Fix AMRR to correctly select the initial rate. 2013-11-09 07:30:13 +00:00
ieee80211_amrr.h
ieee80211_crypto_ccmp.c - Introduce IEEE80211_KEY_NOREPLAY, a per-key flag to ignore replay 2010-07-01 20:50:12 +00:00
ieee80211_crypto_none.c
ieee80211_crypto_tkip.c - Introduce IEEE80211_KEY_NOREPLAY, a per-key flag to ignore replay 2010-07-01 20:50:12 +00:00
ieee80211_crypto_wep.c
ieee80211_crypto.c
ieee80211_crypto.h - Introduce IEEE80211_KEY_NOREPLAY, a per-key flag to ignore replay 2010-07-01 20:50:12 +00:00
ieee80211_ddb.c The r48589 promised to remove implicit inclusion of if_var.h soon. Prepare 2013-10-26 17:58:36 +00:00
ieee80211_dfs.c Include necessary headers that now are available due to pollution 2013-10-28 07:29:16 +00:00
ieee80211_dfs.h Add a DFS debugging mode which is useful when doing automated DFS 2012-01-31 00:03:49 +00:00
ieee80211_freebsd.c The r48589 promised to remove implicit inclusion of if_var.h soon. Prepare 2013-10-26 17:58:36 +00:00
ieee80211_freebsd.h Add in some backwards compatability hacks to make -HEAD net80211 compile 2013-08-22 05:53:47 +00:00
ieee80211_hostap.c The r48589 promised to remove implicit inclusion of if_var.h soon. Prepare 2013-10-26 17:58:36 +00:00
ieee80211_hostap.h Migrate the power-save functions to be overridable VAP methods. 2012-10-02 17:45:19 +00:00
ieee80211_ht.c The r48589 promised to remove implicit inclusion of if_var.h soon. Prepare 2013-10-26 17:58:36 +00:00
ieee80211_ht.h Migrate the net80211 TX aggregation state to be from per-AC to per-TID. 2012-04-15 20:29:39 +00:00
ieee80211_hwmp.c Convert net80211 over to using if_transmit for the dispatch from the 2013-08-08 05:09:35 +00:00
ieee80211_input.c The r48589 promised to remove implicit inclusion of if_var.h soon. Prepare 2013-10-26 17:58:36 +00:00
ieee80211_input.h Fix some corner cases in the net80211 sequence number retransmission 2011-05-04 02:23:59 +00:00
ieee80211_ioctl.c The r48589 promised to remove implicit inclusion of if_var.h soon. Prepare 2013-10-26 17:58:36 +00:00
ieee80211_ioctl.h Update net80211 mesh struct ieee80211_meshgann_ie. 2013-02-07 21:20:28 +00:00
ieee80211_mesh.c The r48589 promised to remove implicit inclusion of if_var.h soon. Prepare 2013-10-26 17:58:36 +00:00
ieee80211_mesh.h HWMP: ic->raw_xmit didn't always point to correct ni. 2013-02-07 21:26:40 +00:00
ieee80211_monitor.c The r48589 promised to remove implicit inclusion of if_var.h soon. Prepare 2013-10-26 17:58:36 +00:00
ieee80211_monitor.h
ieee80211_node.c The r48589 promised to remove implicit inclusion of if_var.h soon. Prepare 2013-10-26 17:58:36 +00:00
ieee80211_node.h Stop a mesh STA from flooding with peer frames. 2013-02-07 21:12:55 +00:00
ieee80211_output.c Don't return ENOBUFS if the transmit path handles the frame but queues it (eg in power save.) 2013-11-06 17:20:49 +00:00
ieee80211_phy.c Provide includes that are needed in these files, and before were read 2013-10-26 18:18:50 +00:00
ieee80211_phy.h Implement basic 802.11n awareness in the PHY and AMRR rate control code. 2013-07-04 21:16:49 +00:00
ieee80211_power.c The r48589 promised to remove implicit inclusion of if_var.h soon. Prepare 2013-10-26 17:58:36 +00:00
ieee80211_power.h Migrate the power-save functions to be overridable VAP methods. 2012-10-02 17:45:19 +00:00
ieee80211_proto.c The r48589 promised to remove implicit inclusion of if_var.h soon. Prepare 2013-10-26 17:58:36 +00:00
ieee80211_proto.h Fix a use-after-free node reference issue when waiting for a return 2013-10-24 17:04:16 +00:00
ieee80211_radiotap.c Include necessary headers that now are available due to pollution 2013-10-28 07:29:16 +00:00
ieee80211_radiotap.h Add in the missing radiotap definitions from the sipsolutions.net 2013-01-08 06:59:21 +00:00
ieee80211_ratectl_none.c Provide includes that are needed in these files, and before were read 2013-10-26 18:18:50 +00:00
ieee80211_ratectl.c Provide includes that are needed in these files, and before were read 2013-10-26 18:18:50 +00:00
ieee80211_ratectl.h The ni_rctls checks are used to verify that a ratectl algo has set up 2010-11-14 09:59:52 +00:00
ieee80211_regdomain.c Include necessary headers that now are available due to pollution 2013-10-28 07:29:16 +00:00
ieee80211_regdomain.h Add a new 900MHz GSM regulatory SKU for the Xagyl Communications XC900M. 2012-12-07 06:34:46 +00:00
ieee80211_rssadapt.c Include necessary headers that now are available due to pollution 2013-10-28 07:29:16 +00:00
ieee80211_rssadapt.h
ieee80211_scan_sta.c The r48589 promised to remove implicit inclusion of if_var.h soon. Prepare 2013-10-26 17:58:36 +00:00
ieee80211_scan.c The r48589 promised to remove implicit inclusion of if_var.h soon. Prepare 2013-10-26 17:58:36 +00:00
ieee80211_scan.h Add 802.11h quiet time element support into net80211. 2011-11-08 04:00:24 +00:00
ieee80211_sta.c Handle ath-specific and WME IE's in adhoc mode. 2012-12-09 22:56:29 +00:00
ieee80211_sta.h Handle ath-specific and WME IE's in adhoc mode. 2012-12-09 22:56:29 +00:00
ieee80211_superg.c - Provide necessary includes, that before came via if.h pollution. 2013-10-28 22:26:03 +00:00
ieee80211_superg.h Atheros SuperG bug fixes, as part of hunting down kern/174283. 2012-12-09 19:20:28 +00:00
ieee80211_tdma.c Don't return ENOTSUPP here - the net80211 pluggable ioctl API will treat 2013-08-18 23:40:30 +00:00
ieee80211_tdma.h
ieee80211_var.h Allow net80211 to compile on stable/9 and stable/8. 2013-08-07 22:01:43 +00:00
ieee80211_wds.c The r48589 promised to remove implicit inclusion of if_var.h soon. Prepare 2013-10-26 17:58:36 +00:00
ieee80211_wds.h
ieee80211_xauth.c
ieee80211.c The r48589 promised to remove implicit inclusion of if_var.h soon. Prepare 2013-10-26 17:58:36 +00:00
ieee80211.h Add ieee80211_add_{qos,wpa,rsn}() functions since they are needed by an 2013-07-25 06:23:26 +00:00