summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2010-06-28mac80211: fix the for_each_sta_info macromaster-2010-06-28Felix Fietkau
Because of an ambiguity in the for_each_sta_info macro, it can currently only be used if the third parameter is set to 'sta'. Fix this by renaming the parameter to '_sta'. Signed-off-by: Felix Fietkau <nbd@openwrt.org> Signed-off-by: John W. Linville <linville@tuxdriver.com>
2010-06-28ath9k: fix retry count for A-MPDU rate control status reportsFelix Fietkau
The 'bf_retries' field of the ath_buf structure was used for both software retries (AMPDU subframes) and hardware retries (legacy frames). This led to a wrong retry count being reported for the A-MPDU rate control stats. This patch changes the code to no longer use bf_retries for reporting retry counts, but instead always using the real on-chip retry count from the ath_tx_status. Additionally, if the first subframe of an A-MPDU was not acked, the tx status report is submitted along with the first acked subframe, which may not contain the correct rates in the tx info. This is easily corrected by saving the tx rate info before looping over subframes, and then copying it back once the A-MPDU status report is submitted. In my tests this change improves throughput visibly. Signed-off-by: Felix Fietkau <nbd@openwrt.org> Reported-by: Björn Smedman <bjorn.smedman@venatech.se> Cc: stable@kernel.org Signed-off-by: John W. Linville <linville@tuxdriver.com>
2010-06-28ath5k: fix antenna div gc for <= AR5K_SREV_PHY_2413Bruno Randolf
In commit 39d5b2c83ca8904b6826a0713263a4e5a9c0730a "ath5k: update AR5K_PHY_RESTART_DIV_GC values to match masks" i introduced a regression on PHY chips older than AR5K_SREV_PHY_5413, which caused signal values to be about 10dB less that before. This patch reverts the AR5K_PHY_RESTART_DIV_GC values to the same values which were effectively used before (without the bitmask mistake). This brings signal levels back to normal on these PHY chips. Signed-off-by: Bruno Randolf <br1@einfach.org> Signed-off-by: John W. Linville <linville@tuxdriver.com>
2010-06-28b43: Add SDIO_DEVICE() for EW-CG1102GCMagnus Damm
This patch enables the EW-CG1102GC SDIO card in the b43 driver. b43-sdio mmc0:0001:1: Chip ID 14e4:4318 ssb: Core 0 found: ChipCommon (cc 0x800, rev 0x0D, vendor 0x4243) ssb: Core 1 found: IEEE 802.11 (cc 0x812, rev 0x09, vendor 0x4243) ssb: Core 2 found: PCI (cc 0x804, rev 0x0C, vendor 0x4243) ssb: Core 3 found: PCMCIA (cc 0x80D, rev 0x07, vendor 0x4243) b43-phy0: Broadcom 4318 WLAN found (core revision 9) b43-phy0 debug: Found PHY: Analog 3, Type 2, Revision 7 b43-phy0 debug: Found Radio: Manuf 0x17F, Version 0x2050, Revision 8 Tested with openfwwf-5.2 using a SuperH SDHI host controller. Signed-off-by: Magnus Damm <damm@opensource.se> Signed-off-by: John W. Linville <linville@tuxdriver.com>
2010-06-28mac80211: use netif_receive_skb in ieee80211_tx_status callpathJohn W. Linville
This avoids the extra queueing from calling netif_rx. Signed-off-by: John W. Linville <linville@tuxdriver.com>
2010-06-28mac80211: use netif_receive_skb in ieee80211_rx callpathJohn W. Linville
This avoids the extra queueing from calling netif_rx. Signed-off-by: John W. Linville <linville@tuxdriver.com>
2010-06-25iwlwifi: add disable rf calibration support for 6000g2a and 6000g2bWey-Yi Guy
Radio calibration (chain noise and sensitivity) should be allowed to be disabled from debugfs if compiled with CONFIG_IWLWIFI_DEBUGFS. For both 6000g2a and 6000g2b, the parameters are missing in "cfg", which cause user can not disable the radio calibration manually; add the support to allow the operation. Signed-off-by: Wey-Yi Guy <wey-yi.w.guy@intel.com> Signed-off-by: Reinette Chatre <reinette.chatre@intel.com>
2010-06-25iwlagn: reduce severity of disconnected antennas warningReinette Chatre
This message is encountered regularly and we need to take a closer look at the circumstances under which it is printed before presenting errors to users. Signed-off-by: Reinette Chatre <reinette.chatre@intel.com>
2010-06-25iwlwifi: turn on RTS/CTS after aggregation become operationalWey-Yi Guy
If RTS/CTS protection is needed for HT, wait until get operational notification from mac80211, then inform uCode to switch to RTS/CTS through RXON command. Signed-off-by: Wey-Yi Guy <wey-yi.w.guy@intel.com> Signed-off-by: Reinette Chatre <reinette.chatre@intel.com>
2010-06-25iwlwifi: read rfkill during resumeJohannes Berg
When resuming from hibernate or suspend, the status of the rfkill switch isn't known since it might have been toggled while the system was asleep. Therefore, we need to read out the status at resume time to make sure the system knows about an up-to-date status. Reported-by: Mark Tung <mark.y.tung@intel.com> Tested-by: Mark Tung <mark.y.tung@intel.com> Signed-off-by: Johannes Berg <johannes.berg@intel.com> Signed-off-by: Reinette Chatre <reinette.chatre@intel.com>
2010-06-25iwlwifi: update LQ for bcast station on channel changeDaniel Halperin
The rate table in the bcast LQ is computed only when the station is allocated, and chooses the lowest rate for the band. Because of when this occurs, this is the 2.4 GHz band and uses the 0x420a (CCK, 1 Mbps) rate. In 5 GHz beaconing mode, this rate will prevent beacons from being sent and any other packets from being received. We can fix this by re-initializing the bcast station's LQ command when the channel is changed. Signed-off-by: Daniel Halperin <dhalperi@cs.washington.edu> Signed-off-by: Reinette Chatre <reinette.chatre@intel.com>
2010-06-25iwlwifi: add a mechanism to disable plcp error checkingWey-Yi Guy
For some devices, especially the upcoming new devices, the plcp error rate is different. Before the correct error rate can be determine, also for the debugging purpose; add the mechanism to disable plcp error checking which cause radio reset happen. Signed-off-by: Wey-Yi Guy <wey-yi.w.guy@intel.com> Signed-off-by: Reinette Chatre <reinette.chatre@intel.com>
2010-06-25iwlwifi: enable DC calibration based on config parameterWey-Yi Guy
Different devices have different calibration requirement, some need DC calibration and some don't; make it a cfg parameter for easy management. Signed-off-by: Wey-Yi Guy <wey-yi.w.guy@intel.com> Signed-off-by: Reinette Chatre <reinette.chatre@intel.com>
2010-06-25iwlwifi: name change from signal protection flagWey-Yi Guy
This bit need to be set for both RTS/CTS or CTS-to-self protection, if CTS-to-self is used, then uCode will check the RXON_FLG_SELF_CTS_EN status. Change the name from TX_CMD_FLG_RTS_CTS_MSK to TX_CMD_FLAG_PROT_REQUIRE_MSK to match the behavior of the bit setting. Also update comments to reflect which hardware uses which of the TX command flags. Signed-off-by: Wey-Yi Guy <wey-yi.w.guy@intel.com> Signed-off-by: Reinette Chatre <reinette.chatre@intel.com>
2010-06-25Merge branch 'wireless-2.6' into wireless-next-2.6Reinette Chatre
2010-06-25iwlwifi: set TX_CMD_FLAG_PROT_REQUIRE_MSK in tx_flagWey-Yi Guy
When building tx command, always set TX_CMD_FLAG_PROT_REQUIRE_MSK for 5000 series and up. Without setting this bit the firmware will not examine the RTS/CTS setting and thus not send traffic with the appropriate protection. RTS/CTS is is required for HT traffic in a noisy environment where, without this setting, connections will stall on some hardware as documented in the patch that initially attempted to address this: commit 1152dcc28c66a74b5b3f1a3ede0aa6729bfd48e4 Author: Wey-Yi Guy <wey-yi.w.guy@intel.com> Date: Fri Jan 15 13:42:58 2010 -0800 iwlwifi: Fix throughput stall issue in HT mode for 5000 Similar to 6000 and 1000 series, RTS/CTS is the recommended protection mechanism for 5000 series in HT mode based on the HW design. Using RTS/CTS will better protect the inner exchange from interference, especially in highly-congested environment, it also prevent uCode encounter TX FIFO underrun and other HT mode related performance issues. For 3945 and 4965, different flags are used for RTS/CTS or CTS-to-Self protection. Signed-off-by: Wey-Yi Guy <wey-yi.w.guy@intel.com> Signed-off-by: Reinette Chatre <reinette.chatre@intel.com>
2010-06-25iwlwifi: fix multicastJohannes Berg
commit 3474ad635db371b0d8d0ee40086f15d223d5b6a4 Author: Johannes Berg <johannes.berg@intel.com> Date: Thu Apr 29 04:43:05 2010 -0700 iwlwifi: apply filter flags directly broke multicast. The reason, it turns out, is that the code previously checked if ALLMULTI _changed_, which the new code no longer did, and normally it _never_ changes. Had somebody changed it manually, the code prior to my patch there would have been broken already. The reason is that we always, unconditionally, ask the device to pass up all multicast frames, but the new code made it depend on ALLMULTI which broke it since now we'd pass up multicast frames depending on the default filter in the device, which isn't necessarily what we want (since we don't program it right now). Fix this by simply not checking allmulti as we have allmulti behaviour enabled already anyway. Reported-by: Maxim Levitsky <maximlevitsky@gmail.com> Tested-by: Maxim Levitsky <maximlevitsky@gmail.com> Signed-off-by: Johannes Berg <johannes.berg@intel.com>
2010-06-24ath9k: Wakeup the chip in an appropriate place in ath_paprd_calibrate()master-2010-06-24Vasanthakumar Thiagarajan
Move ath9k_ps_wakeup() down just before accessing hw registers. Signed-off-by: Vasanthakumar Thiagarajan <vasanth@atheros.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
2010-06-24ath9k: Remove unused paprd_txokVasanthakumar Thiagarajan
Signed-off-by: Vasanthakumar Thiagarajan <vasanth@atheros.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
2010-06-24ath9k: Fix bug in paprdVasanthakumar Thiagarajan
It is possbile that the transmission of paprd test frame might not get completed in 100ms if tx is stuck. Freeing this skb upon timeout in ath_paprd_calibrate() will result in accessing already freed memory when the associated pending buffer is drained in txq. This patch fixes this issue. Signed-off-by: Vasanthakumar Thiagarajan <vasanth@atheros.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
2010-06-24rt2500usb: fallback to SW encryption for TKIP+AESOndrej Zary
HW crypto in rt2500usb does not seem to support keys with different ciphers, which breaks TKIP+AES mode. Fall back to software encryption to fix it. This should fix long-standing problems with rt2500usb and WPA, such as: http://rt2x00.serialmonkey.com/phpBB/viewtopic.php?f=4&t=4834 https://bugzilla.redhat.com/show_bug.cgi?id=484888 Also tested that it does not break WEP, TKIP-only and AES-only modes. Signed-off-by: Ondrej Zary <linux@rainbow-software.org> Acked-by: Gertjan van Wingerde <gwingerde@gmail.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
2010-06-24nl80211: Add option to adjust transmit powerJuuso Oikarinen
This patch adds transmit power setting type and transmit power level attributes to NL80211_CMD_SET_WIPHY in order to facilitate adjusting of the transmit power level of the device. The added attributes allow selection of automatic, limited or fixed transmit power level, with the level definable in signed mBm format. Signed-off-by: Juuso Oikarinen <juuso.oikarinen@nokia.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
2010-06-24cfg80211/mac80211: Update set_tx_power to use mBm instead of dBm unitsJuuso Oikarinen
In preparation for a TX power setting interface in the nl80211, change the .set_tx_power function to use mBm units instead of dBm for greater accuracy and smaller power levels. Also, already in advance move the tx_power_setting enumeration to nl80211. This change affects the .tx_set_power function prototype. As a result, the corresponding changes are needed to modules using it. These are mac80211, iwmc3200wifi and rndis_wlan. Cc: Samuel Ortiz <samuel.ortiz@intel.com> Cc: Jussi Kivilinna <jussi.kivilinna@mbnet.fi> Signed-off-by: Juuso Oikarinen <juuso.oikarinen@nokia.com> Acked-by: Samuel Ortiz <samuel.ortiz@intel.com> Acked-by: Jussi Kivilinna <jussi.kivilinna@mbnet.fi> Signed-off-by: John W. Linville <linville@tuxdriver.com>
2010-06-24at76c50x-usb: Extract bssid from authentication frameSebastian Smolorz
The driver at76c50x-usb is unable to authenticate with an AP since kernel 2.6.31 for the following reason: The join command of the firmware needs to be sent with the right bssid before any transmission can start. Before kernel 2.6.31 mac80211 informed its drivers about the changing bssid early enough for at76c50x-usb but during the development of 2.6.31 mac80211's behaviour changed. Now a new bssid is set after the association. This patch changes the tx routine of the driver at76c50x-usb in such a way that a new bssid is extracted from an authentication frame and the join command with that bssid is processed. Signed-off-by: Sebastian Smolorz <sesmo@gmx.net> Signed-off-by: John W. Linville <linville@tuxdriver.com>
2010-06-24at76c50x-usb: Move function at76_join() several lines upSebastian Smolorz
This patch does a simple code move of at76_join() so that at76_mac80211_tx() follows at76_join() in the driver's source file. This is a preparatory patch for the following patch where we need to call at76_join() from at76_mac80211_tx() in order to authenticate successfully with a bssid. Signed-off-by: Sebastian Smolorz <sesmo@gmx.net> Signed-off-by: John W. Linville <linville@tuxdriver.com>
2010-06-24mac80211: avoid scheduling while atomic in mesh_rx_plink_frameJohn W. Linville
While mesh_rx_plink_frame holds sta->lock... mesh_rx_plink_frame -> mesh_plink_inc_estab_count -> ieee80211_bss_info_change_notify ...but ieee80211_bss_info_change_notify is allowed to sleep. A driver taking advantage of that allowance can cause a scheduling while atomic bug. Similar paths exist for mesh_plink_dec_estab_count, so work around those as well. http://bugzilla.kernel.org/show_bug.cgi?id=16099 Also, correct a minor kerneldoc comment error (mismatched function names). Signed-off-by: John W. Linville <linville@tuxdriver.com> Cc: stable@kernel.org
2010-06-24minstrel_ht: move minstrel_mcs_groups declaration to header fileJohn W. Linville
Signed-off-by: John W. Linville <linville@tuxdriver.com> Acked-by: Felix Fietkau <nbd@openwrt.org>
2010-06-24wireless: mark reg_mutex as staticJohn W. Linville
Signed-off-by: John W. Linville <linville@tuxdriver.com>
2010-06-24minstrel_ht: make *idx unsigned in minstrel_downgrade_rateJohn W. Linville
net/mac80211/rc80211_minstrel_ht.c:440:46: warning: incorrect type in argument 2 (different signedness) net/mac80211/rc80211_minstrel_ht.c:440:46: expected int *idx net/mac80211/rc80211_minstrel_ht.c:440:46: got unsigned int *<noident> net/mac80211/rc80211_minstrel_ht.c:446:46: warning: incorrect type in argument 2 (different signedness) net/mac80211/rc80211_minstrel_ht.c:446:46: expected int *idx net/mac80211/rc80211_minstrel_ht.c:446:46: got unsigned int *<noident> Signed-off-by: John W. Linville <linville@tuxdriver.com> Acked-by: Felix Fietkau <nbd@openwrt.org>
2010-06-24mac80211: don't shadow mgmt variable in ieee80211_rx_h_actionJohn W. Linville
net/mac80211/rx.c:2059:39: warning: symbol 'mgmt' shadows an earlier one net/mac80211/rx.c:1916:31: originally declared here Signed-off-by: John W. Linville <linville@tuxdriver.com>
2010-06-24rtl8180: mark rtl8180_beacon_work staticJohn W. Linville
Signed-off-by: John W. Linville <linville@tuxdriver.com>
2010-06-23ath9k: Fix bug in starting aniVasanthakumar Thiagarajan
There are few places where ANI is started without checking if it is right to start. This might lead to a case where ani timer would be left undeleted and cause improper memory acccess during module unload. This bug is clearly exposed with paprd support where the driver detects tx hang and does a chip reset. During this reset ani is (re)started without checking if it needs to be started. This would leave a timer scheduled even after all the resources are freed and cause a panic. This patch introduces a bit in sc_flags to indicate if ani needs to be started in sw_scan_start() and ath_reset(). This would fix the following panic. This issue is easily seen with ar9003 + paprd. BUG: unable to handle kernel paging request at 0000000000003f38 [<ffffffff81075391>] ? __queue_work+0x41/0x50 [<ffffffff8106afaa>] run_timer_softirq+0x17a/0x370 [<ffffffff81088be8>] ? tick_dev_program_event+0x48/0x110 [<ffffffff81061f69>] __do_softirq+0xb9/0x1f0 [<ffffffff810ba060>] ? handle_IRQ_event+0x50/0x160 [<ffffffff8100af5c>] call_softirq+0x1c/0x30 [<ffffffff8100c9f5>] do_softirq+0x65/0xa0 [<ffffffff81061e25>] irq_exit+0x85/0x90 [<ffffffff8155e095>] do_IRQ+0x75/0xf0 [<ffffffff815570d3>] ret_from_intr+0x0/0x11 <EOI> [<ffffffff812fd67b>] ? acpi_idle_enter_simple+0xe4/0x119 [<ffffffff812fd674>] ? acpi_idle_enter_simple+0xdd/0x119 [<ffffffff81441c87>] cpuidle_idle_call+0xa7/0x140 [<ffffffff81008da3>] cpu_idle+0xb3/0x110 [<ffffffff81550722>] start_secondary+0x1ee/0x1f5 Signed-off-by: Vasanthakumar Thiagarajan <vasanth@atheros.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
2010-06-23ath9k: declare MODULE_FIRMWARE for ath9k_htcmaster-2010-06-23John W. Linville
Signed-off-by: John W. Linville <linville@tuxdriver.com>
2010-06-23libertas: mark lbs_ret_802_11d_domain_info staticJohn W. Linville
Probably little risk of namespace polution, but good practice... :-) Signed-off-by: John W. Linville <linville@tuxdriver.com>
2010-06-23ath9k: Add a module parameter to disable led blinking.Vivek Natarajan
Some vendors require the LED to be ON always irrespective of any radio activity. Introducing a module parameter to disable blinking, so that one can choose between always on or led blink during activity. Signed-off-by: Vivek Natarajan <vnatarajan@atheros.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
2010-06-23ath9k_hw: add an extra delay when reseting AR_RTC_RESETLuis R. Rodriguez
Without this we could start trying to work with the device without it being fully functional yet and loose some packets upon resume. Cc: Aeolus Yang <aeolus.yang@atheros.com> Cc: Madhan Jaganathan <madhan.jaganathan@atheros.com> signed-off-by: Luis R. Rodriguez <lrodriguez@atheros.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
2010-06-23ath9k_hw: dynamically choose the SERDES array for low powerLuis R. Rodriguez
The array we use will vary depending on whether or not we are to go to lower power or not. The default values (iniPcieSerdes) are a copy or what go into the registers through the INI files. Cc: Aeolus Yang <aeolus.yang@atheros.com> Cc: Madhan Jaganathan <madhan.jaganathan@atheros.com> Signed-off-by: Luis R. Rodriguez <lrodriguez@atheros.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
2010-06-23ath9k_hw: add pcieSerDesWrite to disable SERDES ASPM tweaksLuis R. Rodriguez
This can be useful during testing of new ASPM tweaks which often have to be done through the PCI Serializer-Deserializer (SERDES). Cc: Aeolus Yang <aeolus.yang@atheros.com> Cc: Madhan Jaganathan <madhan.jaganathan@atheros.com> Signed-off-by: Luis R. Rodriguez <lrodriguez@atheros.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
2010-06-23ath9k_hw: move LowPower array writes to ar9003_hw_configpcipowersave()Luis R. Rodriguez
The LowPower array writes disables the PLL when ASPM is enabled. The host driver makes quite a few calls to ath9k_hw_configpcipowersave() and these same calls also need to ensure the PLL is off when they issue it. Cc: Aeolus Yang <aeolus.yang@atheros.com> Cc: Madhan Jaganathan <madhan.jaganathan@atheros.com> Signed-off-by: Luis R. Rodriguez <lrodriguez@atheros.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
2010-06-23ath9k_hw: fix ASPM setting for AR9003Luis R. Rodriguez
The AR_WA register should not be read when in sleep state so add a variable we can stash its value into for when we need to set it. Additionally the AR_WA_D3_TO_L1_DISABLE_REAL (bit 16) needs to be removed. Cc: Aeolus Yang <aeolus.yang@atheros.com> Cc: Madhan Jaganathan <madhan.jaganathan@atheros.com> signed-off-by: Luis R. Rodriguez <lrodriguez@atheros.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
2010-06-23Libertas: Added 11d support using cfg80211Kiran Divekar
Added 11d support for libertas driver using cfg80211. This is based on Holger Shurig's initial work to add cfg80211 support libertas. (https://patchwork.kernel.org/patch/64286/) Please let us know, if there are any improvements comments. Code is added to send 11d enable command to firmware while initialisation and pass 11d specific information to firmware when notifier handler is called by cfg80211. Signed-off-by: Amitkumar Karwar <akarwar@marvell.com> Signed-off-by: Kiran Divekar <dkiran@marvell.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
2010-06-23Libertas: fix WARN_ON issues in cfg80211 supportKiran Divekar
In following scenarios WARN_ON() in cfg80211 code was triggered. a) Driver unload or card removal. b) Disconnect from infra network c) Adhoc start/join d) Adhoc stop Added following fixes to avoid WARN_ON() in cfg80211 code. a) Ensured that cfg80211_disconnected() function defined in cfg80211 code will be called only in infra mode. b) Solved timing issue by moving cfg80211_disconnected() call inside lbs_cfg_disconnect(). c) Updated "wdev->ssid" in driver code after Adhoc join/start d) Removed unnecessory cfg80211_disconnected() call in lbs_remove_card. Signed-off-by: Amitkumar Karwar <akarwar@marvell.com> Signed-off-by: Kiran Divekar <dkiran@marvell.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
2010-06-23Libertas: cfg80211 supportKiran Divekar
Holger Schurig's patch (https://patchwork.kernel.org/patch/64286/) is rebased to latest wireless-testing tree. (Includes patches from me originally posted as "libertas: fix build error due to undefined symbol" and "libertas: unmangle capability value". -- JWL) Signed-off-by: Amitkumar Karwar <akarwar@marvell.com> Signed-off-by: Kiran Divekar <dkiran@marvell.com> Tested-by: Amitkumar Karwar <akarwar@marvell.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
2010-06-21mac80211: Add interface for driver to temporarily disable dynamic psmaster-2010-06-21Juuso Oikarinen
This mechanism introduced in this patch applies (at least) for hardware designs using a single shared antenna for both WLAN and BT. In these designs, the antenna must be toggled between WLAN and BT. In those hardware, managing WLAN co-existence with Bluetooth requires WLAN full power save whenever there is Bluetooth activity in order for WLAN to be able to periodically relinquish the antenna to be used for BT. This is because BT can only access the shared antenna when WLAN is idle or asleep. Some hardware, for instance the wl1271, are able to indicate to the host whenever there is BT traffic. In essence, the hardware will send an indication to the host whenever there is, for example, SCO traffic or A2DP traffic, and will send another indication when the traffic is over. The hardware gets information of Bluetooth traffic via hardware co-existence control lines - these lines are used to negotiate the shared antenna ownership. The hardware will give the antenna to BT whenever WLAN is sleeping. This patch adds the interface to mac80211 to facilitate temporarily disabling of dynamic power save as per request of the WLAN driver. This interface will immediately force WLAN to full powersave, hence allowing BT coexistence as described above. In these kind of shared antenna desings, when WLAN powersave is fully disabled, Bluetooth will not work simultaneously with WLAN at all. This patch does not address that problem. This interface will not change PSM state, so if PSM is disabled it will remain so. Solving this problem requires knowledge about BT state, and is best done in user-space. Signed-off-by: Juuso Oikarinen <juuso.oikarinen@nokia.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
2010-06-21mac80211: Fix compile warning in scan.c.Gertjan van Wingerde
Fix the following compile warning: CC [M] net/mac80211/scan.o net/mac80211/scan.c: In function 'ieee80211_request_internal_scan': net/mac80211/scan.c:749:23: warning: comparison between 'enum nl80211_band' and 'enum ieee80211_band' caused by the local variable band not being of the proper 'ieee80211_band' type. Signed-off-by: Gertjan van Wingerde <gwingerde@gmail.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
2010-06-21b43: Clarify logged message after fatal DMA error and switch to PIO modeLarry Finger
The message following fatal DMA errors fails to indicate properly that the driver has switched to PIO mode. Signed-off-by: Larry Finger <Larry.Finger@wfinger.net> Signed-off-by: John W. Linville <linville@tuxdriver.com>
2010-06-21iwlwifi: remove non-exist referenceWey-Yi Guy
Remove the reference to non-exist function in iwlcore Signed-off-by: Wey-Yi Guy <wey-yi.w.guy@intel.com> Signed-off-by: Reinette Chatre <reinette.chatre@intel.com>
2010-06-21iwlwifi: code cleanup to remove un-necessary "goto"Wey-Yi Guy
Break out of loop and log the error message when encounter error; this is better approach than using "goto". Signed-off-by: Wey-Yi Guy <wey-yi.w.guy@intel.com> Signed-off-by: Reinette Chatre <reinette.chatre@intel.com>
2010-06-21iwlwifi: move calibration from iwlcore to iwlagnWey-Yi Guy
All the calibrations are "agn" only functions, move from iwlcore to iwlagn. Signed-off-by: Wey-Yi Guy <wey-yi.w.guy@intel.com> Signed-off-by: Reinette Chatre <reinette.chatre@intel.com>
2010-06-21iwlwifi: move _agn statistics related structureWey-Yi Guy
agn and 3945 has different statistics_notif data structure; since 3945 has it statistics_notif data structure inside the _3945 portion of iwl_priv, it make sense to move the agn statistics_notif into _agn portion. Signed-off-by: Wey-Yi Guy <wey-yi.w.guy@intel.com> Signed-off-by: Reinette Chatre <reinette.chatre@intel.com>