aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2013-10-18cfg80211: export reg_initiator_name()Luis R. Rodriguez2-10/+26
Drivers can now use this to parse the regulatory request and be more verbose when needed. Signed-off-by: Luis R. Rodriguez <[email protected]> Signed-off-by: John W. Linville <[email protected]>
2013-10-18rt2x00: rt2800lib: autodetect 5GHz band supportGabor Juhos1-4/+4
If the RF chip supports more than 14 channels that indirectly means that it supports the 5GHz band. Use this fact to enable 5GHz band support instead of setting SUPPORT_BAND_5GHZ separately for each RF chip. Also move the setup code of the 2GHz band to the same place. Signed-off-by: Gabor Juhos <[email protected]> Signed-off-by: John W. Linville <[email protected]>
2013-10-18rt2x00: rt2800lib: use switch statement for RF specific setupGabor Juhos1-21/+30
It is much more readable than multiple if-else-if statements. Signed-off-by: Gabor Juhos <[email protected]> Signed-off-by: John W. Linville <[email protected]>
2013-10-18rt2x00: rt2800lib: use {tx,rx}_chain_num to avoid superfluous EEPROM accessGabor Juhos1-10/+6
The {rx,tx}_chain_num fields of rt2x00dev->default_ant contains the number of RX and TX chains already when the rt2800_probe_hw_mode() function runs. Use those values instead of parsing the EEPROM configuration values again. Signed-off-by: Gabor Juhos <[email protected]> Signed-off-by: John W. Linville <[email protected]>
2013-10-18ath9k/ath: move dfs pattern detector to athJanusz Dziedzic8-8/+8
Move the DFS pattern detector code to the ath module so the other Atheros drivers can make us of it. This makes no functional changes. Signed-off-by: Janusz Dziedzic <[email protected]> Reviewed-by: Luis R. Rodriguez <[email protected]> Signed-off-by: John W. Linville <[email protected]>
2013-10-18ath9k: dfs use CFG80211_CERTIFICATION_ONUS flagJanusz Dziedzic2-10/+3
Use CFG80211_CERTIFICATION_ONUS flag in the DFS detector code. This is required as a preparation for moving DFS detector code from ath9k to ath module. Signed-off-by: Janusz Dziedzic <[email protected]> Reviewed-by: Luis R. Rodriguez <[email protected]> Signed-off-by: John W. Linville <[email protected]>
2013-10-18ath9k: dfs move ath_dfs_pool_statsJanusz Dziedzic6-21/+35
Move ath_dfs_pool_stats to dfs_pattern_detector code to be not specyfic only for ath9k. Signed-off-by: Janusz Dziedzic <[email protected]> Reviewed-by: Luis R. Rodriguez <[email protected]> Signed-off-by: John W. Linville <[email protected]>
2013-10-18ath9k: dfs kill ath9k specyfic codeJanusz Dziedzic3-12/+13
Kill of using ath9k_hw_common() function in dfs detector code. Signed-off-by: Janusz Dziedzic <[email protected]> Reviewed-by: Luis R. Rodriguez <[email protected]> Signed-off-by: John W. Linville <[email protected]>
2013-10-18libertas: move firmware lifetime handling to firmware.cDan Williams5-26/+16
Previously, each bus type was responsible for freeing the firmware structure, but some did that badly. Move responsibility for freeing firmware into firmware.c so that it's done once and correctly, instead of happening in multiple places in bus-specific code. This fixes a use-after-free bug found by Dr. H. Nikolaus Schaller where the SDIO code forgot to NULL priv->helper_fw after freeing it. Signed-off-by: Dan Williams <[email protected]> Signed-off-by: John W. Linville <[email protected]>
2013-10-18ath9k: add HT40 spectral scan capabilityLorenzo Bianconi2-38/+137
Add spectral scan feature on HT40 channels for ath9k. This patch extends previous capability added by Simon Wunderlich Signed-off-by: Lorenzo Bianconi <[email protected]> Reviewed-by: Simon Wunderlich <[email protected]> Tested-by: Simon Wunderlich <[email protected]> Signed-off-by: John W. Linville <[email protected]>
2013-10-18ath9k: add noise floor parameter to ath9k_hw_getchan_noiseLorenzo Bianconi4-8/+10
Add nf parameter to ath9k_hw_getchan_noise() in order to compute NF for EXT chains with the same scale of noise floor calculated on CTL chains. ath9k_hw_getchan_noise() will be used in ath_process_fft() for spectral scan on HT40 channels Signed-off-by: Lorenzo Bianconi <[email protected]> Signed-off-by: John W. Linville <[email protected]>
2013-10-18Merge tag 'nfc-next-3.13-1' of ↵John W. Linville28-527/+5065
git://git.kernel.org/pub/scm/linux/kernel/git/sameo/nfc-next Samuel Ortiz <[email protected]> says: "This is the first NFC pull request for the 3.13 kernel. It's a fairly big one, with the following highlights: - NFC digital layer implementation: Most NFC chipsets implement the NFC digital layer in firmware, but others have more basic functionalities and expect the host to implement the digital layer. This layer sits below the NFC core. - Sony's port100 support: This is "soft" NFC USB dongle that expects the digital layer to be implemented on the host. This is the first user of our NFC digital stack implementation. - Secure element API: We now provide a netlink API for enabling, disabling and discovering NFC attached (embedded or UICC ones) secure elements. With some userspace help, this allows us to support NFC payments. Only the pn544 driver currently supports that API. - NCI SPI fixes and improvements: In order to support NCI devices over SPI, we fixed and improved our NCI/SPI implementation. The currently most deployed NFC NCI chipset, Broadcom's bcm2079x, supports that mode and we're planning to use our NCI/SPI framework to implement a driver for it. - pn533 fragmentation support in target mode: This was the only missing feature from our pn533 impementation. We now support fragmentation in both Tx and Rx modes, in target mode." Signed-off-by: John W. Linville <[email protected]>
2013-10-18Merge branch 'for-john' of ↵John W. Linville41-1001/+3484
git://git.kernel.org/pub/scm/linux/kernel/git/iwlwifi/iwlwifi-next
2013-10-18Merge branch 'for-linville' of git://github.com/kvalo/athJohn W. Linville15-388/+2674
2013-10-18Merge branch 'for-upstream' of ↵John W. Linville45-869/+1192
git://git.kernel.org/pub/scm/linux/kernel/git/bluetooth/bluetooth-next
2013-10-18iwlwifi: mvm: fix operator precedenceDavid Spinadel1-1/+2
Integers need to be multiplied before division. Signed-off-by: David Spinadel <[email protected]> Reviewed-by: Emmanuel Grumbach <[email protected]> Signed-off-by: Johannes Berg <[email protected]>
2013-10-18iwlwifi: mvm: fix fw_rx_stats debugfs entryLuciano Coelho1-3/+6
The fw_rx_stats entry in debugfs was getting truncated because the internal buffer used to hold the string was too short. The calculation of the needed buffer size was rather bogus. Simplify the calculation by multiplying the number of entries in the entire structure by the size of each data line and adding the size of the header lines. Additionally, add the mac_id value, which was missing. Signed-off-by: Luciano Coelho <[email protected]> Signed-off-by: Johannes Berg <[email protected]>
2013-10-18iwlwifi: mvm: BT Coex - enable Tx power based on BT statusEmmanuel Grumbach1-2/+2
The activity grading indication from the firmware should not be used in this case, but the bt_status in the firwmare notification. Fix that. Signed-off-by: Emmanuel Grumbach <[email protected]> Signed-off-by: Johannes Berg <[email protected]>
2013-10-18iwlwifi: mvm: BT Coex - always set mandatory fieldsEmmanuel Grumbach2-3/+11
The firmware always expects the Coex Mode to be set. Moreover, the firmware expects bit 0 is the valid bits to be set all the times. I misunderstood the API and didn't set these bits when commands are sent to update the paramters of the Coex. As a result, the firmware understood that the BT Coex was disabled (Coex mode = 0) and ignored all the updates (valid bit 0 clear). Fix that. Signed-off-by: Emmanuel Grumbach <[email protected]> Signed-off-by: Johannes Berg <[email protected]>
2013-10-18iwlwifi: mvm: NVM - increase max section sizeIdan Kahlon1-1/+1
Section size limitation to 6000 is incorrect. NVM file need to support bigger sections in order to support PAPD tables. Signed-off-by: Idan Kahlon <[email protected]> Reviewed-by: Emmanuel Grumbach <[email protected]> Reviewed-by: Maor Perez <[email protected]> Signed-off-by: Johannes Berg <[email protected]>
2013-10-16ath10k: add might_sleep() to ath10k_wmi_cmd_send()Kalle Valo1-0/+2
ath10k_wmi_cmd_send() will now sleep if there are no credits available. To make it easier to catch callers in atomic context add might_sleep() to the function. Signed-off-by: Kalle Valo <[email protected]>
2013-10-16ath10k: fix ath10k_bss_assoc() to not sleep in atomic contextKalle Valo1-19/+37
ath10k_bss_assoc() was calling ath10k_peer_assoc(), which can sleep, under atomic rcu_read_lock() and causing scheduing while atomic errors. Workaround that by delaying the call to ath10k_wmi_peer_assoc(). Signed-off-by: Kalle Valo <[email protected]>
2013-10-16ath10k: remove unnecessary checksMichal Kazior1-21/+0
mac80211 interface iteration functions that were used originally iterated over interfaces that weren't re-added to the driver during recovery. Since internal vif list is now used it's safe to remove the safe-guard as internal vif list is based on add/remove_interface function which guarantees that vdev is created in FW before it is iterated over. Signed-off-by: Michal Kazior <[email protected]> Signed-off-by: Kalle Valo <[email protected]>
2013-10-16ath10k: fix scheduling while atomic config bugMichal Kazior1-84/+62
Recent HTC/WMI changes introduced the bug. ath10k was using _atomic iteration function with sleepable functions. mac80211 provides another iteration function but it cannot be safely called in hw_config() callback due to local->iflist_mtx being possibly acquired already. The patch uses internal vif list for iteration purposes and removes/refactors no longer necessary _iter functions. Reported-By: Kalle Valo <[email protected]> Signed-off-by: Michal Kazior <[email protected]> Signed-off-by: Kalle Valo <[email protected]>
2013-10-16ath10k: track vif list internallyMichal Kazior3-0/+7
mac80211 interface interations functions have peculiar locking issues. This patch introduces internal (to ath10k) vif list that will be used for vif iteration purposes. kvalo: remove extra INIT_LIST_HEAD() Signed-off-by: Michal Kazior <[email protected]> Signed-off-by: Kalle Valo <[email protected]>
2013-10-16ath10k: fix add_interface failure handlingMichal Kazior1-13/+40
If something failed along add_interface() setup it was possible to leak a vdev id, vdev and peer. This could end up with leaked FW state or FW crash (assuming add_interface() failure wasn't a result of a crash). kvalo: rebased, whitespace fixes Signed-off-by: Michal Kazior <[email protected]> Signed-off-by: Kalle Valo <[email protected]>
2013-10-16ath10k: use workqueue to set WEP TX keyMichal Kazior2-18/+39
Recent WMI/HTC changes made it possible for WMI commands to sleep (if there's not enough HTC TX credits to submit a command). TX path is in an atomic context so calling WMI commands in it is wrong. This simply moves WEP key index update to a worker and fixes the 'scheduling while atomic' bug. This still leaves multiple WEP key handling laggy, i.e. some frames may be TXed with an old/different key (although recipient should still be able to RX them). kvalo: changed the title Signed-off-by: Michal Kazior <[email protected]> Signed-off-by: Kalle Valo <[email protected]>
2013-10-16ath10k: return better errno for unsupported pdev paramsBartosz Markowski1-1/+1
Return -EOPNOTSUPP if given parameter is not supported by firmware. Signed-off-by: Bartosz Markowski <[email protected]> Signed-off-by: Kalle Valo <[email protected]>
2013-10-16ath10k: rename WMI_CMD_UNDEFINEDBartosz Markowski2-24/+24
Rename WMI_CMD_UNDEFINED to WMI_CMD_UNSUPPORTED. This is more accurate here. Also return -EOPNOTSUPP instead of -EINVAL in wmi_cmd_send(). Signed-off-by: Bartosz Markowski <[email protected]> Signed-off-by: Kalle Valo <[email protected]>
2013-10-16ath10k: do not warn about unsupported vdev paramBartosz Markowski2-2/+3
10.X firmware does not support WMI_VDEV_PARAM_TX_ENCAP_TYPE. It's a known limitation and we should not warn about this. Signed-off-by: Bartosz Markowski <[email protected]> Signed-off-by: Kalle Valo <[email protected]>
2013-10-14Bluetooth: Read current IAC LAP on controller setupMarcel Holtmann2-0/+5
Read the current IAC LAP values when initializing the controller. The values are not used, but it is good to have them in the trace files for debugging purposes. Signed-off-by: Marcel Holtmann <[email protected]> Signed-off-by: Gustavo Padovan <[email protected]>
2013-10-14Bluetooth: Read number of supported IAC on controller setupMarcel Holtmann4-1/+31
When initializing a controller make sure to read out the number of supported IAC and store its result. This value is needed to determine if limited discoverable for BR/EDR can be configured or not. Signed-off-by: Marcel Holtmann <[email protected]> Signed-off-by: Gustavo Padovan <[email protected]>
2013-10-14Bluetooth: Check that scan window is smaller or equal than scan intervalMarcel Holtmann1-0/+4
The scan window parameter for connection establishment and passive scanning needs to be smaller or equal than the scan interval. Instead of waiting for a controller to reject these values later on, just reject them right away. Signed-off-by: Marcel Holtmann <[email protected]> Signed-off-by: Johan Hedberg <[email protected]>
2013-10-14Bluetooth: Check that bind() bdaddr type matches connect()Johan Hedberg1-0/+6
If a socket was bound to an address type other than BR/EDR (such as LE) we should reject trying to connect it to a BR/EDR address. The same applies for binding to BR/EDR and trying to connect to non-BR/EDR. Signed-off-by: Johan Hedberg <[email protected]> Signed-off-by: Marcel Holtmann <[email protected]>
2013-10-14Bluetooth: Reject invalid bdaddr types for socketsJohan Hedberg1-0/+6
We need to verify that the bdaddr type passed to connect() and bind() is within the set of valid values. If it is not we need to cleanly fail with EINVAL. Signed-off-by: Johan Hedberg <[email protected]> Signed-off-by: Marcel Holtmann <[email protected]>
2013-10-14Bluetooth: Convert Set Discoverable to use an asynchronous requestJohan Hedberg1-9/+54
This patch converts Set Discoverable to use an asynchronous request along with its own completion callback. This is necessary for splitting raw HCI socket use cases from mgmt, as well as for enabling the hooking up of Advertising parameters together with the HCI_DISCOVERABLE flag (coming in later patches). Signed-off-by: Johan Hedberg <[email protected]> Signed-off-by: Marcel Holtmann <[email protected]>
2013-10-14Bluetooth: Fix updating scan mode in set_bredr()Johan Hedberg1-1/+5
Now that the connectable setting is also applicable for the LE side it's possible that the HCI_CONNECTABLE flag is already set when changing the BR/EDR setting from false to true while the controller is powered. In this situation we need to update the BR/EDR scan mode to reflect the setting. Additionally, since HCI_CONNECTABLE also applies to LE we must not clear the HCI_CONNECTABLE flag when disabling bredr. Signed-off-by: Johan Hedberg <[email protected]> Signed-off-by: Marcel Holtmann <[email protected]>
2013-10-14Bluetooth: Move set_bredr_scan() to avoid forward declarationJohan Hedberg1-20/+20
The set_bredr_scan() function will soon be needed by the set_bredr() function, so move it to a new location to avoid having to add a forward declaration. Signed-off-by: Johan Hedberg <[email protected]> Signed-off-by: Marcel Holtmann <[email protected]>
2013-10-14Bluetooth: Make Set Connectable also update the LE advertising typeJohan Hedberg1-5/+30
This patch updates the Set Connectable Management command to also update the LE advertising type to either connectable or non-connectable advertising. An extra helper function is needed for getting the right advertising type since we can not only rely on the HCI_CONNECTABLE flag but must also check for a pending Set Connectable command (in which case the flag does not yet have its final value). Signed-off-by: Johan Hedberg <[email protected]> Signed-off-by: Marcel Holtmann <[email protected]>
2013-10-14rt2x00: rt2800lib: remove duplicate rf_vals for RF3053Kevin Lo1-72/+3
lready have rf_vals_3x with same values. Hence rf_vals_3053 is removed in this patch. Signed-off-by: Kevin Lo <[email protected]> Acked-by: Paul Menzel <[email protected]> Acked-by: Stanislaw Gruszka <[email protected]> Signed-off-by: John W. Linville <[email protected]>
2013-10-14rt2x00: rt2800lib: fix RF registers for RT5390/RT5392Kevin Lo1-3/+2
Update rf registers to use the same values that the MediaTek/Ralink reference driver DPO_RT5572_LinuxSTA_2.6.1.3_20121022 uses. References: RF5390RegTable in chips/rt5390.c RF5392RegTable in chips/rt5390.c Tested on TP-Link TL-WN727N and D-Link DWA-140 Rev.b3 usb wifi dongles. Signed-off-by: Kevin Lo <[email protected]> Acked-by: Stanislaw Gruszka <[email protected]> Signed-off-by: John W. Linville <[email protected]>
2013-10-14mwifiex: use alloc_workqueue() functionAmitkumar Karwar1-1/+3
It replaces deprecated create_workqueue(). Signed-off-by: Amitkumar Karwar <[email protected]> Signed-off-by: Bing Zhao <[email protected]> Signed-off-by: John W. Linville <[email protected]>
2013-10-14ath9k_hw: remove references to hw->confFelix Fietkau5-20/+15
Accessing it to get the current operating channel is racy and in the way of further channel handling related changes Signed-off-by: Felix Fietkau <[email protected]> Signed-off-by: John W. Linville <[email protected]>
2013-10-14ath9k: make ath9k_uses_beacons staticFelix Fietkau2-2/+1
Signed-off-by: Felix Fietkau <[email protected]> Signed-off-by: John W. Linville <[email protected]>
2013-10-14ath9k: remove sc->config.cabqReadyTimeFelix Fietkau4-12/+1
It is not exposed as a configuration option anyway Signed-off-by: Felix Fietkau <[email protected]> Signed-off-by: John W. Linville <[email protected]>
2013-10-14ath9k: move channel change code to ath_set_channelFelix Fietkau1-72/+78
Preparation for adding the scanning state machine to ath9k Signed-off-by: Felix Fietkau <[email protected]> Signed-off-by: John W. Linville <[email protected]>
2013-10-14ath9k: make ath9k_cmn_update_ichannel staticFelix Fietkau5-21/+17
Rework its wrapper function to make it more generic, using it as a replacement for previous calls to ath9k_cmn_update_ichannel. Signed-off-by: Felix Fietkau <[email protected]> Signed-off-by: John W. Linville <[email protected]>
2013-10-14ath9k_hw: simplify channel flagsFelix Fietkau4-130/+50
There was some duplication between channelFlags and chanmode, as well as a lot of redundant checks based on the combinations of flags. Signed-off-by: Felix Fietkau <[email protected]> Signed-off-by: John W. Linville <[email protected]>
2013-10-14ath9k_hw: remove IS_CHAN_OFDM()Felix Fietkau2-7/+2
The hardware is always configured with OFDM support enabled Signed-off-by: Felix Fietkau <[email protected]> Signed-off-by: John W. Linville <[email protected]>
2013-10-14ath9k_hw: remove IS_CHAN_B()Felix Fietkau6-22/+13
Hardware 802.11b-only mode isn't supported by the driver (the device is configured for 802.11n/g instead). Simplify the code by removing checks for it. Signed-off-by: Felix Fietkau <[email protected]> Signed-off-by: John W. Linville <[email protected]>