OpenCloudOS-Kernel/drivers/net/wireless/iwlwifi
Johannes Berg ae5eb02641 mac80211: rewrite HT handling
The HT handling has the following deficiencies, which I've
(partially) fixed:
 * it always uses the AP info even if there is no AP,
   hence has no chance of working as an AP
 * it pretends to be HW config, but really is per-BSS
 * channel sanity checking is left to the drivers
 * it generally lets the driver control too much

HT enabling is still wrong with this patch if you have more than
one virtual STA mode interface, but that never happens currently.
Once WDS, IBSS or AP/VLAN gets HT capabilities, it will also be
wrong, see the comment in ieee80211_enable_ht().

Additionally, this fixes a number of bugs:
 * mac80211: ieee80211_set_disassoc doesn't notify the driver any
             more since the refactoring
 * iwl-agn-rs: always uses the HT capabilities from the wrong stuff
               mac80211 gives it rather than the actual peer STA
 * ath9k: a number of bugs resulting from the broken HT API

I'm not entirely happy with putting the HT capabilities into
struct ieee80211_sta as restricted to our own HT TX capabilities,
but I see no cleaner solution for now.

Signed-off-by: Johannes Berg <johannes@sipsolutions.net>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
2008-10-31 19:00:16 -04:00
..
Kconfig iwlwifi: rename 4965 to AGN 2008-08-04 15:09:11 -04:00
Makefile iwlwifi: rename 4965 to AGN 2008-08-04 15:09:11 -04:00
iwl-3945-commands.h iwlwifi: iwl3945 remove 4965 commands 2008-03-25 16:41:54 -04:00
iwl-3945-core.h iwlwifi: add struct iwl_cfg 2008-03-07 16:03:00 -05:00
iwl-3945-debug.h wireless: replace __FUNCTION__ with __func__ 2008-08-22 16:29:56 -04:00
iwl-3945-hw.h iwlwifi: 3945 remove unused SCD definitions 2008-05-07 15:02:20 -04:00
iwl-3945-io.h iwlwifi: remove rfkill warning from iwl-io 2008-09-08 14:23:18 -04:00
iwl-3945-led.c wireless: remove unused #include <version.h> 2008-08-29 16:24:08 -04:00
iwl-3945-led.h iwlwifi: Don't use buffer allocated on the stack for led names 2008-08-04 15:09:11 -04:00
iwl-3945-rs.c iwl3945: fix station stuff in RC algorithm 2008-10-31 19:00:14 -04:00
iwl-3945-rs.h mac80211: clean up rate control API 2008-09-24 16:18:03 -04:00
iwl-3945.c net: convert print_mac to %pM 2008-10-27 17:06:18 -07:00
iwl-3945.h mac80211: clean up rate control API 2008-09-24 16:18:03 -04:00
iwl-4965-hw.h iwlwifi: cleanup PCI register handling 2008-09-08 14:23:19 -04:00
iwl-4965.c iwlwifi: fix compile warning 2008-09-11 15:53:31 -04:00
iwl-5000-hw.h iwlwifi: make initial calibration set configurable 2008-10-31 19:00:02 -04:00
iwl-5000.c iwlwifi: take a valid antenna upon rate scale init 2008-10-31 19:00:03 -04:00
iwl-agn-rs.c mac80211: rewrite HT handling 2008-10-31 19:00:16 -04:00
iwl-agn-rs.h iwlwifi: take a valid antenna upon rate scale init 2008-10-31 19:00:03 -04:00
iwl-agn.c mac80211: rewrite HT handling 2008-10-31 19:00:16 -04:00
iwl-calib.c iwlwifi: make initial calibration set configurable 2008-10-31 19:00:02 -04:00
iwl-calib.h iwlwifi: move RX stats to core, and move temperature to handler 2008-06-30 17:37:39 -04:00
iwl-commands.h iwlwifi: refactor rxon time command 2008-10-31 19:00:04 -04:00
iwl-core.c mac80211: rewrite HT handling 2008-10-31 19:00:16 -04:00
iwl-core.h 802.11: clean up/fix HT support 2008-10-31 19:00:06 -04:00
iwl-csr.h iwlwifi: refactor rx register initialization 2008-09-30 14:07:22 -04:00
iwl-debug.h iwlwifi: add level for debugging host command 2008-08-22 16:29:51 -04:00
iwl-debugfs.c net: convert print_mac to %pM 2008-10-27 17:06:18 -07:00
iwl-dev.h mac80211: rewrite HT handling 2008-10-31 19:00:16 -04:00
iwl-eeprom.c removed unused #include <version.h> 2008-08-18 11:05:15 -04:00
iwl-eeprom.h iwlwifi-5000: implement initial calibration for 5000 2008-06-03 15:00:23 -04:00
iwl-fh.h iwlwifi: refactor rx register initialization 2008-09-30 14:07:22 -04:00
iwl-hcmd.c iwlwifi: add level for debugging host command 2008-08-22 16:29:51 -04:00
iwl-helpers.h mac80211: add helpers for frame control testing 2008-06-14 12:18:12 -04:00
iwl-io.h iwlwifi: remove rfkill warning from iwl-io 2008-09-08 14:23:18 -04:00
iwl-led.c wireless: remove unused #include <version.h> 2008-08-29 16:24:08 -04:00
iwl-led.h iwlwifi: Don't use buffer allocated on the stack for led names 2008-08-04 15:09:11 -04:00
iwl-power.c mac80211: use nl80211 interface types 2008-09-15 16:48:23 -04:00
iwl-power.h iwlwifi: remove uneeded declarations 2008-09-11 15:53:31 -04:00
iwl-prph.h iwlwifi: HW bug fixes 2008-08-04 15:09:12 -04:00
iwl-rfkill.c wireless: remove unused #include <version.h> 2008-08-29 16:24:08 -04:00
iwl-rfkill.h iwlwifi: remove input device and fix rfkill state 2008-07-08 10:21:35 -04:00
iwl-rx.c iwlwifi: refactor rx register initialization 2008-09-30 14:07:22 -04:00
iwl-scan.c 802.11: clean up/fix HT support 2008-10-31 19:00:06 -04:00
iwl-spectrum.h iwlwifi: update copyright year 2008-03-13 19:32:32 -04:00
iwl-sta.c mac80211: rewrite HT handling 2008-10-31 19:00:16 -04:00
iwl-sta.h iwlwifi: better station table maintenance 2008-06-30 17:37:38 -04:00
iwl-tx.c net: convert print_mac to %pM 2008-10-27 17:06:18 -07:00
iwl3945-base.c mac80211: introduce hw config change flags 2008-10-31 19:00:07 -04:00