linux/drivers
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>
History 2008-10-31 19:00:16 -04:00
..
accessibility braille_console: only register notifiers when the braille console is used 2008-10-02 15:53:13 -07:00
acpi ACPI suspend: build fix for ACPI_SLEEP=n && XEN_SAVE_RESTORE=y. 2008-10-25 04:07:13 -04:00
amba Driver core: change add_uevent_var to use a struct 2007-10-12 14:51:01 -07:00
ata Merge branch 'upstream-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jgarzik/libata-dev 2008-10-28 09:42:48 -07:00
atm Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/torvalds/linux-2.6 2008-10-11 12:39:35 -07:00
auxdisplay auxdisplay: small cleanups 2008-07-24 10:47:41 -07:00
base sysfs: Fix return values for sysdev_store_{ulong,int} 2008-10-29 15:03:49 -07:00
block fs: remove prepare_write/commit_write 2008-10-30 11:38:45 -07:00
bluetooth Merge git://git.kernel.org/pub/scm/linux/kernel/git/brodo/pcmcia-2.6 2008-10-30 12:52:53 -07:00
cdrom [PATCH] switch viocd 2008-10-21 07:48:21 -04:00
char Merge branch 'upstream' of git://ftp.linux-mips.org/pub/scm/upstream-linus 2008-10-30 12:53:33 -07:00
clocksource Merge branches 'timers/clocksource', 'timers/hrtimers', 'timers/nohz', 'timers/ntp', 'timers/posixtimers' and 'timers/debug' into v28-timers-for-linus 2008-10-20 13:14:06 +02:00
connector CONNECTOR: add a proc entry to list connectors 2008-06-27 20:03:24 -07:00
cpufreq [CPUFREQ] Fix BUG: using smp_processor_id() in preemptible code 2008-10-09 13:52:44 -04:00
cpuidle Merge branch 'v28-range-hrtimers-for-linus-v2' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip 2008-10-23 10:53:02 -07:00
crypto crypto: talitos - Avoid consecutive packets going out with same IV 2008-09-14 13:41:19 -07:00
dca device create: misc: convert device_create_drvdata to device_create 2008-10-16 09:24:43 -07:00
dio dio: use dio_match_device() in dio_bus_match() 2008-07-20 17:24:40 -07:00
dma Merge branch 'i7300_idle' into release 2008-10-25 04:07:44 -04:00
edac edac: fix enabling of polling cell module 2008-10-30 11:38:46 -07:00
eisa driver core: remove DEVICE_NAME_SIZE define 2008-07-21 21:54:53 -07:00
firewire firewire: fw-sbp2: fix races 2008-10-26 10:27:01 +01:00
firmware drivers: replace NIPQUAD() 2008-10-31 00:56:00 -07:00
gpio mfd: twl4030-gpio driver 2008-10-22 01:19:39 +02:00
gpu Merge branch 'drm-next' of git://git.kernel.org/pub/scm/linux/kernel/git/airlied/drm-2.6 2008-10-23 10:18:40 -07:00
hid HID: add quirk entry for no-name keyboard (0x13ba/0x0017) 2008-10-30 01:06:13 +01:00
hwmon hwmon: (abituguru3) enable DMI probing feature on AW9D-MAX 2008-10-26 17:04:40 +01:00
i2c i2c-s3c2410: Correct use of ! and & 2008-10-30 15:55:47 +01:00
ide arm ide breakage 2008-10-26 09:35:05 -07:00
idle i7300_idle: Cleanup based review comments 2008-10-24 12:55:14 -04:00
ieee1394 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/ieee1394/linux1394-2.6 2008-10-16 15:02:24 -07:00
infiniband drivers: replace NIPQUAD() 2008-10-31 00:56:00 -07:00
input INPUT: sgi_btns: Add license specification 2008-10-27 16:18:28 +00:00
isdn net: easy removals of HIPQUAD using %pI4 format 2008-10-29 22:43:33 -07:00
leds leds: da903x: (da9030 only) led brightness reversed. 2008-10-30 22:14:10 +08:00
lguest lguest: update commentry 2008-08-26 00:19:28 +10:00
macintosh device create: misc: convert device_create_drvdata to device_create 2008-10-16 09:24:43 -07:00
mca driver core: remove DEVICE_NAME_SIZE define 2008-07-21 21:54:53 -07:00
md Merge branch 'for-linus' of git://neil.brown.name/md 2008-10-30 18:36:16 -07:00
media net: convert more to %pM 2008-10-27 17:47:26 -07:00
memstick [PATCH] switch memstick 2008-10-21 07:48:33 -04:00
message Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6 2008-10-31 00:17:34 -07:00
mfd mfd: Make WM8400 depend on I2C until SPI is submitted 2008-10-24 18:34:39 +02:00
misc sgi-xp: only build for ia64-sn2 when CONFIG_IA64_GENERIC specified 2008-10-30 11:38:46 -07:00
mmc [ARM] 5322/1: Fix fastpath issue in mmci.c 2008-10-28 00:00:42 +00:00
mtd [PATCH] propagate mode through open_bdev_excl/close_bdev_excl 2008-10-21 07:49:00 -04:00
net mac80211: rewrite HT handling 2008-10-31 19:00:16 -04:00
nubus nubus: fix mis-indented statement 2008-10-16 11:21:30 -07:00
of Merge commit 'kumar/kumar-for-2.6.28' 2008-10-21 15:49:55 +11:00
oprofile Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/rric/oprofile 2008-10-23 10:05:40 -07:00
parisc [PATCH] introduce fmode_t, do annotations 2008-10-21 07:47:06 -04:00
parport Merge git://git.kernel.org/pub/scm/linux/kernel/git/brodo/pcmcia-2.6 2008-10-30 12:52:53 -07:00
pci Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jbarnes/pci-2.6 2008-10-30 12:09:44 -07:00
pcmcia Merge git://git.kernel.org/pub/scm/linux/kernel/git/brodo/pcmcia-2.6 2008-10-30 12:52:53 -07:00
pnp Merge branch 'linus' into test 2008-10-23 00:11:07 -04:00
power Merge git://git.infradead.org/battery-2.6 2008-10-20 09:44:30 -07:00
ps3 ps3: Add passthru support for non-audio streams 2008-10-20 08:05:15 +02:00
rapidio rapidio: fix device reference counting 2008-07-10 18:04:43 -07:00
regulator regulator: da903x regulator bug fix 2008-10-30 15:31:35 +00:00
rtc rtc S3C: add device_init_wakeup() invokation 2008-10-30 11:38:47 -07:00
s390 Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6 2008-10-31 00:17:34 -07:00
sbus sparc: Kill sbus mostek RTC driver. 2008-09-03 15:55:32 -07:00
scsi drivers: replace NIPQUAD() 2008-10-31 00:56:00 -07:00
serial [ARM] build fixes for netX serial driver 2008-10-30 09:41:59 +01:00
sh sh: Move the shared INTC code out to drivers/sh/ 2008-10-01 16:13:54 +09:00
sn ioc3.c: replace remaining __FUNCTION__ occurrences 2008-03-17 08:11:48 -04:00
spi Merge git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core-2.6 2008-10-16 12:40:26 -07:00
ssb Merge git://git.kernel.org/pub/scm/linux/kernel/git/brodo/pcmcia-2.6 2008-10-13 14:12:40 -07:00
staging staging: pcc_acpi: delete obsolete driver 2008-10-23 15:31:09 -04:00
tc lk201: remove obsolete driver 2007-10-17 08:42:57 -07:00
telephony phonedev: remove BKL 2008-10-20 08:52:36 -07:00
thermal thermal: Create CONFIG_THERMAL_HWMON=n 2008-06-25 19:25:42 -04:00
uio Merge branch 'bkl-removal' of git://git.lwn.net/linux-2.6 2008-10-20 13:42:14 -07:00
usb Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6 2008-10-31 00:17:34 -07:00
uwb uwb: use the %pM formatting specifier in eda.c 2008-10-28 23:02:37 -07:00
video Merge master.kernel.org:/home/rmk/linux-2.6-arm 2008-10-30 16:16:39 -07:00
virtio virtio_balloon: fix towards_target when deflating balloon 2008-08-26 00:19:25 +10:00
w1 x86: sysfs: kill owner field from attribute 2008-10-20 08:52:42 -07:00
watchdog [PATCH] Switch all my contributions stuff to a single common address 2008-10-28 19:16:11 +00:00
xen xen: compilation fix of drivers/xen/events.c on IA64 2008-10-23 21:54:37 +02:00
zorro move memory_read_from_buffer() from fs.h to string.h 2008-07-24 10:47:13 -07:00
Kconfig regulator: Build on non-ARM platforms 2008-10-28 21:47:17 +00:00
Makefile Merge branch 'for-upstream' of git://git.kernel.org/pub/scm/linux/kernel/git/dvrabel/uwb 2008-10-26 16:35:46 -07:00