aboutsummaryrefslogtreecommitdiff
path: root/drivers/net/wireless
AgeCommit message (Collapse)AuthorFilesLines
2013-08-05ath9k: Add a HW capability for WLAN/BT RX diversitySujith Manoharan4-9/+28
Make use of this capability to restrict the usage of the debugfs file and modparam using which this feature can be enabled. Signed-off-by: Sujith Manoharan <[email protected]> Signed-off-by: John W. Linville <[email protected]>
2013-08-05ath9k: Cleanup WLAN/BT RX diversitySujith Manoharan4-28/+26
For single-chain WLAN+BT cards, the BT antenna can be used for WLAN RX when the BT interface is disabled. Rename the modparam "antenna_diversity" to "bt_ant_diversity" to clarify this. Signed-off-by: Sujith Manoharan <[email protected]> Signed-off-by: John W. Linville <[email protected]>
2013-08-05ath9k: Fix antenna diversity for CUS198Sujith Manoharan3-26/+59
CUS198/CUS230 need a few tweaks in the antenna diversity algorithm to accomodate RSSI variation. Add a couple of knobs to control low RSSI threshold and fast antenna diversity bias values. Signed-off-by: Sujith Manoharan <[email protected]> Signed-off-by: John W. Linville <[email protected]>
2013-08-05ath9k: Print LNA combining mode during initSujith Manoharan1-15/+9
Signed-off-by: Sujith Manoharan <[email protected]> Signed-off-by: John W. Linville <[email protected]>
2013-08-05ath9k: Add information about antenna diversitySujith Manoharan1-0/+52
Signed-off-by: Sujith Manoharan <[email protected]> Signed-off-by: John W. Linville <[email protected]>
2013-08-05cw1200: Fix spurious BUG_ON() trigger when starting AP mode.Solomon Peachy1-5/+2
There's an underlying race condition with the unjoin_work() call that is sometimes triggered depending on scheduling order and the phase of the moon. This doesn't fix the race condition, but it does remove the ill-advised BUG_ON() call in an easily-recoverable situation. Signed-off-by: Solomon Peachy <[email protected]> Signed-off-by: John W. Linville <[email protected]>
2013-08-05ath10k: fix device teardownMichal Kazior1-11/+30
This fixes interrupt-related issue when no interfaces were running thus the device was considered powered down. The power_down() function isn't really powering down the device. It simply assumed it won't interrupt. This wasn't true in some cases and could lead to paging failures upon FW indication interrupt (i.e. FW crash) because some structures aren't allocated in that device state. One reason for that was that ar_pci->started wasn't reset. The other is interrupts should've been masked when teardown starts. The patch reorganized interrupt setup and makes sure ar_pci->started is reset accordingly. Reported-by: Ben Greear <[email protected]> Signed-off-by: Michal Kazior <[email protected]> Signed-off-by: Kalle Valo <[email protected]>
2013-08-02Merge tag 'for-linville-20130730' of git://github.com/kvalo/ath6klJohn W. Linville19-454/+959
2013-08-02Merge branch 'for-john' of ↵John W. Linville47-892/+1308
git://git.kernel.org/pub/scm/linux/kernel/git/iwlwifi/iwlwifi-next
2013-08-02iwl4965: reset firmware after rfkill offStanislaw Gruszka2-5/+6
Using rfkill switch can make firmware unstable, what cause various Microcode errors and kernel warnings. Reseting firmware just after rfkill off (radio on) helped with that. Resolve: https://bugzilla.redhat.com/show_bug.cgi?id=977053 Reported-and-tested-by: Justin Pearce <[email protected]> Cc: [email protected] Signed-off-by: Stanislaw Gruszka <[email protected]> Signed-off-by: John W. Linville <[email protected]>
2013-08-02iwl4965: set power mode earlyStanislaw Gruszka1-3/+3
If device was put into a sleep and system was restarted or module reloaded, we have to wake device up before sending other commands. Otherwise it will fail to start with Microcode error. Cc: [email protected] Signed-off-by: Stanislaw Gruszka <[email protected]> Signed-off-by: John W. Linville <[email protected]>
2013-08-02ath10k: fix failpath in MSI-X setupMichal Kazior1-1/+6
pci_disable_msi() must be called if the initial request_irq() fails. Also add a warning message so it's possible to distinguish request_irq() failure and pci_enable_msi() failure. Signed-off-by: Michal Kazior <[email protected]> Signed-off-by: Kalle Valo <[email protected]>
2013-08-02ath10k: zero arvif memory on add_interface()Michal Kazior1-0/+2
The private memory area in vif provided by mac80211 isn't guaranteed to be zeroed. This patch should fix issues when switching between STA and AP interface types. The tim_bitmap could become polluted by STA bssid field (since it's a union), wep_keys array could also become polluted with invalid pointers and probably much more. Signed-off-by: Michal Kazior <[email protected]> Signed-off-by: Kalle Valo <[email protected]>
2013-08-02ath10k: advertise more conservative intf combinationsMichal Kazior1-3/+9
Apparently the available firmware has a limit of handling 7 APs, 3 GOs or 8 STAs. This is based on empirical tests and it is still possible some combinations may crash the firmware. Signed-off-by: Michal Kazior <[email protected]> Signed-off-by: Kalle Valo <[email protected]>
2013-08-02ath10k: make sure to use passive scan when n_ssids is 0Michal Kazior1-0/+2
Normally user specifies broadcast ssid for scanning. If the user wants to do a passive scan it does not pass any ssids. The patch makes sure we ath10k tells firmware to not send anything at all in case it decides no ssids equals broadcast ssid. Signed-off-by: Michal Kazior <[email protected]> Signed-off-by: Kalle Valo <[email protected]>
2013-08-02ath10k: prevent using invalid ringbuffer indexesMichal Kazior1-0/+5
If the device is removed and hotplug fails ioread32() will return 0xFFFFFFFF. In that case reading ringbuffer during device bringup led to out-of-bounds addressing of a ringbuffer array that in turn led to a paging failure. This could be reproduced by the following: * boot without acpi/prevent hotplug from working * insert and manually detect (pci rescan) the device * remove the device physically * load ath10k driver * kernel crashed Ringbuffer index reading is now protected by using an appropriate mask to prevent addressing an invalid array index. Signed-off-by: Michal Kazior <[email protected]> Signed-off-by: Kalle Valo <[email protected]>
2013-08-02ath10k: implement get_survey()Michal Kazior4-1/+122
This implements a limited subset of what can be reported in the survey dump. This can be used for assessing approximate channel load, e.g. for automatic channel selection. Signed-off-by: Michal Kazior <[email protected]> Signed-off-by: Kalle Valo <[email protected]>
2013-08-02ath10k: implement tx checksum offloadingMichal Kazior2-0/+4
HW supports L3/L4 tx checksum offloading. This should reduce CPU load and improve performance on slow host machines. Signed-off-by: Michal Kazior <[email protected]> Signed-off-by: Kalle Valo <[email protected]>
2013-08-02ath10k: implement rx checksum offloadingMichal Kazior1-0/+40
HW supports L3/L4 rx checksum offloading. This should reduce CPU load and improve performance on slow host machines. Signed-off-by: Michal Kazior <[email protected]> Signed-off-by: Kalle Valo <[email protected]>
2013-08-01ath9k: Add statistics for antenna diversitySujith Manoharan3-28/+95
Signed-off-by: Sujith Manoharan <[email protected]> Signed-off-by: John W. Linville <[email protected]>
2013-08-01ath9k: Use a subroutine to calculate ALT ratioSujith Manoharan1-94/+79
Signed-off-by: Sujith Manoharan <[email protected]> Signed-off-by: John W. Linville <[email protected]>
2013-08-01ath9k: Simplify checks in quick_scanSujith Manoharan1-10/+10
There is a function to do a ratio comparison for ALT, so make use of it. Signed-off-by: Sujith Manoharan <[email protected]> Signed-off-by: John W. Linville <[email protected]>
2013-08-01ath9k: Use a helper function for checking LNA optionsSujith Manoharan1-87/+79
Signed-off-by: Sujith Manoharan <[email protected]> Signed-off-by: John W. Linville <[email protected]>
2013-08-01ath9k: Use a subroutine to try LNA switchSujith Manoharan1-40/+52
Signed-off-by: Sujith Manoharan <[email protected]> Signed-off-by: John W. Linville <[email protected]>
2013-08-01ath9k: Add ALT check for cards with GROUP-3 configSujith Manoharan1-17/+33
Signed-off-by: Sujith Manoharan <[email protected]> Signed-off-by: John W. Linville <[email protected]>
2013-08-01ath9k: Use a subroutine to check for short scanSujith Manoharan1-14/+23
Signed-off-by: Sujith Manoharan <[email protected]> Signed-off-by: John W. Linville <[email protected]>
2013-08-01ath9k: Do a quick scan only when scan_not_start is trueSujith Manoharan3-9/+26
Right now, it is being done for all cases. Signed-off-by: Sujith Manoharan <[email protected]> Signed-off-by: John W. Linville <[email protected]>
2013-08-01ath9k: Add a debugfs file for antenna diversitySujith Manoharan1-0/+64
Signed-off-by: Sujith Manoharan <[email protected]> Signed-off-by: John W. Linville <[email protected]>
2013-08-01iwl4965: better skb management in rx pathStanislaw Gruszka1-6/+12
4965 version of Eric patch "iwl3945: better skb management in rx path". It fixes several problems : 1) skb->truesize is underestimated. We really consume PAGE_SIZE bytes for a fragment, not the frame length. 2) 128 bytes of initial headroom is a bit low and forces reallocations. 3) We can avoid consuming a full page for small enough frames. Signed-off-by: Stanislaw Gruszka <[email protected]> Acked-by: Eric Dumazet <[email protected]> Signed-off-by: John W. Linville <[email protected]>
2013-08-01rtlwifi: rtl8192cu: fix function declaration headerMark Schulte2-3/+3
Move rtl92cu_update_hal_rate_tbl declaration to hw.h to correspond with function definition in hw.c. Fixes sparse warning in hw.c warning: symbol 'rtl92cu_update_hal_rate_tbl' was not declared. Signed-off-by: Mark Schulte <[email protected]> Acked-by: Larry Finger <[email protected]> Signed-off-by: John W. Linville <[email protected]>
2013-08-01mwifiex: populate rates in probe request using cfg80211_scan_requestAvinash Patil3-22/+85
Whenever available, use cfg80211_scan_request to populates rates in outgoing probe request. This will help to advertise band specific rates and fix an issue where 11b rates were advertised in probe request going out on 11a band. This will also ensure that we do not advertise 11b rates while P2P scan is going on. Signed-off-by: Avinash Patil <[email protected]> Signed-off-by: Bing Zhao <[email protected]> Signed-off-by: John W. Linville <[email protected]>
2013-08-01mwifiex: fix adapter pointer dereference issueAmitkumar Karwar1-3/+10
It has introduced by recent commit 6b41f941d7cd: "mwifiex: handle driver initialization error paths" which adds error path handling for mwifiex_fw_dpc(). release_firmware(adapter->*) is called for success as well as failure paths. In failure paths, adapter is already freed at this point. The issue is fixed by moving mwifiex_free_adapter() call. Reported-by: Dan Carpenter <[email protected]> Signed-off-by: Amitkumar Karwar <[email protected]> Signed-off-by: Bing Zhao <[email protected]> Signed-off-by: John W. Linville <[email protected]>
2013-08-01Merge branch 'for-john' of ↵John W. Linville10-15/+23
git://git.kernel.org/pub/scm/linux/kernel/git/jberg/mac80211-next
2013-07-31mwifiex: fix command 0x2c timeout during p2p_find or p2p_connectStone Piao1-2/+2
We missed bss_mode check for P2P client. Signed-off-by: Stone Piao <[email protected]> Signed-off-by: Avinash Patil <[email protected]> Signed-off-by: Bing Zhao <[email protected]> Signed-off-by: John W. Linville <[email protected]>
2013-07-31mwifiex: fix wrong data rates in P2P clientAvinash Patil1-1/+2
This patch fixes an issue wherein adhoc rates were being copied into association request from P2P client. Cc: <[email protected]> # 3.10.y Signed-off-by: Avinash Patil <[email protected]> Signed-off-by: Stone Piao <[email protected]> Signed-off-by: Bing Zhao <[email protected]> Signed-off-by: John W. Linville <[email protected]>
2013-07-31mwifiex: check for bss_role instead of bss_mode for STA operationsAvinash Patil2-4/+6
This patch fixes an issue wherein association would fail on P2P interfaces. This happened because we are checking priv->mode against NL80211_IFTYPE_STATION. While this check is correct for infrastructure stations, it would fail P2P clients for which mode is NL80211_IFTYPE_P2P_CLIENT. Better check would be bss_role which has only 2 values: STA/AP. Cc: <[email protected]> # 3.10.y Signed-off-by: Avinash Patil <[email protected]> Signed-off-by: Stone Piao <[email protected]> Signed-off-by: Bing Zhao <[email protected]> Signed-off-by: John W. Linville <[email protected]>
2013-07-31iwlwifi: mvm: advertise support for DYNAMIC / STATIC SMPSEmmanuel Grumbach1-1/+3
This feature is fully supported by iwlwmvm, so advertise it. Signed-off-by: Emmanuel Grumbach <[email protected]> Signed-off-by: Johannes Berg <[email protected]>
2013-07-31iwlwifi: mvm: add high temperature SKU thermal throttling parametersEytan Lifshitz4-4/+44
When the NIC is expected to operate in high temperature, it is advisable to put more aggresive thermal throttling parameters, in order to prevent CT-kill. Signed-off-by: eytan lifshitz <[email protected]> Reviewed-by: Emmanuel Grumbach <[email protected]> Signed-off-by: Johannes Berg <[email protected]>
2013-07-31iwlwifi: mvm: Change beacon abort escape time valueAlexander Bondar2-1/+5
Set beacon abort escape timer values - 6 beacons in D0 state, 9 beacons in D3 and D0i3. Signed-off-by: Alexander Bondar <[email protected]> Reviewed-by: Emmanuel Grumbach <[email protected]> Signed-off-by: Johannes Berg <[email protected]>
2013-07-31iwlwifi: remove duplicate rate scale init codeEyal Shapira2-6/+0
The rate scale windows are cleared twice as part of the init. Cleanup this duplication in both mvm and dvm. Signed-off-by: Eyal Shapira <[email protected]> Reviewed-by: Emmanuel Grumbach <[email protected]> Signed-off-by: Johannes Berg <[email protected]>
2013-07-31iwlwifi: mvm: remove obsolete flag in TX command APIEmmanuel Grumbach1-2/+0
This API isn't valid any more. It wasn't used anyway. Signed-off-by: Emmanuel Grumbach <[email protected]> Signed-off-by: Johannes Berg <[email protected]>
2013-07-31iwlwifi: mvm: report per-chain signal to mac80211Johannes Berg1-26/+21
Instead of reporting the maximum signal strength and the antenna bitmap in the antenna field (which is really just for radiotap and defined differently), report the signal strength values per chain and set the chain bitmap. Reviewed-by: Emmanuel Grumbach <[email protected]> Signed-off-by: Johannes Berg <[email protected]>
2013-07-31iwlwifi: mvm: fix debugfs restart if fw_restart is disabledEran Harary3-8/+13
If fw_restart is disabled, using the fw_restart debugfs file will enable fw_restart and then send the failing command, but this still frequently fails restart because it resets fw_restart afterwards and is thus racy. Fix this by tracking fw_restart separately and allowing "always restart", "never restart" and "restart N times". Signed-off-by: Eran Harary <[email protected]> Reviewed-by: Emmanuel Grumbach <[email protected]> Signed-off-by: Johannes Berg <[email protected]>
2013-07-31iwlwifi: mvm: Change beacon filtering commandHila Gonen6-84/+145
Change beacon filtering command due to a change in the API. In case the FW supports the old API, we do not send the BF HCMD and assume that since the corresponding struct in the FW is zeroed by default then we don't need to disable it in the FW actively. Signed-off-by: Hila Gonen <[email protected]> Signed-off-by: Dor Shaish <[email protected]> Reviewed-by: Emmanuel Grumbach <[email protected]> Signed-off-by: Johannes Berg <[email protected]>
2013-07-31iwlwifi: mvm: register vif debugfs for AP mode tooEmmanuel Grumbach1-0/+1
The current registered the per-vif debugfs handler for STA mode only. Signed-off-by: Emmanuel Grumbach <[email protected]> Signed-off-by: Johannes Berg <[email protected]>
2013-07-31iwlwifi: mvm: split constants into separate fileJohannes Berg3-4/+80
To make maintaining some constant default values in the driver easier, declare them in a separate file. Signed-off-by: Johannes Berg <[email protected]>
2013-07-31iwlwifi: mvm: assign quota per virtual interfaceJohannes Berg1-8/+8
Instead of assigning quota per used binding (channel) assign the same amount of quota for each virtual interface so that when there are more than two interfaces using more than one channel, we'll stay on the channels proportionally to the number of virtual interfaces using the channels. Reviewed-by: Emmanuel Grumbach <[email protected]> Reviewed-by: Ilan Peer <[email protected]> Signed-off-by: Johannes Berg <[email protected]>
2013-07-31iwlwifi: mvm: Return on inconsistency in add interfaceIlan Peer1-1/+2
Return in case that HW restart is in progress but the added interface is not found during the iteration over all the interfaces. Signed-off-by: Ilan Peer <[email protected]> Reviewed-by: Emmanuel Grumbach <[email protected]> Signed-off-by: Johannes Berg <[email protected]>
2013-07-31iwlwifi: mvm: Change AM->PSM timeout for EAPOL framesAlexander Bondar1-0/+2
Currently after sending EAPOL frame FW transition to power saving mode within 10 or 100 msec (as specified by power table command). According to new requirement this timeout for a specific EAPOL frame must be controlled by the driver by setting tx_pm_timeout field of TX_CMD to 2 (PM_FRAME_ENUM_MGMT). This value corresponds to 32 msec timeout. Signed-off-by: Alexander Bondar <[email protected]> Reviewed-by: Emmanuel Grumbach <[email protected]> Signed-off-by: Johannes Berg <[email protected]>
2013-07-31iwlwifi: mvm: support six IPv6 addresses in D3Johannes Berg4-28/+92
Newer firmware supports offloading more IPv6 addresses for NDP, adjust the code to send the correct command depending on the firmware capability. Reviewed-by: Emmanuel Grumbach <[email protected]> Signed-off-by: Johannes Berg <[email protected]>