Generated by using: git://git.kernel.org/pub/scm/linux/kernel/git/hpa/linux-2.6-allstable.git git log v2.6.29..v2.6.30 \ net/wireless/ \ net/mac80211/ \ drivers/net/wireless/ \ include/linux/nl80211.h \ include/net/cfg80211.h \ include/net/regulatory.h > ChangeLog-2.6.30-wireless commit aeeab4ff06b8e29cfe2fe730ba626f7e2487ba03 Author: John W. Linville Date: Wed May 27 09:21:57 2009 +0200 rtl8187: add USB ID for Linksys WUSB54GC-EU v2 USB wifi dongle http://bugzilla.kernel.org/show_bug.cgi?id=13383 Reported-by: Przemyslaw Kulczycki Signed-off-by: John W. Linville commit 21a4cc00e8e67edcfc1bdb9af6d370ed1226eb86 Author: John W. Linville Date: Thu May 28 11:39:02 2009 +0200 at76c50x-usb: avoid mutex deadlock in at76_dwork_hw_scan http://bugzilla.kernel.org/show_bug.cgi?id=13312 at76_dwork_hw_scan holds a mutex while calling ieee80211_scan_completed, which then calls at76_config which needs the same mutex. This reworks the ordering to not hold the lock while calling ieee80211_scan_completed. Signed-off-by: John W. Linville commit a6c67339784db5763d6f20ae1881aeebe8c5a9f4 Author: Roel Kluin Date: Wed May 20 02:12:56 2009 +0200 wireless: beyond ARRAY_SIZE of intf->crypto_stats Do not go beyond ARRAY_SIZE of intf->crypto_stats Signed-off-by: Roel Kluin Acked-by: Ivo van Doorn Signed-off-by: John W. Linville commit c9d2fbf36df5e04efa226614093bb1bacc6fe131 Author: Jay Sternberg Date: Tue May 19 14:56:36 2009 -0700 iwlwifi: update 5000 ucode support to version 2 of API enable iwl driver to support 5000 ucode having version 2 of API Signed-off-by: Jay Sternberg Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit 5078b2e32ad4b1f753b1c837c15892202f753c97 Author: Luis R. Rodriguez Date: Wed May 13 17:04:42 2009 -0400 cfg80211: fix race between core hint and driver's custom apply Its possible for cfg80211 to have scheduled the work and for the global workqueue to not have kicked in prior to a cfg80211 driver's regulatory hint or wiphy_apply_custom_regulatory(). Although this is very unlikely its possible and should fix this race. When this race would happen you are expected to have hit a null pointer dereference panic. Cc: stable@kernel.org Signed-off-by: Luis R. Rodriguez Tested-by: Alan Jenkins Signed-off-by: John W. Linville commit 267d493b322b05984048aef8ea9b5b213490bbe0 Author: John W. Linville Date: Wed May 20 10:51:41 2009 -0400 airo: fix airo_get_encode{,ext} buffer overflow like I mean it... "airo: airo_get_encode{,ext} potential buffer overflow" was actually a no-op, due to an unrecognized type overflow in an assignment. Oddly, gcc only seems to tell me about it when using -Wextra...grrr... Signed-off-by: John W. Linville commit 875690c378d64d9ee2de15cad8206d3f11ae5096 Author: Fabio Rossi Date: Wed Apr 1 20:37:50 2009 +0200 ath5k: fix interpolation with equal power levels When the EEPROM contains weird values for the power levels we have to fix the interpolation process. Signed-off-by: Fabio Rossi Acked-by: Nick Kossifidis Signed-off-by: John W. Linville commit fbc9f97bbf5e1eaee562eba93dc60faaff3f3bfa Author: Reinette Chatre Date: Fri May 15 16:13:46 2009 -0700 iwlwifi: do not cancel delayed work inside spin_lock_irqsave Calling cancel_delayed_work() from inside spin_lock_irqsave, introduces a potential deadlock. As explained by Johannes Berg A - lock T - timer phase CPU 1 CPU 2 --------------------------------------------- some place that calls cancel_timer_sync() (which is the | code) lock-irq(A) | "lock-irq"(T) | "unlock"(T) | wait(T) unlock(A) timer softirq "lock"(T) run(T) "unlock"(T) irq handler lock(A) unlock(A) Now all that again, interleaved, leading to deadlock: lock-irq(A) "lock"(T) run(T) IRQ during or maybe before run(T) --> lock(A) "lock-irq"(T) wait(T) We fix this by moving the call to cancel_delayed_work() into workqueue. There are cases where the work may not actually be queued or running at the time we are trying to cancel it, but cancel_delayed_work() is able to deal with this. Also cleanup iwl_set_mode related to this call. This function (iwl_set_mode) is only called when bringing interface up and there will thus not be any scanning done. No need to try to cancel scanning. Fixes http://bugzilla.kernel.org/show_bug.cgi?id=13224, which was also reported at http://marc.info/?l=linux-wireless&m=124081921903223&w=2 . Tested-by: Miles Lane Signed-off-by: Reinette Chatre Acked-by: Zhu Yi Signed-off-by: John W. Linville commit a54be5d43aa2d6febc5a4f8dd3b87b9429b60437 Author: Forrest Zhang Date: Wed May 13 11:14:39 2009 -0400 ath5k: fix exp off-by-one when computing OFDM delta slope Commit e8f055f0c3b ("ath5k: Update reset code") subtly changed the code that computes floating point values for the PHY3_TIMING register such that the exponent is off by a decimal point, which can cause problems with OFDM channel operation. get_bitmask_order() actually returns the highest bit set plus one, whereas the previous code wanted the highest bit set. Instead, use ilog2 which is what this code is really calculating. Also check coef_scaled to handle the (invalid) case where we need log2(0). Signed-off-by: Bob Copeland Signed-off-by: John W. Linville commit 88f16db7a2fa63b9242e8a0fbc40d51722f2e2f9 Author: Johannes Berg Date: Wed May 13 12:04:30 2009 +0200 wext: verify buffer size for SIOCSIWENCODEEXT Another design flaw in wireless extensions (is anybody surprised?) in the way it handles the iw_encode_ext structure: The structure is part of the 'extra' memory but contains the key length explicitly, instead of it just being the length of the extra buffer - size of the struct and using the explicit key length only for the get operation (which only writes it). Therefore, we have this layout: extra: +-------------------------+ | struct iw_encode_ext { | | ... | | u16 key_len; | | u8 key[0]; | | }; | +-------------------------+ | key material | +-------------------------+ Now, all drivers I checked use ext->key_len without checking that both key_len and the struct fit into the extra buffer that has been copied from userspace. This leads to a buffer overrun while reading that buffer, depending on the driver it may be possible to specify arbitrary key_len or it may need to be a proper length for the key algorithm specified. Thankfully, this is only exploitable by root, but root can actually cause a segfault or use kernel memory as a key (which you can even get back with siocgiwencode or siocgiwencodeext from the key buffer). Fix this by verifying that key_len fits into the buffer along with struct iw_encode_ext. Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit 2b611cb6eed04062d0a9861c82248e02c844ba3f Author: Pavel Roskin Date: Fri Mar 27 17:47:27 2009 -0400 ath5k: fix scanning in AR2424 AR5K_PHY_PLL_40MHZ_5413 should not be ORed with AR5K_PHY_MODE_RAD_RF5112 for 5 GHz channels. The incorrect PLL value breaks scanning in the countries where 5 GHz channels are allowed. Signed-off-by: Pavel Roskin Acked-by: Nick Kossifidis Signed-off-by: John W. Linville commit 3346857f6fab1d6d1237a3ec7cfa159ec9b52db5 Merge: 5d41343 542cc79 Author: Linus Torvalds Date: Fri May 15 12:01:59 2009 -0700 Merge git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-2.6 * git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-2.6: iwlwifi: fix device id registration for 6000 series 2x2 devices ath5k: update channel in sw state after stopping RX and TX rtl8187: use DMA-aware buffers with usb_control_msg mac80211: avoid NULL ptr deref when finding max_rates in PID and minstrel airo: airo_get_encode{,ext} potential buffer overflow Pulled directly by Linus because Davem is off playing shuffle-board at some Alaskan cruise, and the NULL ptr deref issue hits people and should get merged sooner rather than later. David - make us proud on the shuffle-board tournament! commit 542cc7937e6af73cb2edc455a0e456d22e254abb Author: Jay Sternberg Date: Fri May 8 13:44:46 2009 -0700 iwlwifi: fix device id registration for 6000 series 2x2 devices Add device ids for 2x2 devices. Also fix antenna usage because these devices use antennas A and B, not B and C. Signed-off-by: Jay Sternberg Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit 209d889bab3d0812ee9cda4f6bbeb1af8bede9d4 Author: Bob Copeland Date: Thu May 7 08:09:08 2009 -0400 ath5k: update channel in sw state after stopping RX and TX This fixes a non-theoretical race condition when transmitting and receiving frames during a scan. If the channel or operating band changes while processing status descriptors in the tasklets, ath5k will incorrectly use the new channel and band when reporting the rates, even if the frame was actually sent on a previous channel. Typically this will manifest as a beacon found on an incorrect frequency and/or a warning in the driver while scanning: [ 4773.891944] cfg80211: Found new beacon on frequency: 5805 MHz (Ch 161) on phy0 [ 4785.461125] ------------[ cut here ]------------ [ 4785.461135] WARNING: at drivers/net/wireless/ath/ath5k/base.c:1141 ath5k_tasklet_rx+0x2ff/0x577 [ath5k]() [ 4785.461143] Hardware name: MacBook1,1 [ 4785.461148] invalid hw_rix: 1b [ 4785.461152] Modules linked in: fuse i915 drm af_packet acpi_cpufreq binfmt_misc dm_mirror dm_region_hash dm_log dm_multipath dm_mod arc4 ecb snd_hda_codec_idt snd_hda_intel snd_hda_codec snd_seq_dummy snd_seq_oss snd_seq_midi_event ath5k snd_seq hid_apple usbhid snd_seq_device mac80211 appletouch snd_pcm_oss sky2 ohci1394 snd_mixer_oss ath ieee1394 snd_pcm bitrev snd_timer cfg80211 crc32 snd snd_page_alloc button processor ac ehci_hcd joydev uhci_hcd sg battery thermal sr_mod cdrom applesmc evdev input_polldev unix [last unloaded: microcode] [ 4785.461296] Pid: 0, comm: swapper Tainted: G W 2.6.30-rc3-wl #112 [ 4785.461302] Call Trace: [ 4785.461316] [] warn_slowpath+0x76/0xa5 [ 4785.461331] [] ? debug_dma_unmap_page+0x5a/0x62 [ 4785.461357] [] ath5k_tasklet_rx+0x2ff/0x577 [ath5k] [ 4785.461371] [] ? trace_hardirqs_off+0xb/0xd [ 4785.461381] [] ? __tasklet_schedule+0x6e/0x7c [ 4785.461392] [] tasklet_action+0x92/0xe5 [ 4785.461402] [] __do_softirq+0xb1/0x182 [ 4785.461411] [] do_softirq+0x30/0x48 [ 4785.461428] [] irq_exit+0x3d/0x74 [ 4785.461435] [] do_IRQ+0x76/0x8c [ 4785.461440] [] common_interrupt+0x2e/0x34 [ 4785.461445] [] ? timer_list_show+0x1ab/0x939 [ 4785.461457] [] ? acpi_idle_enter_bm+0x27c/0x2b9 [processor] [ 4785.461463] [] cpuidle_idle_call+0x6a/0x9c [ 4785.461468] [] cpu_idle+0x53/0x87 [ 4785.461473] [] rest_init+0x6c/0x6e [ 4785.461479] [] start_kernel+0x286/0x28b [ 4785.461484] [] __init_begin+0x37/0x3c [ 4785.461487] ---[ end trace aaf8496ba3679dfb ]--- Signed-off-by: Bob Copeland Signed-off-by: John W. Linville commit 9be6f0d40d9191e6fe7e45551c7d1c1614472b53 Author: John W. Linville Date: Wed May 6 13:57:27 2009 -0400 rtl8187: use DMA-aware buffers with usb_control_msg Signed-off-by: John W. Linville commit 621ad7c96aa138cfeab53cd4debc5a4e08b2189b Author: John W. Linville Date: Tue May 5 15:18:26 2009 -0400 mac80211: avoid NULL ptr deref when finding max_rates in PID and minstrel "There is another problem with this piece of code. The sband will be NULL after second iteration on single band device and cause null pointer dereference. Everything is working with dual band card. Sorry, but i don't know how to explain this clearly in English. I have looked on the second patch for pid algorithm and found similar bug." Reported-by: Karol Szuster Signed-off-by: John W. Linville commit aedec9226809ae9d1972f8f8079fc70206ee7a88 Author: John W. Linville Date: Mon May 4 11:18:57 2009 -0400 airo: airo_get_encode{,ext} potential buffer overflow Feeding the return code of get_wep_key directly to the length parameter of memcpy is a bad idea since it could be -1... Reported-by: Eugene Teo Signed-off-by: John W. Linville commit 2ad20802b759cc2d16dc9470fa15874610d21714 Merge: 091bf76 e1cc1c5 Author: Linus Torvalds Date: Sun May 10 10:46:45 2009 -0700 Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6 * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6: (26 commits) bonding: fix panic if initialization fails IXP4xx: complete Ethernet netdev setup before calling register_netdev(). IXP4xx: use "ENODEV" instead of "ENOSYS" in module initialization. ipvs: Fix IPv4 FWMARK virtual services ipv4: Make INET_LRO a bool instead of tristate. net: remove stale reference to fastroute from Kconfig help text net: update skb_recycle_check() for hardware timestamping changes bnx2: Fix panic in bnx2_poll_work(). net-sched: fix bfifo default limit igb: resolve panic on shutdown when SR-IOV is enabled wimax: oops: wimax_dev_add() is the only one that can initialize the state wimax: fix oops if netlink fails to add attribute Bluetooth: Move dev_set_name() to a context that can sleep netfilter: ctnetlink: fix wrong message type in user updates netfilter: xt_cluster: fix use of cluster match with 32 nodes netfilter: ip6t_ipv6header: fix match on packets ending with NEXTHDR_NONE netfilter: add missing linux/types.h include to xt_LED.h mac80211: pid, fix memory corruption mac80211: minstrel, fix memory corruption cfg80211: fix comment on regulatory hint processing ... commit 80445de57764b45fc26315c19fe7dc9fc57c2c65 Merge: 32bc66d bc83871 Author: Linus Torvalds Date: Tue May 5 08:26:10 2009 -0700 Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6 * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6: (30 commits) e1000: fix virtualization bug bonding: fix alb mode locking regression Bluetooth: Fix issue with sysfs handling for connections usbnet: CDC EEM support (v5) tcp: Fix tcp_prequeue() to get correct rto_min value ehea: fix invalid pointer access ne2k-pci: Do not register device until initialized. Subject: [PATCH] br2684: restore net_dev initialization net: Only store high 16 bits of kernel generated filter priorities virtio_net: Fix function name typo virtio_net: Cleanup command queue scatterlist usage bonding: correct the cleanup in bond_create() virtio: add missing include to virtio_net.h smsc95xx: add support for LAN9512 and LAN9514 smsc95xx: configure LED outputs netconsole: take care of NETDEV_UNREGISTER event xt_socket: checks for the state of nf_conntrack bonding: bond_slave_info_query() fix cxgb3: fixing gcc 4.4 compiler warning: suggest parentheses around operand of ‘!’ netfilter: use likely() in xt_info_rdlock_bh() ... commit 6909268dc93ae4b0b8e1ebb4b2fa70b1a47dd347 Author: Jiri Slaby Date: Mon May 4 18:10:28 2009 +0200 mac80211: pid, fix memory corruption pid doesn't count with some band having more bitrates than the one associated the first time. Fix that by counting the maximal available bitrate count and allocate big enough space. Secondly, fix touching uninitialized memory which causes panics. Index sucked from this random memory points to the hell. The fix is to sort the rates on each band change. Signed-off-by: Jiri Slaby Signed-off-by: John W. Linville commit 8e532175277d9a5eae49768ed086555081f741a7 Author: Jiri Slaby Date: Mon May 4 18:04:55 2009 +0200 mac80211: minstrel, fix memory corruption minstrel doesn't count max rate count in fact, since it doesn't use a loop variable `i' and hence allocs space only for bitrates found in the first band. Fix it by involving the `i' as an index so that it traverses all the bands now and finds the real max bitrate count. Signed-off-by: Jiri Slaby Cc: Felix Fietkau Signed-off-by: John W. Linville commit 30a548c727514484b08ac06edf0a7eb0f7fd70bf Author: Luis R. Rodriguez Date: Sat May 2 01:17:27 2009 -0400 cfg80211: fix comment on regulatory hint processing Signed-off-by: Luis R. Rodriguez Signed-off-by: John W. Linville commit b1ed8ddd21a2d7acf8efbb60a112ea5c9f914159 Author: Luis R. Rodriguez Date: Sat May 2 00:34:15 2009 -0400 cfg80211: fix bug while trying to process beacon hints on init During initialization we would not have received any beacons so skip processing reg beacon hints, also adds a check to reg_is_world_roaming() for last_request before accessing its fields. This should fix this: BUG: unable to handle kernel NULL pointer dereference at IP: [] wiphy_update_regulatory+0x20f/0x295 *pdpt = 0000000008bf1001 *pde = 0000000000000000 Oops: 0000 [#1] last sysfs file: /sys/class/backlight/eeepc/brightness Modules linked in: ath5k(+) mac80211 led_class cfg80211 go_bit cfbcopyarea cfbimgblt cfbfillrect ipv6 ydev usual_tables(P) snd_hda_codec_realtek snd_hda_intel nd_hwdep uhci_hcd snd_pcm_oss snd_mixer_oss i2c_i801 e serio_raw i2c_core pcspkr atl2 snd_pcm intel_agp re agpgart eeepc_laptop snd_page_alloc ac video backlight rfkill button processor evdev thermal fan ata_generic Pid: 2909, comm: modprobe Tainted: Pc #112) 701 EIP: 0060:[] EFLAGS: 00010246 CPU: 0 EIP is at wiphy_update_regulatory+0x20f/0x295 [cfg80211] EAX: 00000000 EBX: c5da0000 ECX: 00000000 EDX: c5da0060 ESI: 0000001a EDI: c5da0060 EBP: df3bdd70 ESP: df3bdd40 DS: 007b ES: 007b FS: 0000 GS: 0033 SS: 0068 Process modprobe (pid: 2909, ti=df3bc000 task=c5d030000) Stack: df3bdd90 c5da0060 c04277e0 00000001 00000044 c04277e402 00000002 c5da0000 0000001a c5da0060 df3bdda8 e01706a2 02 00000282 000080d0 00000068 c5d53500 00000080 0000028240 Call Trace: [] ? wiphy_register+0x122/0x1b7 [cfg80211] [] ? ieee80211_register_hw+0xd8/0x346 [] ? ath5k_hw_set_bssid_mask+0x71/0x78 [ath5k] [] ? ath5k_pci_probe+0xa5c/0xd0a [ath5k] [] ? sysfs_find_dirent+0x16/0x27 [] ? local_pci_probe+0xe/0x10 [] ? pci_device_probe+0x48/0x66 [] ? driver_probe_device+0x7f/0xf2 [] ? __driver_attach+0x43/0x5f [] ? bus_for_each_dev+0x39/0x5a [] ? driver_attach+0x14/0x16 [] ? __driver_attach+0x0/0x5f [] ? bus_add_driver+0xd7/0x1e7 [] ? driver_register+0x7b/0xd7 [] ? __pci_register_driver+0x32/0x85 [] ? init_ath5k_pci+0x18/0x30 [ath5k] [] ? _stext+0x49/0x10b [] ? init_ath5k_pci+0x0/0x30 [ath5k] [] ? __blocking_notifier_call_chain+0x40/0x4c [] ? sys_init_module+0x87/0x18b [] ? sysenter_do_call+0x12/0x22 Code: b8 da 17 e0 83 c0 04 e8 92 f9 ff ff 84 c0 75 2a 8b 85 c0 74 0c 83 c0 04 e8 7c f9 ff ff 84 c0 75 14 a1 bc da 4 03 74 66 8b 4d d4 80 79 08 00 74 5d a1 e0 d2 17 e0 48 EIP: [] wiphy_update_regulatory+0x20f/0x295 SP 0068:df3bdd40 CR2: 0000000000000004 ---[ end trace 830f2dd2a95fd1a8 ]--- This issue is hard to reproduce, but it was noticed and discussed on this thread: http://marc.info/?t=123938022700005&r=1&w=2 Cc: stable@kernel.org Reported-by: Alan Jenkins Signed-off-by: Luis R. Rodriguez Signed-off-by: John W. Linville commit ac46d48e00349c63650b3cc6f9460fcc183da6a6 Author: Luis R. Rodriguez Date: Fri May 1 18:44:50 2009 -0400 cfg80211: fix race condition with wiphy_apply_custom_regulatory() We forgot to lock using the cfg80211_mutex in wiphy_apply_custom_regulatory(). Without the lock there is possible race between processing a reply from CRDA and a driver calling wiphy_apply_custom_regulatory(). During the processing of the reply from CRDA we free last_request and wiphy_apply_custom_regulatory() eventually accesses an element from last_request in the through freq_reg_info_regd(). This is very difficult to reproduce (I haven't), it takes us 3 hours and you need to be banging hard, but the race is obvious by looking at the code. This should only affect those who use this caller, which currently is ath5k, ath9k, and ar9170. EIP: 0060:[] EFLAGS: 00210282 CPU: 1 EIP is at freq_reg_info_regd+0x24/0x121 [cfg80211] EAX: 00000000 EBX: f7ca0060 ECX: f5183d94 EDX: 0024cde0 ESI: f8f56edc EDI: 00000000 EBP: 00000000 ESP: f5183d44 DS: 007b ES: 007b FS: 00d8 GS: 0033 SS: 0068 Process modprobe (pid: 14617, ti=f5182000 task=f3934d10 task.ti=f5182000) Stack: c0505300 f7ca0ab4 f5183d94 0024cde0 f8f403a6 f8f63160 f7ca0060 00000000 00000000 f8ebedf8 f5183d90 f8f56edc 00000000 00000004 00000f40 f8f56edc f7ca0060 f7ca1234 00000000 00000000 00000000 f7ca14f0 f7ca0ab4 f7ca1289 Call Trace: [] wiphy_apply_custom_regulatory+0x8f/0x122 [cfg80211] [] ath_attach+0x707/0x9e6 [ath9k] [] ath_pci_probe+0x18d/0x29a [ath9k] [] pci_device_probe+0xa3/0xe4 [] really_probe+0xd7/0x1de [] __driver_attach+0x37/0x55 [] bus_for_each_dev+0x31/0x57 [] driver_attach+0x16/0x18 [] bus_add_driver+0xec/0x21b [] driver_register+0x85/0xe2 [] __pci_register_driver+0x3c/0x69 [] ath9k_init+0x43/0x68 [ath9k] [] _stext+0x3b/0x116 [] sys_init_module+0x8a/0x19e [] sysenter_do_call+0x12/0x21 [] 0xffffe430 ======================= Code: 0f 94 c0 c3 31 c0 c3 55 57 56 53 89 c3 83 ec 14 8b 74 24 2c 89 54 24 0c 89 4c 24 08 85 f6 75 06 8b 35 c8 bb ec f8 a1 cc bb ec f8 <8b> 40 04 83 f8 03 74 3a 48 74 37 8b 43 28 85 c0 74 30 89 c6 8b EIP: [] freq_reg_info_regd+0x24/0x121 [cfg80211] SS:ESP 0068:f5183d44 Cc: stable@kernel.org Reported-by: Nataraj Sadasivam Reported-by: Vivek Natarajan Signed-off-by: Luis R. Rodriguez Signed-off-by: John W. Linville commit 299f5462087f3bc2141e6bc83ba7e2b15d8a07d2 Author: Reinette Chatre Date: Thu Apr 30 13:56:31 2009 -0700 iwlwifi: update key flags at time key is set We need to be symmetrical in what is done when key is set and cleared. This is important wrt the key flags as they are used during key clearing and if they are not set when the key is set the key cannot be cleared completely. This addresses the many occurences of the WARN found in iwl_set_tkip_dynamic_key_info() and tracked in http://www.kerneloops.org/searchweek.php?search=iwl_set_dynamic_key If calling iwl_set_tkip_dynamic_key_info()/iwl_remove_dynamic_key() pair a few times in a row will cause that we run out of key space. This is because the index stored in the key flags is used by iwl_remove_dynamic_key() to decide if it should remove the key. Unfortunately the key flags, and hence the key index is currently only set at the time the key is written to the device (in iwl_update_tkip_key()) and _not_ in iwl_set_tkip_dynamic_key_info(). Fix this by setting flags in iwl_set_tkip_dynamic_key_info(). Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit c0f0aac05fa84b37ed46db8cf6c8bee9a67bbcca Author: Johannes Berg Date: Thu Apr 30 20:09:56 2009 +0200 cfg80211: fix truncated IEs Another bug in the "cfg80211: do not replace BSS structs" patch, a forgotten length update leads to bogus data being stored and passed to userspace, often truncated. Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit 8ccd8f21122dcc30a665516d43aa8b4aa8ae51f6 Author: Johannes Berg Date: Wed Apr 29 23:35:56 2009 +0200 mac80211: correct fragmentation threshold check The fragmentation threshold is defined to be including the FCS, and the code that sets the TX_FRAGMENTED flag correctly accounts for those four bytes. The code that verifies this doesn't though, which could lead to spurious warnings and frames being dropped although everything is ok. Correct the code by accounting for the FCS. (JWL -- The problem is described here: http://article.gmane.org/gmane.linux.kernel.wireless.general/32205 ) Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit 3ee59f8d0dcab2e114546038b2b224776c82b7f7 Author: Andreas Schwab Date: Thu Apr 30 09:58:50 2009 +0200 iwlwifi: remove EXPORT_SYMBOL for static symbol It does not make sense to apply EXPORT_SYMBOL to a static symbol. Fixes this build error: drivers/net/wireless/iwlwifi/iwl3945-base.c:1697: error: __ksymtab_iwl3945_rx_queue_reset causes a section type conflict Signed-off-by: Andreas Schwab Signed-off-by: John W. Linville commit c428c89201a57a0ce24c37ed79e540d1f4101cf3 Author: Johannes Berg Date: Wed Apr 29 00:28:18 2009 +0200 mac80211: default to automatic power control In "mac80211: correct wext transmit power handler" I fixed the wext handler, but forgot to make the default of the user_power_level -1 (aka "auto"), so that now the transmit power is always set to 0, causing associations to time out and similar problems since we're transmitting with very little power. Correct this by correcting the default user_power_level to -1. Signed-off-by: Johannes Berg Bisected-by: Niel Lambrechts Signed-off-by: John W. Linville commit d4c4a9a1bce1912ed5681251f0037fd4f2364a3e Author: Alan Jenkins Date: Wed Apr 29 11:41:24 2009 +0100 mac80211: fix modprobe deadlock by not calling wep_init under rtnl_lock - ieee80211_wep_init(), which is called with rtnl_lock held, blocks in request_module() [waiting for modprobe to load a crypto module]. - modprobe blocks in a call to flush_workqueue(), when it closes a TTY [presumably when it exits]. - The workqueue item linkwatch_event() blocks on rtnl_lock. There's no reason for wep_init() to be called with rtnl_lock held, so just move it outside the critical section. Signed-off-by: Alan Jenkins Signed-off-by: John W. Linville commit b7fcb5c4a4c27da2f6d86cb03d18687e537442cf Author: Bob Copeland Date: Mon Apr 27 22:12:43 2009 -0400 ath5k: fix buffer overrun in rate debug code char bname[5] is too small for the string "X GHz" when the null terminator is taken into account. Thus, turning on rate debugging can crash unless we have lucky stack alignment. Cc: stable@kernel.org Reported-by: Paride Legovini Signed-off-by: Bob Copeland Signed-off-by: John W. Linville commit 74aa9be0ea0ffeb233f45c39f3cf594b68bbbb89 Author: Johannes Berg Date: Thu Apr 23 10:45:04 2009 +0200 iwlwifi: notify on scan completion even when shutting down Under certain circumstances iwlwifi can get stuck and will no longer accept scan requests, because the core code (cfg80211) thinks that it's still processing one. This fixes one of the points where it can happen, but I've still seen it (although only with my radio-off-when-idle patch). Signed-off-by: Johannes Berg Acked-by: Reinette Chatre Signed-off-by: John W. Linville commit e805e4d0b53506dff4255a2792483f094e7fcd2c Author: Jussi Kivilinna Date: Wed Apr 22 10:59:37 2009 +0300 rndis_wlan: fix initialization order for workqueue&workers rndis_wext_link_change() might be called from rndis_command() at initialization stage and priv->workqueue/priv->work have not been initialized yet. This causes invalid opcode at rndis_wext_bind on some brands of bcm4320. Fix by initializing workqueue/workers in rndis_wext_bind() before rndis_command is used. This bug has existed since 2.6.25, reported at: http://bugzilla.kernel.org/show_bug.cgi?id=12794 Signed-off-by: Jussi Kivilinna Signed-off-by: John W. Linville commit 6269b731560d69c5eaa929909891edec39496d71 Author: Stephen Rothwell Date: Wed Apr 22 15:11:05 2009 +1000 wireless: remove unneeded EXPORT_SYMBOL the tickles a powerpc compiler bug drivers/net/wireless/iwlwifi/iwl3945-base.c:1415: error: __ksymtab_iwl3945_rx_queue_reset causes a section type conflict I am pretty sure that this is a compiler bug, so not to worry. However, as far as I can see, iwl-3945.o (the only user) and iwl3945-base.o are always linked into the same module, so the EXPORT_SYMBOL (which causes the problem) should not be needed. Correct? Signed-off-by: Stephen Rothwell Signed-off-by: John W. Linville commit 3e241ff0c57cb610301009fe8c3b9da4c6877800 Merge: dc0046c 29fe1b4 Author: Linus Torvalds Date: Fri Apr 24 07:46:51 2009 -0700 Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6 * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6: (94 commits) netfilter: ctnetlink: fix gcc warning during compilation net/netrom: Fix socket locking netlabel: Always remove the correct address selector ucc_geth.c: Fix upsmr setting in RMII mode 8139too: fix HW initial flow af_iucv: Fix race when queuing incoming iucv messages af_iucv: Test additional sk states in iucv_sock_shutdown af_iucv: Reject incoming msgs if RECV_SHUTDOWN is set af_iucv: fix oops in iucv_sock_recvmsg() for MSG_PEEK flag af_iucv: consider state IUCV_CLOSING when closing a socket iwlwifi: DMA fixes iwlwifi: add debugging for TX path mwl8: fix build warning. mac80211: fix alignment calculation bug mac80211: do not print WARN if config interface iwl3945: use cancel_delayed_work_sync to cancel rfkill_poll iwlwifi: fix EEPROM validation mask to include OTP only devices atmel: fix netdev ops conversion pcnet_cs: add cis(firmware) of the Allied Telesis LA-PCM mlx4_en: Fix cleanup if workqueue create in mlx4_en_add() fails ... commit df833b1d73680f9f9dc72cbc3215edbbc6ab740d Author: Reinette Chatre Date: Tue Apr 21 10:55:48 2009 -0700 iwlwifi: DMA fixes A few issues wrt DMA were uncovered when using the driver with swiotlb. - driver should not use memory after it has been mapped - iwl3945's RX queue management cannot use all of iwlagn because the size of the RX buffer is different. Revert back to using iwl3945 specific routines that map/unmap memory. - no need to "dma_syn_single_range_for_cpu" followed by pci_unmap_single, we can just call pci_unmap_single initially - only map the memory area that will be used by device. this is especially relevant to the mapping of iwl_cmd. we should not map the entire structure because the meta data at the beginning of structure contains the address to be used later for unmapping. If the address to be used for unmapping is stored in mapped data it creates a problem. - ensure that _if_ memory needs to be modified after it is mapped that we call _sync_single_for_cpu first, and then release it back to device with _sync_single_for_device - we mapped the wrong length of data for host commands, with mapped length differing with length provided to device, fix that. Thanks to Jason Andryuk for significant bisecting help to find these issues. This fixes http://www.intellinuxwireless.org/bugzilla/show_bug.cgi?id=1964 Signed-off-by: Reinette Chatre Tested-by: Jason Andryuk Tested-by: Ben Gamari Signed-off-by: John W. Linville commit d2ee9cd2e2bdfa2e5817142d6f044697066d3977 Author: Reinette Chatre Date: Tue Apr 21 10:55:47 2009 -0700 iwlwifi: add debugging for TX path When debugging TX issues it is helpful to know the seq nr of the frame being transmitted. The seq nr is printed as part of ucode's log informing us which frame is being processed. Having this information printed in driver log makes it easy to match activities between driver and firmware. Also make possible to print TX flags directly. These are already printed as part of entire TX command, but having it printed directly in cpu format makes it easier to look at. Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit c491bf1205485c83086bf4f2f26ca6598d48133a Author: Rami Rosen Date: Tue Apr 21 16:22:01 2009 +0300 mwl8: fix build warning. This patch fixes a build warning in mwl8.c. (Marvell TOPDOG wireless driver) The warning it fixes is: "large integer implicitly truncated to unsigned type." The rx_ctrl member of the mwl8k_rx_desc struct is 8 bit (__u8 ), whereas trying to assign it a 32 bit value (which is returned from cpu_to_le32()) causes the compiler to issue a truncation warning. Signed-off-by: Rami Rosen Signed-off-by: John W. Linville commit d1bcb9f1273adee6d2ce5edf84f19409a5cc31b9 Author: Johannes Berg Date: Tue Apr 21 01:36:59 2009 +0200 mac80211: fix alignment calculation bug When checking whether or not a given frame needs to be moved to be properly aligned to a 4-byte boundary, we use & 4 which wasn't intended, this code should check the lowest two bits. Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit 7d42081a271bd8a82f2100524085c4f029e47717 Author: Reinette Chatre Date: Mon Apr 20 15:36:19 2009 -0700 mac80211: do not print WARN if config interface It is expected that config interface will always succeed as mac80211 will only request what driver supports. The exception here is when a device has rfkill enabled. At this time the rfkill state is unknown to mac80211 and config interface can fail. When this happens we deal with this error instead of printing a WARN. Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit 71d449b55abf5018d7c711b2b62abc0c083723c4 Author: Reinette Chatre Date: Mon Apr 20 14:37:01 2009 -0700 iwl3945: use cancel_delayed_work_sync to cancel rfkill_poll Users reported lockup with work still trying to run after module has been unloaded. http://thread.gmane.org/gmane.linux.kernel.wireless.general/30594/focus=30601 Signed-off-by: Reinette Chatre Reported-by: TJ Reported-by: Huaxu Wan Signed-off-by: John W. Linville commit 4b6f764e148a194f792e75d43dc3504bc0d81064 Author: Jay Sternberg Date: Mon Apr 20 14:36:54 2009 -0700 iwlwifi: fix EEPROM validation mask to include OTP only devices Fix the bug where some revisions of 6000 series hardware cannot be used. Later versions of 6000 series have the EEPROM replaced by OTP. For these devices to be used we need to expand valid EEPROM mask. Signed-off-by: Jay Sternberg Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit 1bb593801ee32dd9d983dea3cbedf68f71345f78 Author: Johannes Berg Date: Tue Apr 21 02:08:51 2009 -0700 atmel: fix netdev ops conversion sparse says: drivers/net/wireless/atmel.c:1501:3: warning: Initializer entry defined twice drivers/net/wireless/atmel.c:1505:3: also defined here and it's correct; atmel has its own ndo_change_mtu and shouldn't use eth_change_mtu. Signed-off-by: Johannes Berg Signed-off-by: David S. Miller commit 7e0986c17f695952ce5d61ed793ce048ba90a661 Author: Johannes Berg Date: Sun Apr 19 13:22:11 2009 +0200 mac80211: fix basic rate bitmap calculation "mac80211: fix basic rates setting from association response" introduced a copy/paste error. Unfortunately, this not just leads to wrong data being passed to the driver but is remotely exploitable for some hardware or driver combinations. Signed-off-by: Johannes Berg Cc: stable@kernel.org [2.6.29] Signed-off-by: John W. Linville commit ad935687dbe7307f5abd9e3f610a965a287324a9 Author: Kalle Valo Date: Sun Apr 19 08:47:19 2009 +0300 mac80211: fix beacon loss detection after scan Currently beacon loss detection triggers after a scan. A probe request is sent and a message like this is printed to the log: wlan0: beacon loss from AP 00:12:17:e7:98:de - sending probe request But in fact there is no beacon loss, the beacons are just not received because of the ongoing scan. Fix it by updating last_beacon after the scan has finished. Reported-by: Jaswinder Singh Rajput Signed-off-by: Kalle Valo Acked-by: Johannes Berg Signed-off-by: John W. Linville commit d91c01c757bd9659ac10549504586fae610265a4 Author: Jouni Malinen Date: Sat Apr 18 21:53:15 2009 +0300 nl80211: Make nl80211_send_mlme_event() atomic One of the code paths sending deauth/disassoc events ends up calling this function with rcu_read_lock held, so we must use GFP_ATOMIC in allocation routines. Reported-by: Johannes Berg Signed-off-by: Jouni Malinen Signed-off-by: John W. Linville commit e10a9dfc35ae6bd62bbb83df08297ea06b54d9ce Author: Christian Lamparter Date: Sat Apr 18 17:12:18 2009 +0200 ar9170usb: fix hang on resume This patch fixes a hang on resume when the filesystem is not available and request_firmware blocks. However, the device does not accept the firmware on resume. and it will exit with: > firmware part 1 upload failed (-71). > device is in a bad state. please reconnect it! Reported-by: Johannes Berg Signed-off-by: Christian Lamparter Signed-off-by: John W. Linville commit 18aaab15f9a9cd4f20dc596aa38408c5e5d208ed Author: Robert P. J. Day Date: Sat Apr 18 09:33:55 2009 -0400 MAC80211: Remove unused MAC80211_VERBOSE_SPECT_MGMT_DEBUG. Remove this unused Kconfig variable, which Intel apparently once promised to make use of but never did. Signed-off-by: Robert P. J. Day Acked-by: Johannes Berg Signed-off-by: John W. Linville commit 230f7af0d8f6f2019e64920378b3b66e7d3e99a5 Author: Joerg Albert Date: Sat Apr 18 02:10:45 2009 +0200 mwl8k: fix module re-insertion bug swap mwl8k_remove and mwl8k_shutdown functions to allow "rmmod mwl8k; modprobe mwl8k" Signed-off-by: Joerg Albert Signed-off-by: John W. Linville commit c3b93c878d7912a01467890bc0785071c2dc4bc1 Author: Christian Lamparter Date: Fri Apr 17 15:14:22 2009 +0200 p54: deactivate broken powersave function This patch deactivates powersave in station mode. It does not work correctly yet, so the code does more harm than good. Reported-by: Johannes Berg Signed-off-by: Christian Lamparter Signed-off-by: John W. Linville commit 125143966f02bd7366eb9040aa74392d19955da8 Author: Joe Perches Date: Thu Apr 16 16:23:26 2009 -0700 iwl3945-base.c: Add missing space to debug print "not" is not printed without a space after %pM Signed-off-by: Joe Perches Signed-off-by: John W. Linville commit 499a214ca2765522d6a59ff73825d40e7bb31510 Author: Ivo van Doorn Date: Sat Mar 28 20:51:58 2009 +0100 rt2x00: Don't free register information on suspend After suspend & resume the rt2x00 devices won't wakeup anymore due to a broken register information setup. The most important problem is the release of the EEPROM buffer which is completely cleared and never read again after the suspend. Signed-off-by: Ivo van Doorn Signed-off-by: John W. Linville commit 957b0516f7881284b48f2f2e4a909a1c5de0ddf8 Author: Christian Lamparter Date: Fri Apr 17 14:52:23 2009 +0200 ar9170usb: add ZyXEL NWD271N Signed-off-by: Christian Lamparter Signed-off-by: John W. Linville commit 60375541f7c8a577b977d344565259776c3acfc1 Author: Johannes Berg Date: Fri Apr 17 00:54:23 2009 +0200 mac80211: validate TIM IE length The TIM IE must not be shorter than 4 bytes, so verify that when parsing it. Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit cd1658f592a60d028dd2e48d86724b737a82cab0 Author: Johannes Berg Date: Thu Apr 16 15:00:58 2009 +0200 cfg80211: do not replace BSS structs Instead, allocate extra IE memory if necessary. Normally, this isn't even necessary since there's enough space. This is a better way of correcting the "held BSS can disappear" issue, but also a lot more code. It is also necessary for proper auth/assoc BSS handling in the future. Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit 160002fe845218f5789a26954048592c3920ac7b Author: Johannes Berg Date: Thu Apr 16 12:15:38 2009 +0200 cfg80211: copy hold when replacing BSS When we receive a probe response frame we can replace the BSS struct in our list -- but if that struct is held then we need to hold the new one as well. We really should fix this completely and not replace the struct, but this is a bandaid for now. Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit 7181d4673710888b6d7084b37b9d77ed4f4e41b2 Author: Johannes Berg Date: Wed Apr 15 21:33:15 2009 +0200 mac80211: avoid crashing when no scan sdata Using the scan_sdata variable here is terribly wrong, if there has never been a scan then we fail. However, we need a bandaid... Signed-off-by: Johannes Berg Cc: stable@kernel.org [2.6.29] Signed-off-by: John W. Linville commit 1269fa737f21b3f643e4b12d3ac9938b142a7f00 Author: Johannes Berg Date: Fri Apr 10 10:02:45 2009 +0200 ar9170: fix struct layout on arm arm will pad even between u8's, so mark the structs/unions packed. Fixes a build bug on arm due to BUILD_BUG_ON tests in the code. Signed-off-by: Johannes Berg Reported-by: Al Viro Signed-off-by: John W. Linville commit 91fe9ca74e8220f17e2fa71a92cda330857daac4 Author: Pavel Roskin Date: Thu Apr 9 21:41:05 2009 -0400 orinoco: correct timeout logic in __orinoco_hw_set_tkip_key() If the value read from HERMES_RID_TXQUEUEEMPTY becomes 0 after exactly 100 readings, we wrongly consider it a timeout. Rewrite the clever while loop as a for loop that does the right thing and looks simpler. Reported by Juha Leppanen Signed-off-by: Pavel Roskin Signed-off-by: John W. Linville commit 23a99840d571a237845fd0906bce78e7c76be650 Author: Gerrit Renker Date: Tue Apr 14 06:32:56 2009 +0200 mac80211: Fragmentation threshold (typo) mac80211: Fragmentation threshold (typo) ieee80211_ioctl_siwfrag() sets the fragmentation_threshold to 2352 when frame fragmentation is to be disabled, yet the corresponding 'get' function tests for 2353 bytes instead. This causes user-space tools to display a fragmentation threshold of 2352 bytes even if fragmentation has been disabled. Signed-off-by: Gerrit Renker Signed-off-by: John W. Linville commit f05faa31c387fb07f4c561350f00ba12cf673c9f Author: Herton Ronaldo Krzesinski Date: Fri Apr 10 18:05:14 2009 -0300 rt2x00: prevent double kfree when failing to register hardware In a scenario where there isn't any firmware available, we will have a double kfree of rt2x00dev->spec.channels_info when ieee80211_register_hw returns an error status inside rt2x00lib_probe_hw. The problem is that if ieee80211_register_hw fails, we call rt2x00lib_remove_hw twice: * first inside rt2x00lib_probe_hw upon failure of ieee80211_register_hw * error status is returned to rt2x00lib_probe_dev, which then sees it and calls in this case rt2x00lib_remove_dev that will again run rt2x00lib_remove_hw Prevent this avoiding calling rt2x00lib_remove_hw inside rt2x00lib_probe_hw Problem was detected with CONFIG_DEBUG_PAGEALLOC=y, CONFIG_SLUB_DEBUG=y, CONFIG_SLUB_DEBUG_ON=y, that dumps this with no firmware available: rt61pci 0000:00:07.0: PCI INT A -> GSI 19 (level, low) -> IRQ 19 wmaster0 (rt61pci): not using net_device_ops yet phy0: Selected rate control algorithm 'pid' phy0: Failed to initialize wep: -2 phy0 -> rt2x00lib_probe_dev: Error - Failed to initialize hw. ============================================================================= BUG kmalloc-128: Object already free ----------------------------------------------------------------------------- INFO: Allocated in rt61pci_probe_hw+0x3e5/0x6e0 [rt61pci] age=340 cpu=0 pid=21 INFO: Freed in rt2x00lib_remove_hw+0x59/0x70 [rt2x00lib] age=0 cpu=0 pid=21 INFO: Slab 0xc13ac3e0 objects=23 used=10 fp=0xdd59f6e0 flags=0x400000c3 INFO: Object 0xdd59f6e0 @offset=1760 fp=0xdd59f790 Bytes b4 0xdd59f6d0: 15 00 00 00 b2 8a fb ff 5a 5a 5a 5a 5a 5a 5a 5a ....².ûÿZZZZZZZZ Object 0xdd59f6e0: 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b kkkkkkkkkkkkkkkk Object 0xdd59f6f0: 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b kkkkkkkkkkkkkkkk Object 0xdd59f700: 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b kkkkkkkkkkkkkkkk Object 0xdd59f710: 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b kkkkkkkkkkkkkkkk Object 0xdd59f720: 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b kkkkkkkkkkkkkkkk Object 0xdd59f730: 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b kkkkkkkkkkkkkkkk Object 0xdd59f740: 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b kkkkkkkkkkkkkkkk Object 0xdd59f750: 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b a5 kkkkkkkkkkkkkkk¥ Redzone 0xdd59f760: bb bb bb bb »»»» Padding 0xdd59f788: 5a 5a 5a 5a 5a 5a 5a 5a ZZZZZZZZ Pid: 21, comm: stage1 Not tainted 2.6.29.1-desktop-1.1mnb #1 Call Trace: [] print_trailer+0xd3/0x120 [] object_err+0x37/0x50 [] __slab_free+0xe7/0x2f0 [] kfree+0x7e/0xd0 [] ? rt2x00lib_remove_hw+0x59/0x70 [rt2x00lib] [] ? rt2x00lib_remove_hw+0x59/0x70 [rt2x00lib] [] rt2x00lib_remove_hw+0x59/0x70 [rt2x00lib] [] rt2x00lib_remove_dev+0x37/0x50 [rt2x00lib] [] rt2x00lib_probe_dev+0x1a7/0x3b0 [rt2x00lib] [] rt2x00pci_probe+0xdf/0x1ee [rt2x00pci] [] local_pci_probe+0xe/0x10 [] pci_device_probe+0x60/0x80 [] driver_probe_device+0x9a/0x2e0 [] __driver_attach+0x89/0x90 [] bus_for_each_dev+0x4b/0x70 [] ? pci_device_remove+0x0/0x40 [] driver_attach+0x19/0x20 [] ? __driver_attach+0x0/0x90 [] bus_add_driver+0x1cf/0x2a0 [] ? pci_device_remove+0x0/0x40 [] driver_register+0x69/0x140 [] __pci_register_driver+0x40/0x80 [] ? rt61pci_init+0x0/0x19 [rt61pci] [] rt61pci_init+0x17/0x19 [rt61pci] [] do_one_initcall+0x26/0x1c0 [] ? slab_pad_check+0x3c/0x120 [] ? slab_pad_check+0x3c/0x120 [] ? check_object+0xda/0x210 [] ? percpu_free+0x46/0x50 [] ? __slab_free+0x22e/0x2f0 [] ? percpu_free+0x46/0x50 [] ? percpu_free+0x46/0x50 [] ? percpu_free+0x46/0x50 [] ? stop_machine_destroy+0x3c/0x40 [] ? load_module+0xa5/0x1c50 [] ? rt61pci_eepromregister_read+0x0/0x40 [rt61pci] [] ? rt2x00pci_write_tx_data+0x0/0x90 [rt2x00pci] [] ? mutex_lock+0xb/0x20 [] ? mutex_lock+0xb/0x20 [] ? tracepoint_update_probe_range+0x76/0xa0 [] ? tracepoint_module_notify+0x2f/0x40 [] ? notifier_call_chain+0x2d/0x70 [] ? __blocking_notifier_call_chain+0x4d/0x60 [] ? blocking_notifier_call_chain+0x1a/0x20 [] sys_init_module+0x96/0x1d0 [] ? sys_munmap+0x46/0x60 [] syscall_call+0x7/0xb FIX kmalloc-128: Object at 0xdd59f6e0 not freed rt61pci 0000:00:07.0: PCI INT A disabled rt61pci: probe of 0000:00:07.0 failed with error -2 Signed-off-by: Herton Ronaldo Krzesinski Acked-by: Ivo van Doorn Signed-off-by: John W. Linville commit d60cc91acdc45f234d8830409203f504d03513c9 Author: Johannes Berg Date: Thu Apr 9 09:56:02 2009 +0200 fix iwl3945 registration regression I forgot that iwl3945 registration is separate from iwlagn. Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit a860402d8f1756dae48cdcabe153c974116fc37e Author: Michael Buesch Date: Wed Apr 15 14:41:22 2009 -0400 mac80211: quiet beacon loss messages On Sunday 05 April 2009 11:29:38 Michael Buesch wrote: > On Sunday 05 April 2009 11:23:59 Jaswinder Singh Rajput wrote: > > With latest linus tree I am getting, .config file attached: > > > > [ 22.895051] r8169: eth0: link down > > [ 22.897564] ADDRCONF(NETDEV_UP): eth0: link is not ready > > [ 22.928047] ADDRCONF(NETDEV_UP): wlan0: link is not ready > > [ 22.982292] libvirtd used greatest stack depth: 4200 bytes left > > [ 63.709879] wlan0: authenticate with AP 00:11:95:9e:df:f6 > > [ 63.712096] wlan0: authenticated > > [ 63.712127] wlan0: associate with AP 00:11:95:9e:df:f6 > > [ 63.726831] wlan0: RX AssocResp from 00:11:95:9e:df:f6 (capab=0x471 status=0 aid=1) > > [ 63.726855] wlan0: associated > > [ 63.730093] ADDRCONF(NETDEV_CHANGE): wlan0: link becomes ready > > [ 74.296087] wlan0: no IPv6 routers present > > [ 79.349044] wlan0: beacon loss from AP 00:11:95:9e:df:f6 - sending probe request > > [ 119.358200] wlan0: beacon loss from AP 00:11:95:9e:df:f6 - sending probe request > > [ 179.354292] wlan0: beacon loss from AP 00:11:95:9e:df:f6 - sending probe request > > [ 259.366044] wlan0: beacon loss from AP 00:11:95:9e:df:f6 - sending probe request > > [ 359.348292] wlan0: beacon loss from AP 00:11:95:9e:df:f6 - sending probe request > > [ 361.953459] packagekitd used greatest stack depth: 4160 bytes left > > [ 478.824258] wlan0: beacon loss from AP 00:11:95:9e:df:f6 - sending probe request > > [ 598.813343] wlan0: beacon loss from AP 00:11:95:9e:df:f6 - sending probe request > > [ 718.817292] wlan0: beacon loss from AP 00:11:95:9e:df:f6 - sending probe request > > [ 838.824567] wlan0: beacon loss from AP 00:11:95:9e:df:f6 - sending probe request > > [ 958.815402] wlan0: beacon loss from AP 00:11:95:9e:df:f6 - sending probe request > > [ 1078.848434] wlan0: beacon loss from AP 00:11:95:9e:df:f6 - sending probe request > > [ 1198.822913] wlan0: beacon loss from AP 00:11:95:9e:df:f6 - sending probe request > > [ 1318.824931] wlan0: beacon loss from AP 00:11:95:9e:df:f6 - sending probe request > > [ 1438.814157] wlan0: beacon loss from AP 00:11:95:9e:df:f6 - sending probe request > > [ 1558.827336] wlan0: beacon loss from AP 00:11:95:9e:df:f6 - sending probe request > > [ 1678.823011] wlan0: beacon loss from AP 00:11:95:9e:df:f6 - sending probe request > > [ 1798.830589] wlan0: beacon loss from AP 00:11:95:9e:df:f6 - sending probe request > > [ 1918.828044] wlan0: beacon loss from AP 00:11:95:9e:df:f6 - sending probe request > > [ 2038.827224] wlan0: beacon loss from AP 00:11:95:9e:df:f6 - sending probe request > > [ 2116.517152] wlan0: beacon loss from AP 00:11:95:9e:df:f6 - sending probe request > > [ 2158.840243] wlan0: beacon loss from AP 00:11:95:9e:df:f6 - sending probe request > > [ 2278.827427] wlan0: beacon loss from AP 00:11:95:9e:df:f6 - sending probe request > > > I think this message should only show if CONFIG_MAC80211_VERBOSE_DEBUG is set. > It's kind of expected that we lose a beacon once in a while, so we shouldn't print > verbose messages to the kernel log (even if they are KERN_DEBUG). > > And besides that, I think one can easily remotely trigger this message and flood the logs. > So it should probably _also_ be ratelimited. Something like this: Signed-off-by: Michael Buesch commit 591f3dc200abb2100c473248a121ce14bfeeabd6 Author: Michael Buesch Date: Tue Mar 31 12:27:32 2009 +0200 b43: Do radio lock assertion in software The assertion of the lock-bit in the hardware register is unreliable, because there are devices with quirks that will randomly set the bit. Do the assertion in software, only. Signed-off-by: Michael Buesch Signed-off-by: John W. Linville commit 6aabd4c4441133836ac969a9488458b37f83b677 Author: Ivo van Doorn Date: Sat Mar 28 20:52:14 2009 +0100 rt2x00: Add rt73usb USB IDs Signed-off-by: Ivo van Doorn Signed-off-by: John W. Linville commit e3062403f5f71c48cf26e791e576f4feca4c9c0f Author: Christian Lamparter Date: Sun Mar 29 22:50:28 2009 +0200 p54usb: add Telsey 802.11g USB2.0 Adapter Signed-off-by: Christian Lamparter Signed-off-by: John W. Linville commit 4fc298b86635c60061bbd81cef8de2b031e5c4a7 Author: Christian Lamparter Date: Tue Mar 24 21:58:08 2009 +0100 ar9170: add Cace Airpcap NX usb_id This patch adds a new device to ar9170usb. Reported-by: Mike Kershaw/Dragorn Signed-off-by: Christian Lamparter Signed-off-by: John W. Linville commit 011f5c5bb20c08af93faa8bfd8d611c8cf85134f Author: Dan Williams Date: Wed Apr 8 10:15:17 2009 -0400 airo: queue SIOCSIWAUTH-requested auth mode change for next commit Code was clearly wrong, plus callers expect the mode change to happen as soon as possible, not dropped on the floor until the next time some other config value changes and a commit happens. Signed-off-by: Dan Williams Signed-off-by: John W. Linville commit 02a9a39294017f105aedebcca5f49d552b18dbaa Author: Jamie Lentin Date: Tue Apr 7 22:59:56 2009 +0100 at76c50x-usb: Add device ID for OQO model 01+ Add USB device ID for OQO 01+'s internal wireless LAN An OQO employee mentions the chip's true identity here:- ftp://ftp.oqo.com/unsupported/linux/OQOLinux.html Signed-off-by: Jamie Lentin Acked-by: Kalle Valo Signed-off-by: John W. Linville commit f54930f363113a9357c9ae008965b6484a61cd29 Author: Philip Rakity Date: Tue Apr 7 12:41:17 2009 -0700 libertas: don't leak skb on receive error Don't lead memory when receive errors Signed-off-by: Philip Rakity Acked-by: Dan Williams Signed-off-by: John W. Linville commit 47afbaf5af9454a7a1a64591e20cbfcc27ca67a8 Author: Johannes Berg Date: Tue Apr 7 15:22:28 2009 +0200 mac80211: correct wext transmit power handler Wext makes no assumptions about the contents of data->txpower.fixed and data->txpower.value when data->txpower.disabled is set, so do not update the user-requested power level while disabling. Also, when wext configures a really _fixed_ power output [1], we should reject it instead of limiting it to the regulatory constraint. If the user wants to set a _limit_ [2] then we should honour that. [1] iwconfig wlan0 txpower 20dBm fixed [2] iwconfig wlan0 txpower 10dBm This fixes http://www.intellinuxwireless.org/bugzilla/show_bug.cgi?id=1942 Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit 853da11b94e674445e93660f47a5f0aeeea09623 Author: Pavel Roskin Date: Fri Apr 3 20:10:26 2009 -0400 ath9k: fix access to a freed skb in ath_rx_tasklet() Signed-off-by: Pavel Roskin Signed-off-by: John W. Linville commit 731c6531684250c46d732e369b25b003356f3947 Author: Christian Lamparter Date: Mon Mar 30 15:55:24 2009 +0200 p54spi: fix locking warning in p54spi_op_tx This patch fixes the following waring: > ------------[ cut here ]------------ >WARNING: at kernel/softirq.c:138 local_bh_enable+0x54/0xbc() >Modules linked in: p54spi >[] (dump_stack+0x0/0x14) >[] (warn_on_slowpath+0x0/0x68) >[] (local_bh_enable+0x0/0xbc) >[] (p54spi_op_tx+0x0/0x4c [p54spi]) >[] (p54_sta_unlock+0x0/0x78) p54spi_op_tx needs to be called from different locking contexts. Therefore we have to protect the linked list with irqsave spinlocks. Reported-by: Max Filippov Signed-off-by: Christian Lamparter Signed-off-by: John W. Linville commit 540828196e48ec54b64067a2b9defd870bff3ece Author: Christian Lamparter Date: Wed Mar 25 03:11:44 2009 +0100 p54: replace MAC80211_LEDS with P54_LEDS in p54.h I'm very sorry, as this change belongs to the other patch: "[PATCH] p54: fix SoftLED compile dependencies". however I must have somehow lost "git add" for that file. Signed-off-by: Christian Lamparter Acked-by: Larry Finger Signed-off-by: John W. Linville commit cf68636a9773aa97915497fe54fa4a51e3f08f3a Author: Michael Buesch Date: Sat Mar 28 00:41:25 2009 +0100 b43: Refresh RX poison on buffer recycling The RX buffer poison needs to be refreshed, if we recycle an RX buffer, because it might be (partially) overwritten by some DMA operations. Cc: stable@kernel.org Cc: Francesco Gringoli Signed-off-by: Michael Buesch Signed-off-by: John W. Linville commit ec9a1d8c13e36440eda0f3c79b8149080e3ab5ba Author: Michael Buesch Date: Fri Mar 27 22:51:58 2009 +0100 b43: Poison RX buffers This patch adds poisoning and sanity checking to the RX DMA buffers. This is used for protection against buggy hardware/firmware that raises RX interrupts without doing an actual DMA transfer. This mechanism protects against rare "bad packets" (due to uninitialized skb data) and rare kernel crashes due to uninitialized RX headers. The poison is selected to not match on valid frames and to be cheap for checking. The poison check mechanism _might_ trigger incorrectly, if we are voluntarily receiving frames with bad PLCP headers. However, this is nonfatal, because the chance of such a match is basically zero and in case it happens it just results in dropping the packet. Bad-PLCP RX defaults to off, and you should leave it off unless you want to listen to the latest news broadcasted by your microwave oven. This patch also moves the initialization of the RX-header "length" field in front of the mapping of the DMA buffer. The CPU should not touch the buffer after we mapped it. Cc: stable@kernel.org Reported-by: Francesco Gringoli Signed-off-by: Michael Buesch Signed-off-by: John W. Linville commit b3631286aca3f54427ca0eb950981e9753866f6c Author: Vasanthakumar Thiagarajan Date: Wed Mar 25 18:10:18 2009 +0530 mac80211: Fix bug in getting rx status for frames pending in reorder buffer Currently rx status for frames which are completed from reorder buffer is taken from it's cb area which is not always right, cb is not holding the rx status when driver uses mac80211's non-irq rx handler to pass it's received frames. This results in dropping almost all frames from reorder buffer when security is enabled by doing double decryption (first in hw, second in sw because of wrong rx status). This patch copies rx status into cb area before the frame is put into reorder buffer. After this patch, there is a significant improvement in throughput with ath9k + WPA2(AES). Signed-off-by: Vasanthakumar Thiagarajan Acked-by: Johannes Berg Cc: stable@kernel.org Signed-off-by: John W. Linville commit 0ad8acaf434d360ad99813d981a68e605d6c8179 Author: Luis R. Rodriguez Date: Tue Mar 24 21:21:08 2009 -0400 cfg80211: fix NULL pointer deference in reg_device_remove() We won't ever get here as regulatory_hint_core() can only fail on -ENOMEM and in that case we don't initialize cfg80211 but this is technically correct code. This is actually good for stable, where we don't check for -ENOMEM failure on __regulatory_hint()'s failure. Cc: stable@kernel.org Reported-by: Quentin Armitage Signed-off-by: Luis R. Rodriguez Signed-off-by: John W. Linville commit e930438c42e744ef1f8bfdbb338253c9f384df42 Author: Yang Hongyang Date: Mon Apr 13 14:40:14 2009 -0700 Replace all DMA_nBIT_MASK macro with DMA_BIT_MASK(n) This is the second go through of the old DMA_nBIT_MASK macro,and there're not so many of them left,so I put them into one patch.I hope this is the last round. After this the definition of the old DMA_nBIT_MASK macro could be removed. Signed-off-by: Yang Hongyang Cc: Russell King Cc: Tony Lindgren Cc: "David S. Miller" Cc: James Bottomley Cc: Greg KH Cc: Takashi Iwai Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 28b767967763835d8526f6baedc25a8a86052640 Author: Yang Hongyang Date: Mon Apr 6 19:01:17 2009 -0700 dma-mapping: replace all DMA_30BIT_MASK macro with DMA_BIT_MASK(30) Replace all DMA_30BIT_MASK macro with DMA_BIT_MASK(30) Signed-off-by: Yang Hongyang Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 284901a90a9e0b812ca3f5f852cbbfb60d10249d Author: Yang Hongyang Date: Mon Apr 6 19:01:15 2009 -0700 dma-mapping: replace all DMA_32BIT_MASK macro with DMA_BIT_MASK(32) Replace all DMA_32BIT_MASK macro with DMA_BIT_MASK(32) Signed-off-by: Yang Hongyang Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 6a35528a8346f6e6fd32ed7e51f04d1fa4ca2c01 Author: Yang Hongyang Date: Mon Apr 6 19:01:13 2009 -0700 dma-mapping: replace all DMA_64BIT_MASK macro with DMA_BIT_MASK(64) Replace all DMA_64BIT_MASK macro with DMA_BIT_MASK(64) Signed-off-by: Yang Hongyang Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 811158b147a503fbdf9773224004ffd32002d1fe Merge: 4e76c5c b26e0ed Author: Linus Torvalds Date: Fri Apr 3 15:24:35 2009 -0700 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial: (28 commits) trivial: Update my email address trivial: NULL noise: drivers/mtd/tests/mtd_*test.c trivial: NULL noise: drivers/media/dvb/frontends/drx397xD_fw.h trivial: Fix misspelling of "Celsius". trivial: remove unused variable 'path' in alloc_file() trivial: fix a pdlfush -> pdflush typo in comment trivial: jbd header comment typo fix for JBD_PARANOID_IOFAIL trivial: wusb: Storage class should be before const qualifier trivial: drivers/char/bsr.c: Storage class should be before const qualifier trivial: h8300: Storage class should be before const qualifier trivial: fix where cgroup documentation is not correctly referred to trivial: Give the right path in Documentation example trivial: MTD: remove EOL from MODULE_DESCRIPTION trivial: Fix typo in bio_split()'s documentation trivial: PWM: fix of #endif comment trivial: fix typos/grammar errors in Kconfig texts trivial: Fix misspelling of firmware trivial: cgroups: documentation typo and spelling corrections trivial: Update contact info for Jochen Hein trivial: fix typo "resgister" -> "register" ... commit 15f7176eb1cccec0a332541285ee752b935c1c85 Merge: d3d52d6 321dee6 Author: Linus Torvalds Date: Mon Mar 30 18:46:43 2009 -0700 Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6 * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6: wireless: remove duplicated .ndo_set_mac_address netfilter: xtables: fix IPv6 dependency in the cluster match tg3: Add GRO support. niu: Add GRO support. ucc_geth: Fix use-after-of_node_put() in ucc_geth_probe(). gianfar: Fix use-after-of_node_put() in gfar_of_init(). kernel: remove HIPQUAD() netpoll: store local and remote ip in net-endian netfilter: fix endian bug in conntrack printks dmascc: fix incomplete conversion to network_device_ops gso: Fix support for linear packets skbuff.h: fix missing kernel-doc ni5010: convert to net_device_ops commit 99b76233803beab302123d243eea9e41149804f3 Author: Alexey Dobriyan Date: Wed Mar 25 22:48:06 2009 +0300 proc 2/2: remove struct proc_dir_entry::owner Setting ->owner as done currently (pde->owner = THIS_MODULE) is racy as correctly noted at bug #12454. Someone can lookup entry with NULL ->owner, thus not pinning enything, and release it later resulting in module refcount underflow. We can keep ->owner and supply it at registration time like ->proc_fops and ->data. But this leaves ->owner as easy-manipulative field (just one C assignment) and somebody will forget to unpin previous/pin current module when switching ->owner. ->proc_fops is declared as "const" which should give some thoughts. ->read_proc/->write_proc were just fixed to not require ->owner for protection. rmmod'ed directories will be empty and return "." and ".." -- no harm. And directories with tricky enough readdir and lookup shouldn't be modular. We definitely don't want such modular code. Removing ->owner will also make PDE smaller. So, let's nuke it. Kudos to Jeff Layton for reminding about this, let's say, oversight. http://bugzilla.kernel.org/show_bug.cgi?id=12454 Signed-off-by: Alexey Dobriyan commit 692105b8ac5bcd75dc65f6a8f10bdbd0f0f34dcf Author: Matt LaPlante Date: Mon Jan 26 11:12:25 2009 +0100 trivial: fix typos/grammar errors in Kconfig texts Signed-off-by: Matt LaPlante Acked-by: Randy Dunlap Signed-off-by: Jiri Kosina commit 877d03105d04b2c13e241130277fa69c8d2564f0 Author: Nick Andrew Date: Mon Jan 26 11:06:57 2009 +0100 trivial: Fix misspelling of firmware Fix misspelling of firmware. Signed-off-by: Nick Andrew Signed-off-by: Jiri Kosina commit 321dee6e8b235c496f0a068a72d8df9a4e13ceb9 Author: Alexander Beregalov Date: Sun Mar 29 13:52:21 2009 -0700 wireless: remove duplicated .ndo_set_mac_address Signed-off-by: Alexander Beregalov Signed-off-by: David S. Miller commit 82268da1b130f763d22d04f7d016bbf6fc8815c2 Merge: 6e15cf0 5d80f8e Author: Ingo Molnar Date: Sat Mar 28 04:21:18 2009 +0100 Merge branch 'linus' into percpu-cpumask-x86-for-linus-2 Conflicts: arch/sparc/kernel/time_64.c drivers/gpu/drm/drm_proc.c Manual merge to resolve build warning due to phys_addr_t type change on x86: drivers/gpu/drm/drm_info.c Signed-off-by: Ingo Molnar commit 8a5117d80fe93de5df5b56480054f7df1fd20755 Author: Luis R. Rodriguez Date: Tue Mar 24 21:21:07 2009 -0400 cfg80211: default CONFIG_WIRELESS_OLD_REGULATORY to n And update description and feature-removal schedule according to the new plan. Signed-off-by: Luis R. Rodriguez Signed-off-by: John W. Linville commit e4e72fb4de93e3d4047a4ee3f08778422e17ed0d Author: Johannes Berg Date: Mon Mar 23 17:28:42 2009 +0100 mac80211/iwlwifi: move virtual A-MDPU queue bookkeeping to iwlwifi This patch removes all the virtual A-MPDU-queue bookkeeping from mac80211. Curiously, iwlwifi already does its own bookkeeping, so it doesn't require much changes except where it needs to handle starting and stopping the queues in mac80211. To handle the queue stop/wake properly, we rewrite the software queue number for aggregation frames and internally to iwlwifi keep track of the queues that map into the same AC queue, and only talk to mac80211 about the AC queue. The implementation requires calling two new functions, iwl_stop_queue and iwl_wake_queue instead of the mac80211 counterparts. Signed-off-by: Johannes Berg Cc: Reinette Chattre Signed-off-by: John W. Linville commit cd8ffc800ce18e558335c4946b2217864fc16045 Author: Johannes Berg Date: Mon Mar 23 17:28:41 2009 +0100 mac80211: fix aggregation to not require queue stop Instead of stopping the entire AC queue when enabling aggregation (which was only done for hardware with aggregation queues) buffer the packets for each station, and release them to the pending skb queue once aggregation is turned on successfully. We get a little more code, but it becomes conceptually simpler and we can remove the entire virtual queue mechanism from mac80211 in a follow-up patch. This changes how mac80211 behaves towards drivers that support aggregation but have no hardware queues -- those drivers will now not be handed packets while the aggregation session is being established, but only after it has been fully established. Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit a220858d30604902f650074bfac5a7598bc97ea4 Author: Johannes Berg Date: Mon Mar 23 17:28:40 2009 +0100 mac80211: add skb length sanity checking We just found a bug in zd1211rw where it would reject packets in the ->tx() method but leave them modified, which would cause retransmit attempts with completely bogus skbs, eventually leading to a panic due to not having enough headroom in those. This patch adds a sanity check to mac80211 to catch such driver mistakes; in this case we warn and drop the skb. Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit b1720231ca07dee3382980f3b25e6581bd2e54e9 Author: Johannes Berg Date: Mon Mar 23 17:28:39 2009 +0100 mac80211: unify and fix TX aggregation start When TX aggregation becomes operational, we do a number of steps: 1) print a debug message 2) wake the virtual queue 3) notify the driver Unfortunately, 1) and 3) are only done if the driver is first to reply to the aggregation request, it is, however, possible that the remote station replies before the driver! Thus, unify the code for this and call the new function ieee80211_agg_tx_operational in both places where TX aggregation can become operational. Additionally, rename the driver notification from IEEE80211_AMPDU_TX_RESUME to IEEE80211_AMPDU_TX_OPERATIONAL. Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit 1870cd71e87da1a1afb904f2c84086f487a07135 Author: Johannes Berg Date: Mon Mar 23 17:28:38 2009 +0100 mac80211: clean up __ieee80211_tx args __ieee80211_tx takes a struct ieee80211_tx_data argument, but only uses a few of its members, namely 'skb' and 'sta'. Make that explicit, so that less internal knowledge is required in ieee80211_tx_pending and the possibility of introducing errors here is removed. Signed-off-by: Johannes Berg Reviewed-by: Luis R. Rodriguez Signed-off-by: John W. Linville commit 2a577d98712a284a612dd51d69db5cb989810dc2 Author: Johannes Berg Date: Mon Mar 23 17:28:37 2009 +0100 mac80211: rework the pending packets code The pending packets code is quite incomprehensible, uses memory barriers nobody really understands, etc. This patch reworks it entirely, using the queue spinlock, proper stop bits and the skb queues themselves to indicate whether packets are pending or not (rather than a separate variable like before). Signed-off-by: Johannes Berg Reviewed-by: Luis R. Rodriguez Signed-off-by: John W. Linville commit f0e72851f7ad108fed20426b46a18ab5fcd5729f Author: Johannes Berg Date: Mon Mar 23 17:28:36 2009 +0100 mac80211: fix A-MPDU queue assignment Internally, mac80211 requires the skb's queue mapping to be set to the AC queue, not the virtual A-MPDU queue. This is not done correctly currently, this patch moves the code down to directly before the driver is invoked and adds a comment that it will be moved into the driver later. Since this requires __ieee80211_tx() to have the sta pointer, make sure to provide it in ieee80211_tx_pending(). Signed-off-by: Johannes Berg Reviewed-by: Luis R. Rodriguez Signed-off-by: John W. Linville commit 2de8e0d999b8790861cd3749bec2236ccc1c8110 Author: Johannes Berg Date: Mon Mar 23 17:28:35 2009 +0100 mac80211: rewrite fragmentation Fragmentation currently uses an allocated array to store the fragment skbs, and then keeps track of which have been sent and which are still pending etc. This is rather complicated; make it simpler by just chaining the fragments into skb->next and removing from that list when sent. Also simplifies all code that needs to touch fragments, since it now only needs to walk the skb->next list. This is a prerequisite for fixing the stored packet code, which I need to do for proper aggregation packet storing. Signed-off-by: Johannes Berg Reviewed-by: Luis R. Rodriguez Signed-off-by: John W. Linville commit 08df05aa9b25f3079585855506022bb33a011183 Author: Wey-Yi Guy Date: Tue Mar 24 10:02:54 2009 -0700 iwlwifi: show current driver status in user readable format change the display of current driver status bit to user readable format for better and easier debugging Signed-off-by: Wey-Yi Guy Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit 4bbf4d56583dd52c429d88f43cb614bdbe5deea6 Author: Johannes Berg Date: Tue Mar 24 09:35:46 2009 +0100 cfg80211: fix locking in nl80211_set_wiphy Luis reports that there's a circular locking dependency; this is because cfg80211_dev_rename() will acquire the cfg80211_mutex while the device mutex is held, while this normally is done the other way around. The solution is to open-code the device-getting in nl80211_set_wiphy and require holding the mutex around cfg80211_dev_rename rather than acquiring it within. Also fix a bug -- rtnl locking is expected by drivers so we need to provide it. Reported-by: Luis R. Rodriguez Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit 3832c287f11ba001bbe48e9be8c59cb9f71f6b43 Author: Johannes Berg Date: Tue Mar 24 08:46:57 2009 +0100 mac80211: fix RX path My previous patch ("mac80211: remove mixed-cell and userspace MLME code") was too obvious to me, so obvious that a stupid bug crept in. The IBSS RX function must be invoked for IBSS, of course, not anything != IBSS. Reported-by: Larry Finger Signed-off-by: Johannes Berg Tested-by: Larry Finger Signed-off-by: John W. Linville commit 5a0fe8ac70f81b5b91156736066e6445d0dcc61f Author: Bob Copeland Date: Mon Mar 23 23:35:37 2009 -0400 ath5k: properly drop packets from ops->tx We shouldn't return NETDEV_TX_BUSY from the TX callback, especially after we've mucked with the sk_buffs. Drop the packets and return NETDEV_TX_OK. Changes-licensed-under: 3-Clause-BSD Signed-off-by: Bob Copeland Signed-off-by: John W. Linville commit de00c04ecbb482507ace2197782123446a1cfdca Author: Christian Lamparter Date: Tue Mar 24 16:21:55 2009 +0100 ar9170: single module build This patch restores all-in-one module build procedure for ar9170. Signed-off-by: Christian Lamparter Signed-off-by: John W. Linville commit 051b919188650fe4c93ca8701183ae88439388f6 Author: Luis R. Rodriguez Date: Mon Mar 23 18:25:01 2009 -0400 ath9k: fix dma mapping leak of rx buffer upon rmmod We were claiming DMA buffers on the RX tasklet but never upon a simple module removal. Cc: stable@kernel.org Signed-off-by: FUJITA Tomonori Signed-off-by: Luis R. Rodriguez Signed-off-by: John W. Linville commit 14344b81ec264efbe59de0183f5ba38650a479a6 Author: Ivo van Doorn Date: Sat Mar 21 00:00:57 2009 +0100 rt2x00: New USB ID for rt73usb Signed-off-by: Ivo van Doorn Signed-off-by: John W. Linville commit b726604706ad88d8b28bc487e45e710f58cc19ee Author: Bob Copeland Date: Mon Mar 2 21:55:18 2009 -0500 ath5k: warn and correct rate for unknown hw rate indexes ath5k sets up a mapping table from the hardware rate index to the rate index used by mac80211; however, we have seen some received frames with incorrect rate indexes. Such frames normally get dropped with a warning in __ieee80211_rx(), but it doesn't include enough information to track down the error. This patch adds a warning to hw_to_driver_rix for any lookups that result in a rate index of -1, then returns a valid rate so the frame can be processed. Changes-licensed-under: 3-Clause-BSD Signed-off-by: Bob Copeland Cc: stable@kernel.org Signed-off-by: John W. Linville commit a3c0b87c4f21911fb7185902dd13f0e3cd7f33f7 Author: Lorenzo Nava Date: Sun Mar 22 19:15:41 2009 +0100 b43: fix b43_plcp_get_bitrate_idx_ofdm return type This patch fixes the return type of b43_plcp_get_bitrate_idx_ofdm. If the plcp contains an error, the function return value is 255 instead of -1, and the packet was not dropped. This causes a warning in __ieee80211_rx function because rate idx is out of range. Cc: stable@kernel.org Signed-off-by: Lorenzo Nava Signed-off-by: Michael Buesch Signed-off-by: John W. Linville commit a1bfa0eb98e2fedd05a64a4a8943ea8f6f7c5469 Author: Christian Lamparter Date: Mon Mar 23 15:49:33 2009 +0100 p54: Kconfig maintenance This patch updates p54's Kconfig entry and removes the out-dated device list. Signed-off-by: Christian Lamparter Signed-off-by: John W. Linville commit 2b874e83c970b45c328ab12239b066a43505454c Author: Johannes Berg Date: Mon Mar 23 14:10:22 2009 +0100 mac80211: rate control status only for controlled packets This patch changes mac80211 to not notify the rate control algorithm's tx_status() method when reporting status for a packet that didn't go through the rate control algorithm's get_rate() method. Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit 4a48e2a484e5cf99da4795cf2d6916e057d533ad Author: Christian Lamparter Date: Mon Mar 23 12:15:43 2009 +0100 ar9170: simplify & deBUG tx_status queueing and reporting This patch simplifies the tx_status report code by using four tx_queues per station instead of only one. (the skb lookup should be in O(1) now :-p ). Also, it fixes a really obvious copy&paste bug in the janitor work code and adds back a few spilled bits to the hardware definition header about QoS. Signed-off-by: Christian Lamparter Signed-off-by: John W. Linville commit 04de83815993714a7ba2618f637fa1092a5f664b Author: Kalle Valo Date: Sun Mar 22 21:57:35 2009 +0200 mac80211: add beacon filtering support Add IEEE80211_HW_BEACON_FILTERING flag so that driver inform that it supports beacon filtering. Drivers need to call the new function ieee80211_beacon_loss() to notify about beacon loss. Signed-off-by: Kalle Valo Signed-off-by: John W. Linville commit a08c1c1ac0c26229ca1ca45d554b209a56edc8be Author: Kalle Valo Date: Sun Mar 22 21:57:28 2009 +0200 cfg80211: add feature to hold bss In beacon filtering there needs to be a way to not expire the BSS even when no beacons are received. Add an interface to cfg80211 to hold BSS and make sure that it's not expired. Signed-off-by: Kalle Valo Signed-off-by: John W. Linville commit 9050bdd8589c373e01e41ddbd9a192de2ff01ef0 Author: Kalle Valo Date: Sun Mar 22 21:57:21 2009 +0200 mac80211: disable power save when scanning When software scanning we need to disable power save so that all possible probe responses and beacons are received. For hardware scanning assume that hardware will take care of that and document that assumption. Signed-off-by: Kalle Valo Signed-off-by: John W. Linville commit 15b7b0629c8213905926394dc73d600e0ca250ce Author: Kalle Valo Date: Sun Mar 22 21:57:14 2009 +0200 mac80211: track beacons separately from the rx path activity Separate beacon and rx path tracking in preparation for the beacon filtering support. At the same time change ieee80211_associated() to look a bit simpler. Probe requests are now sent only after IEEE80211_PROBE_IDLE_TIME, which is now set to 60 seconds. Signed-off-by: Kalle Valo Signed-off-by: John W. Linville commit 3cf335d527ba6af80f4143f3c9e5136afdb143af Author: Kalle Valo Date: Sun Mar 22 21:57:06 2009 +0200 mac80211: decrease execution of the associated timer Currently the timer is triggering every two seconds (IEEE80211_MONITORING_INTERVAL). Decrease the timer to only trigger during data idle periods to avoid waking up CPU unnecessary. The timer will still trigger during idle periods, that needs to be fixed later. There's also a functional change that probe requests are sent only when the data path is idle, earlier they were sent also while there was activity on the data path. This is also preparation for the beacon filtering support. Thanks to Johannes Berg for the idea. Signed-off-by: Kalle Valo Signed-off-by: John W. Linville commit af83debf5bb44257082d4489ac86123a0cadf6d3 Author: Tulio Magno Quites Machado Filho Date: Sun Mar 22 01:41:13 2009 +0100 ath5k: Support LED's on Acer Extensa 5620z Add vendor ID for Quanta Microsystems and update the led table with the reported device. Reported-by: Scott Barnes Signed-off-by: Tulio Magno Quites Machado Filho Signed-off-by: John W. Linville commit 75ca88c9701bf8f65fc1f009f10dd64b0378b977 Author: Christian Lamparter Date: Sat Mar 21 23:11:49 2009 +0100 ar9170: update Makefile, Kconfig and MAINTAINERS This patch update all necessary Makefile and Kconfig files. Now you can then enable ar9170 in the kernel configuration under: Device Drivers ---> [*] Network device support ---> Wireless LAN ---> [*] Wireless LAN (IEEE 802.11) Atheros AR9170 support Atheros AR9170 USB support Signed-off-by: Christian Lamparter Signed-off-by: John W. Linville commit b63a2cb30405777033d58045c562a3b04d87d702 Author: Christian Lamparter Date: Sat Mar 21 23:05:48 2009 +0100 ar9170: ar9170: USB frontend driver USB frontend driver code for Atheros' AR9170 modules. Signed-off-by: Christian Lamparter Signed-off-by: John W. Linville commit 6cb19353535f9f02fc2a753e3261a255406ba8fa Author: Christian Lamparter Date: Sun Mar 22 02:36:06 2009 +0100 ar9170: mac/bbp and phy code MAC/BBP and PHY programming code Signed-off-by: Christian Lamparter Signed-off-by: John W. Linville commit e9348cdd280eb6a1d6d38fef513b578dc9ead363 Author: Christian Lamparter Date: Sat Mar 21 23:05:13 2009 +0100 ar9170: ar9170: mac80211 interaction code This patch contains almost all mac80211 interaction code of AR9170. Signed-off-by: Christian Lamparter Signed-off-by: John W. Linville commit 23b53f4f55d833ecc5a11b5fba646c78d3876927 Author: Christian Lamparter Date: Sat Mar 21 23:04:48 2009 +0100 ar9170: hardware and eeprom header files hardware / firmware interface definitions for Atheros' AR9170 based devices. Signed-off-by: Christian Lamparter Signed-off-by: John W. Linville commit 7986cf9581767d250ca0e5a554541bb276e08d21 Author: Johannes Berg Date: Sat Mar 21 17:08:43 2009 +0100 mac80211: remove mixed-cell and userspace MLME code Neither can currently be set from userspace, so there's no regression potential, and neither will be supported from userspace since the new userspace APIs allow the SME, which is in userspace, to control all we need. Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit ac7f9cfa2c3b810e0adfb889ad407a8c79a84dbe Author: Johannes Berg Date: Sat Mar 21 17:07:59 2009 +0100 cfg80211: accept no-op interface mode changes When somebody tries to set the interface mode to the existing mode, don't ask the driver but silently accept the setting. Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit 86f04680df4a136a4a90501572dc2f31f8426581 Author: Luis R. Rodriguez Date: Fri Mar 20 23:53:07 2009 -0400 cfg80211: remove code about country IE support with OLD_REG We had left in code to allow interested developers to add support for parsing country IEs when OLD_REG was enabled. This never happened and since we're going to remove OLD_REG lets just remove these comments and code for it. This code path was never being entered so this has no functional change. Signed-off-by: Luis R. Rodriguez Signed-off-by: John W. Linville commit 6ee7d33056f6e6fc7437d980dcc741816deedd0f Author: Luis R. Rodriguez Date: Fri Mar 20 23:53:06 2009 -0400 cfg80211: make regdom module parameter available oustide of OLD_REG It seems a few users are using this module parameter although its not recommended. People are finding it useful despite there being utilities for setting this in userspace. I'm not aware of any distribution using this though. Until userspace and distributions catch up with a default userspace automatic replacement (GeoClue integration would be nirvana) we copy the ieee80211_regdom module parameter from OLD_REG to the new reg code to help these users migrate. Users who are using the non-valid ISO / IEC 3166 alpha "EU" in their ieee80211_regdom module parameter and migrate to non-OLD_REG enabled system will world roam. This also schedules removal of this same ieee80211_regdom module parameter circa March 2010. Hope is by then nirvana is reached and users will abandoned the module parameter completely. Signed-off-by: Luis R. Rodriguez Signed-off-by: John W. Linville commit cc0b6fe88e99096868bdbacbf486c97299533b5a Author: Luis R. Rodriguez Date: Fri Mar 20 23:53:05 2009 -0400 cfg80211: fix incorrect assumption on last_request for 11d The incorrect assumption is the last regulatory request (last_request) is always a country IE when processing country IEs. Although this is true 99% of the time the first time this happens this could not be true. This fixes an oops in the branch check for the last_request when accessing drv_last_ie. The access was done under the assumption the struct won't be null. Note to stable: to port to 29 replace as follows, only 29 has country IE code: s|NL80211_REGDOM_SET_BY_COUNTRY_IE|REGDOM_SET_BY_COUNTRY_IE Cc: stable@kernel.org Reported-by: Quentin Armitage Signed-off-by: Luis R. Rodriguez Signed-off-by: John W. Linville commit 2e097dc65673ed421bbc2e49f52c125aa43a8ee6 Author: Luis R. Rodriguez Date: Fri Mar 20 23:53:04 2009 -0400 cfg80211: force last_request to be set for OLD_REG if regdom is EU Although EU is a bogus alpha2 we need to process the send request as our code depends on last_request being set. Cc: stable@kernel.org Reported-by: Quentin Armitage Signed-off-by: Luis R. Rodriguez Signed-off-by: John W. Linville commit 98dfaa577855a551e798e3a99b934386698d2026 Author: Luis R. Rodriguez Date: Fri Mar 20 23:46:11 2009 -0400 mac80211_hwsim: let the reg workqueue breathe when regtest is set Without this the regulatory domain isn't seen and we end up intersecting for each request (each radio). Signed-off-by: Luis R. Rodriguez Signed-off-by: John W. Linville commit 9cb5412b0760981d43ac3e612992c90cea690e72 Author: Pat Erley Date: Fri Mar 20 22:59:59 2009 -0400 Add mesh point functionality to ath9k This patch enables mesh point operation for ath9k. Tested with b43, ath9k, rt2500usb, and ath5k as peers. Signed-off-by: Pat Erley Signed-off-by: John W. Linville commit d8cd7effc20027c313d4086b123046ff9f9a5814 Author: Christian Lamparter Date: Mon Mar 23 15:37:45 2009 +0100 p54: fix SoftLED compile dependencies This patch fixes a compile problem when the MAC80211_LEDS triggers are enabled but not LED class itself. (which is sort of pointless, but anyway...) Signed-off-by: Christian Lamparter Signed-off-by: John W. Linville commit eec60b037a875513d9715dcdb90b13ed81fc5f26 Author: Jouni Malinen Date: Fri Mar 20 21:21:19 2009 +0200 nl80211: Check iftype in cfg80211 code We do not want to require all the drivers using cfg80211 to need to do this. In addition, make the error values consistent by using EOPNOTSUPP instead of semi-random assortment of errno values. Signed-off-by: Jouni Malinen Signed-off-by: John W. Linville commit 35a8efe1a67ba5d7bb7492f67f52ed2aa4925892 Author: Jouni Malinen Date: Fri Mar 20 21:21:18 2009 +0200 nl80211: Check that netif_runnin is true in cfg80211 code We do not want to require all the drivers using cfg80211 to need to do this or to be prepared to handle these commands when the interface is down. Signed-off-by: Jouni Malinen Signed-off-by: John W. Linville commit 255e737eab645ec6037baeca04a5e0a7c3b1f459 Author: Jouni Malinen Date: Fri Mar 20 21:21:17 2009 +0200 nl80211: Add more through validation of MLME command parameters Check that the used authentication type and reason code are valid here so that drivers/mac80211 do not need to care about this. In addition, remove the unnecessary validation of SSID attribute length which is taken care of by netlink policy. Signed-off-by: Jouni Malinen Signed-off-by: John W. Linville commit 65fc73ac4a310945dfeceac961726c2765ad2ec0 Author: Jouni Malinen Date: Fri Mar 20 21:21:16 2009 +0200 nl80211: Remove NL80211_CMD_SET_MGMT_EXTRA_IE The functionality that NL80211_CMD_SET_MGMT_EXTRA_IE provided can now be achieved with cleaner design by adding IE(s) into NL80211_CMD_TRIGGER_SCAN, NL80211_CMD_AUTHENTICATE, NL80211_CMD_ASSOCIATE, NL80211_CMD_DEAUTHENTICATE, and NL80211_CMD_DISASSOCIATE. Since this is a very recently added command and there are no known (or known planned) applications using NL80211_CMD_SET_MGMT_EXTRA_IE and taken into account how much extra complexity it adds to the IE processing we have now (and need to add in the future to fix IE order in couple of frames), it looks like the best option is to just remove the implementation of this command for now. The enum values themselves are left to avoid changing the nl80211 command or attribute numbers. Signed-off-by: Jouni Malinen Signed-off-by: John W. Linville commit d7873cb9abb5d8b4b9f7f5749af06e4e03798733 Author: Jouni Malinen Date: Fri Mar 20 15:53:16 2009 +0200 mac80211: Fix memleak in nl80211 authentication on deinit This file was forgotten from the quilt patch that added MLME primitives, so the kfree on interface removal is missing. Fix this potential memleak by freeing the temporary Authentication frame IEs from SME when the interface is being removed. Signed-off-by: Jouni Malinen Signed-off-by: John W. Linville commit 6b2c40326f9569283444d483448bcaadeca903e9 Author: Vasanthakumar Thiagarajan Date: Fri Mar 20 15:27:50 2009 +0530 ath9k: Nuke struct ath_xmit_status Signed-off-by: Vasanthakumar Thiagarajan Signed-off-by: John W. Linville commit 8a92e2ee02dee127d309c73969aeb2a56567c9a0 Author: Vasanthakumar Thiagarajan Date: Fri Mar 20 15:27:49 2009 +0530 ath9k: Fix bug in reporting status of tx rate This patch updates count of every hw tried rate with appropriate tries before reporting tx status of a frame. Signed-off-by: Vasanthakumar Thiagarajan Signed-off-by: John W. Linville commit 827b1fb44b7e41377a5498b9d070a11dfae2c283 Author: Johannes Berg Date: Fri Mar 13 11:44:18 2009 +0100 mac80211: resume properly, add suspend/resume test When mac80211 resumes, it currently doesn't reconfigure the interfaces entirely and also doesn't reconfigure BSS information -- fix this. Also, to be able to test this, add a debugfs file that just calls the suspend/resume code to see what happens when we go through that, without needing the time-consuming suspend/resume cycle. (Original version broke the build for CONFIG_PM=n. Define alternative functions for that situation. -- JWL) Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit 3e3ccb3d9b8d5a1b65b34e1be2decf213ba3bebb Author: Michael Buesch Date: Thu Mar 19 19:27:21 2009 +0100 b43: Mask PHY TX error interrupt, if not debugging This masks the PHY TX error interrupt, if debugging is disabled. Currently we have a bug somewhere which triggers this interrupt once in a while. (Depends on the network noise/quality). While this is nonfatal, it scares the hell out of users and we frequently receive bugreports that incorrectly identify this error message as the reason. There's another problem with this. The PHY TX error interrupt is protected with a watchdog that will restart the device if it keeps triggering very often. This is used to fix interrupt storms from completely broken devices. However, this watchdog might trigger in completely normal operation. If the TX capacity of the card is saturated, the likeliness of the watchdog triggering increases, as more TX errors occur. The current threshold for the watchdog is 1000 errors in 15 seconds. This patch adds a workaround for the issue by just enabling the interrupt if debugging is disabled (by Kconfig or by modparam). This has the downside that real fatal PHY TX errors are not caught anymore. But this is nonfatal due to the following reasons: * If the card is not able to transmit anymore, MLME will notice anyway. * I did _never_ see a real fatal PHY TX error in a mainline b43 driver. * It does _not_ result in interrupt storms or something like that. It will simply result in a stalled card. It can be debugged by enabling the debugging module parameter. Signed-off-by: Michael Buesch Signed-off-by: John W. Linville commit 1bf68e5cda40eaa26b186f043340fd283a4fb718 Author: Geert Uytterhoeven Date: Thu Mar 19 13:33:52 2009 +0100 wireless/p54: P54_SPI should depend on GENERIC_HARDIRQS m68k allmodconfig: | drivers/net/wireless/p54/p54spi.c: In function 'p54spi_probe': | drivers/net/wireless/p54/p54spi.c:675: error: implicit declaration of function | 'set_irq_type' | make[4]: *** [drivers/net/wireless/p54/p54spi.o] Error 1 Signed-off-by: Geert Uytterhoeven Signed-off-by: John W. Linville commit 636a5d3625993c5ca59abc81794b9ded93cdb740 Author: Jouni Malinen Date: Thu Mar 19 13:39:22 2009 +0200 nl80211: Add MLME primitives to support external SME This patch adds new nl80211 commands to allow user space to request authentication and association (and also deauthentication and disassociation). The commands are structured to allow separate authentication and association steps, i.e., the interface between kernel and user space is similar to the MLME SAP interface in IEEE 802.11 standard and an user space application takes the role of the SME. The patch introduces MLME-AUTHENTICATE.request, MLME-{,RE}ASSOCIATE.request, MLME-DEAUTHENTICATE.request, and MLME-DISASSOCIATE.request primitives. The authentication and association commands request the actual operations in two steps (assuming the driver supports this; if not, separate authentication step is skipped; this could end up being a separate "connect" command). The initial implementation for mac80211 uses the current net/mac80211/mlme.c for actual sending and processing of management frames and the new nl80211 commands will just stop the current state machine from moving automatically from authentication to association. Future cleanup may move more of the MLME operations into cfg80211. The goal of this design is to provide more control of authentication and association process to user space without having to move the full MLME implementation. This should be enough to allow IEEE 802.11r FT protocol and 802.11s SAE authentication to be implemented. Obviously, this will also bring the extra benefit of not having to use WEXT for association requests with mac80211. An example implementation of a user space SME using the new nl80211 commands is available for wpa_supplicant. This patch is enough to get IEEE 802.11r FT protocol working with over-the-air mechanism (over-the-DS will need additional MLME primitives for handling the FT Action frames). Signed-off-by: Jouni Malinen Signed-off-by: John W. Linville commit 6039f6d23fe792d615da5449e9fa1c6b43caacf6 Author: Jouni Malinen Date: Thu Mar 19 13:39:21 2009 +0200 nl80211: Event notifications for MLME events Add new nl80211 event notifications (and a new multicast group, "mlme") for informing user space about received and processed Authentication, (Re)Association Response, Deauthentication, and Disassociation frames in station and IBSS modes (i.e., MLME SAP interface primitives MLME-AUTHENTICATE.confirm, MLME-ASSOCIATE.confirm, MLME-REASSOCIATE.confirm, MLME-DEAUTHENTICATE.indicate, and MLME-DISASSOCIATE.indication). The event data is encapsulated as the 802.11 management frame since we already have the frame in that format and it includes all the needed information. This is the initial step in providing MLME SAP interface for authentication and association with nl80211. In other words, kernel code will act as the MLME and a user space application can control it as the SME. Signed-off-by: Jouni Malinen Signed-off-by: John W. Linville commit a299542e97ec1939fdca7db6d3d82c0aa9bf8b9a Author: Jouni Malinen Date: Thu Mar 19 13:39:20 2009 +0200 mac80211: Fix reassociation by not clearing previous BSSID We must not clear the previous BSSID when roaming to another AP within the same ESS for reassociation to be used properly. It is fine to clear this when the SSID changes, so let's move the code into ieee80211_sta_set_ssid(). Signed-off-by: Jouni Malinen Signed-off-by: John W. Linville commit 4b4698c443c9db62b220c41a1793872d6ebe82e1 Author: Jouni Malinen Date: Thu Mar 19 13:39:19 2009 +0200 mac80211: Fix a typo in assoc vs. reassoc check Signed-off-by: Jouni Malinen Signed-off-by: John W. Linville commit 0934af2340caf3c9f247ae650bf0c6faa4203dba Author: Vasanthakumar Thiagarajan Date: Wed Mar 18 20:22:00 2009 +0530 ath9k: Fix rate control update for aggregated frames We will miss rate control update if first A-MPDU of an aggregation is not Block Acked as we always tell if the rate control needs to updated through update_rc of first A-MPDU. This patch does rate control update for the first A-MPDU which notifies it's tx status (which is not necessarily the first A-MPDU of an aggregation) to mac80211. Signed-off-by: Vasanthakumar Thiagarajan Signed-off-by: John W. Linville commit a9a6ffffd05f97e6acbdeafc595e269855829751 Author: Kalle Valo Date: Wed Mar 18 14:06:44 2009 +0200 mac80211: don't drop nullfunc frames during software scan ieee80211_tx_h_check_assoc() was dropping everything else than probe requests during software scan. So the nullfunc frame with the power save bit was dropped and AP never received it. This meant that AP never buffered any frames for the station during software scan. Fix this by allowing to transmit both probe request and nullfunc frames during software scan. Tested with stlc45xx. Signed-off-by: Kalle Valo Acked-by: Johannes Berg Signed-off-by: John W. Linville commit 43da9192326a4499b5faf737c3636f25b56b53e0 Author: Abhijeet Kolekar Date: Tue Mar 17 21:51:53 2009 -0700 iwl3945: replace stations with stations_39 A *leftover* stations is replaced with stations_39. Signed-off-by: Abhijeet Kolekar Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit a2f1cbebdccc866d6c7da9eb655d35b5c60d33a0 Author: Wey-Yi Guy Date: Tue Mar 17 21:51:52 2009 -0700 iwlwifi: report error when detect failure during stop agg queue This fix related to bug 1921 at http://www.intellinuxwireless.org/bugzilla/show_bug.cgi?id=1921 when detect error during stopping tx aggregation queue, report the error to help identify the problem. Signed-off-by: Wey-Yi Guy Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit 82127493a656f6293ffb1566410b5753f29991ef Author: Abhijeet Kolekar Date: Tue Mar 17 21:51:51 2009 -0700 iwl3945: control rate decrease Control the rate decrease. Do not decrease the rate fast. Use success_ratio for rate scaling :) Signed-off-by: Abhijeet Kolekar Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit 1e680233e7edfd081ebf9ec54e118547d5de7a8c Author: Abhijeet Kolekar Date: Tue Mar 17 21:51:50 2009 -0700 iwl3945: fix checkpatch.pl errors Patch fixes two checkpatch.pl errors. Signed-off-by: Abhijeet Kolekar Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit 3e5d238fa75783e1080e7413c7e36dd5203950eb Author: Abhijeet Kolekar Date: Tue Mar 17 21:51:49 2009 -0700 iwl3945: use iwl_cmd_queue_free iwl_cmd_queue_free needs to be used to free up the cmd_queue, as TFD slots for cmd_queue and tx_queue are different. Signed-off-by: Abhijeet Kolekar Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit 21c02a1ab2d4b4a439461140e1ac355db32c3f2b Author: Abhijeet Kolekar Date: Tue Mar 17 21:51:48 2009 -0700 iwl3945: set TFD_QUEUE_MAX to correct value Total number of queues is 8 but only 7 of them are TX queues. 4 AC(Data) queue ,1 CMD and 2 HCCA. The HCCA queues are not used. max_txq_num is set to maximum usable TX queues. Signed-off-by: Abhijeet Kolekar Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit b1c6019bc0fe829309258d888f47d9ae54353039 Author: Mohamed Abbas Date: Tue Mar 17 21:51:47 2009 -0700 iwlwifi: support 11h Set IEEE80211_HW_SPECTRUM_MGMT bit in hw->flags, this tell mac80211 we support spectrum mgmt. Signed-off-by: Mohamed Abbas Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit 28c608750f5f72e3c4139f7a51358eccd58c80a9 Author: Mohamed Abbas Date: Tue Mar 17 21:51:45 2009 -0700 iwlcore: dont commit power command if interface is not up If user set new power level, accept the new power level and only send command to host if the interface is up and radio on. Signed-off-by: Mohamed Abbas Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit 4f01ac01539d83709d6ae314fc172da7b7e70456 Author: Mohamed Abbas Date: Tue Mar 17 21:51:44 2009 -0700 iwlagn: allow power level setting all the times allow user to set power level at all times Signed-off-by: Mohamed Abbas Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit 5c2207c64209be2fe0d6b43ada2e41b28a948015 Author: Wey-Yi Guy Date: Tue Mar 17 21:51:43 2009 -0700 iwlwifi: return 0 for AMPDU_TX/RX_STOP request if NIC is going down When receive IEEE80211_AMPDU_RX_STOP or IEEE80211_AMPDU_TX_STOP request in iwl_mac_ampdu_action() from mac80211; check STATUS_EXIT_PENDING bit, if NIC is on the way out, then return 0 back to mac80211, this can prevent mac80211 report HW error incorrectly. Signed-off-by: Wey-Yi Guy Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit 37fec3846a5a8b098e35c44ee858407bab0df43f Author: Mohamed Abbas Date: Tue Mar 17 21:51:42 2009 -0700 iwl3945: use changed in iwl3945_mac_config In function iwl3945_mac_config use changed flag to call only the affected functions. Signed-off-by: Mohamed Abbas Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit 019fb97d47896c0ead4a77f55e5350c2750f675f Author: Mohamed Abbas Date: Tue Mar 17 21:59:18 2009 -0700 iwlagn: use changed in mac_config In function iwl_mac_config use changed flag to call only the affected functions. This patch also allow user to cache channel, txpower and power value when the interface is not ready and apply the changes once the interface ready. Signed-off-by: Mohamed Abbas Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit 3b85875a252dbbd95c2e04d73639719a0a79634e Author: Johannes Berg Date: Thu Mar 12 09:55:09 2009 +0100 nl80211: rework locking When I added scanning to cfg80211, we got a lock dependency like this: rtnl --> cfg80211_mtx nl80211, on the other hand, has the reverse lock dependency: cfg80211_mtx --> rtnl which clearly is a bad idea. This patch reworks nl80211 to take these two locks in the other order to fix the possible, and easily triggerable, deadlock. Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit 8f655dde240293f3b82313cae91c64ffd7b64c50 Author: Nick Kossifidis Date: Sun Mar 15 22:20:35 2009 +0200 ath5k: Add tx power calibration support * Add tx power calibration support * Add a few tx power limits * Hardcode default power to 12.5dB * Disable TPC for now v2: Address Jiri's comments Signed-off-by: Nick Kossifidis Signed-off-by: John W. Linville commit 722f069a6dc95d7c6c2cdfbe3413899a3b768f9c Author: Sujith Date: Tue Mar 17 08:50:06 2009 +0530 mac80211: Tear down aggregation sessions for suspend/resume When the driver has been notified with a STA_REMOVE, it tears down the internal ADDBA state. On resume, trying to initiate aggregation would fail because mac80211 has not cleared the operational state for that . This can be fixed by tearing down the existing sessions on a suspend. Also, the driver can initiate a new BA session when suspend is in progress. This is fixed by marking the station as being in suspend state and denying ADDBA requests for such STAs. Signed-off-by: Sujith Acked-by: Johannes Berg Signed-off-by: John W. Linville commit e23a9014fd4d502a419255a83e2479ab804c6f16 Author: Bob Copeland Date: Mon Mar 16 22:34:03 2009 -0400 ath5k: remove dummy PCI "retry timeout" fix Remove the PCI retry timeout code, for all the same reasons that Luis Rodriguez removed it for ath9k. Changes-licensed-under: 3-Clause-BSD Cc: Luis Rodriguez Signed-off-by: Bob Copeland Signed-off-by: John W. Linville commit 9ca9fb8aa8422595956af9681518cdb8b167055e Author: Bob Copeland Date: Mon Mar 16 22:34:02 2009 -0400 ath5k: disable MIB interrupts The MIB interrupt fires whenever counters overflow; however without support for automatic noise immunity, we can sometimes get an interrupt storm. The get_stats() callback reads the counters anyway so we can disable the interrupt for now until ANI is implemented. This fixes the issue reported in http://bugzilla.kernel.org/show_bug.cgi?id=12647. Changes-licensed-under: 3-Clause-BSD Cc: stable@kernel.org Signed-off-by: Bob Copeland Signed-off-by: John W. Linville commit 8e218fb24faef0bfe95bc91b3c05261e20439527 Author: Nick Kossifidis Date: Sun Mar 15 22:17:04 2009 +0200 ath5k: Convert chip specific calibration data to a generic format * Convert chip specific calibration data to a generic format common for all chips Note: We scale up power to be in 0.25dB units for all chips for compatibility with RF5112 v2: Address Bob's and Jiri's comments Signed-off-by: Nick Kossifidis Signed-off-by: John W. Linville commit 504f365554a7f543fcd706878ff9edf785be7614 Author: Nick Kossifidis Date: Sun Mar 15 22:13:39 2009 +0200 ath5k: Choose the right initvals for RF2425 * Fix a typo in initvals.c so that we use the RF2425 array for RF2425 and not RF2413 Note: This also fixes incorect pd gain overlap since RF2425 has different pd gain overlap from RF2413 Signed-off-by: Nick Kossifidis Acked-by: Bob Copeland Signed-off-by: John W. Linville commit 85067c06ba0329c37d5a357ced1f39a5583ccc98 Author: Vasanthakumar Thiagarajan Date: Sat Mar 14 19:59:41 2009 +0530 ath9k: Keep LED on in idle state after association Signed-off-by: Vasanthakumar Thiagarajan Signed-off-by: John W. Linville commit 7f0216a49bea717b9606b81c60f2f0b6152123eb Author: Johannes Berg Date: Sat Mar 14 09:42:49 2009 +0100 mac80211: acquire sta_lock for station suspend/resume To avoid concurrent manipulations of the sta list (which shouldn't be possible at this point, but anyway) we need to hold the sta_lock around iterating the list. At the same time, we do not need to iterate the list at all if the driver doesn't want to be notified. Signed-off-by: Johannes Berg Acked-by: Bob Copeland Signed-off-by: John W. Linville commit 8fdc621dc743b87879ccf0177969864b09388d9a Author: Johannes Berg Date: Sat Mar 14 09:34:01 2009 +0100 nl80211: export supported commands This makes nl80211 export the supported commands (command groups) per wiphy so userspace has an idea what it can do -- this will be required reading for userspace when we introduce auth/assoc /or/ connect for older hardware that cannot separate auth and assoc. Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit ec30415f7935f0ff92f93a4ac87233ca3007a78a Author: Vasanthakumar Thiagarajan Date: Fri Mar 13 20:26:52 2009 +0530 mac80211: Populate HT limitation with TKIP/WEP to the handler for SIOCSIWENCODE too Signed-off-by: Vasanthakumar Thiagarajan Signed-off-by: John W. Linville commit aae89831df03e5282a8f5c0ee46432cfb677fc5c Author: Johannes Berg Date: Fri Mar 13 12:52:10 2009 +0100 wireless: radiotap updates Radiotap was updated to include a "bad PLCP" flag and standardise the "bad FCS" flag in the "flags" rather than "RX flags" field, this patch updates Linux to that standard. Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit 25420604c8967ff24f087dd7b9cd4b278567d39a Author: Johannes Berg Date: Fri Mar 13 11:43:36 2009 +0100 mac80211: stop queues across suspend/resume Even though userland probably cannot submit packets, there might still be some coming, and that's no good when the driver doesn't expect them. Stop the queues across suspend/resume. Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit b5bde374f0f61f5d97114d400ade8fc96bf6f10d Author: Johannes Berg Date: Fri Mar 13 11:19:45 2009 +0100 mac80211: fix warnings in ieee80211_if_config The last warning can never trigger, and the explicit AP_VLAN check is pointless if we move the config_interface check down, in practice config_interface is required anyway. Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit cee075a24eec64f1f5b2b3b14753b2d4b8ecce55 Author: Sujith Date: Fri Mar 13 09:07:23 2009 +0530 ath9k: Update copyright in all the files How time flies. Signed-off-by: Sujith Signed-off-by: John W. Linville commit c2da50e5837f92c9f16a611efd1bb0754036691b Author: Sujith Date: Fri Mar 13 08:56:11 2009 +0530 ath9k: Fix bug in handling single stream stations AP mode currently sets up the dual stream capability for all stations. This patch fixes it by checking if the associated station supports dual stream MCS rates (8-15). We would disregard any MCS rates above 15, since Atheros HW supports only 0..15 rates currently, and can't receive at rates > 15 anyway. Signed-off-by: Sujith Signed-off-by: John W. Linville commit 95e4acb7331722236b9f11492ae2e96473210ebc Author: Sujith Date: Fri Mar 13 08:56:09 2009 +0530 ath9k: Fill in ack signal in TX status This patch fills the ack_signal field in TX status with an appropriate value from the TX descriptor. Signed-off-by: Sujith Signed-off-by: John W. Linville commit e71cef37f1f4cb7e9c919cbaabe23438f10a7080 Author: Sujith Date: Fri Mar 13 08:56:07 2009 +0530 ath9k: Fix bug in 4K EEPROM size calculation We should be checking with the 4K header and not the non-4K header size. Signed-off-by: Sujith Signed-off-by: John W. Linville commit d6509151bd3e952b7d157ea4dbae23279d427e95 Author: Sujith Date: Fri Mar 13 08:56:05 2009 +0530 ath9k: Change return type for set_board_values() We always return true, checking for 'false' return value is bogus anyway, so fix this. Signed-off-by: Sujith Signed-off-by: John W. Linville commit a83615d74d9b952f24c904baad58610ed9d76838 Author: Sujith Date: Fri Mar 13 08:56:04 2009 +0530 ath9k: Introduce a helper function for setting board gain values This improves readability. Handle both 4K/non-4K EEPROM in this patch. Signed-off-by: Sujith Signed-off-by: John W. Linville commit 355363fcf7daded4a48308b54d6b86bea4f8bb6d Author: Sujith Date: Fri Mar 13 08:56:02 2009 +0530 ath9k: Move AR5416_VER_MASK to a common location Signed-off-by: Sujith Signed-off-by: John W. Linville commit 7d01b221b338ef2a5b1ffa9c60645c0bdcce191e Author: Sujith Date: Fri Mar 13 08:55:55 2009 +0530 ath9k: Miscellaneous EEPROM handling cleanup Print the EEPROM version/revision on init. Choose appropriate debug masks on error conditions, and remove useless print messages. Signed-off-by: John W. Linville commit b572b24c578ab1be9d1fcb11d2d8244878757a66 Author: Luis R. Rodriguez Date: Thu Mar 12 18:18:51 2009 -0400 ath9k: remove dummy PCI "retry timeout" fix Remove the PCI retry timeout code as that was just taken from ipw2100 due to historical reasons but in reality its a no-op, additionally its simply incorrect as each PCI devices has its own custom PCI configuration space on PCI config space >= 0x40. Not to mention we were trying to write 0 to a place that already has 0 on it. Cc: Matthew Garrett Cc: Ben Cahill Cc: Inaky Perez-Gonzalez Tested-by: Adel Gadllah Signed-off-by: Luis R. Rodriguez Signed-off-by: John W. Linville commit 4ed96f04f8a1869757f4dd4a9283a18ec63c442f Author: Jouni Malinen Date: Thu Mar 12 21:53:23 2009 +0200 ath9k: Add support for multiple virtual AP interfaces This patch fixes the TSF offset calculation for staggered Beacon frames and sets ATH_BCBUF back to the earlier value 4 to enable multi-BSS configurations of up to four BSSes. Signed-off-by: Jouni Malinen Signed-off-by: John W. Linville commit 11432379fd2a3854a3408424d8dcd99afd811573 Author: Helmut Schaa Date: Thu Mar 12 14:04:34 2009 +0100 mac80211: start pending scan after probe/auth/assoc timed out If a scan is queued in STA mode while the interface is in state direct probe, authenticate or associate the scan is delayed until the interface enters disabled or associated state. But in case of direct probe-, authentication- or association- timeout sta_work will not be scheduled anymore (without external trigger) and thus the pending scan is not executed and prevents a new scan from being triggered (-EBUSY). Fix this by queueing the sta work again after direct probe-, authentication- and association- timeout. Signed-off-by: Helmut Schaa Signed-off-by: John W. Linville commit 176be728ee7d32cfd33702d82c0733e51f66ab5b Author: Johannes Berg Date: Thu Mar 12 23:49:28 2009 +0100 mac80211: remove ieee80211_num_regular_queues This inline is useless and actually makes the code _longer_ rather than shorter. Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit 14587ce2a8898de959f32dfd505b4871f09930d5 Author: Vasanthakumar Thiagarajan Date: Thu Mar 12 15:32:54 2009 +0530 ath9k: Set IEEE80211_TX_CTL_RATE_CTRL_PROBE in rate control for probe rate Signed-off-by: Vasanthakumar Thiagarajan Signed-off-by: John W. Linville commit 633e24ed95b6c87b42f201ecb65c12a75a5a7eef Author: Reinette Chatre Date: Thu Mar 12 09:20:40 2009 -0700 cfg80211/nl80211: remove usage of CONFIG_NL80211 The scan capability added to cfg80211/nl80211 introduced a dependency on nl80211 by cfg80211. We can thus no longer have just cfg80211 without nl80211. Specifically, cfg80211_scan_done() calls nl80211_send_scan_aborted() or nl80211_send_scan_done(). Now we remove the option for user to select nl80211. It will always be compiled if user selects cfg80211. Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit fa56dddd6720c8d4b9fa4c942377d2a019cf3708 Author: Alina Friedrichsen Date: Tue Mar 10 00:49:46 2009 +0100 mac80211: ieee80211_ibss_commit() cleanup Don't call ieee80211_sta_find_ibss() directly, like it's done in STA mode, so that the commit() call is more harmless respectively has less site-effects. Signed-off-by: Alina Friedrichsen Signed-off-by: John W. Linville commit 6e15cf04860074ad032e88c306bea656bbdd0f22 Merge: be0ea69 60db564 Author: Ingo Molnar Date: Thu Mar 26 21:39:17 2009 +0100 Merge branch 'core/percpu' into percpu-cpumask-x86-for-linus-2 Conflicts: arch/parisc/kernel/irq.c arch/x86/include/asm/fixmap_64.h arch/x86/include/asm/setup.h kernel/irq/handle.c Semantic merge: arch/x86/include/asm/fixmap.h Signed-off-by: Ingo Molnar commit 0687478a9977db0698d40f0024d4b06fd42e01a0 Author: Stephen Hemminger Date: Thu Mar 26 15:11:27 2009 +0000 wireless: convert wavelan to net_device_ops Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit 8fdcf1aba33a61475d411d91ab47c2c9adb3e4c3 Author: Stephen Hemminger Date: Thu Mar 26 15:11:26 2009 +0000 wireless: convert arlan to net_device_ops Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit 23d12e2bdd4f73d90c8c29674c531aa45eecf27f Author: David S. Miller Date: Wed Mar 25 00:03:16 2009 -0700 rndis_wlan: Fix build with netdev_ops compat disabled. Instead of storing a private ->set_multicast_list, just have a private netdev ops. Signed-off-by: David S. Miller commit 8be7cdccacfbfc707e7370cad9bb168defed636f Merge: ecd4137 61fa9dc Author: David S. Miller Date: Mon Mar 23 13:35:04 2009 -0700 Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6 Conflicts: drivers/net/ucc_geth.c commit 5ae4efbcd2611562a8b93596be034e63495706a5 Author: Stephen Hemminger Date: Fri Mar 20 19:36:43 2009 +0000 hostap: convert to net_device_ops Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit 4cfa8e45f4bb26ff38155f94a810a876b739958d Author: Stephen Hemminger Date: Fri Mar 20 19:36:42 2009 +0000 hostap: convert to internal net_device_stats Use pre-existing net_device_stats in network_device struct. Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit 44e9ad0b5a9bd4de7ff3ac28b27d6577eb58fd91 Author: Stephen Hemminger Date: Fri Mar 20 19:36:41 2009 +0000 ipw2200: convert to net_device_ops Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit 3e47fcea201ba7b08f9f13cead6e3045a80fb279 Author: Stephen Hemminger Date: Fri Mar 20 19:36:40 2009 +0000 ipw2100: convert to net_device_ops Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit d5b3b9ae065d093fe0e1588a07f3ebd71c815f0b Author: Stephen Hemminger Date: Fri Mar 20 19:36:39 2009 +0000 ipw2x00: convert infrastructure for use by net_device_ops Expose routines so drivers can hook. Only set ptrs in netdev if using old compat code. Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit ce55cbaf3a4498719bdb5a022a45d256b84749f5 Author: Stephen Hemminger Date: Fri Mar 20 19:36:38 2009 +0000 ipw2x00: convert to internal net_device_stats Replace struct in ieee with current net_device_stats, so no longer need get_stats hook Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit f02abf1010dfb9fa7f56788fb28bc63b0ea34968 Author: Stephen Hemminger Date: Fri Mar 20 19:36:37 2009 +0000 libertas: convert to net_device_ops Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit bbfc6b788f63f079fb8eeeb8d397bb1c0a8065a1 Author: Stephen Hemminger Date: Fri Mar 20 19:36:36 2009 +0000 libertas: convert to internal net_device_stats Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit 6456fffb09a281af2644e73fda26d1eeec325830 Author: Stephen Hemminger Date: Fri Mar 20 19:36:35 2009 +0000 prism54: convert to internal net_device_stats Also, make ethtool_ops const as it should be, and get rid of useless cast. Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit 6685254f80cdca085cb1d53c45a6d0d5d01f911e Author: Stephen Hemminger Date: Fri Mar 20 19:36:34 2009 +0000 prism54: convert to net_device_ops Also, make ethtool_ops const as it should be, and get rid of useless cast. Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit 98d2faaeb72a2db4ea232263ca4ce9dbfe8e1f5a Author: Stephen Hemminger Date: Fri Mar 20 19:36:33 2009 +0000 mac80211_hwsim: convert to net_device_ops Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit 2bd9f54d46e28fdaa15240af6a97c953720ea5c1 Author: Stephen Hemminger Date: Fri Mar 20 19:36:32 2009 +0000 zd1201: convert to net_device_ops Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit 22bc1ce4f171f53c27052e1d74d312345487db16 Author: Stephen Hemminger Date: Fri Mar 20 19:36:31 2009 +0000 zd1201: convert to internal net_device_stats Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit 85a151b760348e4693e54bc8cece89ab9d3dc81d Author: Stephen Hemminger Date: Fri Mar 20 19:36:30 2009 +0000 wl3501: convert to net_device_ops Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit 4255d411452f1fe4dbcb2de4de35a7a028c5415a Author: Stephen Hemminger Date: Fri Mar 20 19:36:29 2009 +0000 wl3501: convert to internal net_device_stats Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit 32f5a330090fdf7d4d663ff5bd979e186fe6aab6 Author: Stephen Hemminger Date: Fri Mar 20 19:36:28 2009 +0000 raylan: convert to net_device_ops Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit 824f1dfdbef72578272e9303dd9515399da57f28 Author: Stephen Hemminger Date: Fri Mar 20 19:36:27 2009 +0000 atmel: convert to net_device_ops Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit 7ae41cc3c04b0e79b7c9c3e5cbb5222f181e3ca1 Author: Stephen Hemminger Date: Fri Mar 20 19:36:26 2009 +0000 airo: convert to net_device_ops Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit 9db0ba0a8b8bb0fd6606b4ac17073b2984b2d797 Author: Stephen Hemminger Date: Fri Mar 20 19:36:25 2009 +0000 wavelan: convert to net_device_ops Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit 385e63fb1e469739e90b32f4c07fed48baf2721a Author: Stephen Hemminger Date: Fri Mar 20 19:36:24 2009 +0000 wavelan: convert to internal net_device_stats Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit 1cc5920f0f6077e36e259e149548ef9a94335382 Author: Stephen Hemminger Date: Fri Mar 20 19:36:23 2009 +0000 strip: convert to net_device_ops Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit 1964e0dedf98e2fdf3bfd3ac8cf02d9e9aa803fb Author: Stephen Hemminger Date: Fri Mar 20 19:36:22 2009 +0000 netwave: convert to net_device_ops Also get rid of unneeded cast Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit f56ef16eb0c30bf76acf7c2ac9ee68781a7aef6a Author: Stephen Hemminger Date: Fri Mar 20 19:36:21 2009 +0000 netwave: convert to internal net_device_stats Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit af4330631cd48987755f1a8d324dc318f60cf16b Merge: 2d6a5e9 808ff69 Author: David S. Miller Date: Tue Mar 17 15:04:31 2009 -0700 Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-next-2.6 commit 2d6a5e9500103680464a723a4564961675652680 Merge: bd257ed f10023a Author: David S. Miller Date: Tue Mar 17 15:01:30 2009 -0700 Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6 Conflicts: drivers/net/igb/igb_main.c drivers/net/qlge/qlge_main.c drivers/net/wireless/ath9k/ath9k.h drivers/net/wireless/ath9k/core.h drivers/net/wireless/ath9k/hw.c commit 808ff697b357cee54e214efd27921a9ec6461a94 Author: Reinette Chatre Date: Wed Mar 11 11:18:01 2009 -0700 iwlwifi: correct log level when error occurs user needs to see this message even if debugging disabled Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit 18d426c4a8991d1d6c0dc33a62b610b8a6ffc1d2 Author: Reinette Chatre Date: Wed Mar 11 11:18:00 2009 -0700 iwlwifi: print contents of control register when error occurs hopefully the register contents will guide us to why this failure occured Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit 48676eb3c3de9013de7d9a63fb8ffb70cd540d95 Author: Mohamed Abbas Date: Wed Mar 11 11:17:59 2009 -0700 iwlagn: fix warning when set WEP key iwl_clear_station_table will be called every time rxon called. In this function ucode_key_table is set to 0 even though a static WEP security is set. This will cause in many warning and might be an issue if dynamic WEP is set. This patch make sure we keep track of all existing static WEP when this function is called. Signed-off-by: Mohamed Abbas Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit fd9377ee6c351b3fd27bcc56fd5e24622df180bb Author: Reinette Chatre Date: Wed Mar 11 11:17:58 2009 -0700 iwl3945: unmap previously mapped memory During preparation of TX we create DMA mapping to TX command as part of preparing the TFD. This mapping needs to be cleared at the time TFD is freed. Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit 732587ab438d7528e38df7ceb2c46db9774dcf08 Author: Abhijeet Kolekar Date: Wed Mar 11 11:17:57 2009 -0700 iwl3945: use iwl_tx_cmd_complete iwl3945 uses iwl_tx_cmd_complete to reclaim the unused buffers of the queue. iwl_tx_cmd_complete in turn call the iwl_hcmd_queue_reclaim which will unmap the dma mapping to tx_cmd and frees the memory. Signed-off-by: Abhijeet Kolekar Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit dd5b687edacab6cfacf7b9983e86a60c0612e994 Author: Abhijeet Kolekar Date: Wed Mar 11 11:17:56 2009 -0700 iwl3945 : fix rate scaling Patch fixes the bug 1900 at http://www.intellinuxwireless.org/bugzilla/show_bug.cgi?id=1900 Issues: Throughput and success ratio calculations were not done properly. Number of retries were exceeding 16. Fix: Patch fixes above issues by doing window calculations inline with iwlwifi Patch adds sanity check to limit number of retries to 16. Signed-off-by: Abhijeet Kolekar Acked-by: Mohamed Abbas Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit 5c8df2d56a160a31386ee7807adfc1c74e826535 Author: Abhijeet Kolekar Date: Wed Mar 11 11:17:55 2009 -0700 iwl3945: use iwl_led structure 3945 can now use iwl_led's structure from iwlwifi. Patch also removes CONFIG_IWL3945_LEDS flag from Kconfig as 3945's led support will now be enabled if user selects CONFIG_IWLWIFI_LEDS. Signed-off-by: Abhijeet Kolekar Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit fa11d525ef9e4870a080868a7588d27ca8e87c5e Author: Abhijeet Kolekar Date: Wed Mar 11 11:17:54 2009 -0700 iwl3945: fix sparse error error is: iwl3945-base.c:545:5: warning: symbol 'iwl3945_set_dynamic_key' was not declared. Should it be static? Signed-off-by: Abhijeet Kolekar Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit 3c4955f8d9b706231d226d7a73877cb7d786277f Author: Wey-Yi Guy Date: Tue Mar 10 14:35:12 2009 -0700 iwlwifi: verify the antenna selection when receive fixed rate debugfs When iwlwifi driver receive fixed rate debugfs command, validate the antenna selection, if the selection is invalid, report the valid antenna choice and do not set the rate scale table to fixed rate. Otherwise, set the entire rate scale table to the fixed rate request by the user. this validation can prevent sysassert happen in uCode Signed-off-by: Wey-Yi Guy Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit df36c044f51ba6889c2d8b0efd285303bf2a0fbe Author: Wey-Yi Guy Date: Tue Mar 10 14:35:11 2009 -0700 iwlwifi: check IEEE80211_TX_STAT_AMPDU for agg pkt when perform rate scaling, in tx status function, checking for IEEE80211_TX_STAT_AMPDU flag instead of IEEE_TX_CTL_AMPDU flag to perform AMPDU rate scaling operation. IEEE80211_TX_CTL_AMPDU was set by mac80211 for aggregation pkt. But when iwlwifi receive the tx status reply, it reset the flag to following info->flags = IEEE80211_TX_STAT_ACK; info->flags |= IEEE80211_TX_STAT_AMPDU; it causes the rate-scaling to not work for aggregation pkt if we checking for IEEE80211_TX_CTL_AMPDU flag. Signed-off-by: Wey-Yi Guy Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit 8fe723117a8ef543b6e68ba24e50e1c15250f6c5 Author: Wey-Yi Guy Date: Tue Mar 10 14:35:10 2009 -0700 iwlwifi: HT performance improvement changes During rate scaling, checking for 0 retry count before decrement the count by 1, this can avoid the retry count to become 255 (0xff), which will cause the rate to drop faster than what we expect during good condition (receive 0 retry packet). also change the algorithm to make the rate not drop faster than what we like. Signed-off-by: Wey-Yi Guy Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit 86b4766b059e071c5e8d680be48cf730355dca5a Author: Wey-Yi Guy Date: Tue Mar 10 14:35:09 2009 -0700 iwlwifi: remove un-necessary rs_tl_turn_on_agg() after agg enabled After the MLME handshaking complete and tx aggregation started for the tid. Do not send unnecessary turn on aggregation request to mac80211. Signed-off-by: Wey-Yi Guy Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit adb7b5e62ba84b57692ebfa12f4b80d6cf0801a9 Author: Wey-Yi Guy Date: Tue Mar 10 14:35:08 2009 -0700 iwlwifi: add rf information in rate_scale debugfs command Adding more Radio information when displaying rate_scale_table. This can help to understand how many antenna and the current RF condition such as SISO, MIMO2, MIMO3. Signed-off-by: Wey-Yi Guy Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit d8ae4f52d8244cc4a0f0983e65dfc31739739de9 Author: Wey-Yi Guy Date: Tue Mar 10 14:35:07 2009 -0700 iwlwifi: add valid tx antenna information in rate_scale_table debugfs when display rate_scale_table debugfs information, also display valid tx antenna information, this will help user to select correct antenna when issue fixed rate debugfs command Signed-off-by: Wey-Yi Guy Acked-by: Ben Cahill Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit 141fa61f10c419cb9b47a042eed79df621db75c6 Author: John Daiker Date: Tue Mar 10 06:59:54 2009 -0700 ray_cs: checkpatch.pl and Lindent cleanups Before: 1099 errors, 93 warnings, 2854 lines checked After: 19 errors, 47 warnings, 2976 lines checked The big bulk of this is code indent and over 80 character lines (Lindent did this part) Other changes are foo * bar spacing, and trailing whitespace. v2: Cleans up ill-indented comments. Subsequently, this reduces the number of warnings, too. Thanks to Joe Perches for pointing this out! v3: Ran the whole file through Lindent first... which does most of the work for me. :) Again, thanks to Joe Perches for this. This is my final answer! Signed-off-by: John Daiker Signed-off-by: John W. Linville commit a66098daacee2f354dab311b58011e7076aa248c Author: Lennert Buytenhek Date: Tue Mar 10 10:13:33 2009 +0100 mwl8k: Marvell TOPDOG wireless driver Add a driver for Marvell 88w8xxx TOPDOG PCI/PCIe wireless parts. This initial version supports the 88w8687 802.11b/g PCIe part on channels 1-11, and only STA mode is currently implemented. Signed-off-by: Lennert Buytenhek Signed-off-by: John W. Linville commit 217ba9da8ea6bb270a1f463367083cc5d99f2493 Author: Jouni Malinen Date: Tue Mar 10 10:55:50 2009 +0200 ath9k: Fix FIF_PROMISC_IN_BSS processing in station mode We must not disable ACK sending in this case since it would break normal station operations. In addition, clarify the comment about AP mode to make more sense. Signed-off-by: Jouni Malinen Signed-off-by: John W. Linville commit eeee1320b768a18822691126becc802c706aab5a Author: Sujith Date: Tue Mar 10 10:39:53 2009 +0530 ath9k: Add spectrum management to HW capabilities Signed-off-by: Sujith Signed-off-by: John W. Linville commit 15cc0f1ac670d9ff59cbcddb668900e8824b372a Author: Luis R. Rodriguez Date: Mon Mar 9 22:09:42 2009 -0400 ath9k: make few eeprom and calib items static This fixes the sparse complaints: drivers/net/wireless/ath9k/eeprom.c:1407:5: warning: symbol 'ath9k_hw_4k_get_spur_channel' was not declared. Should it be static? drivers/net/wireless/ath9k/eeprom.c:1436:19: warning: symbol 'eep_4k_ops' was not declared. Should it be static? drivers/net/wireless/ath9k/eeprom.c:2808:5: warning: symbol 'ath9k_hw_def_get_spur_channel' was not declared. Should it be static? drivers/net/wireless/ath9k/eeprom.c:2837:19: warning: symbol 'eep_def_ops' was not declared. Should it be static? CC [M] drivers/net/wireless/ath9k/eeprom.o CHECK drivers/net/wireless/ath9k/mac.c CC [M] drivers/net/wireless/ath9k/mac.o CHECK drivers/net/wireless/ath9k/calib.c drivers/net/wireless/ath9k/calib.c:883:6: warning: symbol 'ar9285_clc' was not declared. Should it be static? Signed-off-by: Luis R. Rodriguez Signed-off-by: John W. Linville commit c117fa0bf5f5b3d362b590ed6e80499defe14505 Author: Luis R. Rodriguez Date: Mon Mar 9 22:09:41 2009 -0400 ath9k: downgrade xmit queue full message to xmit debug This is not a fatal message, hitting it simply means we're going to tell the upper layers to slow their horses down but as we make more descriptors available we let the show continue by waking up the queues in ath_wake_mac80211_queue(). We downgrade this as otherwise we fill up your kernel log with messages which can be common under heavy traffic. Cc: stable@kernel.org Signed-off-by: Luis R. Rodriguez Signed-off-by: John W. Linville commit 4a5af9c2923b6d8ce31a7fe84d7dc5431cd844a0 Author: Luis R. Rodriguez Date: Mon Mar 9 22:08:27 2009 -0400 mac80211_hwsim: add regulatory testing options This adds a module parameter for mac80211_hwsim regulatory testing. This module parameter is designed specifically to help test the different possible types of driver specific regulatory requests and also helps to test world roaming, all without any hardware. If you want to just simply test different alpha2s just use the userspace regulatory request as this won't buy you anything new. Signed-off-by: Luis R. Rodriguez Signed-off-by: John W. Linville commit 73d54c9e74c4d8ee8a41bc516f481f0f754eca32 Author: Luis R. Rodriguez Date: Mon Mar 9 22:07:42 2009 -0400 cfg80211: add regulatory netlink multicast group This allows us to send to userspace "regulatory" events. For now we just send an event when we change regulatory domains. We also notify userspace when devices are using their own custom world roaming regulatory domains. Signed-off-by: Luis R. Rodriguez Signed-off-by: John W. Linville commit 7db90f4a25bd4184f3d36dfa4f512f53b0448da7 Author: Luis R. Rodriguez Date: Mon Mar 9 22:07:41 2009 -0400 cfg80211: move enum reg_set_by to nl80211.h We do this so we can later inform userspace who set the regulatory domain and provide details of the request. Signed-off-by: Luis R. Rodriguez Signed-off-by: John W. Linville commit 0fee54cab7d5ebc58fad8c6a0703c4ea016405e3 Author: Luis R. Rodriguez Date: Mon Mar 9 22:07:40 2009 -0400 cfg80211: remove REGDOM_SET_BY_INIT This is not used as we can always just assume the first regulatory domain set will _always_ be a static regulatory domain. REGDOM_SET_BY_CORE will be the first request from cfg80211 for a regdomain and that then populates the first regulatory request. Signed-off-by: Luis R. Rodriguez Signed-off-by: John W. Linville commit 1a28c78b46caec7628985728e7f0c4aef68e33e7 Author: Herton Ronaldo Krzesinski Date: Tue Mar 10 10:11:09 2009 -0300 mac80211: deauth before flushing STA information Even after commit "mac80211: deauth when interface is marked down" (e327b847 on Linus tree), userspace still isn't notified when interface goes down. There isn't a problem with this commit, but because of other code changes it doesn't work on kernels >= 2.6.28 (works if same/similar change applied on 2.6.27 for example). The issue is as follows: after commit "mac80211: restructure disassoc/deauth flows" in 2.6.28, the call to ieee80211_sta_deauthenticate added by commit e327b847 will not work: because we do sta_info_flush(local, sdata) inside ieee80211_stop (iface.c), all stations in interface are cleared, so when calling ieee80211_sta_deauthenticate->ieee80211_set_disassoc (mlme.c), inside ieee80211_set_disassoc we have this in the beginning: sta = sta_info_get(local, ifsta->bssid); if (!sta) { The !sta check triggers, thus the function returns early and ieee80211_sta_send_apinfo(sdata, ifsta) later isn't called, so wpa_supplicant/userspace isn't notified with SIOCGIWAP. This commit moves deauthentication to before flushing STA info (sta_info_flush), thus the above can't happen and userspace is really notified when interface goes down. Signed-off-by: Herton Ronaldo Krzesinski Signed-off-by: John W. Linville commit af88b9078d4aa31d667d2d82601ede9cae3bac37 Author: Helmut Schaa Date: Mon Mar 9 15:47:08 2009 +0100 mac80211: handle failed scan requests in STA mode If cfg80211 requests a scan it awaits either a return code != 0 from the scan function or the cfg80211_scan_done to be called. In case of a STA mac80211's scan function ever returns 0 and queues the scan request. If ieee80211_sta_work is executed and ieee80211_start_scan fails for some reason cfg80211_scan_done will never be called but cfg80211 still thinks the scan was triggered successfully and will refuse any future scan requests due to drv->scan_req not being cleaned up. If a scan is triggered from within the MLME a similar problem appears. If ieee80211_start_scan returns an error, local->scan_req will not be reset and mac80211 will refuse any future scan requests. Hence, in both cases call ieee80211_scan_failed (which notifies cfg80211 and resets local->scan_req) if ieee80211_start_scan returns an error. Signed-off-by: Helmut Schaa Signed-off-by: John W. Linville commit 8830cb678b13004ab54f606345769f1e74e378c6 Author: John Daiker Date: Sun Mar 8 22:18:35 2009 -0700 atmel: checkpatch.pl cleanups Before: 881 errors, 265 warnings, 4507 lines checked After: 114 errors, 273 warnings, 4548 lines checked This was mostly "space required after that ',' (ctx:VxV)". Also a fair number of whitespace, code indent, and C99 comment cleanups. New warnings introduced are all "line over 80 character" md5sums are identical, as I skipped any fixes which may have altered the resulting binary. Signed-off-by: John Daiker Signed-off-by: John W. Linville commit 62b4fb66c5611c4e2b9279810c2d037fb5b5fa68 Author: Sujith Date: Mon Mar 9 09:32:01 2009 +0530 ath9k: Fix bug in reading debugfs file 'rcstat' The rate table would not have been chosen before the interface has been brought up. Reading 'rcstat' in this case would result in an oops, fix this. Signed-off-by: Sujith Signed-off-by: John W. Linville commit c37452b0687e5c8942dd4866f7c614105e6050c3 Author: Sujith Date: Mon Mar 9 09:31:57 2009 +0530 ath9k: Fix bug in TX aggregation mac80211 expects the driver to fill in the starting sequence number of an ADDBA request to initiate TX aggregation. IEEE80211_TX_CTL_AMPDU would be set for frames only after a successful ADDBA exchange, but we have to increment the internal sequence counter for the normal(non-AMPDU) data frames proerly. Signed-off-by: Sujith Signed-off-by: John W. Linville commit 9c81e8be236b7f1c94f9d055a97a83f84c81890f Author: Sujith Date: Mon Mar 9 09:31:49 2009 +0530 ath9k: Initialize ANI properly ANI was not being initialized correctly for all HW variants. This patch fixes it. Signed-off-by: Sujith Signed-off-by: John W. Linville commit 22e5b08585f7282060c464a36908b19cb4809fde Author: Bob Copeland Date: Sun Mar 8 00:10:22 2009 -0500 ath5k: update LED table with reported devices This patch adds support for Acer Ferrari 5000, and also specifies the subsystem device ids for previously reported e-machines e510 and Acer Aspire One A150. Signed-off-by: Bob Copeland Signed-off-by: John W. Linville commit cdb02dc6146950155e79a4e3225e1b58cf2b0c54 Author: Bob Copeland Date: Sun Mar 8 00:10:21 2009 -0500 ath5k: use a table for LED parameters Put the device id-to-gpio mapping in a table to make it easier to add new devices. The list of supported devices is unchanged. Signed-off-by: Bob Copeland Acked-by: Jiri Slaby Signed-off-by: John W. Linville commit 0ed4548f81b69363a6257dbc23086fc9fe4a23cb Author: Bob Copeland Date: Sun Mar 8 00:10:20 2009 -0500 ath5k: extract LED code into a separate file Move LED code out of base.c for clarity. Changes-licensed-under: 3-Clause-BSD Signed-off-by: Bob Copeland Signed-off-by: John W. Linville commit 8d6c39efed5987d3c1ade96e93753125a099f512 Author: Jiri Slaby Date: Sat Mar 7 10:26:42 2009 +0100 ath5k: don't change mac in eeprom_read_mac on error Do not touch mac parameter passed to ath5k_eeprom_read_mac unless we are sure we have correct address. I.e. when returning error, do not change it. While at it, use '= {}' compiler trick for memsetting mac_d. Signed-off-by: Jiri Slaby Acked-by: Nick Kossifidis Cc: Luis R. Rodriguez Acked-by: Bob Copeland Signed-off-by: John W. Linville commit 2c91108c55477334f6854a587ec6e9111d8f1407 Author: Jiri Slaby Date: Sat Mar 7 10:26:41 2009 +0100 ath5k: constify stuff Make some structures const to place them in .rodata, since we won't change them. Most important parts of objdump -h: - 0 .text 00011170 + 0 .text 00011140 - 5 .rodata 0000828e + 5 .rodata 0000895e - 13 .data 00000560 + 13 .data 00000110 - 14 .devinit.data 00000260 Signed-off-by: Jiri Slaby Acked-by: Nick Kossifidis Cc: Luis R. Rodriguez Cc: Bob Copeland Signed-off-by: John W. Linville commit 77dcb6a9526b1e0d159a9300e512c7271bff3163 Author: Jay Sternberg Date: Fri Mar 6 13:52:55 2009 -0800 iwlwifi: correct device name for 1000 series device name was changed from 100 to 1000 Signed-off-by: Jay Sternberg Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit 8337031ef393c8c4f9a25049fd4edd32c9911edc Author: Abhijeet Kolekar Date: Fri Mar 6 13:52:54 2009 -0800 iwl3945: add test for new association Add check for new association to ease reading. Signed-off-by: Abhijeet Kolekar Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit 346de732cbd11bdc364ae80def2380a5002d7e6b Author: Christian Lamparter Date: Thu Mar 5 21:28:57 2009 +0100 p54: completely ignore rx'd frames with bad FCS Passing frames with a bad FCS to the user is an optional feature. However it doesn't work reliable and strangely not in the native monitor mode?! Signed-off-by: Christian Lamparter Signed-off-by: John W. Linville commit 05c9a4cfe41f44abd5e73964fc734f01e2981442 Author: John Daiker Date: Fri Mar 6 07:09:41 2009 -0800 airo_cs: checkpatch.pl cleanups Hopefully nothing controversial here, since the driver hasn't been touched in a while! Before: 36 errors, 6 warnings, 482 lines checked After: 0 errors, 3 warnings, 485 lines checked This was nearly all trailing whitespace, * and parenthesis spacing, and code indent changes. md5sum of object file before and after are identical. Signed-off-by: John Daiker Signed-off-by: John W. Linville commit be1b08af61379be23d9975eaab29054e9166b13c Author: Vasanthakumar Thiagarajan Date: Fri Mar 6 20:38:36 2009 +0530 ath9k: Use suitable macros with 4k eeprom data This patch improves range and connection stability in AR9285. Signed-off-by: Vasanthakumar Thiagarajan Signed-off-by: John W. Linville commit cc88aff0732132e496d1c93a468a4577e93390ea Author: Helmut Schaa Date: Fri Mar 6 15:32:31 2009 +0100 ipw2x00: remove obsolete enums Remove obsolete enums from ipw2x00/ieee80211.h, they are not used anymore. Signed-off-by: Helmut Schaa Signed-off-by: John W. Linville commit d74cc9a7a317cc173fb522252fdff9e4cdd282a0 Author: Helmut Schaa Date: Fri Mar 6 15:32:26 2009 +0100 ipw2x00: Use IE definitions from linux/ieee80211.h Use IE definitions from linux/ieee80211.h and drop the appropriate enum from ipw2x00/ieee80211.h Signed-off-by: Helmut Schaa Signed-off-by: John W. Linville commit 30e1863ccb2eb8052eb134abe51d6884cac50e29 Author: Helmut Schaa Date: Fri Mar 6 15:32:20 2009 +0100 ipw2x00: remove duplicated defines Remove several duplicated defines from ipw2x00/ieee80211.h which are also available in linux/ieee80211.h. Signed-off-by: Helmut Schaa Signed-off-by: John W. Linville commit 3756162b06001d122ce31c716f9784636c592c9c Author: Helmut Schaa Date: Fri Mar 6 12:02:25 2009 +0100 libipw: fix debug output Replace all remaining occurrences of CONFIG_IEEE80211_DEBUG with CONFIG_LIBIPW_DEBUG in libipw to allow debug output again. Signed-off-by: Helmut Schaa Signed-off-by: John W. Linville commit 5077fd358b652b8ec33ae7158f99e08d29ad65c0 Author: Gabor Juhos Date: Fri Mar 6 11:17:55 2009 +0100 ath9k: always compile ath_radio_{en,dis}able ath_radio_{en,dis}able is only compiled if RFKILL is enabled, but it is required by the 'ath9k_wiphy_select' function. Signed-off-by: Gabor Juhos Signed-off-by: John W. Linville commit 521031154365062ce334e05384139777db23d526 Author: Gabor Juhos Date: Fri Mar 6 09:57:39 2009 +0100 ath9k: fix compile error in debug.c drivers/net/wireless/ath9k/debug.c: In function 'read_file_wiphy': drivers/net/wireless/ath9k/debug.c:377: error: implicit declaration of function 'put_unaligned_le32' drivers/net/wireless/ath9k/debug.c:378: error: implicit declaration of function 'put_unaligned_le16' Signed-off-by: Gabor Juhos Signed-off-by: John W. Linville commit 9251f0b418b202e2712c3408a5c6a5904ce4f453 Author: Gabor Juhos Date: Fri Mar 6 09:57:38 2009 +0100 ath9k: fix compile error in ahb.c drivers/net/wireless/ath9k/ahb.c: In function 'ath_ahb_probe': drivers/net/wireless/ath9k/ahb.c:136: error: 'aphy' undeclared (first use in this function) Signed-off-by: Gabor Juhos Signed-off-by: John W. Linville commit 6b765deb01dd076e64a4b01d2101d74206e7df84 Author: Gabor Juhos Date: Fri Mar 6 09:08:53 2009 +0100 ath9k: fix AR_SREV_9100_OR_LATER macro The current macro is wrong, because detects some AR5416 devices as an AR9100 device. The AR5416 devices would have performance issues after this change, because the contents of the ar5416 specific and of the ar9100 specificinitval arrays are swapped. Fortunately we can correct this with the rename of the arrays simply. Changes-licesed-under: ISC Signed-off-by: Gabor Juhos Signed-off-by: Imre Kaloz Signed-off-by: John W. Linville commit d4376ebe168024695f15bfdf603ea6f083dc80f8 Author: Gabor Juhos Date: Fri Mar 6 09:08:52 2009 +0100 ath9k: move ar9100 version checking macros into a more appropriate place All other version checking macros are in a common location within the reg.h file. The AR_SREV_9100_OR_LATER macro is wrong currently, but will be fixed with the next patch. Changes-licensed-under: ISC Signed-off-by: Gabor Juhos Signed-off-by: Imre Kaloz Signed-off-by: John W. Linville commit a8c96d3b225d4c9e6ff341923e3f76de401c75b2 Author: Gabor Juhos Date: Fri Mar 6 09:08:51 2009 +0100 ath9k: cleanup AR5416 version checking macros Currently we have two different versions of this macros. Because they would have to do the same thing, we should simplify and merge them. Changes-licensed-under: ISC Signed-off-by: Gabor Juhos Signed-off-by: Imre Kaloz Signed-off-by: John W. Linville commit 978b53264235eef1d2d2e9fd16ae26b3471c0b57 Author: Senthil Balasubramanian Date: Fri Mar 6 11:24:11 2009 +0530 ath9k: Incorrect AR9285 version check macro Fix AR9285 1.1 and 1.2 version check macro. Signed-off-by: Senthil Balasubramanian Signed-off-by: John W. Linville commit 4e845168380a5954dd8702be5229e3e1b477ed81 Author: Senthil Balasubramanian Date: Fri Mar 6 11:24:10 2009 +0530 ath9k: INI update for AR9285 and periodic PA offset caliberation This patch updates the initvalues for AR9285 chipset and also adds periodic PA offset caliberation. Signed-off-by: Senthil Balasubramanian Signed-off-by: John W. Linville commit b03a9db95a285e13a5e4f2913e9d22a84bf50cc6 Author: Senthil Balasubramanian Date: Fri Mar 6 11:24:09 2009 +0530 ath9k: RX buffers may be accessed/freed even before initialized/alloced. accessing RXBUF list in ath_rx_cleanup may cause panic if ath_descdma_setup fails even before RXBUF list is initialized. Signed-off-by: Senthil Balasubramanian Signed-off-by: John W. Linville commit f0e6ce13c17afd74a49e0ef043d72581562f73ae Author: Senthil Balasubramanian Date: Fri Mar 6 11:24:08 2009 +0530 ath9k: Get rid of unnecessary ATOMIC memory alloc during init time We can sleep for memory during init time and so allocating rx buffers, descriptro buffers with GFP_KERNEL should help us to get rid of transient alloc fails. Signed-off-by: Senthil Balasubramanian Signed-off-by: John W. Linville commit ec329acef99ded8dad59e1ef8a5a02b823083353 Author: Luis R. Rodriguez Date: Thu Mar 5 21:19:22 2009 -0800 cfg80211: fix max tx power for world regdom on 5 GHz to 20dBm This is the lowest value amongst countries which do enable 5 GHz operation. Signed-off-by: Luis R. Rodriguez Signed-off-by: John W. Linville commit 611b6a82aaae33a4d3a274fd6cccbdcd1c7cef4d Author: Luis R. Rodriguez Date: Thu Mar 5 21:19:21 2009 -0800 cfg80211: Enable passive scan on channels 12-14 for world roaming Signed-off-by: Luis R. Rodriguez Signed-off-by: John W. Linville commit 22cad73587ac85e2e9d1f52aae62023aec093654 Author: Luis R. Rodriguez Date: Thu Mar 5 21:13:06 2009 -0800 mac80211_hwsim: add support for 5 GHz ACME Inc. is now selling a dual band radio. Signed-off-by: Luis R. Rodriguez Signed-off-by: John W. Linville commit 94041b294094bbd9fbbe11aa71278fdc70d29d6d Author: Christian Lamparter Date: Fri Mar 6 02:15:08 2009 +0100 p54: enable power save support This patch enables power save support on all p54 devices. Signed-off-by: Christian Lamparter Signed-off-by: John W. Linville commit d0b45aef4f628e69f8da8c670d6879a8a02fe0f2 Author: Christian Lamparter Date: Fri Mar 6 01:02:04 2009 +0100 p54: initial SoftLED support This patch adds SoftLED support for all p54 devices. Signed-off-by: Christian Lamparter Signed-off-by: John W. Linville commit efeada2c0aa1219b15787da48cfa282803e9d99e Author: Christian Lamparter Date: Thu Mar 5 21:31:05 2009 +0100 p54: fix iwconfig txpower off Disabling the receiver logic with P54_FILTER_TYPE_RX_DISABLED is not supported by all firmwares. However we have an alternative: hibernation. And the only side effect - so far - is a bit less power consumption. WIN! Signed-off-by: Christian Lamparter Signed-off-by: John W. Linville commit ad5e72ee81ed074cfe6bb2a1ca231b5413efa41f Author: Christian Lamparter Date: Thu Mar 5 21:30:37 2009 +0100 p54pci: convert printk(KERN_* to dev_* This patch replaces most printk(KERN_* "") with their by dev_* analogue. Signed-off-by: Christian Lamparter Signed-off-by: John W. Linville commit 2ac710720c523dd243662746da4381dd4f1772f8 Author: Christian Lamparter Date: Thu Mar 5 21:30:10 2009 +0100 p54: unify ieee80211 device registration All three drivers (p54pci, p54usb and p54spi) are implementing the same functionality three times. So, why not put it into the shared library?! Signed-off-by: Christian Lamparter Signed-off-by: John W. Linville commit fbf95296c1c8b1ba09bdea0438ce2c61e0e3be5d Author: Christian Lamparter Date: Thu Mar 5 21:29:51 2009 +0100 p54usb: stop USB core interference in exit path The patch fixes a problem when the (Soft)LED stayed on after the module was unloaded. It turned out that the USB core disables all endpoints before calling the disconnect method. So it was impossible to switch off the radio & LEDs. Signed-off-by: Christian Lamparter Signed-off-by: John W. Linville commit 19d8bc22bcea749da2ba065a1ff9e054fadb556e Author: Gabor Juhos Date: Thu Mar 5 16:55:18 2009 +0100 ath9k: create a common debugfs_root for all device instances The driver are trying to create an 'ath9k' directory in debugfs for each device currently. If there are more than one device in the system, the second try will always fail. Changes-licensed-under: ISC Signed-off-by: Gabor Juhos Signed-off-by: Imre Kaloz Signed-off-by: John W. Linville commit 0eeb59fe2cd84b62f374874a59e62402e13f48b3 Author: Jouni Malinen Date: Thu Mar 5 17:23:46 2009 +0200 mac80211: Fix WMM ACM parsing and AC downgrade operation Incorrect local->wmm_acm bits were set for AC_BK and AC_BE. Fix this and add some comments to make it easier to understand the AC-to-UP(pair) mapping. Set the wmm_acm bits (and show WMM debug) even if the driver does not implement conf_tx() handler. In addition, fix the ACM-based AC downgrade code to not use the highest priority in error cases. We need to break the loop to get the correct AC_BK value (3) instead of returning 0 (which would indicate AC_VO). The comment here was not really very useful either, so let's provide somewhat more helpful description of the situation. Since it is very unlikely that the ACM flag would be set for AC_BK and AC_BE, these bugs are not likely to be seen in real life networks. Anyway, better do these things correctly should someone really use silly AP configuration (and to pass some functionality tests, too). Remove the TODO comment about handling ACM. Downgrading AC is perfectly valid mechanism for ACM. Eventually, we may add support for WMM-AC and send a request for a TS, but anyway, that functionality won't be here at the location of this TODO comment. Signed-off-by: Jouni Malinen Signed-off-by: John W. Linville commit 2bfc5cb57b55ed2204bca7668e082f7bf485760a Author: Andrey Borzenkov Date: Sat Feb 28 23:09:09 2009 +0300 orinoco: firmware: consistently compile out fw cache support if not requested Currently part of support for FW caching is unconditionally compiled in even if it is never used. Consistently remove caching support if not requested by user. Signed-off-by: Andrey Borzenkov Signed-off-by: John W. Linville commit d5df2a16133f4eb22f9a6bbc07723443568d362f Merge: d4a4aba db434ac Author: David S. Miller Date: Tue Mar 10 05:04:16 2009 -0700 Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6 Conflicts: drivers/net/bnx2x_main.c drivers/net/wireless/iwlwifi/iwl3945-base.c drivers/net/wireless/rt2x00/rt73usb.c commit 1a77733ccb9654716160fdfb3f1f2a9e1759de19 Author: Michael Buesch Date: Wed Mar 4 16:41:10 2009 +0100 b43: Fix compilation for devices without PCI core This fixes compilation, if the PCI core is disabled. Signed-off-by: Michael Buesch Signed-off-by: John W. Linville commit 39d89cd34d9900cd2415f46e179b91cdd14b15fe Author: Jouni Malinen Date: Tue Mar 3 19:23:40 2009 +0200 ath9k: Add a debugfs interface for controlling virtual wiphys debugfs ath9k/phy#/wiphy can be used to show the current list of virtual wiphys and to add/remove virtual wiphys. Eventually, this interface could be replaced with a cfg80211/nl80211 command that is passed through mac80211. For example: # cat /debug/ath9k/phy0/wiphy primary: phy0 # echo add > /debug/ath9k/phy0/wiphy # cat /debug/ath9k/phy0/wiphy primary: phy0 secondary: phy1 # echo del=phy1 > /debug/ath9k/phy0/wiphy # cat /debug/ath9k/phy0/wiphy primary: phy0 In addition, following commands can be used to test pausing and unpausing of the virtual wiphys: pause=phy1 unpause=phy1 select=phy1 (select pauses and unpauses wiphys automatically based on channel) schedule=500 (set wiphy scheduling interval in msec; 0 = disable; default value: 500) Signed-off-by: Jouni Malinen Signed-off-by: John W. Linville commit f98c3bd24161e9aaa73b9cd4dc6b1742c085ac17 Author: Jouni Malinen Date: Tue Mar 3 19:23:39 2009 +0200 ath9k: Add a simple virtual wiphy scheduler This is a very simple scheduler that goes through the wiphys and schedules one at a time every N milliseconds (current default value: 500 ms). This is enough for initial testing, but there are number of areas where a more complex scheduler can improve operations greatly. Signed-off-by: Jouni Malinen Signed-off-by: John W. Linville commit 8089cc47ed45df8f5a44f92f53140e6fd0958409 Author: Jouni Malinen Date: Tue Mar 3 19:23:38 2009 +0200 ath9k: Special processing for channel changes during scan Allow mac80211-controlled channel changes on an active wiphy and especially during a scan. We need this as long as the scan is controlled by mac80211. Moving this control into the driver could allow some optimizations on scanning while using multiple virtual interfaces, but for now, try to work as well as possible with the current scan mechanism. Signed-off-by: Jouni Malinen Signed-off-by: John W. Linville commit 7ec3e514d9361596cbd8aa71ce41d6e5b0220103 Author: Jouni Malinen Date: Tue Mar 3 19:23:37 2009 +0200 ath9k: Add workaround to recover from failed channel changes It looks like channel change may fail in some cases and end up leaving the hardware in state where it cannot transmit any frames. Add a workaround to recover from this state if we detect that wiphy selection is failing due to wiphys not leaving PAUSING state. Signed-off-by: Jouni Malinen Signed-off-by: John W. Linville commit ee166a0e71947e0ebeb044fd2277435f665270ac Author: Jouni Malinen Date: Tue Mar 3 19:23:36 2009 +0200 ath9k: Check virtual wiphy state on tx() mac80211 should not be requesting us to transmit frames on paused wiphys since we stop the TX queues. Just in case, add debug code to make sure we catch if this were to happen. Signed-off-by: Jouni Malinen Signed-off-by: John W. Linville commit 18eb62f87a8d1dc6ed8a01a52e6b2b1600802608 Author: Jouni Malinen Date: Tue Mar 3 19:23:35 2009 +0200 ath9k: Pause other virtual wiphys on channel change For now, allow channel changes immediately and just force the other virtual wiphys to paused state. This is needed to allow mac80211-controlled scan to control channel changes. Signed-off-by: Jouni Malinen Signed-off-by: John W. Linville commit 465ca84d95deeab37b7c3b10b2cb96b3fa07a891 Author: Jouni Malinen Date: Tue Mar 3 19:23:34 2009 +0200 ath9k: Register larger listen interval Notify the AP that we may be sleeping longer to allow the AP power save code to buffer larger number of frames for us when using virtual wiphys. Signed-off-by: Jouni Malinen Signed-off-by: John W. Linville commit 9580a222b8a371c145d7439c1a289b9e77f8fe31 Author: Jouni Malinen Date: Tue Mar 3 19:23:33 2009 +0200 ath9k: Make start/stop operations aware of virtual wiphys Instead of always going through initialization/deinitialization steps, do this only for the first/last wiphy to not break the other wiphys. Signed-off-by: Jouni Malinen Signed-off-by: John W. Linville commit 0e2dedf971f3feefd4d3d3d8cb5c57b1757f1101 Author: Jouni Malinen Date: Tue Mar 3 19:23:32 2009 +0200 ath9k: Add routines for switching between active virtual wiphys ath9k_wiphy_select() can be used to select a virtual wiphy to be activated. Other virtual wiphys will be paused and once that is done, the operational channel is changed and the wiphys that are on the selected channel will be unpaused. Signed-off-by: Jouni Malinen Signed-off-by: John W. Linville commit f0ed85c6c7960b26666db013e02e748b56eef98a Author: Jouni Malinen Date: Tue Mar 3 19:23:31 2009 +0200 ath9k: Virtual wiphy pause/unpause functionality Allow virtual wiphys to be paused/unpaused to allow off-channel operations. Pause will stop all TX queues for the wiphy and move the STA into power save mode if in managed mode. Unpause wakes up the TX queues and notifies the AP that the STA woke up if in managed mode. Signed-off-by: Jouni Malinen Signed-off-by: John W. Linville commit b93bce2a5e8fd5c9f5d8c982efd6bca71a9b83f3 Author: Jouni Malinen Date: Tue Mar 3 19:23:30 2009 +0200 ath9k: Configure RX filter for multi-BSSID broadcast Allow RX filter to pass through all broadcast/multicast frames (i.e., no BSSID filtering) if virtual interfaces are used. Software filtering will be used in this case to drop broadcast/multicast frames for foreign BSSIDs. Signed-off-by: Jouni Malinen Signed-off-by: John W. Linville commit c52f33d05e5f8d59f02722fbc308f5f391575ca5 Author: Jouni Malinen Date: Tue Mar 3 19:23:29 2009 +0200 ath9k: Add support for multiple secondary virtual wiphys The new struct ath_softc::sec_wiphy array is used to store information about virtual wiphys and select which wiphy is used in calls to mac80211. Each virtual wiphy will be assigned a different MAC address based on the virtual wiphy index. Signed-off-by: Jouni Malinen Signed-off-by: John W. Linville commit bce048d77dff3dcfd75d54dc38580c81baa95853 Author: Jouni Malinen Date: Tue Mar 3 19:23:28 2009 +0200 ath9k: Add data structure for supporting virtual radio/wiphy operation This is the initial step in allowing ath9k to register multiple virtual radios (wiphys). The goal of virtual radios is to allow the same radio to be shared for multiple virtual interfaces that may operate on different channels. The mac80211 virtual interface support is designed only for single channel operation and as such, it is not suitable for this type of use. Anyway, it can be used on top of the virtual radio concept, if desired (e.g., use two virtual radios to handle two channels and then add multiple mac80211 virtual interfaces on top of each virtual radio). The new struct ath_wiphy is now registered as the driver data structure for wiphy. This structure has a pointer to the shared (among virtual wiphys of the same physical radio) struct ath_softc data. The primary wiphy maintains the allocated memory for ath_softc. Secondary (virtual) wiphys will only allocate the new ath_wiphy structure. Registration of secondary wiphys is added in a separate patch. Signed-off-by: Jouni Malinen Signed-off-by: John W. Linville commit 8ca21f0185a606c490867f7471196aa29639e638 Author: Jouni Malinen Date: Tue Mar 3 19:23:27 2009 +0200 ath9k: Set BSSID mask based on configured interfaces Instead of using a hardcoded BSSID mask (mask for own addresses), iterate through all active interfaces and determine the minimal mask that covers all local addresses. Signed-off-by: Jouni Malinen Signed-off-by: John W. Linville commit 2c3db3d51ee1fcf84f5828788905a4c091b9ae27 Author: Jouni Malinen Date: Tue Mar 3 19:23:26 2009 +0200 ath9k: Cleanup multiple VIF processing Replace the internal sc_vaps array and index values by using vif pointer from mac80211. Allow multiple VIPs to be registered. Though, number of beaconing VIFs is still limited by ATH_BCBUF (currently 1). Multiple virtual STAs support is not yet complete, but at least the data structures should now be able to handle this. Signed-off-by: Jouni Malinen Signed-off-by: John W. Linville commit 860559fe686b44a533c83c79fe5d1ad41bf9e090 Author: Ivo van Doorn Date: Tue Mar 3 18:14:18 2009 +0100 rt2x00: Export all register stats through debugfs By exporting the register base, and word size to userspace through debugfs it will be easier to create scripts which parse the register information. This makes debugging and register dumps information easier. This will break my previous scripts which dumped and parsed all information, but since this is only for debugging purposes this change should not be a problem. Dumpfiles created with the old version can be easily manually edited to make them compatible with this new approach, which means there will be no problems comparing dumps from the different versions either. Also be more consistent with using tabs to seperate different fields. Signed-off-by: Ivo van Doorn Signed-off-by: John W. Linville commit d216aaa674feb14a4aeb56bc3708f69d81c39d45 Author: Jouni Malinen Date: Tue Mar 3 13:11:53 2009 +0200 ath9k: Clean up setkey operations There is no need to use ath_keyset() wrapper for ath9k_hw_set_keycache_entry() calls. In addition, improve the comments describing the key setting operations. Signed-off-by: Jouni Malinen Signed-off-by: John W. Linville commit aebe2b5624b9a3c00b78b1b285c43de73c81f7c5 Author: Gabor Juhos Date: Tue Mar 3 10:49:59 2009 +0100 ath9k: fix AR_TXCFG_DMASZ_MASK value The current bitmask is invalid, because the tx dma size is a 3 bit wide value. Signed-off-by: Gabor Juhos Signed-off-by: John W. Linville commit b75bc150af4f276fd0e197c8409c62b71cc86118 Author: Sujith Date: Tue Mar 3 10:16:59 2009 +0530 ath9k: Remove unused variables in struct ath_beacon_config We don't store the beacon timestamp internally, nor do we do any TIM handling in ath9k. Signed-off-by: Sujith Signed-off-by: John W. Linville commit 2554935b08f87e0ce1852635720d2d3ac91fc512 Author: Sujith Date: Tue Mar 3 10:16:57 2009 +0530 ath9k: Lock config_interface() callback with a mutex Signed-off-by: Sujith Signed-off-by: John W. Linville commit b238e90e99fe51aed14d20eae8a6a1c04ce4ca30 Author: Sujith Date: Tue Mar 3 10:16:56 2009 +0530 ath9k: Handle TSF properly for AP mode The TSF has to be reset only once, upon bringing the interface up in AP mode. For any beacon reconfigure calls after that, resetting the TSF results in incorrect beacon generation. The only exception is a change in the beacon interval, which is indicated to the driver by mac80211 through IEEE80211_CONF_CHANGE_BEACON_INTERVAL, handle this properly. Signed-off-by: Sujith Signed-off-by: John W. Linville commit 5379c8a26686e12058e23322615df68f9123bccd Author: Sujith Date: Tue Mar 3 10:16:54 2009 +0530 ath9k: Split beacon configuration into mode specific routines This makes the code easier to understand. Signed-off-by: Sujith Signed-off-by: John W. Linville commit 9546aae0863c12a3d00b1ed5cbd316520733200b Author: Sujith Date: Tue Mar 3 10:16:53 2009 +0530 ath9k: Cleanup beacon stuck processing We never use SC_OP_NO_RESET, it is not configurable at all. Remove all code that deals with this flag and make beacon stuck processing simple. Signed-off-by: Sujith Signed-off-by: John W. Linville commit 9fc9ab0a6929c9f137747df0ecf294e9582607f9 Author: Sujith Date: Tue Mar 3 10:16:51 2009 +0530 ath9k: Scrub beacon.c Remove useless comments, fix indentation. Also, remove all occurrences of ASSERT(vif) which are not needed. Signed-off-by: Sujith Signed-off-by: John W. Linville commit 0c98de6535f4de746618547c057dccd442ba968a Author: Sujith Date: Tue Mar 3 10:16:45 2009 +0530 ath9k: Use new scan notifiers from mac80211 The only use case for this right now is ANI calibration, but more might come up in the future. Signed-off-by: Sujith Signed-off-by: John W. Linville commit 707c1b4e68a2811ff2c9e75750a98a3310789a2d Author: Sujith Date: Tue Mar 3 10:15:10 2009 +0530 mac80211: Update IBSS beacon timestamp properly In IBSS mode, the beacon timestamp has to be filled with the BSS's timestamp when joining, and set to zero when creating a new BSS. Signed-off-by: Sujith Signed-off-by: John W. Linville commit 0ad65bd7e1b38dd2c86da5f07dbfa35fe1f03099 Author: Alina Friedrichsen Date: Mon Mar 2 23:29:48 2009 +0100 ath5k: Set TSF fix The old code doesn't work correctly e.g. on newer chipsets like AR5418+AR2122 and AR5416+AR2133. Signed-off-by: Alina Friedrichsen Signed-off-by: John W. Linville commit b9a1619763a4b30273cd28fad75b3d962e53e020 Author: Alina Friedrichsen Date: Mon Mar 2 23:28:38 2009 +0100 ath9k: Set TSF fix The old code doesn't work correctly e.g. on newer chipsets like AR5418+AR2122 and AR5416+AR2133. Signed-off-by: Alina Friedrichsen Signed-off-by: John W. Linville commit ce4fbdbf161b2676b3833412367113572d739253 Author: Michael Buesch Date: Mon Mar 2 23:18:37 2009 +0100 b43: Pass more RX flags to mac80211 This changes the RX handler to pass more status flags to mac80211. It also changes part of the drop policy, if bad frames were requested. (Note that currently mac80211 will throw a WARN_ON in that case. But nothing bad will happen). This also removes some obsolete unused timestamping code. Signed-off-by: Michael Buesch Signed-off-by: John W. Linville commit 91ed19f5f66a7fe544f0ec385e981f43491d1d5a Author: Alina Friedrichsen Date: Mon Mar 2 23:13:40 2009 +0100 ath9k: Fix FIF_BCN_PRBRESP_PROMISC handling So that a new created IBSS network doesn't break on the first scan. It seems to Sujith and me that this stupid code unnecessary, too. So remove it... Signed-off-by: Alina Friedrichsen Signed-off-by: John W. Linville commit 541d8dd5e848aa5f8223a9e8e13b369d64865f07 Author: Vivek Natarajan Date: Mon Mar 2 20:25:14 2009 +0530 ath9k: Handle power modes in isr for power save. Restore network sleep mode in isr if power save is enabled. Signed-off-by: Vivek Natarajan Signed-off-by: John W. Linville commit 9331ec8060da5783307a565792ded33bfb9e54fc Author: Sujith Date: Mon Mar 2 13:29:45 2009 +0530 ath9k: Fill in rate_update mac80211 callback This callback can be used to handle dynamic 20/40, and changes in the operating channel's HT parameters. Signed-off-by: Sujith Signed-off-by: John W. Linville commit 25c9c8752849212a25bf7f38b40b64b3958d619b Author: Vivek Natarajan Date: Mon Mar 2 20:20:30 2009 +0530 mac80211: Always send a null data frame if TIM bit is set. If the AP thinks we are in power save state eventhough we are not truly in that state, it sets the TIM bit and does not send a data frame unless we send a null data frame to correct the state in the AP. This might happen if the null data frame for wake up is lost in the air after we disable power save. Signed-off-by: Vivek Natarajan Signed-off-by: John W. Linville commit e0caf9eaae5182ab4e02a5d703ade64719738f87 Author: Jouni Malinen Date: Mon Mar 2 18:15:53 2009 +0200 ath9k: Remove unused key xoring This is not used anywhere in ath9k and is just making the code more confusing. Signed-off-by: Jouni Malinen Signed-off-by: John W. Linville commit 672903b329579ff43ae3d553cf55bd82041921c1 Author: Jouni Malinen Date: Mon Mar 2 15:06:31 2009 +0200 ath9k: Document keycache operations There are number of small details about the keycache operations that are very easy to miss (and forget), so better include detailed comments in ath9k_hw_set_keycache_entry() to avoid having to figure out this every time when having to touch this area. Signed-off-by: Jouni Malinen Signed-off-by: John W. Linville commit e65c22633c14eabe9593a71a727f81544378b892 Author: Sujith Date: Mon Mar 2 13:28:31 2009 +0530 mac80211: Fix TKIP/WEP HT capability handling There is no need to parse the AP's HT capabilities if the STA uses TKIP/WEP cipher. This allows the rate control module to choose the correct(legacy) rate table. Signed-off-by: Sujith Signed-off-by: John W. Linville commit a412c8040d83366dcc24962207b8beed52f29344 Author: Frank Seidel Date: Sun Mar 1 20:25:38 2009 +0100 iwlwifi: reduce stack size Reduce stack memory footprint of iwlwifi. (From >1000 bytes for each *_table_read on i386 down to 32) Signed-off-by: Frank Seidel Signed-off-by: John W. Linville commit 64abd80330baba9d87df2b952a7eec5af5158470 Author: Ivo van Doorn Date: Sun Mar 1 17:42:00 2009 +0100 rt2x00: Fix SW antenna diversity Software antenna tuning is broken because of an function ordering problem during rt2x00link_tuner(). rt2x00link_precalculate_signal() rt2x00leds_led_quality() rt2x00lib_antenna_diversity() rt2x00link_precalculate_signal() will reset the quality TX/RX counters, however rt2x00lib_antenna_diversity() requires the RX counter to see what RSSI value must be used for a particular antenna. We can't change the ordering since rt2x00lib_antenna_diversity() might reset other statistics which are needed by the function called earlier. Move the reset of the quality TX/RX counters into a seperate function and move the call to after rt2x00lib_antenna_diversity(). Signed-off-by: Ivo van Doorn Signed-off-by: John W. Linville commit 14d2aac580993ac8faeac0d903207e316c0881c3 Author: Abhijeet Kolekar Date: Fri Feb 27 16:21:24 2009 -0800 iwl3945 : use iwl_activate_qos 3945 can use iwl_activate_qos instead of iwl3945_activate_qos. Patch does two things 1) Patch adds iwl_activate_qos in core library. 2) 3945 makes use of iwl_activate_qos. Signed-off-by: Abhijeet Kolekar Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit 2a4ddaabe0055962fbfffb72633a97eadc7e93ac Author: Abhijeet Kolekar Date: Fri Feb 27 16:21:23 2009 -0800 iwl3945: add iwl3945_setup_mac Patch does following, 1) mac80211's shared data is now initialized in iwl3945_setup_mac. 2) Set the rfkill to right state after initialization Signed-off-by: Abhijeet Kolekar Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit c8f16138b5099bfd928942c3775aaecfd649e9e5 Author: Reinette Chatre Date: Fri Feb 27 16:21:22 2009 -0800 iwlwifi: fix *pci_probe error flow for iwlagn: - Have to free eeprom of version check fails - otherwise we end up with memory leak. - Include removal of workqueue (created in _setup_deferred_work) in error handling. for iwl3945: - Fix a few places to jump to correct error handling. - Reorganize error handling to match with code flow. - Include iwl_free_channel_map as part of error handling. - Include releasing eeprom as part of error handling. Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit 6e21f15cac2c6c25b6a5874a98420e1b9064f0c1 Author: Abhijeet Kolekar Date: Fri Feb 27 16:21:21 2009 -0800 iwl3945: unify set key flow with iwlwifi unify the set key flow with iwlwifi. Signed-off-by: Abhijeet Kolekar Acked-by: Samuel Ortiz Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit 7c4cbb6ee0a55885d697a5b07b6c4c8fd10d573a Author: Abhijeet Kolekar Date: Fri Feb 27 16:21:20 2009 -0800 iwl3945: synchronize timestamp with uCode In IBSS, TSF maintains local clock counters at each station. Network Synchronization follows a completely distributed scheme where beacon frames are generated. Each station maintain its own TSF timestamp, extracted from beacon timestamps they recieved. Following patch synchronize this beacon timestamp with uCode. Signed-off-by: Abhijeet Kolekar Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit 39e6d2256b8b8265ef16297887b5521f3e0155c6 Author: Jay Sternberg Date: Fri Feb 27 16:21:19 2009 -0800 iwlwifi: update 5150 API version to support new firmware update API to support new numbering that is used for other newer devices. 5150 ucode has not been released yet, so the first released API will be v2. For those who do have a v1 API the driver does have backward compatibility support new value of REPLY_TX_POWER_DBM_CMD Signed-off-by: Jay Sternberg Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit 24776cfd5559d3171054d3a7ea76d5febc54b03d Author: Johannes Berg Date: Fri Feb 27 16:33:55 2009 -0600 mac80211: Fix quality reporting for wireless stats Since "mac80211/cfg80211: move iwrange handler to cfg80211", the results for link quality from "iwlist scan" and "iwconfig" commands have been very different. The results are now consistent. Signed-off-by: Johannes Berg Reported- and tested-by: Larry Finger Signed-off-by: John W. Linville commit e31ae0508315ebf5d8b1b8a1fca8550737fb3996 Author: Sujith Date: Fri Feb 27 09:44:00 2009 +0530 mac80211: Notify the driver only when the beacon interval changes Currently, the driver is unconditionally notified of beacon interval. This is a problem in AP mode, because the driver has to know that the beacon interval has actualy changed to recalculate TBTT and reset the HW TSF. Fix this to make mac80211 notify the driver only when the beacon interval has been reconfigured to a new value. Signed-off-by: Sujith Signed-off-by: John W. Linville commit db5b4f7ae3901fdc48c5b988fc2a5e0cb4ec1870 Author: Jiri Slaby Date: Thu Feb 26 23:44:31 2009 +0100 ath5k: fix hw rate index condition Make sure we print out a warning when the index is out of bounds, i.e. even on hw_rix == AR5K_MAX_RATES. Also change to WARN and print text with the reported hw_rix. Signed-off-by: Jiri Slaby Cc: Nick Kossifidis Cc: Luis R. Rodriguez Cc: Bob Copeland Signed-off-by: John W. Linville commit 3f53dd64f192450cb331c0fecfc26ca952fb242f Author: Jouni Malinen Date: Thu Feb 26 11:18:46 2009 +0200 ath9k: Fix hw crypto configuration for TKIP in AP mode Incorrect Michael MIC key (RX, should have been TX) was set for the group key in AP mode. This resulted in all broadcast frames triggering Michael MIC errors and eventual TKIP countermeasures. The change here sets the correct Michael MIC key based on whether the local end is the authenticator (well, AP for now). Signed-off-by: Jouni Malinen Tested-by: Pat Erley Signed-off-by: John W. Linville commit 998a5a7d6aabe7e450759e0d82c8a79afd5a97ff Author: Frank Seidel Date: Wed Feb 25 15:39:57 2009 +0100 airo: reduce stack memory footprint Applying kernel janitors todos (reduce stack footprint where possible) to airo wireless driver. (Before 1124 bytes on i386, now 876) Signed-off-by: Frank Seidel Signed-off-by: John W. Linville commit b837e606d17a765f404175ae42a15ce17631e7d2 Author: Roel Kluin Date: Wed Feb 25 13:35:34 2009 +0100 wireless, wavelan: spin off by 1 spin can reach -1 after the loop, so 0 is still success. Signed-off-by: Roel Kluin Signed-off-by: John W. Linville commit fa09632b0277aa43c6f37161f0a592a1a5b2167d Author: Vasanthakumar Thiagarajan Date: Wed Feb 25 10:28:23 2009 +0530 ath9k: Remove ununsed ack duration stuff with long/short preamble Signed-off-by: Vasanthakumar Thiagarajan Signed-off-by: John W. Linville commit f40154e7f7be1c58e8041ed4fbe6cd3b8049f4b4 Author: Vasanthakumar Thiagarajan Date: Wed Feb 25 10:28:22 2009 +0530 ath9k: Configure Power control register appropriately for h/w with 4k eeprom Signed-off-by: Vasanthakumar Thiagarajan Signed-off-by: John W. Linville commit 5fe73197d359248cbf32dfd3280540d6a0dfd31c Author: Alina Friedrichsen Date: Wed Feb 25 00:49:18 2009 +0100 zd1211rw: Implement get_tsf() This patch implements get_tsf() of ieee80211_ops in the zd1211rw driver. Signed-off-by: Alina Friedrichsen Signed-off-by: John W. Linville commit b3bd89ce956c220fe52a003103f14af48f695fda Author: Jouni Malinen Date: Tue Feb 24 13:42:01 2009 +0200 ath9k: Add module parameter to disable hardware crypto nohwcrypt=1 module parameter can now be used to disable hardware crypto in ath9k. While the hardware acceleration handles most cases, it may be useful to be able to force mac80211 software implementation to be used for some tests, e.g., with virtual interface combinations that may not yet be supported in the key cache configuration. In addition, this allows management frame protection to be tested with older hardware revisions. Signed-off-by: Jouni Malinen Signed-off-by: John W. Linville commit 8b0e5860cb099d7958d13b00ffbc35ad02735700 Merge: b6122b3 327f438 c577b09 03787ce 2fb6b2a ab76f3d 2505170 780eef9 Author: Ingo Molnar Date: Wed Mar 4 02:22:31 2009 +0100 Merge branches 'x86/apic', 'x86/cpu', 'x86/fixmap', 'x86/mm', 'x86/sched', 'x86/setup-lzma', 'x86/signal' and 'x86/urgent' into x86/core commit aa4abc9bcce0d2a7ec189e897f8f8c58ca04643b Merge: 814c01d 52c0326 Author: David S. Miller Date: Sun Mar 1 21:35:16 2009 -0800 Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6 Conflicts: drivers/net/wireless/iwlwifi/iwl-tx.c net/8021q/vlan_core.c net/core/dev.c commit 55f2b78995826d549401bdf20abeac1832636bb6 Merge: f5c1aa1 92b9af9 Author: Ingo Molnar Date: Sun Mar 1 12:47:58 2009 +0100 Merge branch 'x86/urgent' into x86/pat commit 2a07954b83a3d4dc93031d3ce030fb9380a8e15a Author: Kalle Valo Date: Fri Feb 27 07:50:00 2009 +0200 at76c50x-usb: use dev_name() instead of struct device.bus_id Stephen Rothwell reported that bus_id from struct device will be removed, use dev_name() instead. Signed-off-by: Kalle Valo Signed-off-by: John W. Linville commit 0bfbce18b9c11201ebf1cfbc0deeab7bdbfe32a5 Author: Jouni Malinen Date: Tue Feb 24 16:49:58 2009 +0200 nl80211: Avoid AP mode BUG_ON hang with invalid lock assert "cfg80211: add assert_cfg80211_lock() to ensure proper protection" added assert_cfg80211_lock() calls into various places. At least one of them, nl80211_send_wiphy(), should not have been there. That triggers the BUG_ON in assert_cfg80211_lock() and pretty much kills the kernel whenever someone runs hostapd.. Remove that call and make assert_cfg80211_lock() use WARN_ON instead of BUG_ON to be a bit more friendly to users. Signed-off-by: Jouni Malinen Acked-by: Johannes Berg Signed-off-by: John W. Linville commit 222d0b33b3778a8fa156f3fca284d0a71f8e966b Author: Jouni Malinen Date: Tue Feb 24 13:40:01 2009 +0200 ath9k: Unlock sc->mutex on error path An error path in ath9k_add_interface() did not unlock the sc->mutex and could leave the driver in quite unresponsive state. Signed-off-by: Jouni Malinen Signed-off-by: John W. Linville commit 99da185a72ba685a5aaf49dff6a5fe83885112e4 Author: John Daiker Date: Tue Feb 24 02:16:42 2009 -0800 b43: checkpatch.pl cleanups Keeping this one simple. Changing a few "foo * bar" to "foo *bar" Removes 22 checkpatch.pl errors, with no introduced warnings. Signed-off-by: John Daiker Signed-off-by: John W. Linville commit ddcb5c78e8dcb470caec2049c2f400651f1710e4 Author: Jason Andryuk Date: Mon Feb 23 21:45:34 2009 -0500 iwl3945: re-add iwl_poll_direct_bit return value check Re-add the iwl_poll_direct_bit return value assignment dropped in "iwl3945: add apm ops". Signed-off-by: Jason Andryuk Signed-off-by: John W. Linville commit c2436980d024c8c9c1ad51f53125ddfc467a6cf1 Author: Jason Andryuk Date: Mon Feb 23 21:43:30 2009 -0500 iwl3945: initialize is_valid_rtc_data_addr function pointer Initialize is_valid_rtc_data_addr function pointer for iwl3945 to prevent a NULL pointer dereference in iwl_dump_nic_error_log. Signed-off-by: Jason Andryuk Signed-off-by: John W. Linville commit 53b23b88e4fc70a36f4c9653883582a7c5eede38 Author: Michael Buesch Date: Mon Feb 23 22:52:26 2009 +0100 b43: Remove bogus integer truncation warnings "warning: large integer implicitly truncated to unsigned type" Signed-off-by: Michael Buesch Signed-off-by: John W. Linville commit 4a332a385a86e31bfe181d969a8cb5579798fe03 Author: Alina Friedrichsen Date: Sun Feb 22 18:19:33 2009 +0100 mac80211: Give it some time to do the TSF sync Give slow hardware some time to do the TSF sync, to not run into an IBSS merging endless loop in some rarely situations. Signed-off-by: Alina Friedrichsen Signed-off-by: John W. Linville commit 34e8f08231388f9e16c6f1e2461f53afaf7f1e5e Author: Alina Friedrichsen Date: Sun Feb 22 00:07:28 2009 +0100 mac80211: Don't merge with the same BSSID It was not a good idea to do a TSF reset on strange IBSS merges to the same BSSID. For example it will break the TSF sync of ath9k completely and it is unnecessary as all hardware I have tested do a TSF sync to a higher value automatically and IBSS merges are only done to higher TSF values. It only need a TSF reset to accept a lower value, when the IBSS network is changed manually. Signed-off-by: Alina Friedrichsen Signed-off-by: John W. Linville commit 204b190cabf901b4bdece2006acc15a8978288db Author: Bob Copeland Date: Sat Feb 21 14:44:18 2009 -0500 ath9k: fix 802.11g conformance test limit typo 802.11g is in 2 ghz band, not 5 ghz. Signed-off-by: Bob Copeland Acked-by: Luis R. Rodriguez Signed-off-by: John W. Linville commit 3faa19cd9dfac30aa08bc311ddbd62ee5ccc0d85 Author: David Kilroy Date: Sat Feb 21 16:52:54 2009 +0000 orinoco: prevent accessing memory outside the firmware image Do this by indicating the end of the appropriate regions of memory. Note that MAX_PDA_SIZE should only apply to the PDA block read from flash/EEPROM, and has been erronously applied to the pdr elements. Remove the macro, and use the actual PDA size passed down by the caller. We also fix up some of the types used, marking as much as possible const, and using void* for the end pointers. Signed-off-by: David Kilroy Signed-off-by: John W. Linville commit 7e57811ac5b595bdb53f2aef3bcb2b3d72663fa4 Author: David Kilroy Date: Sat Feb 21 16:52:53 2009 +0000 orinoco: validate firmware header Check the Agere firmware headers for validity before attempting to download it. Signed-off-by: David Kilroy Signed-off-by: John W. Linville commit ba3907e508454520569bf1a3c1570f05ea578768 Author: Kalle Valo Date: Sat Feb 21 09:53:37 2009 +0200 at76c50x-usb: add link to the TODO list It's easier to have the TODO list in wiki, so add a link to the list. Signed-off-by: Kalle Valo Signed-off-by: John W. Linville commit 1cc198fee9eb60d9dddbdcb6f32a6e36e5136769 Author: Jason Andryuk Date: Sat Feb 21 09:53:29 2009 +0200 at76c50x-usb: additional disconnect fixes Additional attempts to fix Oops on disconnect, that appear to be successful. However, some may be extraneous. The cancel_delayed_work call is probably the most necessary. The device_unplugged check may not be necessary. del_timer_sync may not be necessary either, but the Oops I was receiving was related to timers. Hence the addition. Signed-off-by: Jason Andryuk Signed-off-by: Kalle Valo Signed-off-by: John W. Linville commit 5a2137ddcc4b4d0d9227db433eabaefa3c3bd924 Author: Jason Andryuk Date: Sat Feb 21 09:53:22 2009 +0200 at76c50x-usb: clean up DMA on stack Cleanup dma on stack issues: - no DMA on stack - cleanup unclear endianness issue Corrected version of Oliver Neukum's original patch for at76_usb. Signed-off-by: Jason Andryuk Signed-off-by: Kalle Valo Signed-off-by: John W. Linville commit deda862e699f0aba6f0975e138a0258d1b29f2df Author: Jason Andryuk Date: Sat Feb 21 09:53:14 2009 +0200 at76c50x-usb: fix oops on disconnect flush_workqueue needs to be called instead of the generic one and the associated functions need to be modified to prevent re-adding themselves to the workqueue. The rx_tasklet is also killed in the small (?) chance it is scheduled. Signed-off-by: Jason Andryuk Signed-off-by: Kalle Valo Signed-off-by: John W. Linville commit 2f92cd2e5f1751f7da5fa9b58e0ab22da6577cfd Author: Luis R. Rodriguez Date: Sat Feb 21 00:24:16 2009 -0500 cfg80211: pass the regulatory_request to ignore_request Signed-off-by: Luis R. Rodriguez Signed-off-by: John W. Linville commit d951c1ddeba3c84c464069c808efc494aa705304 Author: Luis R. Rodriguez Date: Sat Feb 21 00:24:15 2009 -0500 cfg80211: do not kzalloc() again for a new request on __regulatory_hint Since we already have a regulatory request from the workqueue use that and avoid a new kzalloc() Signed-off-by: Luis R. Rodriguez Signed-off-by: John W. Linville commit 28da32d7cafdd181d6a59e8c0b74e9651a8f8be3 Author: Luis R. Rodriguez Date: Sat Feb 21 00:24:14 2009 -0500 cfg80211: pass the regulatory_request struct in __regulatory_hint() We were passing value by value, lets just pass the struct. Signed-off-by: Luis R. Rodriguez Signed-off-by: John W. Linville commit d1c96a9a29a5f34fa50133889b6110dca6cc3d43 Author: Luis R. Rodriguez Date: Sat Feb 21 00:24:13 2009 -0500 cfg80211: make __regulatory_hint() static Signed-off-by: Luis R. Rodriguez Signed-off-by: John W. Linville commit 84540869678649074ae040bc9b063ef38ec9c83a Author: Luis R. Rodriguez Date: Sat Feb 21 00:20:40 2009 -0500 ath9k: follow beacon hints on reg_notifier when world roaming If we are roaming we allow to follow beacon hints. Signed-off-by: Luis R. Rodriguez Signed-off-by: John W. Linville commit e38f8a7a8bebbab9d97f204e2cf05ef58b048a1d Author: Luis R. Rodriguez Date: Sat Feb 21 00:20:39 2009 -0500 cfg80211: Add AP beacon regulatory hints When devices are world roaming they cannot beacon or do active scan on 5 GHz or on channels 12, 13 and 14 on the 2 GHz band. Although we have a good regulatory API some cards may _always_ world roam, this is also true when a system does not have CRDA present. Devices doing world roaming can still passive scan, if they find a beacon from an AP on one of the world roaming frequencies we make the assumption we can do the same and we also remove the passive scan requirement. This adds support for providing beacon regulatory hints based on scans. This works for devices that do either hardware or software scanning. If a channel has not yet been marked as having had a beacon present on it we queue the beacon hint processing into the workqueue. All wireless devices will benefit from beacon regulatory hints from any wireless device on a system including new devices connected to the system at a later time. Signed-off-by: Luis R. Rodriguez Signed-off-by: John W. Linville commit 3fc71f775af677f640f0f0780b16f1b0958f6d9d Author: Luis R. Rodriguez Date: Sat Feb 21 00:20:38 2009 -0500 cfg80211: enable 5 GHz world roaming channels The current static world regulatory domain is too restrictive, we can use some 5 GHz channels world wide so long as they do not touch frequencies which require DFS. The compromise is we must also enforce passive scanning and disallow usage of a mode of operation that beacons: (AP | IBSS | Mesh) Signed-off-by: Luis R. Rodriguez Signed-off-by: John W. Linville commit 68798a62634e58e01d6f1de509b253dcb40625bd Author: Luis R. Rodriguez Date: Sat Feb 21 00:20:37 2009 -0500 cfg80211: enable active-scan / beaconing on Ch 1-11 for world regdom This enables active scan and beaconing on Channels 1 through 11 on the static world regulatory domain. Signed-off-by: Luis R. Rodriguez Signed-off-by: John W. Linville commit 69b1572bd82046cc8f730e05c797062ca8c2b535 Author: Luis R. Rodriguez Date: Sat Feb 21 00:04:33 2009 -0500 cfg80211: rename regdom_changed to regdom_changes() and use it Signed-off-by: Luis R. Rodriguez Signed-off-by: John W. Linville commit fff32c04f6074de0719cc46d8f488aaf746f151a Author: Luis R. Rodriguez Date: Sat Feb 21 00:04:32 2009 -0500 cfg80211: allow drivers that agree on regulatory to agree This allows drivers that agree on regulatory to share their regulatory domain. Signed-off-by: Luis R. Rodriguez Signed-off-by: John W. Linville commit fb1fc7add5d205c1db2fa323af1367c3cd4dced2 Author: Luis R. Rodriguez Date: Sat Feb 21 00:04:31 2009 -0500 cfg80211: comments style cleanup Signed-off-by: Luis R. Rodriguez Signed-off-by: John W. Linville commit fe33eb390854886e1fd5d4835d833b80d145aafb Author: Luis R. Rodriguez Date: Sat Feb 21 00:04:30 2009 -0500 cfg80211: move all regulatory hints to workqueue All regulatory hints (core, driver, userspace and 11d) are now processed in a workqueue. Signed-off-by: Luis R. Rodriguez Signed-off-by: John W. Linville commit 0441d6ffc705de17d85923264a1b03b71ebfccb8 Author: Luis R. Rodriguez Date: Sat Feb 21 00:04:29 2009 -0500 cfg80211: free rd on unlikely event on 11d hint This was never happening but it was still wrong, so correct it. Signed-off-by: Luis R. Rodriguez Signed-off-by: John W. Linville commit 915278e099e532f3a874764e28c81958f788b9f1 Author: Luis R. Rodriguez Date: Sat Feb 21 00:04:28 2009 -0500 cfg80211: remove likely from an 11d hint case Truth of the matter this was confusing people so mark it as unlikely as that is the case now. Signed-off-by: Luis R. Rodriguez Signed-off-by: John W. Linville commit d335fe6391c2d86582cf71ef5773a161ee604608 Author: Luis R. Rodriguez Date: Sat Feb 21 00:04:27 2009 -0500 cfg80211: protect first access of last_request on 11d hint under mutex We were not protecting last_request there is a small possible race between an 11d hint and another routine which calls reset_regdomains() which can prevent a valid country IE from being processed. This is not critical as it will still be procesed soon after but locking prior to it is correct. Signed-off-by: Luis R. Rodriguez Signed-off-by: John W. Linville commit 806a9e39670be4f1f861c346ec102a79e81b90c3 Author: Luis R. Rodriguez Date: Sat Feb 21 00:04:26 2009 -0500 cfg80211: make regulatory_request use wiphy_idx instead of wiphy We do this so later on we can move the pending requests onto a workqueue. By using the wiphy_idx instead of the wiphy we can later easily check if the wiphy has disappeared or not. Signed-off-by: Luis R. Rodriguez Signed-off-by: John W. Linville commit 761cf7ecffc4bc079679e65c3b1ab107c1c1fb56 Author: Luis R. Rodriguez Date: Sat Feb 21 00:04:25 2009 -0500 cfg80211: add assert_cfg80211_lock() to ensure proper protection Signed-off-by: Luis R. Rodriguez Signed-off-by: John W. Linville commit bcf4f99b7b1e0971b79e8df40331e77fc1744049 Author: Luis R. Rodriguez Date: Sat Feb 21 00:04:24 2009 -0500 cfg80211: propagate -ENOMEM during regulatory_init() Calling kobject_uevent_env() can fail mainly due to out of memory conditions. We do not want to continue during such conditions so propagate that as well instead of letting cfg80211 load as if everything is peachy. Additionally lets clarify that when CRDA is not called during cfg80211's initialization _and_ if the error is not an -ENOMEM its because kobject_uevent_env() failed to call CRDA, not because CRDA failed. For those who want to find out why we also let you do so by enabling the kernel config CONFIG_CFG80211_REG_DEBUG -- you'll get an actual stack trace. So for now we'll treat non -ENOMEM kobject_uevent_env() failures as non fatal during cfg80211's initialization. CC: Greg KH Signed-off-by: Luis R. Rodriguez Signed-off-by: John W. Linville commit ba25c1414264f1f5fc046cf34d20947e41713a0d Author: Luis R. Rodriguez Date: Sat Feb 21 00:04:23 2009 -0500 cfg80211: add regulatory_hint_core() to separate the core reg hint This makes the core hint path more readable and allows for us to later make it obvious under what circumstances we need locking or not. Signed-off-by: Luis R. Rodriguez Signed-off-by: John W. Linville commit 80778f18c09673df2712c7da28aa920469adcae2 Author: Luis R. Rodriguez Date: Sat Feb 21 00:04:22 2009 -0500 nl80211: disallow user requests prior to regulatory_init() If cfg80211 is built into the kernel there is perhaps a small time window betwen nl80211_init() and regulatory_init() where cfg80211_regdomain hasn't yet been initialized to let the wireless core do its work. During that rare case and time frame (if its even possible) we don't allow user regulatory changes as cfg80211 is working on enabling its first regulatory domain. To check for cfg80211_regdomain we now contend the entire operation using the cfg80211_mutex. Signed-off-by: Luis R. Rodriguez Signed-off-by: John W. Linville commit a1794390f1afc3631ac056e0f1677b7ab6f7ee74 Author: Luis R. Rodriguez Date: Sat Feb 21 00:04:21 2009 -0500 cfg80211: rename cfg80211_drv_mutex to cfg80211_mutex cfg80211_drv_mutex is protecting more than the driver list, this renames it and documents what its currently supposed to protect. Signed-off-by: Luis R. Rodriguez Signed-off-by: John W. Linville commit 85fd129a721e6e892dbaaf05203baf819730f699 Author: Luis R. Rodriguez Date: Sat Feb 21 00:04:20 2009 -0500 cfg80211: add wiphy_idx_valid to check for wiphy_idx sanity This will later be used by others, for now make use of it in cfg80211_drv_by_wiphy_idx() to return early if an invalid wiphy_idx has been provided. Signed-off-by: Luis R. Rodriguez Signed-off-by: John W. Linville commit b5850a7a4fd5bcab4f6a2c49e5b4ab9ebb1d5d44 Author: Luis R. Rodriguez Date: Sat Feb 21 00:04:19 2009 -0500 cfg80211: rename cfg80211_registered_device's idx to wiphy_idx Makes it clearer to read when comparing to ifidx Signed-off-by: Luis R. Rodriguez Signed-off-by: John W. Linville commit 79f6440c527c61bcd84edfbdeb390841b9fe5095 Author: Alina Friedrichsen Date: Sat Feb 21 01:27:29 2009 +0100 mac80211: Introduce a generic commit() to apply changes This patch introduces a generic commit() function which initiate a new network joining process. It should be called after some interface config changes, so that the changes get applied more cleanly. Currently set_ssid() and set_bssid() call it. Others can be added in future patches. In version 1 the header files was forgotten, sorry. Signed-off-by: Alina Friedrichsen Signed-off-by: John W. Linville commit 5f9724dd94d63e26edb02d9f6a4ce1ce35737f14 Author: Michael Buesch Date: Fri Feb 20 19:31:21 2009 +0100 b43: Convert usage of b43_radio_maskset() This patch converts code to use the new b43_radio_maskset() API. The semantic patch that makes this change is as follows: // @@ expression dev, addr, mask, set; @@ -b43_radio_write16(dev, addr, (b43_radio_read16(dev, addr) & mask) | set); +b43_radio_maskset(dev, addr, mask, set); // Signed-off-by: Michael Buesch Signed-off-by: John W. Linville commit 3718582a663e035af5d2634cd537a012e20cdb3f Author: Michael Buesch Date: Fri Feb 20 19:30:10 2009 +0100 b43: Convert usage of b43_radio_mask() This patch converts code to use the new b43_radio_mask() API. The semantic patch that makes this change is as follows: // @@ expression dev, addr, mask; @@ -b43_radio_write16(dev, addr, b43_radio_read16(dev, addr) & mask); +b43_radio_mask(dev, addr, mask); // Signed-off-by: Michael Buesch Signed-off-by: John W. Linville commit 4cf507696ae41950cd430e7534180fddd624b3cd Author: Michael Buesch Date: Fri Feb 20 19:28:14 2009 +0100 b43: Convert usage of b43_radio_set() This patch converts code to use the new b43_radio_set() API. The semantic patch that makes this change is as follows: // @@ expression dev, addr, set; @@ -b43_radio_write16(dev, addr, b43_radio_read16(dev, addr) | set); +b43_radio_set(dev, addr, set); // Signed-off-by: Michael Buesch Signed-off-by: John W. Linville commit 76e190cd4b3b9e79096df153edb04092433a797b Author: Michael Buesch Date: Fri Feb 20 19:26:27 2009 +0100 b43: Convert usage of b43_phy_maskset() This patch converts code to use the new b43_phy_maskset() API. The semantic patch that makes this change is as follows: // @@ expression dev, addr, mask, set; @@ -b43_phy_write(dev, addr, (b43_phy_read(dev, addr) & mask) | set); +b43_phy_maskset(dev, addr, mask, set); // Signed-off-by: Michael Buesch Signed-off-by: John W. Linville commit ac1ea3959f4c6694e92fe18a2ec72cfbed0c71fa Author: Michael Buesch Date: Fri Feb 20 19:25:05 2009 +0100 b43: Convert usage of b43_phy_mask() This patch converts code to use the new b43_phy_mask() API. The semantic patch that makes this change is as follows: // @@ expression dev, addr, mask; @@ -b43_phy_write(dev, addr, b43_phy_read(dev, addr) & mask); +b43_phy_mask(dev, addr, mask); // Signed-off-by: Michael Buesch Signed-off-by: John W. Linville commit e59be0b5299ce327d67cfca737b839ef98e0da0e Author: Michael Buesch Date: Fri Feb 20 19:22:36 2009 +0100 b43: Convert usage of b43_phy_set() This patch converts code to use the new b43_phy_set() API. The semantic patch that makes this change is as follows: // @@ expression dev, addr, set; @@ -b43_phy_write(dev, addr, b43_phy_read(dev, addr) | set); +b43_phy_set(dev, addr, set); // Signed-off-by: Michael Buesch Signed-off-by: John W. Linville commit 9b02f419a7dbd956b2c293e5cb1790b6b687f367 Author: Dan Williams Date: Fri Feb 20 12:27:38 2009 -0500 libertas: use private SDIO workqueue to avoid scheduling latency The libertas SDIO interface scheduled the packet worker, resulting in unwanted latency for every data packet or command sent to the firmware. Fix a bug on the SDIO probe error path too. Signed-off-by: Dan Williams Signed-off-by: John W. Linville commit 25d3ef59a2112d50e145500e1bc764f9e8fd4896 Author: Michael Buesch Date: Fri Feb 20 15:39:21 2009 +0100 b43: Implement sw scan callbacks This implements the new sw scan callbacks in b43. They are currently used to turn CFP update in the microcode off while scanning. Signed-off-by: Michael Buesch Signed-off-by: John W. Linville commit 80e775bf08f1915870fbb0c1c7a45a3fdc291721 Author: Michael Buesch Date: Fri Feb 20 15:37:03 2009 +0100 mac80211: Add software scan notifiers This adds optional notifier functions for software scan. Signed-off-by: Michael Buesch Signed-off-by: John W. Linville commit 8821905cfb65504f64e6beb014133bd2a998f5dc Author: Michael Buesch Date: Fri Feb 20 14:58:59 2009 +0100 b43: Enable PCI slow clock workaround, if needed. Enable the PCI slow clock workaround, if we're running a PCI core rev <= 10. Signed-off-by: Michael Buesch Signed-off-by: John W. Linville commit 1cc8f476f1260758a364b68d299796a9edb9ac41 Author: Michael Buesch Date: Fri Feb 20 14:47:56 2009 +0100 b43: Honor the no-slow-clock boardflag Do not turn off the crystal, if the boardflags tell us so. Signed-off-by: Michael Buesch Signed-off-by: John W. Linville commit 969d15cfab52c0af40c617fcbcc54cad6eaa4b32 Author: Michael Buesch Date: Fri Feb 20 14:27:15 2009 +0100 b43: Fix radio host flags This fixes initialization of some radio related hostflags. Signed-off-by: Michael Buesch Signed-off-by: John W. Linville commit 2d071ca50e9f20bf0203a7e8dbb1c784934e324d Author: Michael Buesch Date: Fri Feb 20 12:24:52 2009 +0100 b43: Add slot count compiletime assertion This adds a compiletime assertion for a recently introduced assumption on the slot counts. The tx header cache handling code assumes that the TX slot count can be divided evenly by the number of TX slots per frame. Signed-off-by: Michael Buesch Signed-off-by: John W. Linville commit 20977d3e685abb8b84c385426c39de1fca0a58ac Author: Sujith Date: Fri Feb 20 15:13:28 2009 +0530 ath9k: Add appropriate ANI values for AP mode The short calibration interval is different for AP mode, fix this. Also, the timer should be rearmed in the calibration routine during scanning. Signed-off-by: Sujith Signed-off-by: John W. Linville commit db0f41f556620ed73e8beaafb820baf53f863df9 Author: Sujith Date: Fri Feb 20 15:13:26 2009 +0530 ath9k: Fix PCI shutdown sequence pci_release_region() has to be called after the device has been disabled. Also remove a stray __init attribute. Signed-off-by: Sujith Signed-off-by: John W. Linville commit 8147f5de7a7f241a729aaec912df7dd87a473cd0 Author: Sujith Date: Fri Feb 20 15:13:23 2009 +0530 ath9k: Fix bug in EEPROM chainmask retrieval Using wrong chainmasks would have an adverse impact on performance. This patch fixes chainmask retrieval for non-PCIE cards. Signed-off-by: Sujith Signed-off-by: John W. Linville commit 9e7127908473bfb863c5064b0a61d0f0d6b1af46 Author: Sujith Date: Fri Feb 20 15:13:20 2009 +0530 ath9k: Add PER to RC debug statistics Signed-off-by: Sujith Signed-off-by: John W. Linville commit d9ae96d94a9117fa8d80dd4881f5835f9112c449 Author: Sujith Date: Fri Feb 20 15:13:13 2009 +0530 ath9k: Remove multiple macro occurrences OLC_FOR_AR9280_20_LATER is defined in multiple places, move it to a common location. Signed-off-by: Sujith Signed-off-by: John W. Linville commit f452a63d1ea7d2bae9b4a0cd0a865bcee7ce90c4 Author: Alina Friedrichsen Date: Thu Feb 19 23:46:31 2009 +0100 ath9k: Don't reset TSF after scanning automatically Reset automatically the TSF on re-enabling beaconing after scanning in IBSS mode causes several problems. For example a new created IBSS network can't age before an other node has joined, because scans are done automatically in that case. And several other strange bugs more... The TSF reset is done manually in the higher level mac80211 code in the cases were it's needed, so we don't need to do it here. Signed-off-by: Alina Friedrichsen Signed-off-by: John W. Linville commit bdceeb2dad5c8487ffeb4d0fa949686e4350ec7f Author: Michael Buesch Date: Thu Feb 19 23:45:43 2009 +0100 b43: Optimize DMA buffers In the old days we used one slot per frame. But when we changed that to 2, we didn't raise the overall slot count. Which resulted in an effective division of two to the number of slots. Double the number of TX slots, so we have an effective hardware queue of 128 frames per QoS queue. Also optimize the TX header cache handling. We don't need a cached TX header for slots that will never carry an actual header. So we reduce the memory consumption of the cache by 50%. So as a net result we end up with more or less the same memory usage before and after this patch (except a few tiny meta structures), but have twice the number of TX slots available. Signed-off-by: Michael Buesch Signed-off-by: John W. Linville commit 8eccb53f1b858c9bd0b745f839174725b76508ec Author: Michael Buesch Date: Thu Feb 19 23:39:26 2009 +0100 b43: Fix DMA buffer size handling This fixes hidden bugs in the size handling of the DMA buffers. This sets the RX buffer size to the theoretical max packet size and fixes passing of the size values to the device (must not subtract the header offset). These bugs are hidden and don't actually trigger due to the magic +100 offset for the buffer size. Signed-off-by: Michael Buesch Signed-off-by: John W. Linville commit ca2d559e1a41d62a5b49fb9ab513025ea27f1e7c Author: Michael Buesch Date: Thu Feb 19 20:17:36 2009 +0100 b43: Move DMA stop sanity check Move the DMA stop sanity check up a few lines, so it's actually theoretically possible to trigger. (But it still shouldn't trigger, of course). Signed-off-by: Michael Buesch Signed-off-by: John W. Linville commit dbaaa147d6396c41d8f31156a777dfdaae2335a4 Author: Vasanthakumar Thiagarajan Date: Thu Feb 19 15:41:52 2009 +0530 ath9k: Filter out beacons from other BSS in STA mode Passing beacons received from other BSS to s/w in non-scanning state is unnecessary in STA mode. This patch filters them out in h/w. Signed-off-by: Vasanthakumar Thiagarajan Signed-off-by: John W. Linville commit 96891ceedaeaac95aa5b9dba5e68a8e77d541e78 Author: Fenghua Yu Date: Wed Feb 18 15:54:33 2009 -0800 iwlwifi: dma mapping read and write changes When iwlwifi runs on IOMMU, IOMMU generates a lot of PTE write faults because PTE write bit is not set on some of PTE's. This is because iwlwifi driver calls DMA mapping with PCI_DMA_TODEVICE which is read only in mapping PTE. But iwlwifi device actually writes to the mapped page to update its contents. This issue is not exposed in swiotlb. But VT-d hardware can capture this fault and stop the fault transaction. The iwl TX command contains a scratch field that is updated by uCode to indicate retry counts. For 5000 series the patch is required also for regular frames, but this patch does not differenciate. Signed-off-by: Fenghua Yu Acked-by: Tomas Winkler Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit 7dc45f25d39ea959fdc1d5f636e9fc6cbe7ac7e0 Author: Abhijeet Kolekar Date: Wed Feb 18 15:54:32 2009 -0800 iwl3945: use SW rfkill from iwlwifi Patch unifies use of SW rfkill between 3945 and agn driver. Signed-off-by: Abhijeet Kolekar Acked-by: Samuel Ortiz Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit f17d08a657ee0713390ccf9a0b0ebf4f80495161 Author: Abhijeet Kolekar Date: Wed Feb 18 15:54:31 2009 -0800 iwl3945: use iwl_isr iwl3945 uses iwl_isr and deletes duplicated iwl3945_isr. Signed-off-by: Abhijeet Kolekar Acked-by: Samuel Ortiz Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit ed3b932e014eb54e8d9b0d7b9d8861f653185d04 Author: Abhijeet Kolekar Date: Wed Feb 18 15:54:30 2009 -0800 iwl3945: remove duplicate interrupt code Patch removes duplicate code to enable and disable interrupt. iwl3945 now uses iwlwifi's functions. Signed-off-by: Abhijeet Kolekar Acked-by: Samuel Ortiz Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit 261b9c33987ca80bf6217848c3c113d2a4d313d0 Author: Abhijeet Kolekar Date: Wed Feb 18 15:54:29 2009 -0800 iwl3945: use iwl_rx_reply_error notification Patch removes duplicate code from iwl3945 and uses iwl_rx_reply_error and spectrum notifications from iwlwifi. Signed-off-by: Abhijeet Kolekar Acked-by: Samuel Ortiz Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit 030f05eda6ee4d0ed63a93f4f9ebae42c46fb8b6 Author: Abhijeet Kolekar Date: Wed Feb 18 15:54:28 2009 -0800 iwl3945: use iwl rx handlers Patch removes duplicate rx handlers(pm_sleep and pm_debug) from 3945 and uses handlers from iwlwifi. Signed-off-by: Abhijeet Kolekar Acked-by: Samuel Ortiz Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit e9dde6f6edf9954e2c75d2d738cae0f00e9b0fbc Author: Abhijeet Kolekar Date: Wed Feb 18 15:54:27 2009 -0800 iwl3945: use iwl_mac_hw_scan callback 3945 can use iwl_mac_hw_scan callback instead of iwl3945_mac_hw_scan callback. Signed-off-by: Abhijeet Kolekar Acked-by: Samuel Ortiz Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit cade0eb2c7c7b8df60ac54409592c1a23e3220c8 Author: Abhijeet Kolekar Date: Wed Feb 18 15:54:26 2009 -0800 iwl3945: use iwl_rx_scan handlers Patch makes use of iwl_rx_scan handler for 3945. Signed-off-by: Abhijeet Kolekar Acked-by: Samuel Ortiz Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit 2ce4f9d8618b84994b19e0a31a56562863666623 Author: Jason Andryuk Date: Wed Feb 18 22:41:04 2009 +0200 at76c50x-usb: convert at76_debug to an unsigned int at76_debug should be an unsigned int as it used as a bit field. In fact, modprobe fails when trying to set at76_debug's high bit. Signed-off-by: Jason Andryuk Signed-off-by: Kalle Valo Signed-off-by: John W. Linville commit 19e8bc7fa7df2f208554d1d06b9af129cd7f452a Author: Jason Andryuk Date: Wed Feb 18 22:40:57 2009 +0200 at76c50x-usb: update to latest mac80211 hw scan api With the latest mac80211 stack, the driver needs to be updated for cfg80211 scanning. I based the changes off of modifications for at76_usb found here: http://johannes.sipsolutions.net/patches/old/all/2008-09-19-13:35/020-cfg80211-scan.patch The trick was that max_signal also needs to be set to avoid a divide by zero Oops. I just guessed and used the value 100 for now. kvalo: handpicked the change from two different patches Signed-off-by: Jason Andryuk Signed-off-by: Kalle Valo Signed-off-by: John W. Linville commit 1264b951463a00efebe1bb596499aaad620ec8af Author: Kalle Valo Date: Sat Feb 7 09:27:10 2009 +0200 at76c50x-usb: add driver This is a driver for usb devices based on at76c50x chipset. This is a mac80211 port of the original at76_usb driver. Signed-off-by: Kalle Valo Signed-off-by: John W. Linville commit 41d2f291d78fb90ec26122c1c67d0c151965b378 Author: John W. Linville Date: Fri Feb 20 19:03:31 2009 -0500 iwlagn: default to MAX_UCODE_BEACON_INTERVAL in iwl_adjust_beacon_interval Default to MAX_UCODE_BEACON_INTERVAL if the output of iwl_adjust_beacon_interval would otherwise be zero. This prevents a division by zero on my iwl5300-equipped Lenovo T400 with kernels that include "mac80211: use cfg80211s BSS infrastructure". This patch is a bit of a hack -- I'm not sure why iwl_setup_rxon_timing is giving iwl_adjust_beacon_interval a zero input (which is the only way it would output zero). I would be happy to have a better fix. But for now, this makes my box boot... Signed-off-by: John W. Linville commit c493b017e0631ac023f904a732e8b615d4870426 Author: Roel Kluin Date: Sun Feb 15 18:02:39 2009 +0100 b43: Fix LO calibration txctl reg value This patch expands the parenthesis in the txctl reg write of the LO calibration to enforce precedence rules. Signed-off-by: Roel Kluin Signed-off-by: Michael Buesch Signed-off-by: John W. Linville commit e05eac37946a51efcedcc1b9cddb10af15628902 Author: Roel Kluin Date: Sun Feb 15 16:27:24 2009 +0100 p54: misplaced parentheses Only FIF_FCSFAIL is set due to parentheses Signed-off-by: Roel Kluin Signed-off-by: John W. Linville commit c3d72b968129ad4aec86c5fc8d2380f01ebebc53 Author: Dan Williams Date: Wed Feb 11 13:26:06 2009 -0500 ipw2x00: age scan results on resume Scanned BSS entries are timestamped with jiffies, which doesn't increment across suspend and hibernate. On resume, every BSS in the scan list looks like it was scanned within the last 10 seconds, irregardless of how long the machine was actually asleep. Age scan results on resume with the time spent during sleep so userspace has a clue how old they really are. Signed-off-by: Dan Williams Signed-off-by: John W. Linville commit bc8263f1d86946ffe97eb249fc1d6660da1e1055 Author: John W. Linville Date: Tue Feb 10 13:53:01 2009 -0500 airo: correct improper initialization of local variable Signed-off-by: John W. Linville commit 4aa188e1a868d25c5b93e48e5d29bbd0f9d3bc3a Author: Johannes Berg Date: Wed Feb 18 19:32:08 2009 +0100 mac80211/cfg80211: move iwrange handler to cfg80211 The previous patch made cfg80211 generally aware of the signal type a given hardware will give, so now it can implement SIOCGIWRANGE itself, removing more wext stuff from mac80211. Might need to be a little more parametrized once we have more hardware using cfg80211 and new hardware capabilities. Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit 77965c970d7da9c9b6349ff2b1d9adecf54c403b Author: Johannes Berg Date: Wed Feb 18 18:45:06 2009 +0100 cfg80211: clean up signal type It wasn't a good idea to make the signal type a per-BSS option, although then it is closer to the actual value. Move it to be a per-wiphy setting, update mac80211 to match. Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit 630e64c487c0a9550f05b465216a1cd9125b52f2 Author: Johannes Berg Date: Wed Feb 18 10:48:07 2009 +0100 nl80211: remove admin requirement from station get There's no particular reason to not let untrusted users see this information -- it's just the stations we're talking to, packet counters for them and possibly some mesh things. Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit 0a16ec5f5ed38076026960332a9ea4746dc1f3c6 Author: Johannes Berg Date: Wed Feb 18 09:56:47 2009 +0100 mac80211: add missing kernel-doc Document the new shutdown member. Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit d5c232ff9bd5c0aa79b65a0d21cf9b944d7bf218 Author: Vasanthakumar Thiagarajan Date: Wed Feb 18 10:22:02 2009 +0530 ath9k: Fix PTK/GTK handshake timeout Some APs don't start BA negotiation with the client before it is done with the key handshake in WPA/RSN. With those APs, key handshake times out if EAPOL frames are sent after addba request. So defer the BA negotiation until we are done with tx/rx of all EAPOL frames. Signed-off-by: Vasanthakumar Thiagarajan Signed-off-by: John W. Linville commit a77b855245541823b49999a27245ad7428879096 Author: Johannes Berg Date: Wed Feb 18 18:27:22 2009 +0100 cfg80211/mac80211: fill qual.qual value/adjust max_qual.qual Due to various bugs in the software stack we end up having to fill qual.qual; level should be used, but wpa_supplicant doesn't properly ignore qual.qual, NM should use qual.level regardless of that because qual.qual is 0 but doesn't handle IW_QUAL_DBM right now. So fill qual.qual with the qual.level value clamped to -110..-40 dBm or just the regular 'unspecified' signal level. This requires a mac80211 change to properly announce the max_qual.qual and avg_qual.qual values. Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit cb3a8eec0e66edfe8db7d3b3bf19d25745bae3c3 Author: Dan Williams Date: Wed Feb 11 17:14:43 2009 -0500 cfg80211: age scan results on resume Scanned BSS entries are timestamped with jiffies, which doesn't increment across suspend and hibernate. On resume, every BSS in the scan list looks like it was scanned within the last 10 seconds, irregardless of how long the machine was actually asleep. Age scan results on resume with the time spent during sleep so userspace has a clue how old they really are. Signed-off-by: Dan Williams Signed-off-by: John W. Linville commit abd2fdb4c606f0e5cfec3647d57ebd20f03caafd Author: Ivo van Doorn Date: Tue Feb 17 14:04:29 2009 +0100 rt2x00: Fix RF offset The word_base is in bytes instead of word index number, this means that when using it, it should be transformed into a word index first. Otherwise RF register reading will fail through debugfs since we would start reading 4 words starting with word 4 (which is the last valid word for RF). Signed-off-by: Ivo van Doorn Signed-off-by: John W. Linville commit 98c8a60a04316e94ccea8221cf16768ce91bd214 Author: Jouni Malinen Date: Tue Feb 17 13:24:57 2009 +0200 nl80211: Provide access to STA TX/RX packet counters The TX/RX packet counters are needed to fill in RADIUS Accounting attributes Acct-Output-Packets and Acct-Input-Packets. We already collect the needed information, but only the TX/RX bytes were previously exposed through nl80211. Allow applications to fetch the packet counters, too, to provide more complete support for accounting. Signed-off-by: Jouni Malinen Acked-by: Johannes Berg Signed-off-by: John W. Linville commit fdbf7335ea1a4048ff4818bf15bdcab1925dc6df Author: Sujith Date: Tue Feb 17 15:36:35 2009 +0530 ath9k: Use beacon interval directly Setting up the CAB queue requires only the beacon interval, remove the function ath_get_beaconconfig() which is redundant. Signed-off-by: Sujith Signed-off-by: John W. Linville commit f7a99e46bef0f56549a041e867708b2f63d2e81c Author: Sujith Date: Tue Feb 17 15:36:33 2009 +0530 ath9k: Remove ath_txq_depth and get the queue depth directly Signed-off-by: Sujith Signed-off-by: John W. Linville commit f34639d323ded9d12692fb236e1774408f2a4a2b Author: Sujith Date: Tue Feb 17 15:36:31 2009 +0530 ath9k: Remove a few unused capability macros Signed-off-by: Sujith Signed-off-by: John W. Linville commit 171387ef0a374e04a8167a3a1292e19fd1335f20 Author: Sujith Date: Tue Feb 17 15:36:25 2009 +0530 ath9k: Initialize channel change time Set channel change time to 5ms, this will improve scan results. Signed-off-by: Sujith Signed-off-by: John W. Linville commit 70692ad2923a379e0a10f9ec2ad93fbbe084cc46 Author: Jouni Malinen Date: Mon Feb 16 19:39:13 2009 +0200 nl80211: Optional IEs into scan request This extends the NL80211_CMD_TRIGGER_SCAN command to allow applications to specify a set of information element(s) to be added into Probe Request frames with NL80211_ATTR_IE. This provides support for the MLME-SCAN.request primitive parameter VendorSpecificInfo and can be used, e.g., to implement WPS scanning. Signed-off-by: Jouni Malinen Acked-by: Johannes Berg Signed-off-by: John W. Linville commit 83befbde839b1deb0cd752a834ffd9fde8571ae2 Author: Sujith Date: Mon Feb 16 13:23:21 2009 +0530 ath9k: Fix antenna assignment bug in TX status processing Signed-off-by: Sujith Signed-off-by: John W. Linville commit 0caa7b14f36e8c3c43dd9294a960ae55cafe07fb Author: Sujith Date: Mon Feb 16 13:23:20 2009 +0530 ath9k: Fix HW wait timeout RX and calibration have different timeout requirements. This patch fixes it by changing the HW wait routine to accept a timeout value. Signed-off-by: Sujith Signed-off-by: John W. Linville commit 70768496db9ee27d53d3d03d50c93fbf4c0198a0 Author: Sujith Date: Mon Feb 16 13:23:12 2009 +0530 ath9k: Program the RTC registers correctly This patch programs the RTC registers of AR9100 chipsets correctly during chip reset. Signed-off-by: Sujith Signed-off-by: John W. Linville commit 362695e11a09ff016ef00dc45b934b1daf862091 Author: Bob Copeland Date: Sun Feb 15 12:06:12 2009 -0500 ath5k: compute rts/cts duration after computing full pktlen RTS and CTS-to-self duration needs to go after ICV len is considered. Changes-licensed-under: 3-Clause-BSD Signed-off-by: Bob Copeland Signed-off-by: John W. Linville commit acf3c1a592a070edeede5dfa38c0ce3395357de0 Author: Bob Copeland Date: Sun Feb 15 12:06:11 2009 -0500 ath5k: move beacon processing to a tasklet We currently send beacons directly from the interrupt routine. This can hold up interrupt processing in beaconing modes and makes the ISR somewhat more complex. Move it to a tasklet like rx and tx. Changes-licensed-under: 3-Clause-BSD Signed-off-by: Bob Copeland Signed-off-by: John W. Linville commit b5f03956c56d72ad336e5c2c42a025f25d952c30 Author: Bob Copeland Date: Sun Feb 15 12:06:10 2009 -0500 ath5k: use spin_lock_irqsave for beacon lock ath5k_reset can be called from process context, which in turn can call ath5k_beacon_config which takes the sc->block spinlock. Since it can also be taken in hard irq context, use spin_lock_irqsave everywhere. This fixes a potential deadlock in adhoc mode. Changes-licensed-under: 3-Clause-BSD Cc: stable@kernel.org Signed-off-by: Bob Copeland Signed-off-by: John W. Linville commit 0b6f582bd38783e14f67d4466923f587728b2438 Author: Bob Copeland Date: Sun Feb 15 12:06:09 2009 -0500 ath5k: don't mask off interrupt bits Since interrupts are already masked by the hardware, there's no need to discard interrupt bits in the ISR itself. Also, in ath5k_beacon_config we mask off a couple of bits without locking, so doing this mask in software can lead to unhandled beacon timer and beacon miss interrupts. Changes-licensed-under: 3-Clause-BSD Signed-off-by: Bob Copeland Signed-off-by: John W. Linville commit 144d9ad98ef90072fd939e620f374d6918155a06 Author: Ivo van Doorn Date: Sun Feb 15 17:43:05 2009 +0100 rt2x00: Add various new USB IDs for rt73usb Signed-off-by: Ivo van Doorn Signed-off-by: John W. Linville commit 53bc647a1a96189be53b68b9e8c40df0f42fc300 Author: Ivo van Doorn Date: Sun Feb 15 17:42:48 2009 +0100 rt2x00: Remove check for rf word 0 The only way rf_write() can be called with word 0 is when the user sends the wrong word index through debugfs. However the values which are send through debugfs are validated using the RF_BASE and RF_SIZE macro values, the most logical solution is to increase RF_BASE with 4 and decrease RF_SIZE with 4 (RF_SIZE has always been 1 word too big) Signed-off-by: Ivo van Doorn Signed-off-by: John W. Linville commit 62750f421f6eebabedf545183ef8291cd3e63c78 Author: Ivo van Doorn Date: Sun Feb 15 17:42:30 2009 +0100 rt2x00: uncomment get_tsf The atomic requirement for get_tsf() has been removed by mac80211. This means the USB drivers can add support for the callback function again. Signed-off-by: Ivo van Doorn Signed-off-by: John W. Linville commit 13e967b2926a51e1913ea42711eaf4108372fd44 Author: Randy Dunlap Date: Fri Feb 13 16:39:35 2009 -0800 wireless: fix for CONFIG_NL80211=n Add empty function for case of CONFIG_NL80211=n: net/wireless/scan.c:35: error: implicit declaration of function 'nl80211_send_scan_aborted' Signed-off-by: Randy Dunlap Acked-by: Johannes Berg Signed-off-by: John W. Linville commit 80bc53931bdf8284c5a95ba96d86ab6c2473a5f8 Author: Reinette Chatre Date: Fri Feb 13 11:51:19 2009 -0800 iwlwifi: Fix and rework Kconfig file Fixes: - iwlwifi is an optional driver and should thus not default to 'y'. - 3945 now depends on IWLCORE. Rework: - There is not a case when IWLCORE should not be selected. At the same time the driver does not use IWLWIFI or IWLCORE. We can just merge the usage of these two. With IWLWIFI being the driver name we proceed to use just it and replace instances of IWLCORE with it. The module name does not change and is still iwlcore. - Both IWLAGN and IWL3945 are selecting FW_LOADER, we can thus just move this up to one select when IWLWIFI is selected. - IWL5000 now supports Intel Wireless Wifi 100, 6000, and 6050 series. - Now that 3945 depends on IWLWIFI we can also indicate its dependency on MAC80211_LEDS and LEDS_CLASS at this level. - IWLAGN_LEDS is not used by driver - remove it. - IWLAGN_SPECTRUM_MEASUREMENT actually depends on IWLWIFI as it forms part of iwlcore module. Move this config up in Kconfig to reflect that and also change name to IWLWIFI_SPECTRUM_MEASUREMENT. - CONFIG_IWLWIFI_RFKILL is used by iwlagn as well as iwl3945, add text to description that indicates this. - CONFIG_IWL3945_RFKILL does not exist - remove usage from driver. - Add "iwlagn" to end of description of IWLAGN to help people understand what iwlagn means in rest of Kconfig text. - Add "iwl3945" to end of description of IWL3945 to help people understand what iwlagn means in rest of Kconfig text. - Change IWLWIFI_DEBUGFS description to indicate that only iwlagn supports it (for now). Signed-off-by: Reinette Chatre Reported-by: Randy Dunlap Signed-off-by: John W. Linville commit d21050c7bedaf4ee94c3b1b1ab7129a849bbf620 Author: Reinette Chatre Date: Fri Feb 13 11:51:18 2009 -0800 iwlwifi: use singlethread workqueue Use one workqueue instead of one per CPU. Signed-off-by: Reinette Chatre cc: Arjan van de Ven Signed-off-by: John W. Linville commit daf518dee66c3c6029d0b828e15c7adf5aea5493 Author: Wu, Fengguang Date: Fri Feb 13 11:51:17 2009 -0800 iwlwifi: report correct and detailed values about requested txpower Signed-off-by: Wu Fengguang Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit 1788bcd155a2cbb7fad6bb30c2ae3786ceee8b4c Author: Jiri Slaby Date: Thu Feb 12 22:29:40 2009 +0100 ipw2200, fix ipw io functions - some of them are defined as follows: #define ipw_write32 expr1; expr2 and are called from loops or ifs without a compound statement, so they are broken. Fix it by putting them into do {} while (0) for writes and ({ }) for reads. - also unify and cleanup them while at it -- convert them from macros to inline functions, so that we get some basic typechecking Signed-off-by: Jiri Slaby Acked-by: Zhu Yi Cc: James Ketrenos Cc: Reinette Chatre Signed-off-by: John W. Linville commit 191a99b748a080d9ec896f35352da741b556119e Author: Bob Copeland Date: Thu Feb 12 13:38:58 2009 -0500 ath9k: move common regulatory code out of if() branches Both branches of the regulatory check in ath_attach() set up a custom regulatory domain and apply radar and world flags, so extract those into a single path. While at it, fix a couple of spelling errors and an unnecessary extra pointer traversal. Signed-off-by: Bob Copeland Acked-by: Luis R. Rodriguez Signed-off-by: John W. Linville commit 65fe4656b79d5f91e7c7416c9a2994301ccc15e7 Author: Bob Copeland Date: Thu Feb 12 13:38:57 2009 -0500 ath9k: remove prototype for ath9k_regd_get_current_country ath9k_regd_get_current_country() doesn't exist. Signed-off-by: Bob Copeland Acked-by: Luis R. Rodriguez Signed-off-by: John W. Linville commit 17580f6ab172089a31412bc895de5fcef9f8c073 Author: Bob Copeland Date: Thu Feb 12 13:38:56 2009 -0500 ath9k: remove ath9k_regd_get_rd() The function ath9k_regd_get_rd() is unused. Signed-off-by: Bob Copeland Acked-by: Luis R. Rodriguez Signed-off-by: John W. Linville commit d0f48f9d1fa9ad01effdf280cda944c6eb518f59 Author: Bob Copeland Date: Thu Feb 12 13:38:55 2009 -0500 ath9k: convert isWwrSKU macro into C code Write isWwrSKU as an inline function and nix the camel-case to make the routine slightly clearer. Change its argument to take the regd value directly so it can eventually be used by ath5k as well. Signed-off-by: Bob Copeland Acked-by: Luis R. Rodriguez Signed-off-by: John W. Linville commit e775aaf07a72eafdb352a984d820612dd76eab8c Author: Bob Copeland Date: Thu Feb 12 13:38:54 2009 -0500 ath9k: save a few calls to ath9k_regd_get_eepromRD Since we already have a stack variable to track the eeprom regd, we can grab it up front it and save three calls to fetch it again. Signed-off-by: Bob Copeland Acked-by: Luis R. Rodriguez Signed-off-by: John W. Linville commit 63a7c8e254651d1080809de22f0db3ac70fbf914 Author: Bob Copeland Date: Thu Feb 12 13:38:53 2009 -0500 ath9k: remove write-only current_rd_inuse The current_rd_inuse regulatory value is assigned but not used anywhere. Signed-off-by: Bob Copeland Acked-by: Luis R. Rodriguez Signed-off-by: John W. Linville commit 795cc0ad54128ada6f54d8b1eb051a907df6387e Author: Helmut Schaa Date: Thu Feb 12 18:51:03 2009 +0100 iwlagn: clean up error path in iwl_pci_probe This avoids triggering a BUG_ON in pci_disable_msi in the error path. Furthermore remove the first call to pci_disable_device as it is already called at out_pci_disable_device. Both issues were introduced in the patch "iwlagn: fix hw-rfkill while the interface is down". Signed-off-by: Helmut Schaa Acked-by: Reinette Chatre Signed-off-by: John W. Linville commit 8bd1d07f9345750bd4d767e6c1600919672f98ba Author: Senthil Balasubramanian Date: Thu Feb 12 13:57:03 2009 +0530 ath9k: Add open loop control support This patch adds Open Loop Control support for Atheros chipsets that supports open loop power control. Signed-off-by: Senthil Balasubramanian Signed-off-by: John W. Linville commit 81cb7623ad3b408f871fa36b774fc20d8dfccac0 Author: Sujith Date: Thu Feb 12 11:38:37 2009 +0530 mac80211: Extend the rate control API with an update callback The AP can switch dynamically between 20/40 Mhz channel width, in which case we switch the local operating channel, but the rate control algorithm is not notified. This patch adds a new callback to indicate such changes to the RC algorithm. Currently, HT channel width change is notified, but this callback can be used to indicate any new requirements that might come up later on. Signed-off-by: Sujith Acked-by: Johannes Berg Signed-off-by: John W. Linville commit b06e786d4c850515e2efdf6dc37ba9e2ffc86bab Author: Sujith Date: Thu Feb 12 10:06:54 2009 +0530 ath9k: Decrease minimum NF threshold The existing value was too conservative, causing the history buffer not to be updated. Signed-off-by: Sujith Signed-off-by: John W. Linville commit 668158af481a29aae82ded6593be0a21311f3243 Author: Sujith Date: Thu Feb 12 10:06:52 2009 +0530 ath9k: Fix incorrect noise floor reading for 4k EEPROM Signed-off-by: Sujith Signed-off-by: John W. Linville commit 0fd06c90c2a9e837da6f34383a9ca38cfa702e5b Author: Sujith Date: Thu Feb 12 10:06:51 2009 +0530 ath9k: Fix bug in disabling MIB counters This patch fixes a bug in ANI, where the MIB counters were being cleared before the stats were updated. Signed-off-by: Sujith Signed-off-by: John W. Linville commit edf7c060f094f33b68b34b9312688fb823ebc0ff Author: Sujith Date: Thu Feb 12 10:06:49 2009 +0530 ath9k: Initialize AGC calibration properly Signed-off-by: Sujith Signed-off-by: John W. Linville commit 4af9cf4fda28c5f794861c52e0db5a3de9ee574d Author: Sujith Date: Thu Feb 12 10:06:47 2009 +0530 ath9k: Enable TSF Out of Range Interrupt This patch lays the groundwork for handling TSF Out of Range interrupt, which will be used for power save later on. Signed-off-by: Sujith Signed-off-by: John W. Linville commit 06d0f0663e11cab4ec5f2c143a118d71a12fbbe9 Author: Sujith Date: Thu Feb 12 10:06:45 2009 +0530 ath9k: Enable Fractional N mode This patch enables Fractional N mode for all channel if the EEPROM says so, and also fixes the INI only when the device is not a 2 GHz only capable device. Signed-off-by: Sujith Signed-off-by: John W. Linville commit fec0de1110e58ed39647e484bff8437e4185158d Author: Sujith Date: Thu Feb 12 10:06:43 2009 +0530 ath9k: Fix rd_ext EEPROM capability for AR9285 AR9285 chipsets have a different EEPROM layout, handle this appropriately when populating the rd_ext capability. Signed-off-by: Sujith Signed-off-by: John W. Linville commit e421c7b35c17752dbe6d26d910eb2d6814073355 Author: Sujith Date: Thu Feb 12 10:06:36 2009 +0530 ath9k: Store the correct max TX power level This patch fixes a bug where the max power level was being calculated incorrectly. Signed-off-by: Sujith Signed-off-by: John W. Linville commit 469002983fc90c2ff0959e2b03335c0fe2e4d5a9 Author: Johannes Berg Date: Sun Feb 15 12:44:28 2009 +0100 mac80211: split IBSS/managed code This patch splits out the ibss code and data from managed (station) mode. The reason to do this is to better separate the state machines, and have the code be contained better so it gets easier to determine what exactly a given change will affect, that in turn makes it easier to understand. This is quite some churn, especially because I split sdata->u.sta into sdata->u.mgd and sdata->u.ibss, but I think it's easier to maintain that way. I've also shuffled around some code -- null function sending is only applicable to managed interfaces so put that into that file, some other functions are needed from various places so put them into util, and also rearranged the prototypes in ieee80211_i.h accordingly. Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit 96f5e66e8a79810e2982cdcfa28e554f3d97da21 Author: Johannes Berg Date: Thu Feb 12 00:51:53 2009 +0100 mac80211: fix aggregation for hardware with ampdu queues Hardware with AMPDU queues currently has broken aggregation. This patch fixes it by making all A-MPDUs go over the regular AC queues, but keeping track of the hardware queues in mac80211. As a first rough version, it actually stops the AC queue for extended periods of time, which can be removed by adding buffering internal to mac80211, but is currently not a huge problem because people rarely use multiple TIDs that are in the same AC (and iwlwifi currently doesn't operate as AP). This is a short-term fix, my current medium-term plan, which I hope to execute soon as well, but am not sure can finish before .30, looks like this: 1) rework the internal queuing layer in mac80211 that we use for fragments if the driver stopped queue in the middle of a fragmented frame to be able to queue more frames at once (rather than just a single frame with its fragments) 2) instead of stopping the entire AC queue, queue up the frames in a per-station/per-TID queue during aggregation session initiation, when the session has come up take all those frames and put them onto the queue from 1) 3) push the ampdu queue layer abstraction this patch introduces in mac80211 into the driver, and remove the virtual queue stuff from mac80211 again This plan will probably also affect ath9k in that mac80211 queues the frames instead of passing them down, even when there are no ampdu queues. Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit f3734ee6df3ac57151e02d091f47d5e52e646539 Author: Dan Williams Date: Thu Feb 12 12:32:55 2009 -0500 make net/ieee80211.h private to ipw2x00 Only ipw2x00 now uses it. Reduce confusion. Profit! Signed-off-by: Dan Williams Signed-off-by: John W. Linville commit 1ea893fde29d8cf1639da8989f4b843dc3283ca8 Author: Dan Williams Date: Wed Feb 11 17:17:10 2009 -0500 hostap: convert usage of net/ieee80211.h to linux/ieee80211.h So that net/ieee80211.h can be made private to ipw2x00 in a follow-up. Signed-off-by: Dan Williams Signed-off-by: John W. Linville commit 4d8faf6937fd7ada1f523b1cf565ffd2a0623e8c Author: Roel Kluin Date: Wed Feb 11 21:51:31 2009 +0100 wavelan: Test arraysize before an element of the array. Test arraysize before an element of the array. Signed-off-by: Roel Kluin Signed-off-by: John W. Linville commit 076ae609d20901b5fd9bc19fc4c245624c423970 Author: Johannes Berg Date: Wed Feb 11 20:27:30 2009 +0100 mac80211: disallow moving netns mac80211 currently assumes init_net for all interfaces, so really will not cope well with network namespaces, at least at this time. To change this, we would have keep track of the netns in addition to the ifindex, which is not something I want to think about right now. Signed-off-by: Johannes Berg Cc: Eric W. Biederman Signed-off-by: John W. Linville commit 53d6f81c7814690ba096584c733e5deaa34fdd8a Author: Vasanthakumar Thiagarajan Date: Wed Feb 11 22:18:49 2009 +0530 mac80211: Make sure non-HT connection when IEEE80211_STA_TKIP_WEP_USED is set It is possible that some broken AP might send HT IEs in it's assoc response even though the STA has not sent them in assoc req when WEP/TKIP is used as pairwise cipher suite. Also it is important to check this bit before enabling ht mode in beacon receive path. Signed-off-by: Vasanthakumar Thiagarajan Signed-off-by: John W. Linville commit f5ac2b9eb58f5efad83f2d0e7fa464e8980ecfc9 Author: Bing Zhao Date: Wed Feb 4 22:22:39 2009 -0800 libertas: fix power save issue in libertas_sdio module The problem: "iwconfig ethX power on" returns error The cause: "ps_supported" flag was never set for SD8385/8686 The fix: check firmware capabilities returned by GET_HW_SPEC command. Set "ps_supported" to 1 if FW_CAPINFO_PS bit is on. This fix applies to SDIO interface only. Signed-off-by: Bing Zhao Acked-by: Dan Williams Signed-off-by: John W. Linville commit f11c179eea77b8afc2fb7cb4b9a8815b85e3c16f Merge: 4545a3f 0c9a3aa Author: David S. Miller Date: Wed Feb 25 00:02:05 2009 -0800 Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6 Conflicts: drivers/net/wireless/orinoco/orinoco.c commit 7f50ca07fffdfa8f74ff62e54bf569c745e906e5 Author: Hannes Eder Date: Sat Feb 14 11:50:45 2009 +0000 drivers/net/wireless/prism54: fix sparse warning: fix signedness Fix sparse warning: drivers/net/wireless/prism54/isl_ioctl.c:2997:32: warning: incorrect type in argument 2 (different signedness) drivers/net/wireless/prism54/oid_mgt.c:712:42: warning: incorrect type in argument 2 (different signedness) Signed-off-by: Hannes Eder Signed-off-by: David S. Miller commit b9da9e9544724ee25af493bf117e2a8413be34a8 Author: Hannes Eder Date: Sat Feb 14 11:50:26 2009 +0000 drivers/net/wireless/ipw2x00: fix sparse warnings: fix signedness Fix this sparse warnings: drivers/net/wireless/ipw2x00/ipw2100.c:1930:43: warning: incorrect type in argument 4 (different signedness) drivers/net/wireless/ipw2x00/ipw2100.c:1938:76: warning: incorrect type in argument 4 (different signedness) drivers/net/wireless/ipw2x00/ipw2100.c:1946:67: warning: incorrect type in argument 4 (different signedness) drivers/net/wireless/ipw2x00/ipw2100.c:1953:72: warning: incorrect type in argument 4 (different signedness) drivers/net/wireless/ipw2x00/ipw2100.c:4071:73: warning: incorrect type in argument 4 (different signedness) drivers/net/wireless/ipw2x00/ipw2100.c:4078:43: warning: incorrect type in argument 4 (different signedness) drivers/net/wireless/ipw2x00/ipw2100.c:4084:67: warning: incorrect type in argument 4 (different signedness) drivers/net/wireless/ipw2x00/ipw2100.c:7141:73: warning: incorrect type in argument 4 (different signedness) drivers/net/wireless/ipw2x00/ipw2100.c:8317:48: warning: incorrect type in argument 4 (different signedness) Signed-off-by: Hannes Eder Signed-off-by: David S. Miller commit fc68ed4fd7fdfafbefb270cf44194096156c7943 Author: Hannes Eder Date: Sat Feb 14 11:50:06 2009 +0000 drivers/net/wireless/b43: fix warning: format not a string literal and no ... Fix this compilation warning: drivers/net/wireless/b43/main.c: In function 'b43_print_fw_helptext': drivers/net/wireless/b43/main.c:1971: warning: format not a string literal and no format arguments drivers/net/wireless/b43/main.c:1973: warning: format not a string literal and no format arguments Signed-off-by: Hannes Eder Signed-off-by: David S. Miller commit 93f726a90d1446c9e5a40fe8f88086542b273e7c Author: Hannes Eder Date: Sat Feb 14 11:49:48 2009 +0000 drivers/net/wireless/ath9k: fix sparse warnings: Should it be static? Impact: Make symbols static. Fix this sparse warnings: drivers/net/wireless/ath9k/eeprom.c:1343:5: warning: symbol 'ath9k_hw_4k_get_spur_channel' was not declared. Should it be static? drivers/net/wireless/ath9k/eeprom.c:1372:19: warning: symbol 'eep_4k_ops' was not declared. Should it be static? drivers/net/wireless/ath9k/eeprom.c:2649:5: warning: symbol 'ath9k_hw_def_get_spur_channel' was not declared. Should it be static? drivers/net/wireless/ath9k/eeprom.c:2678:19: warning: symbol 'eep_def_ops' was not declared. Should it be static? Signed-off-by: Hannes Eder Signed-off-by: David S. Miller commit 9e05a2df09e91bfe50d16ff96cc208708599185c Author: Hannes Eder Date: Sat Feb 14 11:49:26 2009 +0000 drivers/net/wireless: fix sparse warnings: fix signedness Fix this sparse warnings: drivers/net/wireless/airo.c:2102:21: warning: incorrect type in initializer (different signedness) drivers/net/wireless/airo.c:2126:21: warning: incorrect type in initializer (different signedness) drivers/net/wireless/airo.c:2167:21: warning: incorrect type in initializer (different signedness) drivers/net/wireless/airo.c:2191:21: warning: incorrect type in initializer (different signedness) Signed-off-by: Hannes Eder Signed-off-by: David S. Miller commit 49c4a5dceaff63c3080b3c9d311c1c023c3003af Author: Hannes Eder Date: Sat Feb 14 11:49:09 2009 +0000 drivers/net/wireless: fix sparse warnings: symbol shadows an earlier one Impact: Move variable closer to usage resp. remove redundant variables resp. rename function scope variable. Fix this sparse warnings: drivers/net/wireless/airo.c:3840:29: warning: symbol 'i' shadows an earlier one drivers/net/wireless/airo.c:3751:13: originally declared here drivers/net/wireless/airo.c:3847:29: warning: symbol 'i' shadows an earlier one drivers/net/wireless/airo.c:3751:13: originally declared here drivers/net/wireless/airo.c:3861:21: warning: symbol 'i' shadows an earlier one drivers/net/wireless/airo.c:3751:13: originally declared here drivers/net/wireless/wavelan.c:43:13: warning: symbol 'irq' shadows an earlier one drivers/net/wireless/wavelan.p.h:692:17: originally declared here Signed-off-by: Hannes Eder Signed-off-by: David S. Miller commit b1ae1e99bd9f611f16a09c1bca2a0a38e67b88c3 Author: Hannes Eder Date: Sat Feb 14 11:48:44 2009 +0000 drivers/net/wireless: fix sparse warning: context imbalance Impact: Attribute function with __acquires(...) resp. __releases(...). Fix this sparse warnings: drivers/net/wireless/strip.c:955:21: warning: context imbalance in 'strip_seq_start' - wrong count at exit drivers/net/wireless/strip.c:975:13: warning: context imbalance in 'strip_seq_stop' - unexpected unlock Signed-off-by: Hannes Eder Signed-off-by: David S. Miller commit 494df596f9c315e20523894caa2a2938db3e5d8d Merge: 970ec1a 98c061b f6db44d 22796b1 694aa96 be71661 c996086 Author: Ingo Molnar Date: Tue Feb 17 12:07:00 2009 +0100 Merge branches 'x86/acpi', 'x86/apic', 'x86/cpudetect', 'x86/headers', 'x86/paravirt', 'x86/urgent' and 'x86/xen'; commit 'v2.6.29-rc5' into x86/core commit 5e30589521518bff36fd2638b3c3d69679c50436 Merge: ac178ef d2f8d7e Author: David S. Miller Date: Sat Feb 14 23:12:00 2009 -0800 Merge branch 'master' of /home/davem/src/GIT/linux-2.6/ Conflicts: drivers/net/wireless/iwlwifi/iwl-agn.c drivers/net/wireless/iwlwifi/iwl3945-base.c commit ac178ef0ae9eb44fd527d87aa9b6394e05f56e1f Merge: f3a7c66 6d08b9b Author: David S. Miller Date: Sat Feb 14 23:06:44 2009 -0800 Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-next-2.6 commit 35c26c2cf6a6a2d1c48add732d8ba002bd90784c Author: Harvey Harrison Date: Sat Feb 14 22:56:56 2009 -0800 rndis: remove private wrapper of __constant_cpu_to_le32 Use cpu_to_le32 directly as it handles constant folding now, replace direct uses of __constant_cpu_to_{endian} as well. Signed-off-by: Harvey Harrison Acked-by: David Brownell Signed-off-by: David S. Miller commit 6d08b9b9c6eb2414c4a037407dd121298a74fb36 Author: Luis R. Rodriguez Date: Tue Feb 10 15:35:27 2009 -0800 ath9k: add udelay() for AR5416 on ath9k_hw_configpcipowersave() We need the udelay() for all families, including AR5416. Signed-off-by: Luis R. Rodriguez Signed-off-by: John W. Linville commit 24c1a280c8db6beddbb62662c30b79cd3c8d4d01 Author: Luis R. Rodriguez Date: Tue Feb 10 15:35:22 2009 -0800 ath9k: add comments for ath9k_hw_configpcipowersave() This is used for ASPM. Signed-off-by: Luis R. Rodriguez Signed-off-by: John W. Linville commit a89d03c4230beb50756c98d2d1ba036c83da7680 Author: Reinette Chatre Date: Tue Feb 10 15:19:04 2009 -0800 iwlwifi: fix FAT channel config for 5000 series The test to find out if we have FAT channels do not consider that the value of regulatory_bands for the 5000 series is larger than its eeprom size. Using the eeprom size is strange in itself. Use a new EEPROM_REGULATORY_BAND_NO_FAT to indicate no FAT support and test for that explicitly. Signed-off-by: Reinette Chatre Acked-by: Samuel Ortiz Tested-by: Johannes Berg Signed-off-by: John W. Linville commit 24566f4a15e2626cfaf2854057b636ef40ee8481 Author: Tomas Winkler Date: Tue Feb 10 15:19:03 2009 -0800 iwlwifi: drop PCIe workaround applicable for development boards This patch remove w/a used for development boards. These boards are not available thus no need to keep it inside driver Signed-off-by: Tomas Winkler Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit 3fdb68de22c9881691c485b05ed3204bdc431a18 Author: Tomas Winkler Date: Tue Feb 10 15:19:02 2009 -0800 iwlwifi: use pci registers defined in pci_regs.h This patch replaces where possible usage of pci register defined in the driver by ones defined in pci_regs.h Signed-off-by: Tomas Winkler Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit fe3d2c3fe32dd4d0a421ba39caba1cf87402314e Author: Johannes Berg Date: Tue Feb 10 21:26:03 2009 +0100 mac80211: split managed/ibss code a little more It appears that you can completely mess up mac80211 in IBSS mode by sending it a disassoc or deauth: it'll stop queues and do a lot more but not ever do anything again. Fix this by not handling all those frames in IBSS mode, Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit a71800f3e3de15583c5d336aafa2853786be18a2 Author: Johannes Berg Date: Tue Feb 10 21:26:02 2009 +0100 mac80211: fix IBSS auth The code beyond this point is supposed to be used for non-IBSS (managed) mode only. Signed-off-by: Johannes Berg Cc: Jouni Malinen Signed-off-by: John W. Linville commit 9a03d6d7a8698f26f8ef02dd3c91f8f68c4edcc7 Author: Johannes Berg Date: Tue Feb 10 21:26:01 2009 +0100 mac80211: calculate wstats_flags on the fly Just to make wext.c more self-contained. Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit 00d3f14cf9f12c21428121026a5e1d5f65926447 Author: Johannes Berg Date: Tue Feb 10 21:26:00 2009 +0100 mac80211: use cfg80211s BSS infrastructure Remove all the code from mac80211 to keep track of BSSes and use the cfg80211-provided code completely. Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit 79420f09e76e8e1dd1149d6ce9c20e06cbb5802a Author: Johannes Berg Date: Tue Feb 10 21:25:59 2009 +0100 cfg80211: add more flexible BSS lookup Add a more flexible BSS lookup function so that mac80211 or other drivers can actually use this for getting the BSS to connect to. Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit d491af19db3adcc1eb1653e60a427fb4df36f361 Author: Johannes Berg Date: Tue Feb 10 21:25:58 2009 +0100 cfg80211: allow users to request removing a BSS This patch introduces cfg80211_unlink_bss, a function to allow a driver to remove a BSS from the internal list and make it not show up in scan results any more -- this is to be used when the driver detects that the BSS is no longer available. Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit 78c1c7e109f1f14e7c18f290c4ebc58da220c7ba Author: Johannes Berg Date: Tue Feb 10 21:25:57 2009 +0100 cfg80211: free_priv for BSS info When cfg80211 users have their own allocated data in the per-BSS private data, they will need to free this when the BSS struct is destroyed. Add a free_priv method and fix one place where the BSS was kfree'd rather than released properly. Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit 99cf5f5f3571ce3a837e379d3b87bf5ddf54f17d Author: Johannes Berg Date: Tue Feb 10 21:25:56 2009 +0100 mac80211: dont add BSS when creating IBSS There's no need to create a BSS struct only to pass it to ieee80211_sta_join_ibss, so refactor this function into __ieee80211_sta_join_ibss which takes all the relevant paramters, and ieee80211_sta_join_ibss which takes a BSS struct (used when joining an IBSS that already has other members). Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit 2a5193119269062608582418deba7af82844159a Author: Johannes Berg Date: Tue Feb 10 21:25:55 2009 +0100 cfg80211/nl80211: scanning (and mac80211 update to use it) This patch adds basic scan capability to cfg80211/nl80211 and changes mac80211 to use it. The BSS list that cfg80211 maintains is made driver-accessible with a private area in each BSS struct, but mac80211 doesn't yet use it. That's another large project. Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit 849b7967818995a32c3017542e33eb3155944368 Author: Johannes Berg Date: Tue Feb 10 21:25:54 2009 +0100 mac80211: further cleanups to stopping BA sessions Essentially consisting of passing the sta_info pointer around, instead of repeatedly doing hash lookups. Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit d75636ef9c1af224f1097941879d5a8db7cd04e5 Author: Johannes Berg Date: Tue Feb 10 21:25:53 2009 +0100 mac80211: RX aggregation: clean up stop session Clean up the locking by splitting it into two functions, this will also enable further cleanups of stopping all sessions. Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit 2dace10efb8b761ccbd18d524f3b14d823edf8c0 Author: Johannes Berg Date: Tue Feb 10 21:25:52 2009 +0100 mac80211: clean up BA session teardown The sta_info pointer can very well be passed to ieee80211_sta_tear_down_BA_sessions, this will later allow us to pass it through even further. Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit 55687e380a3965ac448e03281e027553a6ae6dac Author: Johannes Berg Date: Tue Feb 10 21:25:51 2009 +0100 mac80211: fix aggregation timer lockups As far as I can tell, there are possible lockups because both the RX session_timer and TX addba_resp_timer are del_timer_sync'ed under the sta spinlock which both timer functions take. Additionally, the TX agg code seems to leak memory when TX aggregation is not disabled before the sta_info is freed. Fix this by making the free code a little smarter in the RX agg case, and actually make the sta_info_destroy code free the TX agg info in the TX agg case. We won't notify the peer, but it'll notice something is wrong anyway, and normally this only happens after we've told it in some other way we will no longer talk to it. Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit 23e6a7ea5cb1a902d37ab0c783709c178fa834df Author: Johannes Berg Date: Tue Feb 10 21:25:50 2009 +0100 mac80211: fix race in TX aggregation When disabling TX aggregation because it was rejected or from the timer (it was not accepted), there is a window where we first set the state to operation, unlock, and then undo the whole thing. Avoid that by splitting up the stop function. Also get rid of the pointless sta_info indirection in the timer. Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit 86ab6c5a6c5204f6c25281b9039330b8f5e9b692 Author: Johannes Berg Date: Tue Feb 10 21:25:49 2009 +0100 mac80211: document TX aggregation (and small cleanup) Add documentation and move ieee80211_start_tx_ba_cb_irqsafe to right after ieee80211_start_tx_ba_cb. Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit 955d3fe3e8b38de19761e4ac7afdb9d7a33b9566 Author: Johannes Berg Date: Tue Feb 10 21:25:48 2009 +0100 mac80211: hardware should not deny going back to legacy Doing so would be an MLME protocol violation when the peer disabled the aggregation session. Quick driver review indicates that there are error codes passed all over the drivers but cannot ever be nonzero except in error conditions that would indicate mac80211 bugs. No real changes here, since no drivers currently can return -EBUSY. Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit 8abd3f9bc476b5b7f6de1b6fb576b87ba338f7fd Author: Johannes Berg Date: Tue Feb 10 21:25:47 2009 +0100 mac80211: restrict aggregation to supported interface modes We can only support aggregation on AP/STA right now. HT isn't defined for IBSS, WDS or MESH. In the WDS/MESH cases it's not clear what to put into the IBSS field, and we don't handle that in the code at all. Also fix the code to handle VLAN correctly. Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit b8695a8fe6d89140f8d17668e99ebd39358d7c0b Author: Johannes Berg Date: Tue Feb 10 21:25:46 2009 +0100 mac80211: restructure HT code Create two new files, agg-tx.c and agg-rx.c to make it clearer which code is common (ht.c) and which is specific (agg-*.c). Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit 20ad19d0ac7389b04b566ebf3e0e497974f63ffa Author: Johannes Berg Date: Tue Feb 10 21:25:45 2009 +0100 mac80211: fix RX aggregation timeouts The values are in TUs (1.024ms), not ms. Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit 8b1c814d65ae3219ee19d39ad6097f3d5249c23d Author: Johannes Berg Date: Tue Feb 10 21:25:44 2009 +0100 mac80211: remove stray aggregation debugfs definition Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit 7ab17c45b566b8a4a87ceac6cd6c6d77857189ab Author: Johannes Berg Date: Tue Feb 10 21:25:43 2009 +0100 mac80211: remove bssid argument from prepare_for_handlers It's a little confusing to get the BSSID outside the function and pass it in, when it's only needed for this function, so change that. Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit 14b80724367dfdc86f4807461dd1f7f2dd630416 Author: Johannes Berg Date: Tue Feb 10 21:25:42 2009 +0100 mac80211: fix beacon enable more Hopefully the last required fix ... disable beaconing only on beaconing interfaces, and thus avoid calling ieee80211_if_config for purely virtual interfaces (those driver doesn't know about). Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit 60b22511921fe79b2a94a27c09cadfd32fcef5d5 Author: Johannes Berg Date: Tue Feb 10 21:25:41 2009 +0100 mac80211: reject extra IEs for probe request when hw_scan We cannot currently hand off extra IEs to hw_scan, so reject configuring extra IEs for probe request frames when hw_scan is set. Signed-off-by: Johannes Berg Cc: Jouni Malinen Signed-off-by: John W. Linville commit e4e5e2b0b83c816e581ca4671569306bcba77667 Author: Johannes Berg Date: Tue Feb 10 21:25:40 2009 +0100 mac80211: properly validate/translate IW_AUTH_MFP values Make sure nobody passes in bogus values, and translate the values (although it isn't necessary). Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit a4727801004f255f589478b2d75ec00f0a9e30c5 Author: Johannes Berg Date: Tue Feb 10 21:25:39 2009 +0100 zd1211rw: honour enable_beacon conf This makes zd1211rw honour enable_beacon, as well as fixing a memory leak: the beacon skb is leaked when configuring it to the hardware fails. Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit 5e1333624827e7a91b2d2cc04ce978f050cae15e Author: Johannes Berg Date: Tue Feb 10 21:25:38 2009 +0100 mac80211: disable IBSS beacon before join Before we have a probe response frame (which is used as the beacon too) there's no need to ask drivers to beacon, they will not get a beacon anyway. Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit 570a0a7c3ba6e44b0fe7f1d42e69ba139b533737 Author: Johannes Berg Date: Tue Feb 10 21:25:37 2009 +0100 zd1211rw: do not ratelimit no-ops It is rather confusing to see this in the log: [ 695.606877] __ratelimit: 40 callbacks suppressed [ 700.726878] __ratelimit: 40 callbacks suppressed without ever seeing any actual message. This is because zd1211rw doesn't compile out the net_ratelimit() call properly if debugging is not enabled. Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit 572e00122190e3064fa19bd9780b146d2d0f1905 Author: Kalle Valo Date: Tue Feb 10 17:09:31 2009 +0200 mac80211: use ps-poll when dynamic power save mode is disabled When a directed tim bit is set, mac80211 currently disables power save ands sends a null frame to the AP. But if dynamic power save is disabled, mac80211 will not enable power save ever gain. Fix this by adding ps-poll functionality to mac80211. When a directed tim bit is set, mac80211 sends a ps-poll frame to the AP and checks for the more data bit in the returned data frames. Using ps-poll is slower than waking up with null frame, but it's saves more power in cases where the traffic is low. Userspace can control if either ps-poll or null wakeup method is used by enabling and disabling dynamic power save. Signed-off-by: Kalle Valo Signed-off-by: John W. Linville commit 1fb3606bc5864c64c78ce4e1751e5382a9a5aa84 Author: Kalle Valo Date: Tue Feb 10 17:09:24 2009 +0200 mac80211: remove multicast check from check_tim() Currently mac80211 checks for the multicast tim bit from beacons, disables power save and sends a null frame if the bit is set. This was added to support ath9k. But this is a bit controversial because the AP will send multicast frames immediately after the beacon and the time constraints are really high. Relying mac80211 to be fast enough here might not be reliable in all situations. And there's no need to send a null frame, AP will send the frames immediately after the dtim beacon no matter what. Also if dynamic power save is disabled (iwconfig wlan0 power timeout 0) currently mac80211 disables power save whenever the multicast bit is set but it's never enabled again after receiving the first multicast/broadcast frame. The current implementation is not usable on p54/stlc45xx and the easiest way to fix this is to remove the multicast tim bit check altogether. Handling multicast tim bit in host is rare, most of the designs do this in firmware/hardware, so it's better not to have it in mac80211. It's a lot better to do this in firmware/hardware, or if that's not possible it could be done in the driver. Also renamed the function to ieee80211_check_tim() to follow the style of the file. Signed-off-by: Kalle Valo Signed-off-by: John W. Linville commit f733ded107ff15022e3f0f8204f11ab2e83a2aa4 Author: Tobias Klauser Date: Mon Feb 9 23:06:53 2009 +0100 orinoco: Storage class should be before const qualifier The C99 specification states in section 6.11.5: The placement of a storage-class specifier other than at the beginning of the declaration specifiers in a declaration is an obsolescent feature. Signed-off-by: Tobias Klauser Signed-off-by: John W. Linville commit 925be8a3077351edbf2b59ca689105df214a0792 Author: Tobias Klauser Date: Mon Feb 9 23:05:40 2009 +0100 ath5k: Storage class should be before const qualifier The C99 specification states in section 6.11.5: The placement of a storage-class specifier other than at the beginning of the declaration specifiers in a declaration is an obsolescent feature. Signed-off-by: Tobias Klauser Acked-by: Jiri Slaby Signed-off-by: John W. Linville commit 2660b81a378ab227b78c4cc618453fa7e19a7c7b Author: Sujith Date: Mon Feb 9 13:27:26 2009 +0530 ath9k: Remove all the useless ah_ variable prefixes Signed-off-by: Sujith Signed-off-by: John W. Linville commit f74df6fbe31561091bf42be0ed30232be2b9d3ac Author: Sujith Date: Mon Feb 9 13:27:24 2009 +0530 ath9k: Cleanup EEPROM operations This patch removes the various function pointer assignments and unifies them in a single ops structure. Signed-off-by: Sujith Signed-off-by: John W. Linville commit e153789dc3846b35494435b4a8ae82a034c99dae Author: Sujith Date: Mon Feb 9 13:27:15 2009 +0530 ath9k: Add callbacks hooks for EEPROM operations This is preparatory work for removing the individual function pointer assignments in eeprom.c Signed-off-by: Sujith Signed-off-by: John W. Linville commit cbe61d8a41210600bc76b212edcd4dc0f55c014f Author: Sujith Date: Mon Feb 9 13:27:12 2009 +0530 ath9k: Merge ath_hal and ath_hal_5416 structures Finally, merge these structures and have a single HW specific data structure. Signed-off-by: Sujith Signed-off-by: John W. Linville commit ba52da58be0acf3b7775972b2b5234ce64388c79 Author: Sujith Date: Mon Feb 9 13:27:10 2009 +0530 ath9k: Remove duplicate variables A few variables (bssid, bssidmask, curaid) were duplicated in struct ath_softc and in ath_hal, remove them. Signed-off-by: Sujith Signed-off-by: John W. Linville commit d6bad496c6fbe3adb3323915a8b0430fa2955199 Author: Sujith Date: Mon Feb 9 13:27:08 2009 +0530 ath9k: Move regulatory information to a separate structure Signed-off-by: Sujith Signed-off-by: John W. Linville commit d535a42a21eb62bb0e7f35b8ae39da07b679dda4 Author: Sujith Date: Mon Feb 9 13:27:06 2009 +0530 ath9k: Store HW version information in a separate structure This patch moves all the HW version/revision specific information into a separate structure. Signed-off-by: Sujith Signed-off-by: John W. Linville commit 17d7904de85125c62c7258d7cb21207f26d04048 Author: Sujith Date: Mon Feb 9 13:27:03 2009 +0530 ath9k: Remove all the sc_ prefixes This patch removes the useless sc_ prefixes for all variables. Also, refer to interfaces as VIFs and not as VAPs anymore. Signed-off-by: Sujith Signed-off-by: John W. Linville commit ee6e8d1c234e62e503f2dd8137643b24cf424886 Author: Sujith Date: Mon Feb 9 13:29:49 2009 +0530 ath9k: Convert ANI channel to a pointer This patch converts the ANI channel reference to a pointer, this facilitates moving struct ar5416AniState to ani.h Signed-off-by: Sujith Signed-off-by: John W. Linville commit 394cf0a1ca02e7998c8d01975b60a3cdc121e7d8 Author: Sujith Date: Mon Feb 9 13:26:54 2009 +0530 ath9k: Header file cleanup Split the core header files into manageable pieces. Signed-off-by: Sujith Signed-off-by: John W. Linville commit fa8419d08e58c82add921b4e4eb01eb589b8586b Author: Nick Kossifidis Date: Mon Feb 9 06:17:45 2009 +0200 ath5k: Don't call reset on config_interface * We call reset too often and this can result various PHY problems. On config_interface we don't need to reset the whole device. TODO: Create a function hw_fast_reset that only resets the PCU (tx/rx stuff) and not the whole device so that we can use this for stuck beacons etc. Signed-off-by: Nick Kossifidis Signed-off-by: John W. Linville commit 1e3e6e8fe2f422f75619b1110f78bb638ae905b9 Author: Nick Kossifidis Date: Mon Feb 9 06:15:42 2009 +0200 ath5k: Disable BMISS interrupts * Don't enable BMISS interrupts as we don't handle them yet Signed-off-by: Nick Kossifidis Signed-off-by: John W. Linville commit e8f055f0c3ba226ca599c14c2e5fe829f6f57cbb Author: Nick Kossifidis Date: Mon Feb 9 06:12:58 2009 +0200 ath5k: Update reset code * Update reset and sync with HALs * Clean up eeprom settings and tweaking of initvals and put them on separate functions * Set/Restore 32KHz ref clk operation * Add some more documentation TODO: Spur mitigation, tpc, half/quarter rate, compression etc v2: Address comments from Bob and Felix and fix RSSI threshold bug introduced on the first version of the patch Signed-off-by: Nick Kossifidis Signed-off-by: John W. Linville commit a406c139091902acebafb2462b64ba498901e820 Author: Nick Kossifidis Date: Mon Feb 9 06:08:51 2009 +0200 ath5k: Update initvals * Update initvals to match legacy and Sam's HAL Signed-off-by: Nick Kossifidis Signed-off-by: John W. Linville commit 8892e4ec62f1553d36c88e613890aa4d7c5a372e Author: Nick Kossifidis Date: Mon Feb 9 06:06:34 2009 +0200 ath5k: Update RF Buffer handling * Use the new way to modify rf buffer and put some rf buffer documentation on rfbufer.h * Merge all rf regs functions to one * Sync with legacy HAL and Sam's HAL * Set gain_F settings so that gain_F optimization engine works on RF5111/RF5112 (note that both HALs only use step 0 for RF5111 and they don't use gain_F optimization for this chip, code is there but is never used) Signed-off-by: Nick Kossifidis Signed-off-by: John W. Linville commit 6f3b414aca060a847e243f676b8601731938eb48 Author: Nick Kossifidis Date: Mon Feb 9 06:03:41 2009 +0200 ath5k: Update gain_F calibration code and add documentation * Update and cleanup rf gain optimization code * Add comments and refferences to docs and use sane function names * Use only step index on ath5k_gain, no need to have a pointer to the current step since we can determine te step from it's index, this also allows us to put all other structs on rfgain.h and cleanup ath5k.h a little * No need for ah_rfgain variable, we use ah_gain.g_state for everything * Tested on RF2112B chip but gain_F calibration is not yet done (we will finish this on the next patch where we'll rewrite rf-buffer handling) * Use initial rf gain settings for 2316 and 2317 SoCs introduced on a previous patch It seems big but it's mostly cleanup, very few functional changes have been made on phy.c Signed-off-by: Nick Kossifidis Signed-off-by: John W. Linville commit 33a31826b4fe9f26d6b383bad19b7ae522fda006 Author: Nick Kossifidis Date: Mon Feb 9 06:00:34 2009 +0200 ath5k: PHY code cleanup * Clean up initial rf buffer settings (new file rfbufer.h) and introduce a new way to access specific rf registers (will use it later) * Clean up initial rf gain settings by moving them on a new file (rfgain.h) so we can later work on gain optimization functions * Update initial rf buffer settings and initial rf gain settings from HALs. This breaks things for now because our current dumps come from pre-configured rf buffer (regdumps already had the needed values set from binary HAL). Signed-off-by: Nick Kossifidis Signed-off-by: John W. Linville commit 97d97b80984d0207e5c125c1b7b9467aad365d8d Author: Vivek Natarajan Date: Thu Feb 5 20:05:15 2009 +0530 mac80211: Fix the wrong WARN_ON message appearing on enabling power save. This issue happens only when we are associated with a 11n AP and power save is enabled. In the function 'ieee80211_master_start_xmit', ps_disable_work is queued where wake_queues is called. But before this work is executed, we check if the queues are stopped in _ieee80211_tx and return TX_AGAIN to ieee8011_tx which leads to the warning message. This patch fixes this erroneous case. Signed-off-by: Vivek Natarajan Signed-off-by: John W. Linville commit dec59d6faffb44e741d9c19ffdf368d69a968a54 Author: David Kilroy Date: Wed Feb 4 23:05:58 2009 +0000 orinoco: hermes doesn't need to be a separate module Just compile it into the orinoco module. If we merge USB support, the module can then be split as appropriate. Signed-off-by: David Kilroy Signed-off-by: John W. Linville commit f90d8d4789eba79b0a715e41aba4c09403088847 Author: David Kilroy Date: Wed Feb 4 23:05:57 2009 +0000 orinoco: hermes_dld does not need to be a module Signed-off-by: David Kilroy Signed-off-by: John W. Linville commit cb1576a829826d56fab59e22aa3af8c5a7db9936 Author: David Kilroy Date: Wed Feb 4 23:05:56 2009 +0000 orinoco: Move WEXT handlers into a separate file No functional change. Signed-off-by: David Kilroy Signed-off-by: John W. Linville commit 712a4342a0d89e855a03ba06fb11f7eb29456d45 Author: David Kilroy Date: Wed Feb 4 23:05:55 2009 +0000 orinoco: Move hardware functions into separate file No functional change. Signed-off-by: David Kilroy Signed-off-by: John W. Linville commit 5865d015cf85c619a51f8be93d44ec932bc90038 Author: David Kilroy Date: Wed Feb 4 23:05:54 2009 +0000 orinoco: Add hardware function to set multicast mode No functional change. Signed-off-by: David Kilroy Signed-off-by: John W. Linville commit cfeb1db6db80435ccf1f9b18ea71bb233f7db20c Author: David Kilroy Date: Wed Feb 4 23:05:53 2009 +0000 orinoco: Use accessor functions for bitrate tables ... when used by the WEXT ioctl functions. This will allow us to separate the card specific stuff from the WEXT code. Signed-off-by: David Kilroy Signed-off-by: John W. Linville commit 37a2e566f82de9a88fe119479162f9984af2180d Author: David Kilroy Date: Wed Feb 4 23:05:52 2009 +0000 orinoco: Move firmware handling into a separate file No functional change. Signed-off-by: David Kilroy Signed-off-by: John W. Linville commit 4adb474b6b7e26e1318acab5e98864aa78f9b233 Author: David Kilroy Date: Wed Feb 4 23:05:51 2009 +0000 orinoco: Move MIC helpers into new file No functional change. Signed-off-by: David Kilroy Signed-off-by: John W. Linville commit 89e4b5930d8a59395219e7e3e4702e4653022b93 Author: Jaswinder Singh Rajput Date: Thu Feb 12 00:36:39 2009 +0530 arlan-main.c fix compilation warnings for phys_addr_t Signed-off-by: Jaswinder Singh Rajput Signed-off-by: Ingo Molnar commit fb791b1cfb74937332a22d6bf06eed7866fbcc3c Author: David Kilroy Date: Wed Feb 4 23:05:50 2009 +0000 orinoco: Move scan helpers to a separate file No functional change. Signed-off-by: David Kilroy Signed-off-by: John W. Linville commit aea48b1529c6c4d39af82fc36728da49668392c6 Author: David Kilroy Date: Wed Feb 4 23:05:49 2009 +0000 orinoco: use orinoco_private instead of net_device in scan helper This makes the interface to the scan helpers consistent, so we can split them out. Signed-off-by: David Kilroy Signed-off-by: John W. Linville commit 47445cb95015bef0d54ca799f31e454797378a71 Author: David Kilroy Date: Wed Feb 4 23:05:48 2009 +0000 orinoco: Rename orinoco.c So that we can split up the file and still produce a module named orinoco.o. Signed-off-by: David Kilroy Signed-off-by: John W. Linville commit 2131266d6e53e8f84f8111323036343d72bcb856 Author: David Kilroy Date: Wed Feb 4 23:05:47 2009 +0000 orinoco: Fix interesting checkpatch errors ERROR: "foo * bar" should be "foo *bar" ERROR: do not initialise statics to 0 or NULL WARNING: printk() should include KERN_ facility level WARNING: EXPORT_SYMBOL(foo); should immediately follow its function/variable Signed-off-by: David Kilroy Signed-off-by: John W. Linville commit b2f30a0a2395b6c7e7138fbdabec2cb02ff373a7 Author: David Kilroy Date: Wed Feb 4 23:05:46 2009 +0000 orinoco: keep line length below 80 characters Remove most checkpatch warnings of the type WARNING: line over 80 characters Signed-off-by: David Kilroy Signed-off-by: John W. Linville commit 566f2d9eac49119289cd73e6c302ecc392eaf932 Author: David Kilroy Date: Wed Feb 4 23:05:45 2009 +0000 orinoco: remove unnecessary braces Remove the following checkpatch warnings WARNING: braces {} are not necessary for any arm of this statement WARNING: braces {} are not necessary for single statement blocks Signed-off-by: David Kilroy Signed-off-by: John W. Linville commit a94e8427c8bd358b602288d0b1e0cff83a9401bc Author: David Kilroy Date: Wed Feb 4 23:05:44 2009 +0000 orinoco: spaces in parenthesised expressions Remove checkpatch warnings of the following type: ERROR: space prohibited after that open parenthesis '(' ERROR: space prohibited before that close parenthesis ')' ERROR: space prohibited after that '!' (ctx:BxW) ERROR: space required before the open parenthesis '(' ERROR: space required before the open brace '{' Signed-off-by: David Kilroy Signed-off-by: John W. Linville commit 6fe9deb1747e1e3b9f626878a9954b9eef8ab17d Author: David Kilroy Date: Wed Feb 4 23:05:43 2009 +0000 orinoco: address leading and trailing whitespace Remove the following checkpatch errors from orinoco.c ERROR: trailing whitespace ERROR: code indent should use tabs where possible WARNING: suspect code indent for conditional statements Signed-off-by: David Kilroy Signed-off-by: John W. Linville commit ce1a9ee33a5864f3d199baa1d3e154a1f9a6f3dd Author: Michael Buesch Date: Wed Feb 4 19:55:22 2009 +0100 b43: Add parts of LP-PHY TX power control This adds the initial parts of the LP-PHY TX power control. This also adds helper functions for bulk access of LP tables. Signed-off-by: Michael Buesch Signed-off-by: John W. Linville commit 7a9470806053f765ecf7f3932acb4c95c204ad4b Author: Vasanthakumar Thiagarajan Date: Wed Feb 4 18:28:48 2009 +0530 mac80211: Free current bss information in few places where we don't need it any more Signed-off-by: Vasanthakumar Thiagarajan Acked-by: Johannes Berg Signed-off-by: John W. Linville commit 029bc43270e770e0d57d67dc431fe711c58e74f5 Author: Sujith Date: Wed Feb 4 08:10:26 2009 +0530 ath9k: Add retry counters to rate control debug file Signed-off-by: Sujith Signed-off-by: John W. Linville commit d42c6b71a8e722e00a302e7e3365909560de478a Author: Sujith Date: Wed Feb 4 08:10:22 2009 +0530 ath9k: Handle mac80211's FIF_CONTROL flag properly Signed-off-by: Sujith Signed-off-by: John W. Linville commit 254ad0ff9387d1c0a2f975ff40b2f4d1302ccc3a Author: Sujith Date: Wed Feb 4 08:10:19 2009 +0530 ath9k: Remove all the redundant internal buffer types Use mac80211's primitives for identifying the frame type, and cleanup the driver-specific macros. Signed-off-by: Sujith Signed-off-by: John W. Linville commit 141b38b6bc6db69348a9eaed87137451240bc55f Author: Sujith Date: Wed Feb 4 08:10:07 2009 +0530 ath9k: Lock mac80211 callbacks with a mutex Signed-off-by: Sujith Signed-off-by: John W. Linville commit 99e0fca6740b98aed1f604fc2e0acbdbc9e7578a Author: Michael Buesch Date: Tue Feb 3 20:06:14 2009 +0100 b43: (b2062) Fix crystal frequency calculations This fixes the crystal frequency calculations in the b2062 init code. Signed-off-by: Michael Buesch Signed-off-by: John W. Linville commit 686aa5f2137d04f389e527f0391d65232338e599 Author: Michael Buesch Date: Tue Feb 3 19:36:45 2009 +0100 b43: Port spec bugfixes for the LP baseband init A few bugs were fixed in the LP baseband init specs. Signed-off-by: Michael Buesch Signed-off-by: John W. Linville commit baf62eecfa75a26682efdfed0d74256992a47e6b Author: Roel Kluin Date: Tue Feb 3 17:15:57 2009 +0100 libertas: pos[4] tested twice, 2nd should be pos[5] pos[4] can't be both 0x43 and 0x04, 2nd should be pos[5] Signed-off-by: Roel Kluin Acked-by: Dan Williams Signed-off-by: John W. Linville commit 0c2bec96945ccfc4a58a88d73531e392972ba6c5 Author: Mike Rapoport Date: Tue Feb 3 09:04:20 2009 +0200 libertas: if_spi: add ability to call board specific setup/teardown methods In certain cases it is required to perform board specific actions before activating libertas G-SPI interface. These actions may include power up of the chip, GPIOs setup, proper pin-strapping and SPI controller config. This patch adds ability to call board specific setup/teardown methods Signed-off-by: Mike Rapoport Acked-by: Andrey Yurovsky Acked-by: Dan Williams Signed-off-by: John W. Linville commit d43e87868f67c5b52defd8d82bc3f54347ed2408 Author: Vasanthakumar Thiagarajan Date: Tue Feb 3 10:09:49 2009 +0530 mac80211: Remove bss information of the current AP when it goes out of range There is no point having the bss information of currently associated AP when the AP is detected to be out of range. Signed-off-by: Vasanthakumar Thiagarajan Signed-off-by: John W. Linville commit de9f97efb2ea2a32a610932d881e4d3653e0f932 Author: Luis R. Rodriguez Date: Mon Feb 2 20:35:05 2009 -0800 ath9k: fix reg_notifier() flags used upon a country IE The nl80211 rule flags were being used. Signed-off-by: Luis R. Rodriguez Signed-off-by: John W. Linville commit 24b5bcc6aef46346edd69becf62d2125c0b3208e Author: Michael Buesch Date: Sat Jan 31 19:34:53 2009 +0100 b43: Add LP 2062 radio init This adds initialization code for the 2062 radio. Signed-off-by: Michael Buesch Signed-off-by: John W. Linville commit 6c1bb9276c492c803611e63fa6fab8276c02ee70 Author: Michael Buesch Date: Sat Jan 31 16:52:29 2009 +0100 b43: Add LP-PHY baseband init for >=rev2 This adds code for the baseband init of LP-PHY >=2. Signed-off-by: Michael Buesch Signed-off-by: John W. Linville commit 3302e44dcdb8aff99769921af12b916a914b6317 Author: Danny Kukawka Date: Sat Jan 31 15:52:40 2009 +0100 iwlwifi: another led naming fix Fixed led device naming for the iwlwifi (iwl-3945) driver. Due to the documentation of the led subsystem/class the naming should be "devicename:colour:function" while not applying sections should be left blank. This should lead to e.g. "iwl-%s::RX" instead of "iwl-%s:RX". Signed-off-by: Danny Kukawka Acked-by: Reinette Chatre Signed-off-by: John W. Linville commit b34196d7d031a966c70ce2ede9087be56c7dd4bc Author: Danny Kukawka Date: Sat Jan 31 15:52:20 2009 +0100 rt2x00: fix led naming Fixed led device naming for the rt2x00 driver. Due to the documentation of the led subsystem/class the naming should be "devicename:colour:function" while not applying sections should be left blank. This should lead to e.g. "%s::radio" instead of "%s:radio". Signed-off-by: Danny Kukawka Signed-off-by: John W. Linville commit b157b5e60b2e4eefa8fb13936e0d2642ccc1d02c Author: Danny Kukawka Date: Sat Jan 31 15:52:16 2009 +0100 b43legacy: fix led naming Fixed led device naming for the b43legacy driver. Due to the documentation of the led subsystem/class the naming should be "devicename:colour:function" while not applying sections should be left blank. This should lead to e.g. "b43legacy-%s::rx" instead of "b43legacy-%s:rx". Signed-off-by: Danny Kukawka Acked-by: Larry Finger Signed-off-by: John W. Linville commit 0818cb8adfedf3e5b48662056f0228576c666d9d Author: Danny Kukawka Date: Sat Jan 31 15:52:09 2009 +0100 ath9k: fix led naming Fixed led device naming for the ath9k driver. Due to the documentation of the led subsystem/class the naming should be "devicename:colour:function" while not applying sections should be left blank. This should lead to e.g. "ath9k-%s::rx" instead of "ath9k-%s:rx". Signed-off-by: Danny Kukawka Signed-off-by: John W. Linville commit a387cc7d380504bf64743789f47de35605e05596 Author: Michael Buesch Date: Sat Jan 31 14:20:44 2009 +0100 b43: Add LP-PHY register definitions This adds register definitions for the LP-PHY. This also adds a few minor empty function bodies for the LP-init. Signed-off-by: Michael Buesch Signed-off-by: John W. Linville commit 964d6ad935d96a002fdbbdfcac38f02a084f75d9 Author: Ivo van Doorn Date: Sat Jan 31 10:07:39 2009 +0100 Add new rt73usb USB ID Signed-off-by: Ivo van Doorn Signed-off-by: John W. Linville commit f130347c2dd8e7ce0757cd3cf80bedbc6ed63c4c Author: Luis R. Rodriguez Date: Fri Jan 30 09:26:42 2009 -0800 cfg80211: add get reg command This lets userspace request to get the currently set regulatory domain. Signed-off-by: Luis R. Rodriguez Signed-off-by: John W. Linville commit 47f4d8872ffc57ad92d0fb344e677d12acc34acd Author: Luis R. Rodriguez Date: Fri Jan 30 09:08:29 2009 -0800 mac80211: do not TX injected frames when not allowed Monitor mode is able to TX by using injected frames. We should not allow injected frames to be sent unless allowed by regulatory rules. Since AP mode uses a monitor interfaces to transmit management frames we have to take care to not break AP mode as well while resolving this. We can deal with this by allowing compliant APs solutions to inform mac80211 if their monitor interface is intended to be used for an AP by setting a cfg80211 flag for the monitor interface. hostapd, for example, currently does its own checks to ensure AP mode is not used on channels which require radar detection. Once such solutions are available it can can add this flag for monitor interfaces. Acked-by: Johannes Berg Signed-off-by: Luis R. Rodriguez Signed-off-by: John W. Linville commit 7230645e329b4a9c566fefa9327eb8734c7d392c Author: Johannes Berg Date: Fri Jan 30 13:36:25 2009 +0100 mac80211: convert master interface to netdev_ops Also call our own ieee80211_master_setup routine instead of overwriting almost all the values from ether_setup; this loses a few assignments that are pointless on the master interface anyway. Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit 587e729ecff959482d25c73278a1fbadbc6a54fe Author: Johannes Berg Date: Fri Jan 30 13:35:22 2009 +0100 mac80211: convert to net_device_ops Convert to new net_device_ops in 2.6.28 and later. Signed-off-by: Stephen Hemminger Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit 7fee5372d814c4be9546e5c28ac0058258d8df3e Author: Johannes Berg Date: Fri Jan 30 11:13:06 2009 +0100 mac80211: remove HW_SIGNAL_DB Giving the signal in dB isn't much more useful to userspace than giving the signal in unspecified units. This removes some radiotap information for zd1211 (the only driver using this flag), but it helps a lot for getting cfg80211-based scanning which won't support dB, and zd1211 being dB is a little fishy anyway. Signed-off-by: Johannes Berg Cc: Bruno Randolf Signed-off-by: John W. Linville commit 7a7dec656252a5784218a22abf76ad1cdef115d0 Author: Sujith Date: Fri Jan 30 14:32:09 2009 +0530 ath9k: Add debugfs files for printing TX rate details Signed-off-by: Sujith Signed-off-by: John W. Linville commit c89424df441ea8d794682b9c5620d8e8b0315438 Author: Sujith Date: Fri Jan 30 14:29:28 2009 +0530 ath9k: Handle mac80211's RC flags for MCS rates mac80211 notifies the RC algorithm if RTS/CTS and short preamble are needed. The RC flags for MCS rates are currently not handled by mac80211, and ath9k's RC doesn't set the flags either. Fix this. Also, set the rts_cts_rate_idx inside the RC algorithm. Signed-off-by: Sujith Signed-off-by: John W. Linville commit 3900898c7a3d563d14a1288f483f8a589bd38299 Author: Sujith Date: Fri Jan 30 14:29:15 2009 +0530 ath9k: Cleanup get_rate() interface The interface to calculate the TX rate for a data frame was convoluted with lots of redundant arguments being passed around. Remove all of that and make it simple. Signed-off-by: Sujith Signed-off-by: John W. Linville commit a6c8d375f539d450bf8d45e8ccbb7c9e26dffbef Author: Felix Fietkau Date: Fri Jan 30 01:36:48 2009 +0100 ath5k: properly free rx dma descriptors When freeing rx dma descriptors, use the right buffer size. Fixes kernel oopses on module unload on ixp4xx and most likely other platforms as well. Signed-off-by: Felix Fietkau Acked-by: Nick Kossifidis Signed-off-by: John W. Linville commit c1b4aa3fb619782213af2af6652663c8f9cef373 Author: Harvey Harrison Date: Thu Jan 29 13:26:44 2009 -0800 wireless: replace uses of __constant_{endian} The base versions handle constant folding now. Signed-off-by: Harvey Harrison Signed-off-by: John W. Linville commit e5d24efe529b26d782b41a61a5e958c72f36f295 Author: Danny Kukawka Date: Thu Jan 29 21:58:26 2009 +0100 iwlwifi: fix led naming Fixed led device naming for the iwl driver. Due to the documentation of the led subsystem/class the naming should be "devicename:colour:function" while not applying sections should be left blank. This should lead to e.g. "iwl-phy0::RX" instead of "iwl-phy0:RX". Signed-off-by: Danny Kukawka Acked-by: Reinette Chatre Signed-off-by: John W. Linville commit 9a23e5a2268fc03a55c7e7112ce904629276d0b2 Author: Jay Sternberg Date: Thu Jan 29 11:09:17 2009 -0800 ipw2x00: correct Kconfig to prevent following entries from not indenting not defining dependencies for LIBIPW caused the following entries to not be indented. changing this entry to depend on PCI && WLAN_80211 corrects this issue Signed-off-by: Jay Sternberg Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit 29f35c149e887960ccb5a7d31fb5d9f813193418 Author: Jay Sternberg Date: Thu Jan 29 11:09:16 2009 -0800 iwlwifi: remove chain noise calibration functions from 6000 family redefine structures that contain function pointer for chain noise reset and chain noise gain for the 6000 family since these are not needed. Signed-off-by: Jay Sternberg Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit e8c00dcb028a1b702863c3a454315c7ae5f544e7 Author: Jay Sternberg Date: Thu Jan 29 11:09:15 2009 -0800 iwlwifi: define structures and functions externally for customization defined the structures and functions as extern to alter behavior used by 5000 series for other products including 100 and 6000 series Signed-off-by: Jay Sternberg Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit 76a2407a5b043d0950d5657184118e89860d545c Author: Jay Sternberg Date: Thu Jan 29 11:09:14 2009 -0800 iwlwifi: correct API command overlap Correct the API commands where same command id used for two different commands. Update max api versions for affected devices. TX_ANT_CONFIGURATION_CMD was already using id 0x98, so REPLY_TX_POWER_DBM_CMD moved to 0x95 Older API interfaces may used original value so V1 defines provided. Signed-off-by: Jay Sternberg Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit 050681b77d10ac81bf6be5b2c61aa6c5969947e4 Author: Jay Sternberg Date: Thu Jan 29 11:09:13 2009 -0800 iwlwifi: parametrize configuration of the PLL for exclusion on 6000 added a config parameter to enable setting PLL_CFG. older hardware has this parameter set true. the 6000 family does not support this setting, so this parameter set false. Signed-off-by: Jay Sternberg Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit c0bac76a22c00d0b4622b2847e0b087befb9ff25 Author: Jay Sternberg Date: Mon Feb 2 16:21:14 2009 -0800 iwlwifi: simplify parameter setting to allow support for 6000 series by parametrizing the set hw function, in addition to allowing for supporting the 6000 family significantly simplify the addition of new hardware. Signed-off-by: Jay Sternberg Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit 2264596d6d0a5c1e569af809625c11f8f2d89435 Author: Jay Sternberg Date: Thu Jan 29 11:09:11 2009 -0800 iwlwifi: add new HW_REV_TYPEs for Intel WiFi Link 100, 6000 and 6050 Series simply add definitions for the HW_REV_TYPEs for the new devices. Signed-off-by: Jay Sternberg Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit c4e3a5844812dd5bf03282e021175d55d608f594 Author: Alina Friedrichsen Date: Thu Jan 29 13:56:20 2009 +0100 mac80211: IBSS join rework I hold back this patch for around a week to avoid confusion. This is the second step of "mac80211: Fixed BSSID handling revisited". With it, in the situation of a strange merge to the same BSSID (e.g. caused by a TSF overflow) only reset_tsf() is called. And sta_info_flush_delayed() is only called if you change the network manually, not on an automatic BSSID merge. Signed-off-by: Alina Friedrichsen Signed-off-by: John W. Linville commit f2bffa7ea012befc2230331f97bf9b002c0b62bb Author: Vasanthakumar Thiagarajan Date: Thu Jan 29 17:52:19 2009 +0530 ath9k: Fix LED blink pattern Signed-off-by: Vasanthakumar Thiagarajan Signed-off-by: John W. Linville commit c0415b547d37e8065ad4adf289d11db2f3b16dfd Author: Alina Friedrichsen Date: Thu Jan 29 09:59:43 2009 +0100 mac80211: Creating new IBSS with fixed BSSID This fixes a bug when creating a new IBSS network with a fixed BSSID. The fixed BSSID situation is now with one of my last patches handled in ieee80211_sta_find_ibss() function. It's more robust to test against (ifsta->flags & IEEE80211_STA_PREV_BSSID_SET), because ifsta->state is not seted right in every situation and so the creating of the new IBSS network sometimes hangs after the first try to scan for a network to merge. Signed-off-by: Alina Friedrichsen Signed-off-by: John W. Linville commit 547c3763765654f9a796e628692d9e7d5c1039af Author: Sujith Date: Thu Jan 29 11:50:20 2009 +0530 ath9k: Remove a bunch of unused macros RX filter masks are already defined in enum ath9k_rx_filter in ath9k.h Signed-off-by: Sujith Signed-off-by: John W. Linville commit feed029cd63ee14df85afbe1583960c0e983a0ed Author: Sujith Date: Thu Jan 29 11:37:35 2009 +0530 ath9k: Fix typo in checking for chip revision Signed-off-by: Sujith Signed-off-by: John W. Linville commit e374055afbf92c8d128d8538aafc7e765838206e Author: Sujith Date: Thu Jan 29 09:34:22 2009 +0530 mac80211: Reset assoc_scan_tries after an unsuccessful scan run Trying to associate with a non-existent SSID stops the state machine after the first run. Subsequent association requests fail to start the scan engine. Fix this by resetting assoc_scan_tries to zero after completing a scan run. Signed-off-by: Sujith Signed-off-by: John W. Linville commit 7519a8f0778bdb14f07cf685fa5fee6ab07e734c Author: Luis R. Rodriguez Date: Wed Jan 28 12:17:49 2009 -0800 ath9k: remove passive scan on 5 GHz if country IE knows better If we have new found information about our location and the current country regulatory domain does not have passive scan flag requirements we should be able to actively scan now on those channels. Since AP functionality is not allowed where passive scan flags are set this means if you have a world regulatory domain and you get a country IE that allows that channel (with active scan) then we lift the passive-scan requirement so you can then use AP mode. Signed-off-by: Luis R. Rodriguez Signed-off-by: John W. Linville commit 547e4c2e64d0be5e8491abb49ee6b0f0f8272de1 Author: Luis R. Rodriguez Date: Wed Jan 28 12:17:48 2009 -0800 ath9k: move check for radar freqs into a helper This will be used later. Signed-off-by: Luis R. Rodriguez Signed-off-by: John W. Linville commit 8c63c46d58c9dca6d0bfacfb41958c55d9b75ea0 Author: Luis R. Rodriguez Date: Wed Jan 28 12:17:47 2009 -0800 ath9k: replace usage of internal wireless_modes for conf No need to use our internal wireless mode variable when cfg80211 already has its own. Signed-off-by: Luis R. Rodriguez Signed-off-by: John W. Linville commit 4e30ffa29c1388006e5d36d5ea8c5b46b38b36d5 Author: Vivek Natarajan Date: Wed Jan 28 20:53:27 2009 +0530 ath9k: Enable MIB and TIM interrupts for station mode. Enable operating mode specific interrupts in ath9k_add_interface instead of ath9k_start. Signed-off-by: Vivek Natarajan Signed-off-by: John W. Linville commit d22b0022e75b37e5c5a995754fcf9f61b39022d2 Author: Sujith Date: Wed Jan 28 11:55:45 2009 +0530 ath9k: Fix lockdep warning This patch fixes the lockdep warning shown below, and also initializes the starting sequence number when starting a TX aggregation session. ============================================= [ INFO: possible recursive locking detected ] 2.6.29-rc2-wl #21 --------------------------------------------- swapper/0 is trying to acquire lock: (_xmit_IEEE80211#2){-+..}, at: [] __qdisc_run+0x221/0x290 but task is already holding lock: (_xmit_IEEE80211#2){-+..}, at: [] __qdisc_run+0x221/0x290 other info that might help us debug this: 7 locks held by swapper/0: #0: (rcu_read_lock){..--}, at: [] dev_queue_xmit+0x53/0x620 #1: (_xmit_ETHER#2){-+..}, at: [] __qdisc_run+0x221/0x290 #2: (rcu_read_lock){..--}, at: [] dev_queue_xmit+0x53/0x620 #3: (_xmit_IEEE80211#2){-+..}, at: [] __qdisc_run+0x221/0x290 #4: (rcu_read_lock){..--}, at: [] ieee80211_master_start_xmit+0x219/0x6c0 [mac80211] #5: (rcu_read_lock){..--}, at: [] ieee80211_start_tx_ba_session+0x66/0x4e0 [mac80211] #6: (rcu_read_lock){..--}, at: [] dev_queue_xmit+0x53/0x620 stack backtrace: Pid: 0, comm: swapper Not tainted 2.6.29-rc2-wl #21 Call Trace: [] __lock_acquire+0x1be9/0x1c40 [] dev_queue_xmit+0xe1/0x620 [] __lock_acquire+0x18c/0x1c40 [] lock_acquire+0x55/0x70 [] __qdisc_run+0x221/0x290 [] _spin_lock+0x39/0x50 [] __qdisc_run+0x221/0x290 [] _spin_unlock+0x1f/0x50 [] __qdisc_run+0x221/0x290 [] dev_queue_xmit+0x308/0x620 [] dev_queue_xmit+0x53/0x620 [] ieee80211_start_tx_ba_session+0x303/0x4e0 [mac80211] [] ieee80211_start_tx_ba_session+0x66/0x4e0 [mac80211] [] rate_control_get_rate+0xae/0xc0 [mac80211] [] invoke_tx_handlers+0x655/0x1000 [mac80211] [] mark_held_locks+0x4d/0x90 [] _spin_unlock_irqrestore+0x65/0x80 [] __ieee80211_tx_prepare+0x16a/0x310 [mac80211] [] __ieee80211_tx_prepare+0x19c/0x310 [mac80211] [] pskb_expand_head+0x112/0x190 [] ieee80211_master_start_xmit+0x286/0x6c0 [mac80211] [] ieee80211_master_start_xmit+0x219/0x6c0 [mac80211] [] __lock_acquire+0x18c/0x1c40 [] __qdisc_run+0x23e/0x290 [] dev_queue_xmit+0x308/0x620 [] dev_queue_xmit+0x53/0x620 [] ieee80211_subif_start_xmit+0x4a1/0x980 [mac80211] [] ieee80211_subif_start_xmit+0x198/0x980 [mac80211] [] __qdisc_run+0x23e/0x290 [] dev_queue_xmit+0x308/0x620 [] dev_queue_xmit+0x53/0x620 [] ip6_output+0x62d/0x1230 [ipv6] [] __mod_timer+0xb0/0xd0 [] mld_sendpack+0x3fa/0x4a0 [ipv6] [] mld_sendpack+0x0/0x4a0 [ipv6] [] mld_ifc_timer_expire+0x0/0x340 [ipv6] [] mld_ifc_timer_expire+0x289/0x340 [ipv6] [] mld_ifc_timer_expire+0x0/0x340 [ipv6] [] run_timer_softirq+0x147/0x220 [] __do_softirq+0x9b/0x180 [] tick_dev_program_event+0x36/0xb0 [] call_softirq+0x1c/0x30 [] do_softirq+0x65/0xb0 [] irq_exit+0x9d/0xc0 [] smp_apic_timer_interrupt+0x86/0xd0 [] apic_timer_interrupt+0x13/0x20 Signed-off-by: Sujith Signed-off-by: John W. Linville commit 0cbe0064614ace61e08618948f82c6d525e75017 Author: Ivo van Doorn Date: Wed Jan 28 00:33:47 2009 +0100 rt2x00: Validate firmware in driver The get_firmware_crc() callback function isn't flexible enough when dealing with multiple firmware versions. It might in some cases be possible that the firmware file contains multiple CRC checksums. Create the check_firmware() callback function where the driver has complete freedom in how to validate the firmware. Signed-off-by: Ivo van Doorn Signed-off-by: John W. Linville commit a2c9b652a12a550d3d8509e9bae43bac396c5076 Author: Ivo van Doorn Date: Wed Jan 28 00:32:33 2009 +0100 rt2x00: Add kill_tx_queue callback function provide rt2x00lib the possibility to kill a particular TX queue. This can be useful when disabling the radio, but more importantly will allow beaconing to be disabled when mac80211 requests this (during scanning for example) Signed-off-by: Ivo van Doorn Signed-off-by: John W. Linville commit 382fe0f2da78db7833c6a7278e33e694e6e2a6f3 Author: Ivo van Doorn Date: Wed Jan 28 00:32:13 2009 +0100 rt2x00: Move intf_work to mac82011 workqueue ieee80211_iterate_active_interfaces() no longer acquires the RTNL lock which means the intf_work handler can be safely used from the mac80211 workqueue again. Signed-off-by: Ivo van Doorn Signed-off-by: John W. Linville commit d25aabb0a1a2f659206ba21f6ac8ec28047e5595 Author: Winkler, Tomas Date: Tue Jan 27 14:27:58 2009 -0800 iwlwifi: unify iwlagn and 3945 power save management This patch unifies 3945 and iwlagn power save management This patch also better separates system state from user setting. System state shall be removed later as this shall be shifted to user space Signed-off-by: Tomas Winkler Acked-by: Mohamed Abbas Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit e1623446bb1de1834ff1c57b3e8ed341d5d4a927 Author: Tomas Winkler Date: Tue Jan 27 14:27:56 2009 -0800 iwlwifi: don't use implicit priv in IWL_DEBUG Call IWL_DEBUG macro with explicit priv argument. Signed-off-by: Tomas Winkler Acked-by: Samuel Ortiz Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit 450154e4f471248e188d18e45c2409b37a133765 Author: Winkler, Tomas Date: Tue Jan 27 14:27:55 2009 -0800 iwlwifi: check return value of pci_enable_device pci_enable_device is tagged with __must_check therefore don't ignore the return value in pci_resume handlers Signed-off-by: Tomas Winkler Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit dfb39e82957153c5748675b72bbe7eded2e2b069 Author: Winkler, Tomas Date: Tue Jan 27 14:27:54 2009 -0800 iwlwifi: iwl3945_send_tx_power must be static iwl3945_send_tx_power must be static Signed-off-by: Tomas Winkler Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit 7530f85f086a5d58a5e43b1a98993801fe509c51 Author: Winkler, Tomas Date: Tue Jan 27 14:27:53 2009 -0800 iwlwifi: suppress unused variable warning when compiling w/o IWLWIFI_DEBUG This patch adds __maybe_unused attribute to priv variables used in functions that used it solely for debug printouts Signed-off-by: Tomas Winkler Cc: Helmut Schaa Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit 8ccde88a87a3dc906234b281a036fee9c7371949 Author: Samuel Ortiz Date: Tue Jan 27 14:27:52 2009 -0800 iwl3945: Getting rid of the *39_rxon iwl_priv fields The iwl_rxon_cmd is really just a iwl3945_rxon_cmd structure extension. So, we can use the *_rxon fields from iwl_priv instead of the 3945 specific ones (*39_rxon). We have to then be careful when submitting REPLY_RXON host commands, since the command length as to be set according to the HW. As another precaution the reserved4 and reserved5 fields are cleared before being sent to the 3945. With the *39_rxon removal, a lot of duplicated code can be removed from the 3945 code base. Signed-off-by: Samuel Ortiz Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit d14c7c1d6aef1175625ea72938b07cee072723dc Author: Andrey Borzenkov Date: Sun Jan 25 23:08:43 2009 +0300 orinoco: checkpatch cleanup Fix errors and obvious warnings reported by checkpatch in all files except orinoco.c. Orinoco.c is part of different patch series of Dave. Signed-off-by: Andrey Borzenkov Signed-off-by: John W. Linville commit 409f0a9014fe24d906ba21aaccff80eb7f7304da Merge: 5937218 0b492fc Author: David S. Miller Date: Sat Feb 7 02:52:44 2009 -0800 Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6 Conflicts: drivers/net/wireless/iwlwifi/iwl-agn.c drivers/net/wireless/iwlwifi/iwl3945-base.c commit 1725d409caba16ea5fc694bd50e95e79e8ced11a Merge: b3ff29d b8abde4 Author: David S. Miller Date: Tue Feb 3 12:41:58 2009 -0800 Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-next-2.6 commit 05bee4737774881e027bfd9a8b5c40a7d68f6325 Merge: 80595d5 905db44 Author: David S. Miller Date: Fri Jan 30 14:31:07 2009 -0800 Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6 Conflicts: drivers/net/e1000/e1000_main.c commit b8abde45d7d6ab9e8ceced9b5990eeb1149d0b97 Author: Vivek Natarajan Date: Tue Jan 27 19:26:28 2009 +0530 mac80211: Cancel the dynamic ps timer in ioctl_siwpower. If the dynamic power save timer has been started before the power save is disabled using iwconfig, we fail to cancel the timer. Hence cancel it while disabling power save. Signed-off-by: Vivek Natarajan Signed-off-by: John W. Linville commit 94ff91d4afd8ae14e8bb7012ba17cf6984130e44 Author: Sujith Date: Tue Jan 27 15:06:38 2009 +0530 ath9k: Fix bug in TX DMA termination Removing the module was slow because ath9k_hw_stopdma() was looping for a long time quantum. Use reasonable values now to fix this issue. Signed-off-by: Sujith Signed-off-by: John W. Linville commit f46730d13f23b4578dca1c0f7663ea3093ff4f0e Author: Sujith Date: Tue Jan 27 13:51:03 2009 +0530 ath9k: Setup short preamble properly in rate registration This patch fixes an issue where hw_value_short was not being filled with the proper ratecode during rate registration, but was being used in the RX path for decoding the packet rate. Signed-off-by: Sujith Signed-off-by: John W. Linville commit 1286ec6d63c557aa203ab5af56962a3d37181771 Author: Sujith Date: Tue Jan 27 13:30:37 2009 +0530 ath9k: Fix station access in aggregation completion The ieee80211_sta pointer in the SKB's TX control info area is not guaranteed to be valid after returning from the tx() callback. Use ieee80211_find_sta() instead and return early if the station is no longer present. Signed-off-by: Sujith Signed-off-by: John W. Linville commit 1f7d6cbfa2a993ea0d714e8552c784eea75a046b Author: Sujith Date: Tue Jan 27 10:55:54 2009 +0530 ath9k: Reconfigure beacons on getting a notification from mac80211 Signed-off-by: Sujith Signed-off-by: John W. Linville commit 3c4572657656117c1f9cf1df42e681ea71abb2db Author: Sujith Date: Tue Jan 27 10:55:31 2009 +0530 ath9k: Handle chainmask for A9280 The default chainmask for AR9280 is 3, so handle that when setting the supported MCS rates. Also, check for the HW supported chainmask when choosing single/dual stream. Signed-off-by: Sujith Signed-off-by: John W. Linville commit fb9ddbf086591ab4c90c44d10468f84d465b3fdf Author: Johannes Berg Date: Mon Jan 26 19:11:57 2009 +0100 mac80211: don't try to powersave/config disabled interfaces Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit d81c2d9c909e95ee8a5745da95bbb35f8ded3d17 Author: Luis R. Rodriguez Date: Mon Jan 26 09:00:51 2009 -0800 cfg80211: do not pass -EALREADY to userspace on regdomain change request If the regulatory domain is already set it is technically not an error so do not pass an errno to userspace. Signed-off-by: Luis R. Rodriguez Signed-off-by: John W. Linville commit b51bb3cd6c8078b8b8cc1d1725b100267eaa726e Author: Luis R. Rodriguez Date: Mon Jan 26 07:30:03 2009 -0800 ath9k: remove useless ath9k driver version information Versioning for ath9k is pointless we have kept it at 0.1 since the initial release so its meaningless. We put more emphasis on kernel release or dated wireless-testing master tag as per John's tagging. Signed-off-by: Luis R. Rodriguez Signed-off-by: John W. Linville commit 793c592995b841667fa6d1a36a98880430dcc8f4 Author: Senthil Balasubramanian Date: Mon Jan 26 20:28:14 2009 +0530 ath9k: Fix AR9285 specific noise floor eeprom reads. Fix AR9285 specific noise floor reads and initialize tx and rx chainmask during reset. This along with the following earlier patches of ath9k fixes an issue with association noticed in noisy environment. ath9k: Fix typo in chip version check ath9k: Remove unnecessary gpio configuration in ath9k_hw_reset() ath9k: Fix bug in NF calibration Signed-off-by: Senthil Balasubramanian Signed-off-by: John W. Linville commit 0c6666e4c43a10a224c63e3270c963d97f7e8cc8 Author: Luis R. Rodriguez Date: Mon Jan 26 06:48:10 2009 -0800 ath9k: fix debug print on regd With debugging enabled and with ATH_DBG_REGULATORY selected we wouldn't get the full print out of one line, reason is we used "," instead of nothing to separate two lines. Signed-off-by: Luis R. Rodriguez Signed-off-by: John W. Linville commit f677d7702d48b7b3dfcce3b2c0db601dbee0aa24 Author: Tulio Magno Quites Machado Filho Date: Sun Jan 25 23:54:25 2009 +0100 ath5k: support LED's on emachines E510 notebook Add vendor ID for AMBIT and use it to set the ath5k LED gpio. base.c: Changes-licensed-under: 3-Clause-BSD Signed-off-by: Tulio Magno Quites Machado Filho Acked-by: Bob Copeland Signed-off-by: John W. Linville commit 060210f938d8aa0b9d795588a2274cd67ba9d6a4 Author: Michael Buesch Date: Sun Jan 25 15:49:59 2009 +0100 b43: Dynamically control log verbosity Dynamically control the log verbosity with a module parameter. This enables us to dynamically enable debugging messages (or disable info, warn, error messages) via module parameter or /sys/module/b43/parameters/verbose. This increases the module size by about 3k. But in practice it reduces the module size for the user, because some distributions ship the b43 module with CONFIG_B43_DEBUG set, which increases the module by about 15k. So with this patch applied, distributions should really _disable_ CONFIG_B43_DEBUG. There is no reason to keep it in a production-release kernel. So we have a net reduction in size by about 12k. This patch also adds a printk of the wireless core revision, so people don't have to enable SSB debugging to get the wireless core revision. Signed-off-by: Michael Buesch Signed-off-by: John W. Linville commit 08e87a833f5e77ff33b64c9ac27cb7fb9ecd4a48 Author: Alina Friedrichsen Date: Sun Jan 25 15:28:28 2009 +0100 b43: Accessing the TSF via mac80211 This allows the mac80211 high level code to access the TSF. This is e.g. needed for BSSID merges in the IBSS mode. The second version adds locking and removes the now unnecessary debugfs entries. Thanks to Michael Buesch! :) Signed-off-by: Alina Friedrichsen Signed-off-by: Michael Buesch Signed-off-by: John W. Linville commit 3b5d665b51cda73ef1a774b515afd879a38e3674 Author: Alina Friedrichsen Date: Sat Jan 24 07:09:59 2009 +0100 mac80211: Generic TSF debugging This patch enables low-level driver independent debugging of the TSF and remove the driver specific things of ath5k and ath9k from the debugfs. Signed-off-by: Alina Friedrichsen Signed-off-by: John W. Linville commit 3978e5bce63484789891c67413372da3915bcbd6 Author: Winkler, Tomas Date: Fri Jan 23 13:45:23 2009 -0800 iwlwifi: iwl_tx_queue_alloc : fix warning in printk formatting This patch fix compilation warning in printk formatting iwl_tx_queue_alloc function. Cleanup the code a bit on the way. Signed-off-by: Tomas Winkler Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit c771c9d8da1e8292ef8bf7fd4ce135dacc650130 Author: Johannes Berg Date: Fri Jan 23 22:54:03 2009 +0100 mac80211: add interface list lock Using only the RTNL has a number of problems, most notably that ieee80211_iterate_active_interfaces() and other interface list traversals cannot be done from the internal workqueue because it needs to be flushed under the RTNL. This patch introduces a new mutex that protects the interface list against modifications. A more detailed explanation is part of the code change. Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit 506d03f97d10e54fd27c58c872a98242326d6419 Author: Dan Williams Date: Sat Jan 24 09:13:58 2009 -0500 airo: remove useless #defines Signed-off-by: Dan Williams Signed-off-by: John W. Linville commit 018697d178717d63f668b9e5f3b473f4e37f6304 Author: Dan Williams Date: Sat Jan 24 09:13:32 2009 -0500 airo: clean up and clarify micinit() Fix some endian issues too. Signed-off-by: Dan Williams Signed-off-by: John W. Linville commit 99590ffefc803caaf6ba923da092cde739269c06 Author: Dan Williams Date: Sat Jan 24 09:12:58 2009 -0500 airo: use __attribute__ ((packed)) not #pragma Signed-off-by: Dan Williams Signed-off-by: John W. Linville commit dff8ccd9f5ff76b7449bf833f4646f70036b2256 Author: Michael Buesch Date: Sat Jan 24 22:36:57 2009 +0100 b43: Fix phy_g.c compiler warning Fix compile warning for non-debug builds: drivers/net/wireless/b43/phy_g.c: In function ‘b43_gphy_op_recalc_txpower’: drivers/net/wireless/b43/phy_g.c:3195: warning: unused variable ‘dbm’ Signed-off-by: Michael Buesch Signed-off-by: John W. Linville commit e874e6585539f6706b8e5f96125c9fca89cce716 Author: Bob Copeland Date: Sat Jan 24 13:21:14 2009 -0500 mac80211: flush workqueue a second time in suspend() Drivers can theoretically queue more work in one of their callbacks from mac80211 suspend, so let's flush it once more to be on the safe side, just before calling ->stop(). Signed-off-by: Bob Copeland Signed-off-by: John W. Linville commit 30d3ef41b4395d9bee5f481395eef2d3b8b6ee50 Author: Bob Copeland Date: Fri Jan 23 23:09:35 2009 -0500 mac80211: change workqueue back to non-freezeable "mac80211: make workqueue freezable" made the mac80211 workqueue freezeable to prevent us from doing any work after the driver went away. This was fine before mac80211 had any suspend support. However, now we want to flush this workqueue in suspend(). Because the thread for a freezeable workqueue is stopped before the device class suspend() is called, flush_workqueue() will hang in the suspend-to-disk case. Converting it back to a non-freezeable queue will keep suspend from hanging. Moreover, since we flush the workqueue under RTNL and userspace is stopped, there won't be any new work in the workqueue until after resume. Thus we still don't have to worry about pinging the AP without hardware. Signed-off-by: Bob Copeland Signed-off-by: John W. Linville commit dfe670121a2719be6ead12eb5306d4d2714c09cb Author: Alina Friedrichsen Date: Sat Jan 24 01:19:04 2009 +0100 mac80211: Fixed BSSID handling revisited This patch cleanup the fixed BSSID handling, that ieee80211_sta_set_bssid() works like ieee80211_sta_set_ssid(). So that the BSSID is only a second selection criterion besides the SSID. This allows us to create new IBSS networks with fixed BSSIDs, which was broken before. In the second version of this patch the handling of the stupid merges to the same BSSID is moved out to get reworked into an other patch. And this version hopefully solves the problems with some low-level drivers and re-adds the config BSSID warning to help debugging the low-level drivers. Much thanks to all who have helped testing! :) Signed-off-by: Alina Friedrichsen Signed-off-by: John W. Linville commit c0380693520b1a1e4f756799a0edc379378b462a Author: Dan Williams Date: Sat Jan 24 09:12:15 2009 -0500 airo: clean up WEP key operations get_wep_key() and set_wep_key() combind both get/set of the actual WEP key and get/set of the transmit index into the same functions. Split those out so it's clearer what is going one where. Add error checking to WEP key hardware operations too. Signed-off-by: Dan Williams Signed-off-by: John W. Linville commit 138c0c688262b7f4ed07cdc6d0592299c4f12998 Author: Dan Williams Date: Sat Jan 24 09:11:35 2009 -0500 airo: simplify WEP index and capability checks Do the computation once at init time; don't ask the hardware every time. Signed-off-by: Dan Williams Signed-off-by: John W. Linville commit f65b56d67b48eec7ffe174f223e98db58c3bf2b5 Author: Dan Williams Date: Sat Jan 24 09:10:42 2009 -0500 airo: re-arrange WPA capability checks The capability register has to be read for other (upcoming) stuff, so fold the WPA test function back into _init_airo_card() and move the netdevice registration stuff above it so that the netdevice has a name by the time the card's capabilities are printed out. Signed-off-by: Dan Williams Signed-off-by: John W. Linville commit f55d4517ebdd6de627d42a24baefaeb689978087 Author: Dan Williams Date: Sat Jan 24 09:04:12 2009 -0500 airo: clean up and clarify interrupt-time task handling Split each specific interrupt-time task out into its own function to make airo_interrupt() actually readable. Signed-off-by: Dan Williams Signed-off-by: John W. Linville commit 0d21044effa10044930419c6f837f75191229c3a Author: Winkler, Tomas Date: Fri Jan 23 13:45:21 2009 -0800 iwlwifi: fix probe mask for 39 scan API This pach make use of 39 own scan probe mask the variables or of different types Signed-off-by: Tomas Winkler Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit 17f841cd6cb0837ba0599ad18a746c30ddd83e08 Author: Samuel Ortiz Date: Fri Jan 23 13:45:20 2009 -0800 iwl3945: Remaining host command cleanups With the recent host command routines merge, we can now look at the various host command helpers and get rid of the duplicated ones. Signed-off-by: Samuel Ortiz Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit af48d048ac5f10981df093c7566ae0fea9ba1967 Author: Samuel Ortiz Date: Fri Jan 23 13:45:19 2009 -0800 iwl3945: Add restart_fw module parameter In order to be in sync with the agn code, we're ading a fw_restart3945 module parameter to iwl3945. Signed-off-by: Samuel Ortiz Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit 7e4bca5e5b8dffd9373470693e20f43b0aee566c Author: Samuel Ortiz Date: Fri Jan 23 13:45:18 2009 -0800 iwl3945: Getting rid of priv->antenna The iwl_priv antenna field is useless as we can simply use the corresponding mod_params antenna field. Signed-off-by: Samuel Ortiz Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit d08853a3995cfc2985307da7400fb57bfa5773e2 Author: Samuel Ortiz Date: Fri Jan 23 13:45:17 2009 -0800 iwlwifi: Remove IWL3945_DEBUG IWL3945_DEBUG is pointless and obsolete. We already have an IWLWIFI_DEBUG symbol, that needs to be set if we actually want to get 3945 debug (see iwl-debug.h). Thus, we can simply get rid of this symbol. Signed-off-by: Samuel Ortiz Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit 534166dedaa9a660c7221b145b5e4088a2d9ac69 Author: Samuel Ortiz Date: Fri Jan 23 13:45:16 2009 -0800 iwl3945: Use the iwlcore geos routines By removing the init_rates() routine outside of the init_geos() one, we can share the geos routines between 3945 and agn. Signed-off-by: Samuel Ortiz Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit e6148917db2c223fa7edd3dfb64d99756a86b452 Author: Samuel Ortiz Date: Fri Jan 23 13:45:15 2009 -0800 iwl3945: Use iwl-eeprom.c routines By adding the eeprom ops to the 3945 code, we can now use the iwlcore eeprom routines (defined in iwl-eeprom.c). We also removed the heavy eeprom39 reference from iwl_priv and use the eeprom pointer instead. Signed-off-by: Samuel Ortiz Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit a8e74e2774cd1aecfef0460de07e6e178df89232 Author: Samuel Ortiz Date: Fri Jan 23 13:45:14 2009 -0800 iwl3945: Use iwlcore TX queue management routines By adding an additional hw_params (tfd_size) and a new iwl_lib ops (txq_init), we can now use the iwlcore TX queue management routines. We had to add a new hw_params because we need to allocate the right DMA buffer for TFDs, and those have a different sizes depending if you're on 3945 or agn. Signed-off-by: Samuel Ortiz Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit 59606ffa9146538b73bbe1ca1285321cd7474bc0 Author: Samuel Ortiz Date: Fri Jan 23 13:45:13 2009 -0800 iwlwifi: make iwl_tx_queue->tfds void* Instead of having both tfds and tfds39, we can just have a void *tfds. It makes the tx_queue structure nicer, and the code cleaner. It also helps with further TX queues management code merging. Signed-off-by: Samuel Ortiz Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit 77fecfb88f8ad64420e06a96f1bd3b38498bfb4f Author: Samuel Ortiz Date: Fri Jan 23 13:45:12 2009 -0800 iwl3945: Use iwlcore scan code A lot of the scanning related code is duplicated between 3945 and agn. Let's use the iwlcore one and get rid of the 3945. Signed-off-by: Samuel Ortiz Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit 75bcfae97d71756263ccbffc2dcdd8b3020a1a0f Author: Samuel Ortiz Date: Fri Jan 23 13:45:11 2009 -0800 iwl3945: Define send_tx_power We can define this iwl_lib ops for 3945, as this would help us cleaning the scanning code. Signed-off-by: Samuel Ortiz Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit 7b841727d2715d97592f46164804b34d6241644f Author: Rick Farrington Date: Fri Jan 23 13:45:10 2009 -0800 iwlagn: reduce off channel reception for 4965 Force use of chains B and C (0x6) for Rx for 4965 Avoid A (0x1) because of its off-channel reception on A-band. Signed-off-by: Rick Farrington Signed-off-by: Ben Cahill Signed-off-by: Reinette Chatre Signed-off-by: Tomas Winkler Signed-off-by: John W. Linville commit 4c4df78f5e224fd59fe337773878eca681ed02a9 Author: Chatre, Reinette Date: Fri Jan 23 13:45:09 2009 -0800 iwlwifi: add test to determine if interface in monitor mode mac80211 sets driver in monitor mode through configuring the RX filters. We cannot trust priv->iw_mode to be accurate regarding monitor mode as iw_mode is only set in add_interface, which is not called by mac80211 when in monitor mode. Signed-off-by: Reinette Chatre Signed-off-by: Tomas Winkler Signed-off-by: John W. Linville commit 1a9f509368ceb24fc66be961be15c69966f5eb5d Author: Michael Buesch Date: Fri Jan 23 21:21:51 2009 +0100 b43: Automatically probe for opensource firmware First probe for proprietary firmware and then probe for opensource firmware. This way around it's a win-win situation. 1) If proprietary fw is available, it will work. 2) If opensource firmware is available, but no proprietary (Distros can only ship open fw) it might work. 3) If both open and proprietary are available, it will work, because it selects the proprietary. We currently don't prefer the open fw in this case, because it doesn't work on all devices. It would introduce a regression otherwise. The remaining FIXMEs in this patch are harmless, because they only matter on multiband devices, which are not implemented yet anyway. Signed-off-by: Michael Buesch Signed-off-by: John W. Linville commit 2f47690ed42a85820783dee7f16ae47edadf8fad Author: Larry Finger Date: Fri Jan 23 11:40:22 2009 -0600 rtl8187: Fix driver to return TX retry info for RTL8187L Current code for the RTL8187 is not returning valid retry information, thus the rate-setting mechanism is not functioning. As a further complication, this info is only obtained by reading a register, which cannot be read while in interrupt context. This patch implements the TX status return to mac80211 through the use of a work queue. One additional problem is that the driver currently enables the rate fallback mechanism of the device, which conflicts with the mac80211 rate-setting algorithm. This version of the patch disables rate fallback. Signed-off-by: Larry Finger Tested-by: Herton Ronaldo Krzesinski Tested-by: Martín Ernesto Barreyro Acked-by: Hin-Tak Leung Signed-off-by: John W. Linville commit 2a57cf3e83f89150f2ac9b6f01caf3fcdbb36486 Author: Larry Finger Date: Fri Jan 23 11:30:54 2009 -0600 rtl8187: Increase receive queue depth The receive queue depth in rtl8187 may not be long enough to keep the pipe full. Signed-off-by: Larry Finger Signed-off-by: John W. Linville commit 66aafd9a3108da465a73bd755366416e75fb9d3d Author: Larry Finger Date: Fri Jan 23 11:30:11 2009 -0600 rtl8187: Fix locking of private data In rtl8187_add_interface(), the mutex that protects the data in struct rtl8187_priv does not include all references to that structure. Signed-off-by: Larry Finger Signed-off-by: John W. Linville commit 1fac36ee7d5a0611e1216b02b485b154c8aa6dad Author: Dan Williams Date: Fri Jan 23 11:55:33 2009 -0500 libertas: fix CF firmware loading for some cards if_cs_poll_while_fw_download() returned the number of iterations remaining on success, which in turn got returned as the value from if_cs_prog_real() and if_cs_prog_helper(). But since if_cs_probe() interprets non-zero return values from firmware load functions as an error, this sometimes caused spurious firmware load failures. Signed-off-by: Dan Williams Tested-by: Ryan Mallon Acked-by: Ryan Mallon Signed-off-by: John W. Linville commit 0712612741e1dccf10353c70ebe90ba8cc60d5fb Author: Ivo van Doorn Date: Fri Jan 23 17:04:05 2009 +0100 rt2x00: Simplify suspend/resume handling With mac80211 handling all open interfaces during suspend and resume we can simplify suspend/resume within rt2x00lib. The only thing rt2x00 needs to do is free up memory during suspend and bring back the minimal required components during resume. Signed-off-by: Ivo van Doorn Signed-off-by: John W. Linville commit 9752a7bd7f36557f34283f5d75dfa32578437f08 Author: Ivo van Doorn Date: Fri Jan 23 17:03:24 2009 +0100 rt2x00: Restrict firmware file lengths Add extra security to the drivers for firmware loading, check the firmware file length before uploading it to the hardware. Incorrect lengths might indicate a firmware upgrade (which is not yet supported by the driver) or otherwise incorrect firmware. Signed-off-by: Ivo van Doorn Signed-off-by: John W. Linville commit 6ba265e9cc764bc401cda284954cf2bdd4408c38 Author: Ivo van Doorn Date: Fri Jan 23 17:03:06 2009 +0100 rt2x00: rt2x00_rev() should return u32 The "rev" field in chipset definition is an u32, which means that rt2x00_rev() which returns that field should be of the same type. Signed-off-by: Ivo van Doorn Signed-off-by: John W. Linville commit 81b1e19ac2cadc2f8a05c82ffb1abe20a0594d1f Author: Vasanthakumar Thiagarajan Date: Fri Jan 23 14:40:37 2009 +0530 ath9k: Clean up the way the eeprom antenna configuration is read Signed-off-by: Vasanthakumar Thiagarajan Signed-off-by: John W. Linville commit 3aa24e6031a0ca7a8803a103f5c183cd94e5ac98 Author: Vasanthakumar Thiagarajan Date: Fri Jan 23 14:40:36 2009 +0530 ath9k: Remove unused ath9k_hw_select_antconfig() from hw.c Signed-off-by: Vasanthakumar Thiagarajan Signed-off-by: John W. Linville commit 5dad40c13e7753e7b62eb7c2fca9b4034679882a Author: Sujith Date: Fri Jan 23 11:20:55 2009 +0530 ath9k: Fix bug in NF calibration The number of chainmasks for AR9285 weren't being setup when running NF calibration. Signed-off-by: Sujith Signed-off-by: John W. Linville commit f8206e053498174ef4b5f994e2a7091a74f7da30 Author: Sujith Date: Fri Jan 23 11:20:51 2009 +0530 ath9k: Fix bug in rate control capability registration Dual stream capability must be registered only when the hardware supports it. Signed-off-by: Sujith Signed-off-by: John W. Linville commit eb2599ca25be212bd37dd3e90ef13ea45758e838 Author: Sujith Date: Fri Jan 23 11:20:44 2009 +0530 ath9k: Fix MCS rates registration bug for AR9285 AR9285 based devices support only single stream MCS rates. This patch fixes a bug where dual stream stream rates were also being registered. Signed-off-by: Sujith Signed-off-by: John W. Linville commit 27abe060aa9d3410545ef663676c7183fc2512c6 Author: Alina Friedrichsen Date: Fri Jan 23 05:44:21 2009 +0100 ath9k: Read and write the TSF via debugfs This patch adds an ath9k specific entry to read, write and reset the TSF into the debugfs, like in ath5k. This makes debugging the IBSS handling of wifi drivers _much_ easier. Signed-off-by: Alina Friedrichsen Signed-off-by: John W. Linville commit 8cab7581dba90b0519e25784e08feb5dedde737f Author: Alina Friedrichsen Date: Fri Jan 23 05:39:13 2009 +0100 ath5k: Read and write the TSF via debugfs This patch updates the ath5k specific entry in the debugfs to read and reset the TSF value, to allowing write it, too. This makes debugging the IBSS handling of wifi drivers _much_ easier. Signed-off-by: Alina Friedrichsen Signed-off-by: John W. Linville commit ae54c985cc7daa502da6e7eb3b223a30fbbf4cfb Author: Alina Friedrichsen Date: Fri Jan 23 05:33:37 2009 +0100 mac80211: Read the TSF via debugfs This patch adds an low-level driver independent entry to read the TSF value into the debugfs of mac80211. This makes debugging the IBSS handling of wifi drivers easier. Signed-off-by: Alina Friedrichsen Signed-off-by: John W. Linville commit 5f8e077c0adc0dc7cfad64cdc05276e1961a1394 Author: Luis R. Rodriguez Date: Thu Jan 22 15:16:48 2009 -0800 ath9k: simplify regulatory code Now that cfg80211 has its own regulatory infrastructure we can condense ath9k's regulatory code considerably. We only keep data we need to provide our own regulatory_hint(), reg_notifier() and information necessary for calibration. Atheros hardware supports 12 world regulatory domains, since these are custom we apply them through the the new wiphy_apply_custom_regulatory(). Although we have 12 we can consolidate these into 5 structures based on frequency and apply a different set of flags that differentiate them on a case by case basis through the reg_notifier(). If CRDA is not found our own custom world regulatory domain is applied, this is identical to cfg80211's except we enable passive scan on most frequencies. Signed-off-by: Luis R. Rodriguez Signed-off-by: John W. Linville commit 24ed1da1337b92e3b0a89f2c2b7cd33b9a8fcb62 Author: Luis R. Rodriguez Date: Thu Jan 22 15:05:54 2009 -0800 cfg80211: allow users to help a driver's compliance Let users be more compliant if so desired. Signed-off-by: Luis R. Rodriguez Signed-off-by: John W. Linville commit 9a95371aa26e3cb9fb1340362912000088ff3c3e Author: Luis R. Rodriguez Date: Thu Jan 22 15:05:53 2009 -0800 mac80211: allow mac80211 drivers to get to struct ieee80211_hw from wiphy If a driver is given a wiphy and it wants to get to its private mac80211 driver area it can use wiphy_to_ieee80211_hw() to get first to its ieee80211_hw and then access the private structure via hw->priv. The wiphy_priv() is already being used internally by mac80211 and drivers should not use this. This can be helpful in a drivers reg_notifier(). Signed-off-by: Luis R. Rodriguez Acked-by: Johannes Berg Signed-off-by: John W. Linville commit f976376de0d6a9697fb635369f12ae00251f4566 Author: Luis R. Rodriguez Date: Thu Jan 22 15:05:52 2009 -0800 cfg80211: Allow for strict regulatory settings This allows drivers to request strict regulatory settings to be applied to its devices. This is desirable for devices where proper calibration and compliance can only be gauranteed for for the device's programmed regulatory domain. Regulatory domain settings will be ignored until the device's own regulatory domain is properly configured. If no regulatory domain is received only the world regulatory domain will be applied -- if OLD_REG (default to "US") is not enabled. If OLD_REG behaviour is not acceptable to drivers they must update their wiphy with a custom reuglatory prior to wiphy registration. Signed-off-by: Luis R. Rodriguez Signed-off-by: John W. Linville commit 716f9392e2b84cacc18cc11f7427cb98adeb1c3d Author: Luis R. Rodriguez Date: Thu Jan 22 15:05:51 2009 -0800 cfg80211: pass more detailed regulatory request information on reg_notifier() Drivers may need more information than just who set the last regulatory domain, as such lets just pass the last regulatory_request receipt. To do this we need to move out to headers struct regulatory_request, and enum environment_cap. While at it lets add documentation for enum environment_cap. Signed-off-by: Luis R. Rodriguez Signed-off-by: John W. Linville commit d46e5b1d0c617a2a46353812d7f02115c17b5e72 Author: Luis R. Rodriguez Date: Thu Jan 22 15:05:50 2009 -0800 cfg80211: move check for ignore_reg_update() on wiphy_update_regulatory() This ensures that the initial REGDOM_SET_BY_CORE upon wiphy registration respects the wiphy->custom_regulatory setting. Without this and if OLD_REG is disabled (which will be default soon as we remove it) the wiphy->custom_regulatory is simply ignored. Signed-off-by: Luis R. Rodriguez Acked-by: Johannes Berg Signed-off-by: John W. Linville commit 2a44f911d8bac3e6c97a25cc612e4324dfbdfdc4 Author: Luis R. Rodriguez Date: Thu Jan 22 15:05:49 2009 -0800 cfg80211: rename fw_handles_regulatory to custom_regulatory Drivers without firmware can also have custom regulatory maps which do not map to a specific ISO / IEC alpha2 country code. Signed-off-by: Luis R. Rodriguez Signed-off-by: John W. Linville commit e74b1e7fb2f12db36f25af2158ee6e2940e4f138 Author: Luis R. Rodriguez Date: Thu Jan 22 15:05:48 2009 -0800 cfg80211: ignore consecutive equal regulatory hints We ignore regulatory hints for the same alpha2 if we already have processed the same alpha2 on the current regulatory domain. For a driver regulatory_hint() this means we copy onto its wiphy->regd the previously procesed regulatory domain from CRDA without having to call CRDA again. Signed-off-by: Luis R. Rodriguez Signed-off-by: John W. Linville commit 5eebade608d695e30e89d4c5ca6136a58f24ed14 Author: Luis R. Rodriguez Date: Thu Jan 22 15:05:47 2009 -0800 cfg80211: process user requests only after previous user/driver/core requests This prevents user regulatory changes to be considered prior to previous pending user, core or driver requests which have not be applied. Signed-off-by: Luis R. Rodriguez Signed-off-by: John W. Linville commit 34f573473a659f8c2727d8d408e17b241900c28e Author: Luis R. Rodriguez Date: Thu Jan 22 15:05:45 2009 -0800 cfg80211: export freq_reg_info() This can be used by drivers on the reg_notifier() Signed-off-by: Luis R. Rodriguez Signed-off-by: John W. Linville commit 1fa25e413659f943dfec65da2abe713d566c7fdf Author: Luis R. Rodriguez Date: Thu Jan 22 15:05:44 2009 -0800 cfg80211: add wiphy_apply_custom_regulatory() This adds wiphy_apply_custom_regulatory() to be used by drivers prior to wiphy registration to apply a custom regulatory domain. This can be used by drivers that do not have a direct 1-1 mapping between a regulatory domain and a country. Signed-off-by: Luis R. Rodriguez Signed-off-by: John W. Linville commit 078e1e60dd6c6b0d4bc8d58ccb80c008e8efc9ff Author: Johannes Berg Date: Thu Jan 22 18:07:31 2009 +0100 mac80211: Add capability to enable/disable beaconing This patch adds a flag to notify drivers to start and stop beaconing when needed, for example, during a scan run. Based on Sujith's first patch to do the same, but now disables beaconing for all virtual interfaces while scanning, has a separate change flag and tracks user-space requests. Signed-off-by: Sujith Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit 07c1e852514e862e246b9f2962ce8fc0d7ac8ed1 Author: Bob Copeland Date: Thu Jan 22 08:44:21 2009 -0500 ath5k: honor the RTS/CTS bits The ath5k driver didn't use set_rts_threshold or use_cts_prot, and also didn't check the IEEE80211_TX_RC_USE_{RTS_CTS,CTS_PROTECT} RC flags. Tell the hardware about these so RTS/CTS will work, and so the device will work better in mixed b/g environments. Changes-licensed-under: 3-Clause-BSD Signed-off-by: Bob Copeland Acked-by: Nick Kossifidis Signed-off-by: John W. Linville commit 8902ff4e5666c04ca5829c9fd7fc28d73e81ee90 Author: Bob Copeland Date: Thu Jan 22 08:44:20 2009 -0500 ath5k: use short preamble when possible ath5k previously ignored TX_RC_SHORT_PREAMBLE and did not use config->use_short_preamble, so the long preamble was always used for transmitted packets. Changes-licensed-under: 3-Clause-BSD Signed-off-by: Bob Copeland Signed-off-by: John W. Linville commit 5ef4017a72f77f0bc07d8efb35c140b42e064f70 Author: Bob Copeland Date: Thu Jan 22 08:44:19 2009 -0500 ath5k: remove unused led_off parameter ath5k_softc->led_off hasn't been used since commit 3a078876caee9634dbb9b41e6269262e30e8b535, "convert LED code to use mac80211 triggers." Changes-licensed-under: 3-Clause-BSD Reported-by: Tobias Doerffel Signed-off-by: Bob Copeland Acked-by: Nick Kossifidis Signed-off-by: John W. Linville commit e129a948c906200db87727822559c09b62278824 Author: Andrey Borzenkov Date: Wed Jan 21 21:55:29 2009 +0300 orinoco: trivial cleanup in alloc_orinocodev Remove extra space; remove redundant cast Signed-off-by: Andrey Borzenkov Acked-by: Pavel Roskin Signed-off-by: John W. Linville commit 89ea40905fb48e2bf92211b57ab6be51c0797657 Author: Andrey Borzenkov Date: Wed Jan 21 20:46:46 2009 +0300 orinoco: convert to struct net_device_ops No functional changes; use new kernel interface for netdev methods. Signed-off-by: Andrey Borzenkov Acked-by: Pavel Roskin Signed-off-by: John W. Linville commit 881d948c23442173a011f1adcfe4c95bf7f27515 Author: Johannes Berg Date: Wed Jan 21 15:13:48 2009 +0100 wireless: restrict to 32 legacy rates Since the standards only define 12 legacy rates, 32 is certainly a sane upper limit and we don't need to use u64 everywhere. Add sanity checking that no more than 32 rates are registered and change the variables to u32 throughout. Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit 369391db1aabd089cefaadaabb6d9fc82e78b0a7 Author: Vasanthakumar Thiagarajan Date: Wed Jan 21 19:24:13 2009 +0530 ath9k: Remove unnecessary gpio configuration in ath9k_hw_reset() Signed-off-by: Vasanthakumar Thiagarajan Signed-off-by: John W. Linville commit e6799cc2e8c755a0317e664f29de0b08ddd0eb35 Author: Vasanthakumar Thiagarajan Date: Wed Jan 21 17:18:48 2009 +0530 ath9k: Fix typo in chip version check Signed-off-by: Vasanthakumar Thiagarajan Signed-off-by: John W. Linville commit 5f936f11613c32ca7f8ed5fa333bb38a4501deeb Author: Johannes Berg Date: Wed Jan 21 12:47:05 2009 +0100 mac80211: constify ieee80211_if_conf.bssid Then one place can be a static const. Signed-off-by: Johannes Berg Acked-by: Ivo van Doorn Signed-off-by: John W. Linville commit e9414b6b3f34dcc3683e66dffa4f5f167d49df51 Author: Abbas, Mohamed Date: Tue Jan 20 21:33:55 2009 -0800 iwl3945: fix deep sleep when removing the driver. A warning message "MAC is in deep sleep" sometimes happen when user removes the driver. This warning is related to card not being ready. In __iwl3945_down function some of the going down steps are in wrong order, to fix this this patch do the following: 1- make sure we are calling iwl3945_apm_reset and iwl3945_apm_stop in the right order. 2- make sure we set CSR_GP_CNTRL_REG_FLAG_INIT_DONE in apm_reset before poll on CSR_GP_CNTRL_REG_FLAG_MAC_CLOCK_READY. 3- set correct polling counter. This fixes bug http://www.intellinuxwireless.org/bugzilla/show_bug.cgi?id=1834 Signed-off-by: mohamed abbas Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit c0af96a6e63ef93c605ce495fff79c692d4b8c4d Author: Samuel Ortiz Date: Wed Jan 21 18:27:54 2009 +0100 iwl3945: Use iwl-rfkill Here again, the rfkill routines are duplicated between agn and 3945. Let's move the agn one to iwlcore, and so we can get rid of the 3945 ones. Signed-off-by: Samuel Ortiz Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit 7d049e5abe77c82d6f11a4e5869203f7b2838380 Author: Abbas, Mohamed Date: Tue Jan 20 21:33:53 2009 -0800 iwlagn: fix agn rate scaling Sometime Tx reply rate different than what rate scale expecting causing rate scale to bail out. This could cause failing to commit LQ cmd. This patch will try to solve this instead of just bail out. It also make sure we start with a valid rate. Signed-off-by: mohamed abbas Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit c6ec7a9b17875e3a5a9cdd23f7914d74069316c8 Author: Abbas, Mohamed Date: Tue Jan 20 21:33:52 2009 -0800 iwlwifi: allow user to set max rate allow user to set max rate through #iwconfig rate XXX. mac80211 will try to force this if user set it, but driver is not in sync which cause mac80211 to report wrong current rate. This patch will check if max rate is set and force it in rate scaling Signed-off-by: mohamed abbas Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit 3cbb5dd73697b3f1c677daffe29f00ace22b71e9 Author: Vivek Natarajan Date: Tue Jan 20 11:17:08 2009 +0530 ath9k: Enable dynamic power save in ath9k. This patch implements dynamic power save feature for ath9k. Signed-off-by: Vivek Natarajan Signed-off-by: John W. Linville commit c5d0569882b9c264be31dcb0758961bfc479deea Author: Jay Sternberg Date: Mon Jan 19 15:30:35 2009 -0800 iwlwifi: add recognition of Intel WiFi Link 100 Series add configuration for new Intel WiFi Link 100 series as part of the iwlagn driver under the umbrella of 5000 family of devices. Signed-off-by: Jay Sternberg Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit e1228374d648efe451973bc5f3d1f9a8e943ec0b Author: Jay Sternberg Date: Mon Jan 19 15:30:34 2009 -0800 iwlwifi: add recognition of Intel WiFi Link 6000 and 6050 Series add configuration for new Intel WiFi Link Series as part of the iwlagn driver under the umbrella of 5000 family of devices. Signed-off-by: Jay Sternberg Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit cec2d3f38c11f4c7e28ec2a065698653dbccfbb7 Author: Jay Sternberg Date: Mon Jan 19 15:30:33 2009 -0800 iwlwifi: remove static from 5000 structures remove static from config structures which will be used by new hardware that is similar to 5000. This way the new devices can use them without the new structures having to be stored in the already overloaded iwl-5000.c file. Signed-off-by: Jay Sternberg Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit f82d8d9724b6054b63fb3a0108937064029b2c00 Author: Jay Sternberg Date: Mon Jan 19 15:30:31 2009 -0800 iwlwifi: correct Kconfig to prevent following entries from not indenting defining configurations that are not visible caused the following entries to not be indented. changing the tree structure to name the top level selection and have all others reference IWLWIFI directly corrects this issue. Signed-off-by: Jay Sternberg Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit 3dae0c42ba1d51ae49bf149d1dcc38ffbb357409 Author: Winkler, Tomas Date: Mon Jan 19 15:30:30 2009 -0800 iwlwifi: eliminate power_data_39. This patch eliminates 3945 power_data structure and make use of of iwl_power_data. Signed-off-by: Tomas Winkler Acked-by: Mohamed Abbas Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit 62ea9c5b9e531dbf6b2601e6c9e2705a56983b6e Author: Winkler, Tomas Date: Mon Jan 19 15:30:29 2009 -0800 iwlwifi: remove unused or twice defined members in iwl_priv This patch removes user_txpower_limit and max_channel_txpower_limit and use tx_power_user_lmt and tx_power_channel_lmt instead call_post_assoc_from_beacon is not used Signed-off-by: Tomas Winkler Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit 805cee5b81f1e493820601fe7990aef935c2c621 Author: Winkler, Tomas Date: Mon Jan 19 15:30:28 2009 -0800 iwlwifi: kill scan39 scan and scan39 can be represented by void * in iwl_priv Signed-off-by: Tomas Winkler Acked-by: Samuel Ortiz Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit 518099a870ef3f5f97d96aa0c284ce1b403436fa Author: Samuel Ortiz Date: Mon Jan 19 15:30:27 2009 -0800 iwl3945: Use iwl-hcmd host command routines With the previously added tfd related ops, we can now use the iwl-tx.c host command enqueue routine. Since the 3945 host command specific routines are identical to the agn ones, we can just remove them from the 3945 code. Signed-off-by: Samuel Ortiz Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit 7aaa1d79e3a2d573ac469744506f17b1c9386840 Author: Samuel Ortiz Date: Mon Jan 19 15:30:26 2009 -0800 iwlwifi: Add TFD library operations The TFD structures for 3945 and agn HWs are fundamentally different. We thus need to define operations for attaching and freeing them. This will allow us to share a fair amount of code (cmd and tx queue related) between both drivers. Signed-off-by: Samuel Ortiz Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit 4f3602c8a3cf8d31e8b08b82d7ea9b0c30f28965 Author: Samuel Ortiz Date: Mon Jan 19 15:30:25 2009 -0800 iwl3945: Use iwl_txq_update_write_ptr The iwl3945 and the iwl versions are identical. Signed-off-by: Samuel Ortiz Acked-by: Tomas Winkler Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit 638d0eb9197d1e285451f6594184fcfc9c2a5d44 Author: Chatre, Reinette Date: Mon Jan 19 15:30:24 2009 -0800 iwl3945: add debugging for wrong command queue We encountered a problem related to this BUG and need to obtain more debugging information. See bug report at http://marc.info/?l=linux-wireless&m=123147215829854&w=2 Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit af0053d660f7c330ed1a5c6538938283fd79662f Author: Winkler, Tomas Date: Mon Jan 19 15:30:23 2009 -0800 iwlwifi: kill iwl3945_scan_cancel and iwl3945_scan_cancel_timeout This patch removes iwl3945_scan_cancel and iwl3945_scan_cancel_timeout because iwl_scan_cancel iwl_scan_cancel_timeout are just same. Signed-off-by: Tomas Winkler Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit 42986796409a6293351207150edb7b4689b6013d Author: Winkler, Tomas Date: Mon Jan 19 15:30:22 2009 -0800 iwlwifi: fix iwl_mac_set_key and iwl3945_mac_set_key This patch fix iwl_mac_set_key function changed in patch "mac80211: clean up set_key callback" 1. removing 'static' const u8 *addr' that can possible cause conflict when two or more NICs are present in the system. 2. simplifying functions Signed-off-by: Tomas Winkler Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit 5cd19c5f15f4bd3354cc7f8f8b1125018a84a25c Author: Winkler, Tomas Date: Mon Jan 19 15:30:21 2009 -0800 iwlwifi: make iwl-power.c more readable This patch rearrange code in iwl-power.c function to make it a little more readable. No functional changes. Signed-off-by: Tomas Winkler Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit f797eb7e2903571e9c0e7e5d64113f51209f8dc4 Author: Jouni Malinen Date: Mon Jan 19 18:48:46 2009 +0200 mac80211: Fix MFP Association Comeback to use Timeout Interval IE The separate Association Comeback Time IE was removed from IEEE 802.11w and the Timeout Interval IE (from IEEE 802.11r) is used instead. The editing on this is still somewhat incomplete in IEEE 802.11w/D7.0, but still, the use of Timeout Interval IE is the expected mechanism. Signed-off-by: Jouni Malinen Signed-off-by: John W. Linville commit bb2becac91f13e862d4601a8c5364bc758c35b8e Author: Bob Copeland Date: Mon Jan 19 11:20:54 2009 -0500 ath5k: remove stop/start calls from within suspend/resume mac80211 now takes down interfaces automatically during suspend so doing it in the driver is unnecessary. Signed-off-by: Bob Copeland Signed-off-by: John W. Linville commit 665af4fc8979734d8f73c9a6732be07e545ce4cc Author: Bob Copeland Date: Mon Jan 19 11:20:53 2009 -0500 mac80211: add suspend/resume callbacks This patch introduces suspend and resume callbacks to mac80211, allowing mac80211 to quiesce its state (bringing down interfaces, removing keys, etc) in preparation for suspend. cfg80211 will call the suspend hook before the device suspend, and resume hook after the device resume. Signed-off-by: Bob Copeland Acked-by: Johannes Berg Signed-off-by: John W. Linville commit 0378b3f1c49d48ed524eabda7e4340163d9483c9 Author: Johannes Berg Date: Mon Jan 19 11:20:52 2009 -0500 cfg80211: add PM hooks This should help implement suspend/resume in mac80211, these hooks will be run before the device is suspended and after it resumes. Therefore, they can touch the hardware as much as they want to. Signed-off-by: Johannes Berg Signed-off-by: Bob Copeland Signed-off-by: John W. Linville commit e0463f501fb945c1fde536d98eefc5ba156ff497 Author: Jouni Malinen Date: Mon Jan 19 16:52:00 2009 +0200 mac80211: Fix drop-unencrypted for management frames ADDBA request Action frame was sent out before 4-way handshake was completed and the initial 802.11w code ended up dropping the frame even if MFP was not enabled. While the sending of Action frames this early is not really a good idea (will break with MFP enabled), we should not break this for the MFP disabled case. This patch fixes ieee80211_tx_h_select_key() not to drop management frames if MFP is disabled. If MFP is enabled, Action frames will be dropped before keys are set per IEEE 802.11w/D7.0. Other robust management frames (i.e., Deauthentication and Disassociation frames) are allowed unprotected prior to key configuration. Signed-off-by: Jouni Malinen Signed-off-by: John W. Linville commit 6cd0b1cb872b3bf9fc5de4536404206ab74bafdd Author: Helmut Schaa Date: Mon Jan 19 13:10:07 2009 +0100 iwlagn: fix hw-rfkill while the interface is down Currently iwlagn is not able to report hw-killswitch events while the interface is down. This has implications on user space tools (like NetworkManager) relying on rfkill notifications to bring the interface up once the wireless gets enabled through a hw killswitch. Thus, enable the device already in iwl_pci_probe instead of iwl_up and enable interrups while the interface is down in order to get notified about killswitch state changes. The firmware loading is still done in iwl_up. Signed-off-by: Helmut Schaa Acked-by: Reinette Chatre Signed-off-by: John W. Linville commit c7e035a95d68819491b5250c6854f144c941e305 Author: Helmut Schaa Date: Mon Jan 19 13:02:15 2009 +0100 iwl3945: fix some warnings when compiled without debug Fix the following warnings if compiled without CONFIG_IWLWIFI_DEBUG. drivers/net/wireless/iwlwifi/iwl3945-base.c: In function ‘iwl3945_rx_reply_add_sta’: drivers/net/wireless/iwlwifi/iwl3945-base.c:2748: warning: unused variable ‘pkt’ drivers/net/wireless/iwlwifi/iwl3945-base.c: In function ‘iwl3945_rx_scan_results_notif’: drivers/net/wireless/iwlwifi/iwl3945-base.c:2903: warning: unused variable ‘notif’ drivers/net/wireless/iwlwifi/iwl3945-base.c: In function ‘iwl3945_rx_scan_complete_notif’: drivers/net/wireless/iwlwifi/iwl3945-base.c:2928: warning: unused variable ‘scan_notif’ Signed-off-by: Helmut Schaa Acked-by: Samuel Ortiz Signed-off-by: John W. Linville commit 2182b830fe0258477d469429d2dfb5702b84587e Author: Rami Rosen Date: Mon Jan 19 13:50:37 2009 +0200 mac80211: trivial documentation fix (mesh_nexthop_lookup()). This patch fixes the documentation of mesh_nexthop_lookup() in mesh_hwmp.c. Signed-off-by: Rami Rosen Signed-off-by: John W. Linville commit eb80ed8d1fc0f3005ab356fbd8d61d870e3038e6 Author: Rami Rosen Date: Mon Jan 19 13:50:32 2009 +0200 mac80211: trivial documentation fixes (enum mesh_path_flags). This patch fixes documentation of enum mesh_path_flags in mesh.h. Signed-off-by: Rami Rosen Signed-off-by: John W. Linville commit 9cf2d186e4c52308cad8ecd893924e22ed020605 Author: Rami Rosen Date: Mon Jan 19 13:50:27 2009 +0200 mac80211: remove mesh_plink_close() method. This patch removes mesh_plink_close() method as it is unused. Signed-off-by: Rami Rosen Signed-off-by: John W. Linville commit e9648179706448d50884f172711b00a6e5ab9e42 Author: Wei Yongjun Date: Thu Jan 15 17:41:16 2009 +0800 mac80211: cleanup kmalloc/memset -> kcalloc Transform calls kmalloc/memset to a single kcalloc. Signed-off-by: Wei Yongjun Signed-off-by: John W. Linville commit 672cf3cefe5f686637dec72b9f3d21fe1cdc8c94 Author: Roel Kluin Date: Sun Jan 18 23:50:27 2009 +0100 ath5k: notice a negative keytype To notice a negative keytype Signed-off-by: Roel Kluin Acked-by: Bob Copeland Signed-off-by: John W. Linville commit 3d3e451ff71b4e951d4b522b460a94f36fb5b276 Author: Ivo van Doorn Date: Sat Jan 17 20:44:08 2009 +0100 rt2x00: Add LED_MODE_ASUS support When the led mode is asus, the activity led mode must be registered otherwise the second LED will not be enabled. Signed-off-by: Ivo van Doorn Signed-off-by: John W. Linville commit 5e790023620ee02486fd64c7e5a6115ce004495d Author: Ivo van Doorn Date: Sat Jan 17 20:42:58 2009 +0100 rt2x00: conf_tx() only need register access for WMM queues conf_tx() in rt61pci and rt73usb only have to check once if the queue_idx indicates a non-WMM queue and break of the function immediately if that is the case. Only the WMM queues need to have the TX configuration written to the registers. Signed-off-by: Ivo van Doorn Signed-off-by: John W. Linville commit 4e54c711b42c3cc8da8a3fdcde3407b86d67ebcc Author: Ivo van Doorn Date: Sat Jan 17 20:42:32 2009 +0100 rt2x00: Update copyright year to 2009 Signed-off-by: Ivo van Doorn Signed-off-by: John W. Linville commit 49c1d2085b92a392189d44a06840cbd9ec147da2 Author: Andrey Borzenkov Date: Sat Jan 17 15:53:45 2009 +0300 Move orinoco Kconfig entries into drivers/net/wireless/orinoco/Kconfig Since driver now lives in separate subdirectory, move Kconfig entries in own file so they can be tweaked indepndently. It complements "orinoco: Move sources to a subdirectory". Signed-off-by: Andrey Borzenkov Acked-by: Pavel Roskin Signed-off-by: John W. Linville commit a2116993c172bbb0c62f83d25cc3fe5dc7fece0d Author: Christian Lamparter Date: Fri Jan 16 22:34:15 2009 +0100 p54spi: remove arch specific dependencies On Friday 16 January 2009 20:33:43 Kalle Valo wrote: > N800 and N810 support is not on mainline yet, for stlc45xx I decided > to add module parameters for the gpio numbers. Here's the commit from > stlc45xx repo: > > http://gitorious.org/projects/stlc45xx/repos/mainline/commits/35afc5df0027d02d49e6f5bf986dcc4deb4ee6cf This is the same patch for p54spi. It removes all N800/N810 specific code from p54spi, so the driver can be used on other architectures, or configurations as well. Signed-off-by: Christian Lamparter Signed-off-by: John W. Linville commit c88a768d7ed1bc38eedf18d16419ef2f01cd2d0d Author: Christian Lamparter Date: Fri Jan 16 20:24:31 2009 +0100 p54usb: fix conflict with recent usb changes A recent change in the usb core "USB: change interface to usb_lock_device_for_reset()" conflicts with "p54usb: utilize usb_reset_device for 3887". Sadly, we have to call usb_reset_device before we can upload the firmware on 3887. Unless someone figures out how to reliably stop the 3887 so the hardware is still usable next time we want to start it. Signed-off-by: Christian Lamparter Signed-off-by: John W. Linville commit c656bbb582cebd988d8c39c4912722dc47578eab Author: Sujith Date: Fri Jan 16 21:38:56 2009 +0530 ath9k: Cleanup buffer type assignment The buffer state is already cleared in ATH_TXBUF_RESET. Remove redundant code clearing the type variable. Signed-off-by: Sujith Signed-off-by: John W. Linville commit d43f301520aa64bb331736a4568d435762f980b0 Author: Sujith Date: Fri Jan 16 21:38:53 2009 +0530 ath9k: Revamp TX aggregation This patch cleans up the convoluted buffer management logic for TX aggregation. Both aggregation creation and completion are addressed. Signed-off-by: Sujith Signed-off-by: John W. Linville commit 6ef9b13db24757a9856f2feb1e571f34938567c9 Author: Sujith Date: Fri Jan 16 21:38:51 2009 +0530 ath9k: Handle holding descriptor in TX completion properly If the current holding descriptor is the last one in the TX queue, *and* it has been marked as STALE, then move it to the free list and bail out, as it has already been processed. Signed-off-by: Sujith Signed-off-by: John W. Linville commit 059d806cdcad3848582519f0546cf8b3bfede7a3 Author: Sujith Date: Fri Jan 16 21:38:49 2009 +0530 ath9k: Add a helper function to wake mac80211 queues Signed-off-by: Sujith Signed-off-by: John W. Linville commit 043a040503b0d0c21bf3fba971813eba3322267d Author: Sujith Date: Fri Jan 16 21:38:47 2009 +0530 ath9k: Merge queue draining functions The TX queue draining routines have confusing names, rename them approprately and merge ath_drain_txdataq() with ath_drain_all_txq(). Signed-off-by: Sujith Signed-off-by: John W. Linville commit 55f5e4a9800ae6e6e052380a8b3c9c4996d5cd05 Author: Sujith Date: Fri Jan 16 21:38:45 2009 +0530 ath9k: Remove ath_tx_stopdma and call ath9k_hw_stoptxdma directly Signed-off-by: Sujith Signed-off-by: John W. Linville commit e8324357902698ffb7615d128d612c85d8e21912 Author: Sujith Date: Fri Jan 16 21:38:42 2009 +0530 ath9k: Reorganize code in xmit.c This patch starts cleaning up all the crufty code in transmission path, grouping functions into logical blocks. Signed-off-by: Sujith Signed-off-by: John W. Linville commit dd006395688cd3ce6c92de288d8db090d98dc2c7 Author: Sujith Date: Fri Jan 16 21:38:40 2009 +0530 ath9k: Update short guard interval in rate control The rate control algorithm needs to know if a STA allows short guard interval, fixing this allows RC to use the correct table. Signed-off-by: Sujith Signed-off-by: John W. Linville commit 6642fe6f5d033128086c8b64737780454e53625e Author: Sujith Date: Fri Jan 16 21:38:28 2009 +0530 ath9k: rateCodeToIndex is not used, remove it Calculation of rate indices from ratecode is done in recv.c in a straightforward manner for both HT and legacy rates. This variable is not needed anymore. Signed-off-by: Sujith Signed-off-by: John W. Linville commit 9aed3cc124343d92be6697e9af3928bdfe8eb03e Author: Jouni Malinen Date: Tue Jan 13 16:03:29 2009 +0200 nl80211: New command for adding extra IE(s) into management frames A new nl80211 command, NL80211_CMD_SET_MGMT_EXTRA_IE, can be used to add arbitrary IE data into the end of management frames. The interface allows extra IEs to be configured for each management frame subtype, but only some of them (ProbeReq, ProbeResp, Auth, (Re)AssocReq, Deauth, Disassoc) are currently accepted in mac80211 implementation. This makes it easier to implement IEEE 802.11 extensions like WPS and FT that add IE(s) into some management frames. In addition, this can be useful for testing and experimentation purposes. Signed-off-by: Jouni Malinen Acked-by: Johannes Berg Signed-off-by: John W. Linville commit 0c1aa495961f03c964b3287cf5800217cf6f2cee Author: Gabor Juhos Date: Wed Jan 14 20:17:12 2009 +0100 ath9k: enable support for AR9100 Because we have support for the AR9100 devices now, we can enable them. Changes-licensed-under: ISC Signed-off-by: Gabor Juhos Signed-off-by: Imre Kaloz Tested-by: Pavel Roskin Signed-off-by: John W. Linville commit 9950688263dcd74560582f590d270728f4e92ed0 Author: Gabor Juhos Date: Wed Jan 14 20:17:11 2009 +0100 ath9k: fix null pointer dereference in ani monitor code In 'ath9k_ani_reset' the 'ahp->ah_curani' will be initialized only if 'DO_ANI(ah)' true. In 'ath9k_hw_ani_monitor' we are using 'ahp->ah_curani' unconditionally, and it will cause a NULL pointer dereference on AR9100. Changes-licensed-under: ISC Signed-off-by: Gabor Juhos Signed-off-by: Imre Kaloz Tested-by: Pavel Roskin Signed-off-by: John W. Linville commit 1975ef2039c63f58e6c80861a24236bcd0483aa9 Author: Gabor Juhos Date: Wed Jan 14 20:17:10 2009 +0100 ath9k: fix ar5416Addac_9100 values Writing the register at offset 0x98c4 causes a deadlock on the AR913x SoCs. Although i don't have detailed knowledge about these registers, but if i change the register offset according to the 'ar5416Addac' table, it works. Additionally there is no reference to the 0x98c4 elsewhere. Changes-licensed-under: ISC Signed-off-by: Gabor Juhos Signed-off-by: Imre Kaloz Tested-by: Pavel Roskin Signed-off-by: John W. Linville commit d03a66c17ab94f7cfec9b343d415111386216847 Author: Gabor Juhos Date: Wed Jan 14 20:17:09 2009 +0100 ath9k: remove (u16) casts from rtc register access The RTC register offsets don't fit into 'u16' on the AR913x, so we have to remove the existing casts. Changes-licensed-under: ISC Signed-off-by: Gabor Juhos Signed-off-by: Imre Kaloz Tested-by: Pavel Roskin Signed-off-by: John W. Linville commit 9dbeb91a8b97e2892c04461e28d2bdd0198b719d Author: Gabor Juhos Date: Wed Jan 14 20:17:08 2009 +0100 ath9k: get EEPROM contents from platform data on AHB bus On the AR913x SOCs we have to provide EEPROM contents via platform_data, because accessing the flash via MMIO is not safe. Additionally different boards may store the radio calibration data at different locations. Changes-licensed-under: ISC Signed-off-by: Gabor Juhos Signed-off-by: Imre Kaloz Tested-by: Pavel Roskin Signed-off-by: John W. Linville commit 09329d371e57ff9fcb645b8e2cdee1ec8b9b539f Author: Gabor Juhos Date: Wed Jan 14 20:17:07 2009 +0100 ath9k: introduce platform driver for AHB bus support This patch adds the platform_driver itself, and modifies the main driver to register it. Changes-licensed-under: ISC Signed-off-by: Gabor Juhos Signed-off-by: Imre Kaloz Tested-by: Pavel Roskin Signed-off-by: John W. Linville commit 6baff7f9a6c571dcd9a59820e3c094f7490cb0fd Author: Gabor Juhos Date: Wed Jan 14 20:17:06 2009 +0100 ath9k: move PCI code into separate file Now that we have converted all bus specific routines to replaceable, we can move the PCI specific codes into a separate file. Changes-licensed-under: ISC Signed-off-by: Gabor Juhos Signed-off-by: Imre Kaloz Tested-by: Pavel Roskin Signed-off-by: John W. Linville commit 39c3c2f2de6bccf698bfb5b9c4f56ddf99de0dbc Author: Gabor Juhos Date: Wed Jan 14 20:17:05 2009 +0100 ath9k: introduce bus specific cleanup routine We have left only some PCI specific cleanup code. We have to convert them as well. Changes-licensed-under: ISC Signed-off-by: Gabor Juhos Signed-off-by: Imre Kaloz Tested-by: Pavel Roskin Signed-off-by: John W. Linville commit 88d15707644fad1a137af7a17b00da6135f1c1a8 Author: Gabor Juhos Date: Wed Jan 14 20:17:04 2009 +0100 ath9k: introduce bus specific cache size routine The PCI specific bus_read_cachesize routine won't work on the AHB bus, we have to replace it with a suitable one later. Changes-licensed-under: ISC Signed-off-by: Gabor Juhos Signed-off-by: Imre Kaloz Tested-by: Pavel Roskin Signed-off-by: John W. Linville commit 7da3c55ce849e17fd9017c7bf770a03fa083d95b Author: Gabor Juhos Date: Wed Jan 14 20:17:03 2009 +0100 ath9k: convert to use bus-agnostic DMA routines Convert to use bus-agnostic DMA routines to make it usable on AHB bus as well. Changes-licensed-under: ISC Signed-off-by: Gabor Juhos Signed-off-by: Imre Kaloz Tested-by: Pavel Roskin Signed-off-by: John W. Linville commit f5870acb3a8e2cad57b6c5ffd3157a7dfbb47942 Author: Gabor Juhos Date: Wed Jan 14 20:17:02 2009 +0100 ath9k: convert to struct device Convert 'struct pci_dev' to 'struct device' to make it usable on the AHB bus as well. Changes-licensed-under: ISC Signed-off-by: Gabor Juhos Signed-off-by: Imre Kaloz Tested-by: Pavel Roskin Signed-off-by: John W. Linville commit 2663516d8fb896430bf42dce41b3e2f141d63bd5 Author: Helmut Schaa Date: Thu Jan 15 09:38:44 2009 +0100 iwl3945: report killswitch changes even if the interface is down Currently iwl3945 is not able to report hw-killswitch events while the interface is down. This has implications on user space tools (like NetworkManager) relying on rfkill notifications to bring the interface up once the wireless gets enabled through a hw killswitch. Thus, enable the device already in iwl3945_pci_probe instead of iwl3945_up and poll the CSR_GP_CNTRL register to update the killswitch state every two seconds. The polling is only needed on 3945 hardware as this adapter does not use interrupts to signal rfkill changes to the driver (in case no firmware is loaded). The firmware loading is still done in iwl3945_up. Signed-off-by: Helmut Schaa Acked-by: Samuel Ortiz Signed-off-by: John W. Linville commit c95741deef31d14c3a3d58397f9a3d2126d452e5 Author: Harvey Harrison Date: Wed Jan 14 23:10:55 2009 -0800 prism54: remove private implementation of le32_add_cpu Signed-off-by: Harvey Harrison Signed-off-by: John W. Linville commit a1d88210955e56f7a0d54ac72747075b683b0850 Author: Larry Finger Date: Wed Jan 14 11:15:25 2009 -0600 b43: Eliminate compilation warning in b43_op_set_key A recent pull from wireless testing generates the following warning: CC [M] drivers/net/wireless/b43/main.o drivers/net/wireless/b43/main.c: In function ‘b43_op_set_key’: drivers/net/wireless/b43/main.c:3636: warning: pointer type mismatch in conditional expression This fix was suggested by Johannes Berg . Signed-off-by: Larry Finger Signed-off-by: John W. Linville commit 07e74348c76368c3d694a06677c200dc8d9b00e8 Author: Jouni Malinen Date: Tue Jan 13 14:32:37 2009 +0200 ath9k: Use a defined value for pci_set_power_state() Silence sparse by using a defined value PCI_D3hot instead of a magic constant in a pci_set_power_state() call. Signed-off-by: Jouni Malinen Signed-off-by: John W. Linville commit d03415e6771cd709b2b2ec64d3e6315cc3ebfa74 Author: Jouni Malinen Date: Mon Jan 12 14:24:40 2009 +0200 nl80211: Fix documentation errors Couple of '_ATTR's were missing and SEC_CHAN_OFFSET to CHANNEL_TYPE rename was missed in couple of places. Signed-off-by: Jouni Malinen Acked-by: Johannes Berg Signed-off-by: John W. Linville commit 81094888bfbb759ea395f1857a7c38982acb99a9 Author: Helmut Schaa Date: Mon Jan 12 13:04:06 2009 +0100 ath5k: discard 11g caps if reported by an ar5211 eeprom At least one ar5211 card (GIGABYTE GN-WLMA101, 168c:0012 subsystem 1458:e800) reports itself as 11g capable which seems to be a bug in the eeprom. initvals.c assumes that ar5211 is only 11b capable and thus refuses to initialize this card. Hence this patch changes the probing for 11g capabilities to discard 11g capabilities for ar5211 cards which allows this specific card to work fine in 11b and 11a modes. Signed-off-by: Helmut Schaa Signed-off-by: John W. Linville commit cd8d3d321285a34b4e29cb7b04e552c49cc0f018 Author: Christian Lamparter Date: Sun Jan 11 01:18:38 2009 +0100 p54spi: p54spi driver This patch adds the p54spi driver. Signed-off-by: Christian Lamparter Signed-off-by: John W. Linville commit 4628ae75583311fcbbd02f4eebcfc08514dfbd65 Author: Christian Lamparter Date: Sun Jan 11 01:16:09 2009 +0100 p54spi: stlc45xx eeprom blob Usually every prism54 design hardware has a tiny eeprom chip in which all device specific data for calibration and link-tuning is stored. The stlc45xx chips are the only exception. They are made for embedded devices, where space is scarce. Signed-off-by: Christian Lamparter Signed-off-by: John W. Linville commit 6917f506a03b6bd7389683e8a8e08a1ad977b33e Author: Christian Lamparter Date: Sun Jan 11 01:14:18 2009 +0100 p54: longbow frontend support This patch adds support for longbow RF chip. Signed-off-by: Christian Lamparter Signed-off-by: John W. Linville commit 83cf1b6edba6bde87c8cf852b182d44b12ae7f88 Author: Christian Lamparter Date: Sun Jan 11 01:10:33 2009 +0100 p54: prepare the eeprom parser routines for longbow This patch adds support to upload pre-calculated calibration data to the firmware. Signed-off-by: Christian Lamparter Signed-off-by: John W. Linville commit b6ea03562f04382776ad825624daefe27f5d3f9c Author: Bob Copeland Date: Sat Jan 10 14:42:54 2009 -0500 ath5k: fix bf->skb==NULL panic in ath5k_tasklet_rx Under memory pressure, we may not be able to allocate a new skb for new packets. If the allocation fails, ath5k_tasklet_rx will exit but will leave a buffer in the list with a NULL skb, eventually triggering a BUG_ON. Extract the skb allocation from ath5k_rxbuf_setup() and change the tasklet to allocate the next skb before accepting a packet. Changes-licensed-under: 3-Clause-BSD Signed-off-by: Bob Copeland Signed-off-by: John W. Linville commit 138ab2e44e99a9544aad60cf137b8ac1f54131c5 Author: Vasanthakumar Thiagarajan Date: Sat Jan 10 17:07:09 2009 +0530 ath9k: Fix basic connectivity issue This patch temporarily fixes a regression introduced by BT coexistence support. There is an instability in connection when BT coexistence is enabled on some h/w. This interim fix introduces a module parameter for BT coexistence configuration. Signed-off-by: Vasanthakumar Thiagarajan Signed-off-by: John W. Linville commit 217875a37d4db3354c4c297d07b359abbf52e5e1 Author: Andrew Price Date: Sat Jan 10 19:38:05 2009 +0000 rt2400,rt2500: init led_qual for LED_MODE_DEFAULT Add a check for LED_MODE_DEFAULT so that we use the link LED for rt2400 and rt2500 devices. Signed-off-by: Andrew Price Acked-by: Ivo van Doorn Signed-off-by: John W. Linville commit ebe6c7ba9b63539d3b1daba1a8ef4cc9ed0f6941 Author: Jouni Malinen Date: Sat Jan 10 11:47:33 2009 +0200 mac80211: Fix radiotap header it_present on big endian CPUs When the IEEE80211_RADIOTAP_RATE flag was moved to be conditional, it was mistakenly left without cpu_to_le32(). Fix that. Signed-off-by: Jouni Malinen Signed-off-by: John W. Linville commit f4f727a6c84a6ba8f099b84b2a9f0b2ceddc1c8a Author: Jouni Malinen Date: Sat Jan 10 11:46:53 2009 +0200 mac80211: Mark ieee80211_process_sa_query_req() static This function is only used within rx.c, so mark it static. Signed-off-by: Jouni Malinen Signed-off-by: John W. Linville commit d2b21f191753abd12c4063776cb1a3d635397509 Author: Colin McCabe Date: Fri Jan 9 14:58:09 2009 -0800 libertas: if_spi, driver for libertas GSPI devices Add initial support for libertas devices using a GSPI interface. This has been tested with the 8686. GSPI is intended to be used on embedded systems. Board-specific parameters are required (see libertas_spi.h). Thanks to everyone who took a look at the earlier versions of the patch. Signed-off-by: Colin McCabe Signed-off-by: Andrey Yurovsky Acked-by: Dan Williams Signed-off-by: John W. Linville commit 3cd08b383b2efe163272045afc415c75afc9e9c5 Author: Christian Lamparter Date: Fri Jan 9 21:06:06 2009 +0100 p54: upgrade memrecord to p54_tx_info mac80211 reserves 24 bytes in skb->cb for the driver. So far, we only used them to keep track of used and free device memory. But p54spi will need a slice of it, as well as the stuck frame detection. Signed-off-by: Christian Lamparter Signed-off-by: John W. Linville commit 63f2dc9f2fd63c8b66f49c53cd26236f3f0785fd Author: Christian Lamparter Date: Fri Jan 9 21:05:31 2009 +0100 p54: refactor p54_alloc_skb Old firmwares had no problems processing frames which filled eighth of the memory window. However we have to be a bit more careful with fat frames when we talk to new firmwares. Apart from that, I confess the old logic was a bit weird and not very sophisticated. Signed-off-by: Christian Lamparter Signed-off-by: John W. Linville commit e724b8fef6088e5dd240b53a38443e48fbcc8e93 Author: Jiri Slaby Date: Mon Jan 5 17:06:06 2009 +0100 IWL: fix WARN typo new kew -> a new key Signed-off-by: Jiri Slaby Cc: Tomas Winkler Signed-off-by: John W. Linville commit b48365994b1b5cce8078c0707a06cf9897007fb5 Author: Colin McCabe Date: Fri Jan 2 19:00:22 2009 -0800 libertas: Update libertas core with GSPI constants Add GSPI constants to libertas core. Fix misleading comment in lbs_setup_firmware. Signed-off-by: Colin McCabe Signed-off-by: Andrey Yurovsky Acked-by: Dan Williams Signed-off-by: John W. Linville commit c7a7c8ecd43b4bc796a8e79c46305e2a677b55f3 Author: Samuel Ortiz Date: Thu Jan 8 10:20:01 2009 -0800 iwl3945: Fix iwl3945_init_drv() iwl3945_init_drv() initialises the wrong lock, and sets the wrong power saving default level. With this power saving mode, we are losing a lot of frames in Ad-Hoc mode. This is a bug fix for bug #1873. ( http://www.intellinuxwireless.org/bugzilla/show_bug.cgi?id=1873 ) Signed-off-by: Samuel Ortiz Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit a8302de934b5d1897ff146cd0c7ab87d1417c092 Author: Vasanthakumar Thiagarajan Date: Fri Jan 9 18:14:15 2009 +0530 mac80211: Handle power constraint level advertised in 11d+h beacon This patch uses power constraint level while determining the maximum transmit power, there by it makes sure that any power mitigation requirement for the channel in the current regulatory domain is met. Signed-off-by: Vasanthakumar Thiagarajan Signed-off-by: John W. Linville commit 01f8162a854df7f9c259c839ad3c1168ac13b7b8 Author: Reinette Chatre Date: Thu Jan 8 10:20:02 2009 -0800 iwlwifi: update copyright year to 2009 Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit 9c74d9fbd59f3a69cbe08a6bd66479c190effe5f Author: Samuel Ortiz Date: Thu Jan 8 10:19:59 2009 -0800 iwl3945: Change crypto parameter name Now that we're using iwl_mod_params, we want our module parameters names to be in sync with the structure. So, to set iwl_mod_params.sw_crypto, we'd better use a "swcrypto" parameter name instead of the "hwcrypto" current one. Moreover, by setting the decrypted flag properly, this patch also fixes the HW crypto path for 3945 (the current code is not setting it when running HW crypto). This is a bug fix for bug #1872 ( http://www.intellinuxwireless.org/bugzilla/show_bug.cgi?id=1872 ) Signed-off-by: Samuel Ortiz Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit 1e33dc64475790c10a7cda3ca23d2eb678760d85 Author: Winkler, Tomas Date: Thu Jan 8 10:19:57 2009 -0800 iwl3945: use hw_params.rx_buf_size This patch makes 3945 use of hw_params.rx_buf_size instead of IWL_RX_BUF_SIZE. It also renames IWL_RX_BUF_SIZE to IWL_RX_BUF_SIZE_3K and moves rx buffer defines into iwl-fh.h. Signed-off-by: Tomas Winkler Signed-off-by: Zhu Yi Signed-off-by: John W. Linville commit d45aadd04b60c6d4f846e7ec2564654567065e5f Author: Winkler, Tomas Date: Thu Jan 8 10:19:56 2009 -0800 iwl3945: remove double defined 3945 tfd structures This patch removes doubly defined struct iwl3945_tfd_frame_data and struct iwl3945_tfd_frame. Signed-off-by: Tomas Winkler Signed-off-by: Zhu Yi Signed-off-by: John W. Linville commit 625a381ab870b190c1899c08467c0e6dcc5d94d4 Author: Winkler, Tomas Date: Thu Jan 8 10:19:55 2009 -0800 iwl3945: kill iwl3945_x2_queue_used This patch replaces iwl3945_x2_queue_used with iwl_queue_used. Signed-off-by: Tomas Winkler Signed-off-by: Zhu Yi Signed-off-by: John W. Linville commit 37d68317add2b769ad232a5d199bece41c59e13f Author: Winkler, Tomas Date: Thu Jan 8 10:19:54 2009 -0800 iwl3945: kill iwl3945_rx_queue_space This patch replaces iwl3945_rx_queue_space with iwl_rx_queue_space. Signed-off-by: Tomas Winkler Signed-off-by: Zhu Yi Signed-off-by: John W. Linville commit 141c43a3e4c7e8543fea982284765fda5e73837e Author: Winkler, Tomas Date: Thu Jan 8 10:19:53 2009 -0800 iwl3945: kill iwl3945_rx_queue_restock This patch kills iwl3945_rx_queue_restock function on prise of new hw_params.rx_wrt_ptr_reg which holds per NIC RX write pointer register. Signed-off-by: Tomas Winkler Signed-off-by: Zhu Yi Signed-off-by: John W. Linville commit f5965955e0107b116b379cccb94de612281bdf55 Author: Winkler, Tomas Date: Thu Jan 8 10:19:52 2009 -0800 iwl3945: kill hw_params.tx_ant_num This patch removes tx_ant_num for hw_params structure. It is not used. Signed-off-by: Tomas Winkler Signed-off-by: Zhu Yi Signed-off-by: John W. Linville commit fa77533e2e1e5c7d9d80618db21266b9eac1b205 Author: Jouni Malinen Date: Thu Jan 8 13:32:14 2009 +0200 mac80211_hwsim: Report driver as MFP capable mac80211_hwsim has no problems with MFP, so report it as MFP capable. Signed-off-by: Jouni Malinen Signed-off-by: John W. Linville commit 0ced0e176ab854df15bd307188decba9c06650e5 Author: Jouni Malinen Date: Thu Jan 8 13:32:13 2009 +0200 ath9k: Setup MFP options for CCMP Configure hardware CCMP for management frame protection and use software crypto when needed. Signed-off-by: Jouni Malinen Signed-off-by: John W. Linville commit ca470b29027f093d8d63abc0fa401cf4f72e427b Author: Jouni Malinen Date: Thu Jan 8 13:32:12 2009 +0200 ath9k: Fix set_key error codes Return -EOPNOTSUPP if the algorithm is not supported and -ENOSPC if there is no room in the key cache. This avoids KERN_ERR printk in mac80211 for "errors" that are actually expected to happen in normal operating conditions. Signed-off-by: Jouni Malinen Signed-off-by: John W. Linville commit 4375d08350e3661d5e8860d33eea084e47ba01cf Author: Jouni Malinen Date: Thu Jan 8 13:32:11 2009 +0200 mac80211: 802.11w - Add driver capability flag for MFP This allows user space to determine whether a driver supports MFP and behave properly without having to ask user to configure this in MFP-optional mode. Signed-off-by: Jouni Malinen Acked-by: Johannes Berg Signed-off-by: John W. Linville commit 1f7d77ab69789980dad44e1af7afd3a68cd48276 Author: Jouni Malinen Date: Thu Jan 8 13:32:10 2009 +0200 mac80211: 802.11w - Optional software CCMP for management frames If driver/firmware/hardware does not support CCMP for management frames, it can now request mac80211 to take care of encrypting and decrypting management frames (when MFP is enabled) in software. The will need to add this new IEEE80211_KEY_FLAG_SW_MGMT flag when a CCMP key is being configured for TX side and return the undecrypted frames on RX side without RX_FLAG_DECRYPTED flag to use software CCMP for management frames (but hardware for data frames). Signed-off-by: Jouni Malinen Acked-by: Johannes Berg Signed-off-by: John W. Linville commit 63a5ab82255a4ff5d0783f16427210f1d45d7ec8 Author: Jouni Malinen Date: Thu Jan 8 13:32:09 2009 +0200 mac80211: 802.11w - Implement Association Comeback processing When MFP is enabled, the AP does not allow a STA to associate if an existing security association exists without first going through SA Query process. When this happens, the association request is denied with a new status code ("temporarily rejected") ans Association Comeback IE is used to notify when the association may be tried again (i.e., when the SA Query procedure has timed out). Use the comeback time to update the mac80211 client MLME timer for next association attempt to minimize waiting time if association is temporarily rejected. Signed-off-by: Jouni Malinen Acked-by: Johannes Berg Signed-off-by: John W. Linville commit 97ebe12a035e11f8af7a06a34f4d848f9b2f0b49 Author: Jouni Malinen Date: Thu Jan 8 13:32:08 2009 +0200 mac80211: 802.11w - Drop unprotected robust management frames if MFP is used Use ieee80211_drop_unencrypted() to decide whether a received frame should be dropped with management frames, too. If MFP is negotiated, unprotected robust management frames will be dropped. Signed-off-by: Jouni Malinen Acked-by: Johannes Berg Signed-off-by: John W. Linville commit 1acc97b63a3f32481ebbb4e831323e9aa8834f66 Author: Jouni Malinen Date: Thu Jan 8 13:32:07 2009 +0200 mac80211: 802.11w - Do not force Action frames to disable encryption When sending out Action frames, allow ieee80211_tx_skb() to send them without enforcing do_not_encrypt. These frames will be encrypted if MFP has been negotiated. Signed-off-by: Jouni Malinen Acked-by: Johannes Berg Signed-off-by: John W. Linville commit fea147328908b7e2bfcaf9dc4377909d5507ca35 Author: Jouni Malinen Date: Thu Jan 8 13:32:06 2009 +0200 mac80211: 802.11w - SA Query processing Process SA Query Requests for client mode in mac80211. AP side processing of SA Query Response frames is in user space (hostapd). Signed-off-by: Jouni Malinen Acked-by: Johannes Berg Signed-off-by: John W. Linville commit fdfacf0ae2e8339098b1164d2317b792d7662c0a Author: Jouni Malinen Date: Thu Jan 8 13:32:05 2009 +0200 mac80211: 802.11w - Configuration of MFP disabled/optional/required Add new WEXT IW_AUTH_* parameter for setting MFP disabled/optional/required. Signed-off-by: Jouni Malinen Acked-by: Johannes Berg Signed-off-by: John W. Linville commit 22787dbaa3b952602542506e0426ea6d5f104042 Author: Jouni Malinen Date: Thu Jan 8 13:32:04 2009 +0200 mac80211: 802.11w - WEXT configuration for IGTK Added new SIOCSIWENCODEEXT algorithm for configuring BIP (AES-CMAC) keys (IGTK). Signed-off-by: Jouni Malinen Acked-by: Johannes Berg Signed-off-by: John W. Linville commit 54604d3a827b37525ef017adba313c7112e0f484 Author: Jouni Malinen Date: Thu Jan 8 13:32:03 2009 +0200 mac80211: 802.11w - WEXT parameter for setting mgmt cipher Add a new IW_AUTH parameter for setting cipher suite for multicast/broadcast management frames. This is for full-mac drivers that take care of RSN IE generation for (re)association request frames. Signed-off-by: Jouni Malinen Acked-by: Johannes Berg Signed-off-by: John W. Linville commit 3cfcf6ac6d69dc290e96416731eea5c88ac7d426 Author: Jouni Malinen Date: Thu Jan 8 13:32:02 2009 +0200 mac80211: 802.11w - Use BIP (AES-128-CMAC) Add mechanism for managing BIP keys (IGTK) and integrate BIP into the TX/RX paths. Signed-off-by: Jouni Malinen Acked-by: Johannes Berg Signed-off-by: John W. Linville commit 765cb46a3fc856245ea68a7c961ac87c77e4ae2d Author: Jouni Malinen Date: Thu Jan 8 13:32:01 2009 +0200 mac80211: 802.11w - Add BIP (AES-128-CMAC) Implement Broadcast/Multicast Integrity Protocol for management frame protection. This patch adds the needed definitions for the new information element (MMIE) and implementation for the new "encryption" type (though, BIP is actually not encrypting data, it provides only integrity protection). These routines will be used by a follow-on patch that enables BIP for multicast/broadcast robust management frames. Signed-off-by: Jouni Malinen Acked-by: Johannes Berg Signed-off-by: John W. Linville commit fb7333367632c67d8b6b06fb8d906cdabb11b02a Author: Jouni Malinen Date: Thu Jan 8 13:32:00 2009 +0200 mac80211: 802.11w - CCMP for management frames Extend CCMP to support encryption and decryption of unicast management frames. Signed-off-by: Jouni Malinen Acked-by: Johannes Berg Signed-off-by: John W. Linville commit 5394af4d86ae51b369ff243c3f75b6f9a74e164b Author: Jouni Malinen Date: Thu Jan 8 13:31:59 2009 +0200 mac80211: 802.11w - STA flag for MFP Add flags for setting STA entries and struct ieee80211_if_sta to indicate whether management frame protection (MFP) is used. Signed-off-by: Jouni Malinen Acked-by: Johannes Berg Signed-off-by: John W. Linville commit 039498c6ec67bd718ac1c8e7f6b4e2cfe2146773 Author: Luis R. Rodriguez Date: Wed Jan 7 17:43:35 2009 -0800 cfg80211: fix typo on message after intersection Signed-off-by: Luis R. Rodriguez Acked-by: Johannes Berg Signed-off-by: John W. Linville commit 3e0c3ff36c4c7b9e39af7d600e399664ca04e817 Author: Luis R. Rodriguez Date: Wed Jan 7 17:43:34 2009 -0800 cfg80211: allow multiple driver regulatory_hints() We add support for multiple drivers to provide a regulatory_hint() on a system by adding a wiphy specific regulatory domain cache. This allows drivers to keep around cache their own regulatory domain structure queried from CRDA. We handle conflicts by intersecting multiple regulatory domains, each driver will stick to its own regulatory domain though unless a country IE has been received and processed. If the user already requested a regulatory domain and a driver requests the same regulatory domain then simply copy to the driver's regd the same regulatory domain and do not call CRDA, do not collect $200. Signed-off-by: Luis R. Rodriguez Acked-by: Johannes Berg Signed-off-by: John W. Linville commit 560e28e14f69ad3440a6e8c283dcfd37e1e41c2d Author: Luis R. Rodriguez Date: Wed Jan 7 17:43:32 2009 -0800 cfg80211: call reg_notifier() once We are calling the reg_notifier() callback per band, this is not necessary, just call it once. Signed-off-by: Luis R. Rodriguez Acked-by: Johannes Berg Signed-off-by: John W. Linville commit 4be8c3873e0b88397866d3ede578503e188f9ad2 Author: Johannes Berg Date: Wed Jan 7 18:28:20 2009 +0100 mac80211: extend/document powersave API This modifies hardware flags for powersave to support three different flags: * IEEE80211_HW_SUPPORTS_PS - indicates general PS support * IEEE80211_HW_PS_NULLFUNC_STACK - indicates nullfunc sending in software * IEEE80211_HW_SUPPORTS_DYNAMIC_PS - indicates dynamic PS on the device It also adds documentation for all this which explains how to set the various flags. Additionally, it fixes a few things: * a spot where && was used to test flags * enable CONF_PS only when associated again Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit acbaf32e94cb70218792cac68e5149e482e77441 Author: Christian Lamparter Date: Wed Jan 7 16:40:08 2009 +0100 p54: return NETDEV_TX_OK in p54_tx and fix sparse warnings This patch addresses all recent comments from Johannes Berg: 1st: (reference http://marc.info/?l=linux-wireless&m=123124685019631 ) >First off: all those should return NETDEV_TX_OK/BUSY. >iwl-agn: returns 0 (== NETDEV_TX_OK, but still should be changed) >[...] >p54: same (some paths) 2nd: > due to your PS patch ("p54: power save management"), please run sparse: > make C=2 CF=-D__CHECK_ENDIAN__ M=... > +drivers/net/wireless/p54/p54common.c:1753:8: warning: incorrect type in assignment (different base types) > +drivers/net/wireless/p54/p54common.c:1769:29: warning: incorrect type in assignment (different base types) The cpu_to_le16 ended up in the wrong line... Sorry! Signed-off-by: Christian Lamparter Signed-off-by: John W. Linville commit 64d74681433415855da02d2516f28d2ed859cde9 Author: Ivo van Doorn Date: Wed Jan 7 14:51:41 2009 +0100 rt2x00: Only register rfkill input when key is present rt2x00 should only register the RFKILL input device when the hardware indicated the key was present. Signed-off-by: Ivo van Doorn Signed-off-by: John W. Linville commit 46f2c4bd7e2ba2cfedbcd4fe15d316eebc608cba Author: Johannes Berg Date: Tue Jan 6 18:13:18 2009 +0100 mac80211: move dynamic PS timeout to hardware config This will be needed for drivers that set the IEEE80211_HW_NO_STACK_DYNAMIC_PS flag and still want to handle dynamic PS. Signed-off-by: Johannes Berg Reviewed-by: Kalle Valo Signed-off-by: John W. Linville commit e9aeabaeb9a0bece50100dc74bbd720a68cb8f5c Author: Johannes Berg Date: Tue Jan 6 18:12:35 2009 +0100 mac80211: validate SIOCSIWPOWER arguments better Don't accept any arguments we don't handle, and return error codes instead of using an uninitialised stack value. Signed-off-by: Johannes Berg Reviewed-by: Kalle Valo Signed-off-by: John W. Linville commit 4797938c5dfa22af30fd16679192972f878419a1 Author: Johannes Berg Date: Wed Jan 7 10:13:27 2009 +0100 mac80211: clean up channel type config The channel_type really doesn't need to be the only member in a new structure, so remove the struct. Additionally, remove the _CONF_CHANGE_HT flag and use _CONF_CHANGE_CHANNEL when the channel type changes, since that's enough of a change to require reprogramming the hardware anyway. Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit 47166791b7296db5c0a7189401e42b8c7f4cca25 Author: David Kilroy Date: Wed Jan 7 00:43:54 2009 +0000 orinoco: Remove unused variable rx_data Probably something leftover from experimentation with tasklets. Now the structure declaration orinoco_rx_data can be relocated to orinoco.c Signed-off-by: David Kilroy Signed-off-by: John W. Linville commit d1c3a37ceeb1a5ea02991a0476355f1a1d3b3e83 Author: Johannes Berg Date: Wed Jan 7 00:26:10 2009 +0100 mac80211: clarify alignment docs, fix up alignment Not all drivers are capable of passing properly aligned frames, in particular with mesh networking no hardware will support completely aligning it correctly. This patch adds code to align the data payload to a 4-byte boundary in memory for those platforms that require this, or when CONFIG_MAC80211_DEBUG_PACKET_ALIGNMENT is set. Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit 2bf30fabadbdcb535b057afc92aba015884847dc Author: Johannes Berg Date: Tue Jan 6 23:23:56 2009 +0100 mac80211: remove user_power_level from driver API I missed this during review of "mac80211: Fix tx power setting", the user_power_level shouldn't be available to the driver but rather be an internal value used to calculate the value for the driver. Signed-off-by: Johannes Berg Cc: Vasanthakumar Thiagarajan Signed-off-by: John W. Linville commit 8465676241cad5e28a1b745c32a0e18e1f67e18e Author: Nick Kossifidis Date: Tue Jan 6 17:27:06 2009 +0200 ath5k: Minor QCU updates * Sync qcu.c with legacy-hal * Add some more comments * Set QCU mask to save power (QCU mask controls which QCUs are attached to each DCU, we do a 1:1 mapping) TODO: Use max QCU from EEPROM, further sync with legacy-hal and sam's hal and a few more minor fixes. I think after this we are ready to implement WME on the driver part. Anyone interested ? Signed-Off-by: Nick Kossifidis Signed-off-by: John W. Linville commit 8fe12920dc5fa0a0db7cad3661223d5f78a39c60 Author: Rami Rosen Date: Tue Jan 6 15:24:57 2009 +0200 mac80211: remove unused variable in ieee80211_local (dot11WEPUndecryptableCount). This patch removes an unused declaration of dot11WEPUndecryptableCount (an snmp counter) in ieee80211_local structure and its usage in debugfs.c since this counter is not incremented/decremented anywhere. Signed-off-by: Rami Rosen Signed-off-by: John W. Linville commit 81d963a1f6aeefca5527cc605f863eb82a634eab Author: Rami Rosen Date: Tue Jan 6 10:51:01 2009 +0200 mac80211: remove an unused definition (MAX_STA_COUNT) in sta_info.h. This patch removes an unused definition of MAX_STA_COUNT in sta_info.h. Signed-off-by: Rami Rosen Signed-off-by: John W. Linville commit 504a71e4c2718d8ef5dc5bff89dea47a91cf87e5 Author: Rami Rosen Date: Tue Jan 6 10:50:51 2009 +0200 mac80211: remove an unused parameter in ieee80211_rx_mgmt_probe_req(). This patch removes an unused parameter (rx_status) in ieee80211_rx_mgmt_probe_req(), in mlme.c. Signed-off-by: Rami Rosen Signed-off-by: John W. Linville commit def1343971b2abd158ece1a71dd1c7a20e4c2fcb Author: Rami Rosen Date: Tue Jan 6 10:50:33 2009 +0200 mac80211: remove an unnecessary assignment to info in __ieee80211_tx(). This patch removes an unnecessary assignment to info in __ieee80211_tx() , tx.c. Signed-off-by: Rami Rosen Signed-off-by: John W. Linville commit c481ec9705d4a5d566393bc17374cfd82c870715 Author: Sujith Date: Tue Jan 6 09:28:37 2009 +0530 mac80211: Add 802.11h CSA support Move to the advertised channel on reception of a CSA element. This is needed for 802.11h compliance. Signed-off-by: Sujith Acked-by: Johannes Berg Signed-off-by: John W. Linville commit b522ed56ef90f5078a2a1253e390299723510a89 Author: Alina Friedrichsen Date: Tue Jan 6 03:15:23 2009 +0100 mac80211: Allow to set channel in adhoc properly The last patch fixes a bug that it was not possible to set the channel manually in the ad hoc mode properly. Please commit this patches so that we don't need the proprietary Broadcom driver in the near future anymore. Signed-off-by: Alina Friedrichsen Signed-off-by: John W. Linville commit 65f0e6a36e25fbfa6adf706d9c53bf64b13096eb Author: Alina Friedrichsen Date: Tue Jan 6 03:08:10 2009 +0100 mac80211: Don't merge if BSSID is set manually If you set a fixed BSSID manually, you never want that the driver change it back, or your ad-hoc mesh network will break into peaces. So don't do it. Signed-off-by: Alina Friedrichsen Signed-off-by: John W. Linville commit 137f9f46a4edf8a937ffe9e3dba498b5cfaa1e5b Author: Alina Friedrichsen Date: Tue Jan 6 02:49:07 2009 +0100 mac80211: Don't scan if BSSID and channel are set manually If you set a fixed BSSID and channel it's not necessary to scan for neighbors to merge, because you really don't want to merge with it. So don't do it. Signed-off-by: Alina Friedrichsen Signed-off-by: John W. Linville commit 0efcdfd6ed4e7ac74c45e7c3218fd1a7416fdb3f Author: Alina Friedrichsen Date: Tue Jan 6 02:41:35 2009 +0100 mac80211: Disallow to set multicast BSSID Okay, here is the first of the five patches. After applying all of them you should be able to build/join huge city mesh networks (e.g. with the OLSR protocol) with the most of the mac80211 wireless drivers by setting a fixed BSSID in the ad hoc mode. (If you found no other bug/problem.) This was not specified in the original standard, but is a widely used de facto standard. The first patch now completely disallow to set multicast MAC addresses as BSSID. The behavior before was really strange. Signed-off-by: Alina Friedrichsen Signed-off-by: John W. Linville commit cca3e99861e883358ceb39ad17c9eaee082138a5 Author: Ivo van Doorn Date: Sat Jan 3 19:56:02 2009 +0100 rt2x00: Replace RFKILL with INPUT As discussed on linux-wireless rt2x00 does not offer a true RFKILL key, for that reason RFKILL support should be entirely removed. The key which is attached to the hardware should be treated as normal input device instead. Implement input_poll_dev support to poll the device frequently. When the key status has changed report it as a SW event. Signed-off-by: Ivo van Doorn Signed-off-by: John W. Linville commit c97c92d92715ea4ea2d7cf00957e8a014439bdd8 Author: Vasanthakumar Thiagarajan Date: Fri Jan 2 15:35:46 2009 +0530 ath9k: Enable Bluetooth Coexistence support Signed-off-by: Vasanthakumar Thiagarajan Signed-off-by: John W. Linville commit 7d969204882882585336b0fa19ad4587d8fb15a2 Author: Bob Copeland Date: Thu Jan 1 15:01:45 2009 -0500 ath5k: fix off-by-one in gpio checks Sanity checks against AR5K_NUM_GPIO were all broken. This doesn't currently cause any problems since we only use the first four gpios. Changes-licensed-under: ISC Reported-by: Andreas Mohr Signed-off-by: Bob Copeland Signed-off-by: John W. Linville commit 63649b6cf0a964582af2b4d4734e28ca90ec8f5c Author: Bob Copeland Date: Thu Jan 1 15:01:44 2009 -0500 ath5k: support LEDs on Acer Aspire One netbook Add vendor ID for Foxconn and use it to set the ath5k LED gpio and polarity for Acer branded laptops. base.c: Changes-licensed-under: 3-Clause-BSD Reported-by: Maxim Levitsky Tested-by: Maxim Levitsky Tested-by: Andreas Mohr Signed-off-by: Bob Copeland Signed-off-by: John W. Linville commit 2b8d4e2eea711b6dfe1878ff3c94ebe757656f6d Author: Christian Lamparter Date: Tue Dec 30 13:48:41 2008 +0100 p54: power save management This patch implements dynamic power save feature for p54. Signed-off-by: Christian Lamparter Signed-off-by: John W. Linville commit 51eed9923d98477e7f7473edd60d876d1cecc8c5 Author: Christian Lamparter Date: Tue Dec 30 13:48:29 2008 +0100 p54: implement FIF_OTHER_BSS filter setting According to STMicroelectronics' LMAC documentation, the P54_FILTER_TYPE_TRANSPARENT flag "configures the receive frame filter to pass all frames without regard to type and address matching." Signed-off-by: Christian Lamparter Signed-off-by: John W. Linville commit 78eb7484fadddd2860d4503b3c8c1710c1bfa1b3 Author: Christian Lamparter Date: Tue Dec 30 13:48:19 2008 +0100 p54: enable rx/tx antenna diversity by eeprom bits Respect all documented bits in the eeprom about the device diversity features. Signed-off-by: Christian Lamparter Signed-off-by: John W. Linville commit 295834fe3605fd50265399c266fe0a5ccc76edc8 Author: Gabor Juhos Date: Mon Dec 29 21:07:42 2008 +0100 ath9k: use signed format to print HAL status Signed-off-by: Gabor Juhos Signed-off-by: John W. Linville commit dc822b5db479dc0178d5c04cbb656dad0b6564fb Author: Johannes Berg Date: Mon Dec 29 12:55:09 2008 +0100 mac80211: clean up set_key callback The set_key callback now seems rather odd, passing a MAC address instead of a station struct, and a local address instead of a vif struct. Change that. Signed-off-by: Johannes Berg Acked-by: Bob Copeland [ath5k] Acked-by: Ivo van Doorn [rt2x00] Acked-by: Christian Lamparter [p54] Tested-by: Kalle Valo [iwl3945] Tested-by: Samuel Ortiz [iwl3945] Signed-off-by: John W. Linville commit b3093664c931aa06fc50da42e25b3b6dc307a915 Author: Kalle Valo Date: Mon Dec 29 10:02:48 2008 +0200 mac80211: make wake/stop_queue_by_reason() functions static Fixes sparse warnings: net/mac80211/util.c:355:6: warning: symbol 'ieee80211_wake_queue_by_reason' was not declared. Should it be static? net/mac80211/util.c:385:6: warning: symbol 'ieee80211_stop_queue_by_reason' was not declared. Should it be static? Thanks to Johannes Berg for reporting this. Signed-off-by: Kalle Valo Signed-off-by: John W. Linville commit c557289cb8ea063bd09db88f8a687a841556e291 Author: Michael Buesch Date: Sat Dec 27 18:26:39 2008 +0100 b43: Change schedule for old-fw support removal The scheduled date for the removal of old fw support was in July 2008. However, we're not going to remove the support unless it causes a major headache. So change the schedule from "July 2008" to "when it causes headaches". Signed-off-by: Michael Buesch Signed-off-by: John W. Linville commit 98a8d1a8f22237e2aa7db5453df0f68935a5ede0 Author: Christian Lamparter Date: Fri Dec 26 21:50:33 2008 +0100 p54: regulatory domain hints This patch adds a sub-routine that parses the default country eeprom entry and forwards the obtained Alpha2 identifier to the regulatory sub-system. Note: I dropped the p54 specific regdomain<->alpha2 conversion code for now. But it will be added as soon as there's the common library function is ready. Signed-off-by: Christian Lamparter Signed-off-by: John W. Linville commit e365f16046b72977ec22364215b57af840f0907e Author: Christian Lamparter Date: Fri Dec 26 19:09:34 2008 +0100 p54: prevent upload of wrong firmwares This patch will prevent anyone to upload a firmware which was not designed for his device. There's still a catch: There is no easy way to detect if a firmware is for PCI or for USB (1st Gen), because they all share the same LM86 identifier. Signed-off-by: Christian Lamparter Signed-off-by: John W. Linville commit 6982869d993009c02cefcca98a67b212d0e61c5f Author: Christian Lamparter Date: Fri Dec 26 19:08:31 2008 +0100 p54usb: utilize usb_reset_device for 3887 Sometimes on unload or reboot the 3887 USB devices become stuck. kernel: usbcore: registered new interface driver p54usb kernel: usb 2-10: (p54usb) reset failed! (-110) kernel: p54usb: probe of 2-10:1.0 failed with error -110 [...] and a physical unplug and replug was necessary. However we should be able to do this in software as well, without any user interaction. Signed-off-by: Christian Lamparter Signed-off-by: John W. Linville commit 6b1c7c67603efdf0b39f6056989b0f8194cdc1f3 Author: Michael Buesch Date: Thu Dec 25 00:39:28 2008 +0100 b43/ssb: Add SPROM8 extraction and LP-PHY detection This adds detection code for the LP-PHY and SPROM extraction code for version 8, which is needed by the LP-PHY and newer N-PHY. Signed-off-by: Michael Buesch Signed-off-by: John W. Linville commit bb519bee07eed4fac9921ad658fb1f7ed78defb5 Author: Johannes Berg Date: Wed Dec 24 15:26:40 2008 +0100 b43: detect N PHY revision/radio Does nothing unless you enable the hidden N PHY config. Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit cb33c4126ba9825b047463352d12dc3ed983d320 Author: Senthil Balasubramanian Date: Wed Dec 24 18:03:58 2008 +0530 ath9k: INI update for Atheros AR9280 and AR9285 chipset. Signed-off-by: Senthil Balasubramanian Signed-off-by: John W. Linville commit 92d6128e1766bb7a7b6dc58f012fdf772fdf1100 Author: Johannes Berg Date: Wed Dec 24 12:44:09 2008 +0100 ssb/b43: add new N PHY device This is used on my macbook. N PHY, obviously nothing works yet, but we can detect the chip with this patch. Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit e3c92df08cbf6a0cb60a9c7ce377378383967e07 Author: Vasanthakumar Thiagarajan Date: Wed Dec 24 13:53:11 2008 +0530 mac80211: Fix tx power setting power_level in ieee80211_conf is being used for more than one purpose. It being used as user configured power limit and the final power limit given to the driver. By doing so, except very first time, the tx power limit is taken from min(chan->max_power, local->hw.conf.power_level) which is not what we want. This patch defines a new memeber in ieee80211_conf which is meant only for user configured power limit. Signed-off-by: Vasanthakumar Thiagarajan Signed-off-by: John W. Linville commit a085ff718c8c9f14c44feb337774fadfd982e1a5 Author: Luis R. Rodriguez Date: Tue Dec 23 15:58:51 2008 -0800 ath9k: fix sparse warnings Fix sparse warnings: drivers/net/wireless/ath9k/hw.c:1850:17: warning: symbol 'tmp' shadows an earlier one drivers/net/wireless/ath9k/hw.c:1713:6: originally declared here drivers/net/wireless/ath9k/hw.c:2051:17: warning: symbol 'tmp' shadows an earlier one drivers/net/wireless/ath9k/hw.c:1961:6: originally declared here drivers/net/wireless/ath9k/eeprom.c:195:6: warning: symbol 'ath9k_fill_eeprom' was not declared. Should it be static? drivers/net/wireless/ath9k/eeprom.c:463:5: warning: symbol 'ath9k_check_eeprom' was not declared. Should it be static? drivers/net/wireless/ath9k/eeprom.c:1219:6: warning: symbol 'ath9k_hw_set_def_power_per_rate_table' was not declared. Should it be static? drivers/net/wireless/ath9k/eeprom.c:1510:6: warning: symbol 'ath9k_hw_set_4k_power_per_rate_table' was not declared. Should it be static? drivers/net/wireless/ath9k/eeprom.c:2007:5: warning: symbol 'ath9k_set_txpower' was not declared. Should it be static? drivers/net/wireless/ath9k/eeprom.c:2106:6: warning: symbol 'ath9k_set_addac' was not declared. Should it be static? drivers/net/wireless/ath9k/eeprom.c:2543:6: warning: symbol 'ath9k_eeprom_set_board_values' was not declared. Should it be static? drivers/net/wireless/ath9k/eeprom.c:2606:5: warning: symbol 'ath9k_get_eeprom_antenna_cfg' was not declared. Should it be static? drivers/net/wireless/ath9k/eeprom.c:2622:4: warning: symbol 'ath9k_hw_get_4k_num_ant_config' was not declared. Should it be static? drivers/net/wireless/ath9k/eeprom.c:2628:4: warning: symbol 'ath9k_hw_get_def_num_ant_config' was not declared. Should it be static? drivers/net/wireless/ath9k/eeprom.c:2647:4: warning: symbol 'ath9k_get_num_ant_config' was not declared. Should it be static? drivers/net/wireless/ath9k/eeprom.c:2790:5: warning: symbol 'ath9k_get_eeprom' was not declared. Should it be static? drivers/net/wireless/ath9k/calib.c:962:30: warning: symbol 'iq_cal_multi_sample' was not declared. Should it be static? drivers/net/wireless/ath9k/calib.c:969:30: warning: symbol 'iq_cal_single_sample' was not declared. Should it be static? drivers/net/wireless/ath9k/calib.c:976:30: warning: symbol 'adc_gain_cal_multi_sample' was not declared. Should it be static? drivers/net/wireless/ath9k/calib.c:983:30: warning: symbol 'adc_gain_cal_single_sample' was not declared. Should it be static? drivers/net/wireless/ath9k/calib.c:990:30: warning: symbol 'adc_dc_cal_multi_sample' was not declared. Should it be static? drivers/net/wireless/ath9k/calib.c:997:30: warning: symbol 'adc_dc_cal_single_sample' was not declared. Should it be static? drivers/net/wireless/ath9k/calib.c:1004:30: warning: symbol 'adc_init_dc_cal' was not declared. Should it be static? Signed-off-by: Luis R. Rodriguez Signed-off-by: John W. Linville commit c0d7c7af0a8298a43449d54762e655ab57739539 Author: Luis R. Rodriguez Date: Tue Dec 23 15:58:50 2008 -0800 ath9k: remove superfluous check on changing channel When we try to change the channel in ath9k its because either the configuration indicates we *have* changed channels or HT configuration has changed. In both cases we want to do a reset. Either way mac80211 will inform us when we want to actually change the channel so trust those calls. Although in the patch it may seem as I am doing more code changes I am not, all I am doing is removing the initial branch conditional and shifting the code to the left. Signed-off-by: Luis R. Rodriguez Signed-off-by: John W. Linville commit 0de57d991b82eb64b7a0f4cf406251713ee633cf Author: Luis R. Rodriguez Date: Tue Dec 23 15:58:49 2008 -0800 ath9k: remove ath9k_hw_check_chan() The only check we care about in ath9k_hw_check_chan() is the internal regulatory check so use that. Signed-off-by: Luis R. Rodriguez Signed-off-by: John W. Linville commit 4febf7b8f4f2c7052cffbccba9e5ddf041b41330 Author: Luis R. Rodriguez Date: Tue Dec 23 15:58:48 2008 -0800 ath9k: remove ath9k_hw_chan2wmode() The only left users are for timing for ACK timeout, slotime and CTS timeout. We currently use an array CLOCK_RATE to keep these values per mode and since as only will use A and G we can depend on the band to get the appropriate values. We note that we should be using a different clock rate value for CCK, we can do this in separate patch, currently this is being disregarded and should only affect when we want to change the default ACK/CTS timeout or slot time and stuck with using using 802.11b. Signed-off-by: Luis R. Rodriguez Signed-off-by: John W. Linville commit e56db718468416ce5ff1ba05e7fa5026424befd5 Author: Luis R. Rodriguez Date: Tue Dec 23 15:58:47 2008 -0800 ath9k: remove mode specific default noise floor values The NOISE_FLOOR array we have is mode specific, and the only possible indexed values are A, B and G. The mode routine only can return G or A, so this is band specific. Then since the values for A and G (5ghz or 2ghz) are the same (-96) we simply remove the array and use a static value. If we later determine we want to use special values for HT configurations we can use the new mac80211 conf_is_ht*() helpers. Signed-off-by: Luis R. Rodriguez Signed-off-by: John W. Linville commit 38b33707a1ec77f7b4c92ae41cfe93318014f5bf Author: Luis R. Rodriguez Date: Tue Dec 23 15:58:46 2008 -0800 ath9k: Make ANI CCK and OFDM error triggers band specific The CCK and OFDM ANI error triggers are not mode specific but rather band specific so just make use of the already available band from ieee80211_conf. Signed-off-by: Luis R. Rodriguez Signed-off-by: John W. Linville commit 285256a59d790c6a9afe8ec82804a369d956ac06 Author: Luis R. Rodriguez Date: Tue Dec 23 15:58:45 2008 -0800 mac80211: no need for ht.enabled We can simply use conf_is_ht() check where needed. Signed-off-by: Luis R. Rodriguez Acked-by: Johannes Berg Signed-off-by: John W. Linville commit de27e64e5eb72ff3edcaf5edce2f306ada1f094d Author: Luis R. Rodriguez Date: Tue Dec 23 15:58:44 2008 -0800 iwlwifi: make use of conf_is_ht*() helpers Signed-off-by: Luis R. Rodriguez Acked-by: Johannes Berg Signed-off-by: John W. Linville commit ecf70441a3d53dd96cb1b454060fe39f9c3db301 Author: Luis R. Rodriguez Date: Tue Dec 23 15:58:43 2008 -0800 ath9k: make use of conf_is_ht*() in the rest of the driver Use shiny new conf_is_ht*() helpers, we can later remove ht.enabled if desired. Signed-off-by: Luis R. Rodriguez Signed-off-by: John W. Linville commit c9e27d94f5fc726f88897914025619fbfc18b23c Author: Luis R. Rodriguez Date: Tue Dec 23 15:58:42 2008 -0800 ath9k: use ieee80211_conf on ath9k_hw_iscal_supported() ath9k_hw_iscal_supported() just needs to be aware of your band and if HT20 is being used so lets abandon our internal channel, HT appended values and internal mode values and use ieee80211_conf which already carries this information. This works as calibration is being done for the currently configured channel. Signed-off-by: Luis R. Rodriguez Signed-off-by: John W. Linville commit 76061abbbb39ba4bdf42fe28aa3157df8bb03d38 Author: Luis R. Rodriguez Date: Tue Dec 23 15:58:41 2008 -0800 ath9k: make request to get the noisefloor threshold band specific Lets make the request to get the current noise floor threshold from the EEPROM band specific as it is band specific, not mode specific. This also adds a backpointer on the private channel structure back to the ieee80211_channel structure as this is now needed during ath9k_hw_getnf(). Signed-off-by: Luis R. Rodriguez Signed-off-by: John W. Linville commit ae8d2858c54f52dc4df513a818cc4e1257fd9143 Author: Luis R. Rodriguez Date: Tue Dec 23 15:58:40 2008 -0800 ath9k: consolidate arguments on hw reset HW reset calls pass the same variables or structs which we can obtain easily from ah. Although this also applies during channel changes as we will keep around the ath9k_channel passed as an argument for now. We now also now propagate the hw reset errors down. Signed-off-by: Luis R. Rodriguez Signed-off-by: John W. Linville commit ce111badf5ac387e9eefe1f2bba751f595994cb2 Author: Luis R. Rodriguez Date: Tue Dec 23 15:58:39 2008 -0800 ath9k: Rename ath_setcurmode() to ath_cache_conf_rate() ath_setcurmode() is a bit misleading, all we are doing is caching the rate for the corresponding configuration we are using. Signed-off-by: Luis R. Rodriguez Signed-off-by: John W. Linville commit 96742256aba8c458d49af42610557977245be82d Author: Luis R. Rodriguez Date: Tue Dec 23 15:58:38 2008 -0800 ath9k: remove cache of rate preference when using 11g protection No need to cache when we want to use 2Mbit/s for all protection frames for 802.11g as we can determine that dynamically on ath_buf_set_rate() itself. Signed-off-by: Luis R. Rodriguez Signed-off-by: John W. Linville commit 030bb495c0c34aa74903ab8cf9c35e4f2f0aedea Author: Luis R. Rodriguez Date: Tue Dec 23 15:58:37 2008 -0800 ath9k: use hw->conf on ath_setcurmode() We don't need to use our own mode for setting the the routine tries to do, in fact lets remove ath_chan2mode() now as we can simply use the currently set band and the HT configuration provided by mac80211 through the ieee80211_conf. This works on changing channels as well as the internal ath9k_channel we use is based on the ieee80211_channel in the config. Signed-off-by: Luis R. Rodriguez Signed-off-by: John W. Linville commit 51af3d3fbbe326077a7e245268a7de325de6ecd2 Author: Winkler, Tomas Date: Mon Dec 22 11:31:23 2008 +0800 iwl3945: use rx queue management infrastructure from iwlcore This patch uses rx queue alloc free and reset function from iwlcore. This should fix the regression reported by Kalle Valo. Signed-off-by: Tomas Winkler Signed-off-by: Zhu Yi Signed-off-by: John W. Linville commit e52119c50d6a35506b1c063eeacf7acc40b4e03d Author: Winkler, Tomas Date: Mon Dec 22 11:31:19 2008 +0800 iwl3945: use iwl3945_tx_cmd instead of iwl_tx_cmd The patch replaces iwl_tx_cmd with iwl3945_tx_cmd to complete transitions introduced by "iwlwifi: use iwl_cmd instead of iwl3945_cmd" Signed-off-by: Tomas Winkler Signed-off-by: Zhu Yi Signed-off-by: John W. Linville commit c496294efe6ebc9bd5dd1e0d3cce5d1ad6a1ea2c Author: Samuel Ortiz Date: Mon Dec 22 11:31:18 2008 +0800 iwl3945: switch to the iwl-core send_card_state routine Switch iwl3945 to use iwl-core:send_card_state routine. Signed-off-by: Samuel Ortiz Signed-off-by: Abhijeet Kolekar Signed-off-by: Zhu Yi Signed-off-by: John W. Linville commit 188cf6c73a72be1d8c118580a40d70cd76415eec Author: Samuel Ortiz Date: Mon Dec 22 11:31:16 2008 +0800 iwl3945: sync tx queue data structure with iwlagn We are now using the iwl_tx_queue for iwl3945. To reach that goal, we included the 3945 specific tfd frame structure to iwl_tx_queue. This has no effect on the current iwlagn code. Signed-off-by: Samuel Ortiz Signed-off-by: Abhijeet Kolekar Signed-off-by: Zhu Yi Signed-off-by: John W. Linville commit 42427b4e436bbbf038742ecbb3bf09815f93ed7a Author: Kolekar, Abhijeet Date: Mon Dec 22 11:31:15 2008 +0800 iwl3945: adding utils ops The patch implements iwl_hcmd_utils_ops for 3945. Signed-off-by: Samuel Ortiz Signed-off-by: Abhijeet Kolekar Signed-off-by: Zhu Yi Signed-off-by: John W. Linville commit dbb6654c411e2030ed969ef0c531eb7fda8b27a3 Author: Winkler, Tomas Date: Mon Dec 22 11:31:14 2008 +0800 iwl3945: rearrange 3945 tfd This patch moves 3945 TFD structures to iwl-3945-fh.h. It renames them similarly to AGN naming. This patch also eliminates iwl3945_tx_info and fixes endianity issue in iwl3945_tx_skb and iwl3945_enqueue_hcmd caused by ugly casting. Signed-off-by: Tomas Winkler Signed-off-by: Zhu Yi Signed-off-by: John W. Linville commit 8cd812bcda06645160b0b279e1a125271a73411c Author: Winkler, Tomas Date: Fri Dec 19 10:37:43 2008 +0800 iwl3945: use iwl_rb_status This patch makes use of iwl_rb_status also in 3945. The structure for 3945 is not the same but since only closed_rb_num filed is used in both cases there is no reason to duplicate it. Signed-off-by: Tomas Winkler Signed-off-by: Zhu Yi Signed-off-by: John W. Linville commit cbba18c6e3d1b2610f9a63c4636247af26141686 Author: Kolekar, Abhijeet Date: Fri Dec 19 10:37:42 2008 +0800 iwl3945: use iwl_get_hw_mode Use iwl_get_hw_mode for 3945. Signed-off-by: Abhijeet Kolekar Signed-off-by: Zhu Yi Signed-off-by: John W. Linville commit d552bfb65241a35d48e44ddb0d27e0454f579ab4 Author: Kolekar, Abhijeet Date: Fri Dec 19 10:37:41 2008 +0800 iwl3945: release resources before shutting down Release resource before shutting down and notify upper stack. Signed-off-by: Abhijeet Kolekar Signed-off-by: Zhu Yi Signed-off-by: John W. Linville commit 90a30a021eec15da64a354656cb66987216361eb Author: Kolekar, Abhijeet Date: Fri Dec 19 10:37:40 2008 +0800 iwl3945: simplify iwl3945_pci_probe The patch simplifies iwl3945_pci_probe. It also uses apm_ops for apm init. Signed-off-by: Abhijeet Kolekar Signed-off-by: Zhu Yi Signed-off-by: John W. Linville commit 854682ed2892836d7cff77931a79183c1fc59fef Author: Kolekar, Abhijeet Date: Fri Dec 19 10:37:39 2008 +0800 iwl3945: add set_pwr_src The patch adds 3945 iwl_lib_ops->set_pwr_src to the driver Signed-off-by: Abhijeet Kolekar Signed-off-by: Zhu Yi Signed-off-by: John W. Linville commit 01ec616d8ccbfac41c87dafc0fc0aa4abe13b8f8 Author: Kolekar, Abhijeet Date: Fri Dec 19 10:37:38 2008 +0800 iwl3945: add apm ops The patch adds 3945 iwl_lib_ops->apm_ops to the driver. Signed-off-by: Abhijeet Kolekar Signed-off-by: Zhu Yi Signed-off-by: John W. Linville commit 0164b9b45dbee4a3c4c95f59f9dd538b1e9c2635 Author: Kolekar, Abhijeet Date: Fri Dec 19 10:37:37 2008 +0800 iwl3945: add load ucode op The patch adds 3945 iwl_lib_ops->load_ucode to the driver. Signed-off-by: Abhijeet Kolekar Signed-off-by: Zhu Yi Signed-off-by: John W. Linville commit 775a6e27bfca9d19f3ea6006a7e60a4a54aaf69c Author: Kolekar, Abhijeet Date: Fri Dec 19 10:37:36 2008 +0800 iwl3945: cleanup and remove duplicate code The patch removes the following duplicate structures: iwl3945_is_alive iwl3945_is_ready iwl3945_is_init iwl3945_is_rfkill_sw iwl3945_is_rfkill iwl3945_reset_qos Signed-off-by: Abhijeet Kolekar Signed-off-by: Zhu Yi Signed-off-by: John W. Linville commit df878d8f0156ec2b41da5ae9c70af4a27cb2eb0a Author: Kolekar, Abhijeet Date: Fri Dec 19 10:37:35 2008 +0800 iwl3945: use iwl_mod_params for 3945 Use iwl_mod_params for 3945. Signed-off-by: Abhijeet Kolekar Signed-off-by: Zhu Yi Signed-off-by: John W. Linville commit c2d79b488a33a77d337092c967ce50614edc5d25 Author: Winkler, Tomas Date: Fri Dec 19 10:37:34 2008 +0800 iwlwifi: use iwl_cmd instead of iwl3945_cmd This patch makes use of iwl_cmd instead of iwl3945_cmd and related structures which were just the same. Signed-off-by: Tomas Winkler Signed-off-by: Zhu Yi Signed-off-by: John W. Linville commit 15b1687cb4f45b87ddbe4dfc7759ff5bb69497d2 Author: Winkler, Tomas Date: Fri Dec 19 10:37:33 2008 +0800 iwlwifi: replace IWL_ERROR with IWL_ERR IWL_ERR doesn't use hidden priv pointer. Signed-off-by: Tomas Winkler Signed-off-by: Zhu Yi Signed-off-by: John W. Linville commit 39aadf8c29ad959e823efca15381bea9d0770b1e Author: Winkler, Tomas Date: Fri Dec 19 10:37:32 2008 +0800 iwlwifi: replace IWL_WARNING with IWL_WARN IWL_WARN doesn't use hidden priv pointer. Signed-off-by: Tomas Winkler Signed-off-by: Zhu Yi Signed-off-by: John W. Linville commit 978785a3892b34448446e8c8a17f48454f1bdd6a Author: Tomas Winkler Date: Fri Dec 19 10:37:31 2008 +0800 iwlwifi: clean up printing Use IWL_ macros where possible to unify debug output usage. Define new unconditional printouts IWL_ERR, IWL_WARN, IWL_INFO, and IWL_CRIT which don't use hidden priv pointer. Signed-off-by: Tomas Winkler Signed-off-by: Zhu Yi Signed-off-by: John W. Linville commit 146846aed534aa0eb1fb0a8e6c0394190e5c1ad7 Author: Zhu Yi Date: Fri Dec 19 10:37:30 2008 +0800 iwlwifi: add more comments to IWL_DL_xx This adds more comments to IWL_DL_xx macros. Signed-off-by: Zhu Yi Signed-off-by: John W. Linville commit 5d49f498a29360592dea4693724fef242278e0d3 Author: Abhijeet Kolekar Date: Fri Dec 19 10:37:29 2008 +0800 iwl3945: use iwl-io.h and delete iwl-3945-io.h The patch deletes iwl-3945-io.h and uses iwl-io.h functions. Signed-off-by: Abhijeet Kolekar Signed-off-by: Zhu Yi Signed-off-by: John W. Linville commit 4a8a43222db6f04c88def2160a95f978f704b515 Author: Abhijeet Kolekar Date: Fri Dec 19 10:37:28 2008 +0800 iwl3945: replaces iwl3945_priv with iwl_priv The patch replaces iwl3945_priv to iwl_priv. It adds 3945 specific data members to iwl_priv. Signed-off-by: Abhijeet Kolekar Signed-off-by: Zhu Yi Signed-off-by: John W. Linville commit f2c7e52100545e54af064fe0345d141fdcf2d243 Author: Abhijeet Kolekar Date: Fri Dec 19 10:37:27 2008 +0800 iwl3945: rename iwl3945_priv variables The patch renames iwl3945 specific variables in iwl3945_priv structure. iwl3945_priv structure differs with iwl_priv structure with these variables. Goal of this patch is to make transition from iwl3945_priv to iwl_priv smoothly. Signed-off-by: Abhijeet Kolekar Signed-off-by: Zhu Yi Signed-off-by: John W. Linville commit 3832ec9dc919a0994d713390eb4fb3c7e7500b94 Author: Abhijeet Kolekar Date: Fri Dec 19 10:37:26 2008 +0800 iwl3945: use iwl_hw_params in iwl3945_priv The patch makes changed necessary to use iwl_hw_params to replace iwl3945_driver_hw_info. Signed-off-by: Abhijeet Kolekar Signed-off-by: Zhu Yi Signed-off-by: John W. Linville commit cc2f362c360af35b74530f3c896511b8dbd0264c Author: Abhijeet Kolekar Date: Fri Dec 19 10:37:25 2008 +0800 iwl3945: use iwl_rx_queue in iwl3945 The patch replaces iwl3945_rx_queue with iwl_rx_queue. Signed-off-by: Abhijeet Kolekar Signed-off-by: Zhu Yi Signed-off-by: John W. Linville commit 6100b58806e6307f959af79334ac553825400242 Author: Abhijeet Kolekar Date: Fri Dec 19 10:37:24 2008 +0800 iwl3945: use iwl_rx_mem_buffer The patch replaces iwl3945_rx_mem_buffer with iwl_rx_mem_buffer. Signed-off-by: Abhijeet Kolekar Signed-off-by: Zhu Yi Signed-off-by: John W. Linville commit d2bf55839ad77486a02ec32f8411f432621da110 Author: Wu Fengguang Date: Fri Dec 19 10:37:23 2008 +0800 iwlwifi: beautify code This patch beautifies macros in iwl-debug.h. Signed-off-by: Wu Fengguang Signed-off-by: Zhu Yi Signed-off-by: John W. Linville commit b5323d36637909481318e7dfcba9f3e3b9368881 Author: Kolekar, Abhijeet Date: Fri Dec 19 10:37:22 2008 +0800 iwl3945: replace iwl3945_broadcast_addr with iwl_bcast_addr The patch replaces iwl3945_broadcast_addr with iwl_bcast_addr for 3945. Signed-off-by: Abhijeet Kolekar Signed-off-by: Zhu Yi Signed-off-by: John W. Linville commit a78fe754e0e5a77ca968ee0c348f027e84659d8b Author: Kolekar, Abhijeet Date: Fri Dec 19 10:37:21 2008 +0800 iwl3945: remove duplicate structures from iwl-3945.h The patch renames and deletes duplicate structure from iwl-3945.h. The following structures are renamed with iwlwifi counterparts: 1) iwl3945_ac_qos 2) iwl3945_ucode 3) iwl3945_qos_capabity Signed-off-by: Abhijeet Kolekar Signed-off-by: Zhu Yi Signed-off-by: John W. Linville commit 85d4149533e07e5ca4c94010a52fe5496d998611 Author: Kolekar, Abhijeet Date: Fri Dec 19 10:37:20 2008 +0800 iwl3945: move structures from iwl-3945.h to iwl-dev.h The patch moves few structres from iwl-3945.h to iwl-dev.h. Signed-off-by: Abhijeet Kolekar Signed-off-by: Zhu Yi Signed-off-by: John W. Linville commit c0f20d91417bc8a4b54e1917a45f8fd4cf9f2991 Author: Kolekar, Abhijeet Date: Fri Dec 19 10:37:19 2008 +0800 iwl3945: replace iwl_3945_cfg with iwl_cfg The patch replaces iwl_3945_cfg with iwl_cfg for 3945. Signed-off-by: Abhijeet Kolekar Signed-off-by: Zhu Yi Signed-off-by: John W. Linville commit 5747d47fb469613901e76a1380daf14901e76092 Author: Kolekar, Abhijeet Date: Fri Dec 19 10:37:18 2008 +0800 iwl3945: include iwl-core.h Use iwl-core.h instead of iwl-3945-core.h. Signed-off-by: Abhijeet Kolekar Signed-off-by: Zhu Yi Signed-off-by: John W. Linville commit eaa686c37d12aac37f955eb7643a62370c84ee12 Author: Kolekar, Abhijeet Date: Fri Dec 19 10:37:17 2008 +0800 iwl3945: Change IWLWIFI_VERSION constant name Change IWLWIFI_VERSION to IWL3945_VERSION. Signed-off-by: Abhijeet Kolekar Signed-off-by: Zhu Yi Signed-off-by: John W. Linville commit 6d6498947da40485f691bcbafdc4e9b3280a9b3b Author: Winkler, Tomas Date: Fri Dec 19 10:37:16 2008 +0800 iwlwifi: emliminate iwl3945_mac_get_stats mac80211 handler This patch removes empty iwl3945_mac_get_stats mac80211 handler. Signed-off-by: Tomas Winkler Signed-off-by: Zhu Yi Signed-off-by: John W. Linville commit d20b3c65f2a3e18ea86542e6ca4fe1c6d16c91df Author: Samuel Ortiz Date: Fri Dec 19 10:37:15 2008 +0800 iwl3945: iwl3945_queue and iwl3945_channel_info replacement This patch replaces the queue and channel info 3945 structures with the iwl ones. The initial goal was to replace the channel info structure. Once we do that, and then include iwl-dev.h instead of iwl-3945.h, we still get build errors due to several routines and macro redefinitions. This is why this patch also includes: - TFD39_MAX_PAYLOAD definition for 3945. - CMD_SIZE, CMD_HUGE, CMD_SKB duplication removal. - iwl3945_queue replacement in order to also get rid of the duplicated get_cmd_index routine. Getting rid of any of those needs the iwl-dev.h inclusion which then creates build errors due to definitions duplication. This is why we include all those in the same patch. Signed-off-by: Samuel Ortiz Signed-off-by: Abhijeet Kolekar Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit 1125eff3ae26b2e39c6bf940b5e0b8774ebd2896 Author: Samuel Ortiz Date: Fri Dec 19 10:37:14 2008 +0800 iwl3945: Remove power related definitions from 3945 code Most of the power (not TX power, but power management) structures and definitions are duplicated accross iwl-power.h and iwl-3945.h. We should try to only use the iwl header. Signed-off-by: Samuel Ortiz Acked-by: Abhijeet Kolekar Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit b5b83239e7a3540ff31db24249b90f9f6d7f5be8 Author: Samuel Ortiz Date: Fri Dec 19 10:37:13 2008 +0800 iwl3945: Getting rid of iwl-3945-led.h The duplicated LED definitions prevent one from including iwl-dev.h from the 3945 specific C files. Moreover, we are sharing many definitions between iwl-3945-led.h and iwl-led.h, so let's just use the iwl one. Note that this file will get more cleanups once we share a common iwl_priv structure. Signed-off-by: Samuel Ortiz Acked-by: Abhijeet Kolekar Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit d9829a67f953379b5cab6b78ae8f7a879a591eb1 Author: Samuel Ortiz Date: Fri Dec 19 10:37:12 2008 +0800 iwl3945: Use iwl-agn-rs.h rates definitions. A lot of rate relates definition are shared between iwl-3945-rs.h and iwl-agn-rs.h. Let's just use the agn version, and add the 3945 specific constants there. Signed-off-by: Samuel Ortiz Signed-off-by: Abhijeet Kolekar Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit 250bdd216c95907760b3fcc3aac1ed436d21c66c Author: Samuel Ortiz Date: Fri Dec 19 10:37:11 2008 +0800 iwl3945: Have consistant and not redefined HW constants SRAM addresses are different for 3945, 4065, and 5000, let's give them different names. Also, the RSSI_OFFSET is different for 3945 and 4965, thus they should be named differently. Signed-off-by: Samuel Ortiz Signed-off-by: Abhijeet Kolekar Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit 0f741d9992ad043026218677c06042ac9f834f8f Author: Samuel Ortiz Date: Fri Dec 19 10:37:10 2008 +0800 iwl3945: Getting rid of iwl3945_eeprom_channel The corresponding iwl structure is identical. Signed-off-by: Samuel Ortiz Signed-off-by: Abhijeet Kolekar