aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/wireless/iwlwifi
Commit message (Collapse)AuthorAge
...
| | * iwlwifi: fix spelling errorsSara Sharon2015-04-02
| | | | | | | | | | | | | | | | | | | | | | | | | | | Fix spelling error across the driver. Modified only comments and prints. Signed-off-by: Sara Sharon <sara.sharon@intel.com> Reviewed-by: Johannes Berg <johannes.berg@intel.com> Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
| | * iwlwifi: mvm: don't return uninitialized value in get_survey()Johannes Berg2015-04-02
| | | | | | | | | | | | | | | | | | | | | | | | | | | If ucode_loaded isn't true the function returns the 'ret' variable without having assigned a value properly. Fix that. Reported-by: Haim Dreyfuss <haim.dreyfuss@intel.com> Signed-off-by: Johannes Berg <johannes.berg@intel.com> Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
| | * iwlwifi: mvm: add trigger for firmware dump upon MLME failuresEmmanuel Grumbach2015-04-02
| | | | | | | | | | | | | | | | | | | | | This will allow to catch failures in MLME and get the firmware data when this happens. Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
| | * Merge tag 'mac80211-next-for-davem-2015-03-30' into iwlwifi-nextEmmanuel Grumbach2015-04-02
| | |\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Lots of updates for net-next; along with the usual flurry of small fixes, cleanups and internal features we have: * VHT support for TDLS and IBSS (conditional on drivers though) * first TX performance improvements (the biggest will come later) * many suspend/resume (race) fixes * name_assign_type support from Tom Gundersen
| | * | iwlwifi: mvm: remove unused argumentsJohannes Berg2015-04-02
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The str/len arguments to iwl_fw_dbg_trigger_simple_stop() aren't used, and for a simple trigger don't really need to be used as the trigger code itself encodes the reason, so remove them. Signed-off-by: Johannes Berg <johannes.berg@intel.com> Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
| | * | iwlwifi: mvm: Fix wrongfully flushing frames in the roc/off channel queueMatti Gottlieb2015-04-02
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Sending multiple action frames off channel, one after the other can create a race that will result in a timeout: 1. Start sending action frame off channel. 2. Once the frame is sent or the time event is over, the flow will eventually call ieee80211_start_next_roc to start the next roc frame & iwl_mvm_roc_finished schedules to schedule a work to flush the queue. 3. Start sending new roc frame and write it to the queue before the flush work has started. 4. The work is called and it flushes the new packet that was placed on the on the queue so the packet is lost. This causes the frame to be removed & not sent, that causes a timeout in userspace. Flush the work queue that flushes the roc/off channel queue before starting to send a new frame off channel, in order to avoid a race between the new frame that is transmitted off channel & the flushing of the queue. Signed-off-by: Matti Gottlieb <matti.gottlieb@intel.com> Reviewed-by: Johannes Berg <johannes.berg@intel.com> Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
| | * | iwlwifi: mvm: always reconfigure last MCC on initArik Nemtsov2015-04-02
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Currently the last found MCC is reconfigured only in the recovery flow. But it should always be used when available, for the ifdown/up or RF-Kill/CT-Kill scenarios. While at it, fix a couple of bugs in the init-from-last-MCC flow. Return an error value when a current MCC is not found. Pass on the regdomain to cfg80211 only if it was changed and don't ignore the return value from the cfg80211-setter function. Signed-off-by: Arik Nemtsov <arikx.nemtsov@intel.com> Reviewed-by: Johannes Berg <johannes.berg@intel.com> Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
| | * | iwlwifi: mvm: add debugfs entry with the number of net-detect scansLuciano Coelho2015-04-02
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Our testers need to know the number of scans performed while in net-detect mode before the device wakes up. The firmware already passes this information to the driver, so we can save it and report it in a debugfs entry. Signed-off-by: Luciano Coelho <luciano.coelho@intel.com> Reviewed-by: Johannes Berg <johannes.berg@intel.com> Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
| | * | iwlwifi: mvm: rs: refactor rs_update_rate_tblEyal Shapira2015-04-02
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Minor cleanup and refactoring. Signed-off-by: Eyal Shapira <eyalx.shapira@intel.com> Reviewed-by: Johannes Berg <johannes.berg@intel.com> Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
| | * | iwlwifi: check the size of the trigger struct from the firmware fileEmmanuel Grumbach2015-04-01
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When we access the triggers we need to make sure that the data we expect was actually provided by the firmware file. Check this when we decode the triggers from the firmware file. Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
| | * | iwlwifi: mvm: rs: fix comment indentationLiad Kaufman2015-03-30
| | | | | | | | | | | | | | | | | | | | Signed-off-by: Liad Kaufman <liad.kaufman@intel.com> Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
| | * | iwlwifi: mvm: Clean up UMAC scan UIDs in the reset and drv_stop flowsAlexander Bondar2015-03-30
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In the reset flow, the driver cancels ongoing scan and sends scan complete notification to mac80211. However it does not clean its UID. Add cleaning scan UID for the ongoing scan. Loop over all other UIDs to make sure there's nothing left there and warn if any is found. Signed-off-by: Alexander Bondar <alexander.bondar@intel.com> Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
| | * | iwlwifi: 8000: change PNVM in case it doesn't match to the HW stepEran Harary2015-03-30
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | There is a strong relationship between the NVM version and the hardware step. Enforce that in the driver in case the default NVM on the platform is the wrong one. Signed-off-by: Eran Harary <eran.harary@intel.com> Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
| | * | iwlwifi: mvm: fix debug print in the RSA ownership workaroundEran Harary2015-03-30
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The semaphore may not be accessible. Fix the debug prints accordingly. Signed-off-by: Eran Harary <eran.harary@intel.com> Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
| | * | iwlwifi: mvm: allow to configure the timeout for the Tx queuesEmmanuel Grumbach2015-03-30
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Sometimes we will want to configure the timeouts for the Tx queues based on the vif type. Allow to do that using the trigger mechanism. Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
| | * | iwlwifi: drop support for early versions of 8000Emmanuel Grumbach2015-03-26
| | | | | | | | | | | | | | | | | | | | | | | | These early versions are no longer supported. Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
| | * | iwlwifi: mvm: use debugfs_create_bool() for enable_scan_iteration_notifLuciano Coelho2015-03-26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | There is no need to implement the enable_scan_iteration_notif handling explicitly and there's no reason not to export the current value. So use debugfs_create_bool() instead. Signed-off-by: Luciano Coelho <luciano.coelho@intel.com> Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
| | * | iwlwifi: mvm: add delay to scheduled scanLuciano Coelho2015-03-26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add support for delaying the start of a scheduled scan (or a WoWLAN net-detect scan). Signed-off-by: Luciano Coelho <luciano.coelho@intel.com> Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
| | * | iwlwifi: pcie: initialize trans_pcie->ref_count on configure()Eliad Peller2015-03-26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ref_count is currently initialized on start_fw(). This causes some issues in restart flow, as currently active references (e.g. unclaimed command) will get cleared, resulting in invalid reference accounting. Move the ref_count initialization to the configure() trans op, so it won't be re-initialized on restart. Signed-off-by: Eliad Peller <eliadx.peller@intel.com> Reviewed-by: Johannes Berg <johannes.berg@intel.com> Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
| | * | iwlwifi: mvm: inform mac80211 about umac scans that was aborted by restartDavid Spinadel2015-03-26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In nic restart flow we inform mac80211 that scan was aborted, but it was based only on scan_status which is not set by UMAC scan. Fix that. Signed-off-by: David Spinadel <david.spinadel@intel.com> Reviewed-by: Johannes Berg <johannes.berg@intel.com> Reviewed-by: Luciano Coelho <luciano.coelho@intel.com> Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
| | * | iwlwifi: mvm: remove d0i3 ref correctly during AP startArik Nemtsov2015-03-26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The AP_START d0i3 reference was never removed if the AP started correctly. This has the unpleasant side-effect of preventing D0i3 on Android if the WiFi hotspot was ever started on the device. Signed-off-by: Arik Nemtsov <arikx.nemtsov@intel.com> Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
| | * | iwlwifi: mvm: take IWL_MVM_REF_UCODE_DOWN before restarting hwEliad Peller2015-03-19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | we unref IWL_MVM_REF_UCODE_DOWN on iwl_mvm_restart_complete(). Usually, the restart is initiated by iwl_mvm_nic_restart(), which takes the reference before restarting the hw. However, in D3 flow we might call ieee80211_restart_hw() directly (in case of suspend error and on d3_test-resume), which without taking the ref first. fix it. Signed-off-by: Eliad Peller <eliadx.peller@intel.com> Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
| | * | iwlwifi: mvm: don't wait for firmware verificationEran Harary2015-03-19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The firmware has a race in the flow that indicates the completion of the authentication. Checking the completion of the authentication is not really needed anyway since we can wait for the ALIVE notification instead. Remove the unneeded and buggy code. Signed-off-by: Eran Harary <eran.harary@intel.com> Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
| | * | iwlwifi: mvm: remove time-event start/end failure warningJohannes Berg2015-03-18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This warning is misleading. In many cases, for example P2P ROC time events, this will happen if the time event is aborted, for example due to a higher priority time event. This is entirely normal and not worth warning about. In other cases, where we actually do act upon this, for example when trying to connect and this fails, we should instead warn as part of the disconnect operation. Change the code to do that, i.e. make the warning a debug message, and make it more prominent (an error) when we actually disconnect because of it. This also fixes confusion in the logs - the warning was mistaken for something that needed investigation, while in most cases it's just expected behaviour that occasionally some lower-priority time events would not complete fully. Signed-off-by: Johannes Berg <johannes.berg@intel.com> Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
| | * | iwlwifi: mvm: add iccm data to 8000 b-step data dumpLiad Kaufman2015-03-18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In 8000 HW family B-step only, the ICCM is separate from the SRAM. This adds the ICCM to the dump data collected for FW debug. Signed-off-by: Liad Kaufman <liad.kaufman@intel.com> Reviewed-by: Johannes Berg <johannes.berg@intel.com> Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
| | * | iwlwifi: mvm: properly flush the queues for buffering transportEmmanuel Grumbach2015-03-18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | There are transport that must buffer frames in the driver. This means that we have frames that are not in the op_mode and not visible to the firwmare. This causes issues when we flush the queues: the op_mode flushes a queue, and the firmware flushes all the frames that are *currently* on the rings, but if the transport buffers frames, it can submit these while we are flushing. This leads to a situation where we still have frames on the queues after we flushed them. Preventing those buffered frame from getting into the firmware is possible, but then, we have to run the Tx response path on frames that didn't reach the firmware which is not desirable. The way I solve this here is to let these frames go to the firmware, but make sure the firmware will not transmit them (by setting the station as draining). The op_mode then needs to wait until the transport itself is empty to be sure that the queue is really empty. Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
| | * | iwlwifi: pcie: add rx packet sequence number to dbg printLiad Kaufman2015-03-18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | For each RX packet until this patch there only was a debug print of the HCMD and the offset. This adds also the sequence number of the packet for easier matching between what was sent, what came back / was received, and what got stuck somewhere and was never responded by the FW. Signed-off-by: Liad Kaufman <liad.kaufman@intel.com> Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
| | * | iwlwifi: mvm: assign new TLV bit for multi-source LARArik Nemtsov2015-03-18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | According to FW methodology, the capability bits should be the only ones that change per-HW. The API bits should remain constant across different HWs. Currently this is not the case with multi-source LAR (API bit 9). Assign a new capability bit to eventually replace the API bit. Until the API bit can be deprecated, the driver will check either to enable multi-source LAR. Signed-off-by: Arik Nemtsov <arikx.nemtsov@intel.com> Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
| | * | iwlwifi: mvm: continue (with error) CSA on GO time event failureJohannes Berg2015-03-18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If, on a GO, the CSA time event fails to be scheduled, continue the flow towards mac80211's state machine so it doesn't get stuck, but report an error later on the post switch which will cause mac80211 to tear down the operation. This ensures nothing gets stuck due to the scheduling failure. Signed-off-by: Johannes Berg <johannes.berg@intel.com> Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
| * | | Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/netDavid S. Miller2015-04-02
| |\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: drivers/net/usb/asix_common.c drivers/net/usb/sr9800.c drivers/net/usb/usbnet.c include/linux/usb/usbnet.h net/ipv4/tcp_ipv4.c net/ipv6/tcp_ipv6.c The TCP conflicts were overlapping changes. In 'net' we added a READ_ONCE() to the socket cached RX route read, whilst in 'net-next' Eric Dumazet touched the surrounding code dealing with how mini sockets are handled. With USB, it's a case of the same bug fix first going into net-next and then I cherry picked it back into net. Signed-off-by: David S. Miller <davem@davemloft.net>
| * \ \ \ Merge tag 'wireless-drivers-next-for-davem-2015-04-01' of ↵David S. Miller2015-04-01
| |\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | git://git.kernel.org/pub/scm/linux/kernel/git/kvalo/wireless-drivers-next Kalle Valo says: ==================== Major changes: ath9k: * add Active Interference Cancellation, a method implemented in the HW to counter WLAN RX > sensitivity degradation when BT is transmitting at the same time. This feature is supported by cards like WB222 based on AR9462. iwlwifi: * Location Aware Regulatory was added by Arik * 8000 device family work * update to the BT Coex firmware API brmcfmac: * add new BCM43455 and BCM43457 SDIO device support * add new BCM43430 SDIO device support wil6210: * take care of AP bridging * fix NAPI behavior * found approach to achieve 4*n+2 alignment of Rx frames rt2x00: * add new rt2800usb device DWA 130 rtlwifi: * add USB ID for D-Link DWA-131 * add USB ID ASUS N10 WiFi dongle mwifiex: * throughput enhancements ==================== Signed-off-by: David S. Miller <davem@davemloft.net>
| | * \ \ \ Merge tag 'iwlwifi-next-for-kalle-2015-03-12' of ↵Kalle Valo2015-03-13
| | |\ \ \ \ | | | | |/ / | | | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | https://git.kernel.org/pub/scm/linux/kernel/git/iwlwifi/iwlwifi-next * Location Aware Regulatory was added by Arik * 8000 device family work * Update to the BT Coex firmware API
| | | * | | Merge branch 'iwlwifi-fixes' into iwlwifi-nextEmmanuel Grumbach2015-03-12
| | | |\ \ \
| | | * | | | iwlwifi: mvm: simplify iwl_mvm_get_wakeup_status() returnJohannes Berg2015-03-12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The return value in iwl_mvm_get_wakeup_status() is a bit unclear in that it's not obvious that we don't leak fw_status in some cases. Use fw_status directly with ERR_PTR() and return only it, that way the compiler has a chance of proving that it's uninitialized (if it ever is due to new changes.) Additionally, this removes a smatch warning since smatch couldn't figure out that fw_status can't, in fact, leak here. Signed-off-by: Johannes Berg <johannes.berg@intel.com> Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
| | | * | | | iwlwifi: mvm: don't double unlock the mutex in __iwl_mvm_resume()Luciano Coelho2015-03-12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When IWLWIFI_DEBUGFS is not set, we should not unlock the mutex after calling iwl_mvm_query_wakeup_reasons(), because this function unlocks it already. Move the goto out_iterate outside the #ifdef. Change-Id: I13d86402aecf0eeec44b1abbe2b244fbc706a5eb Signed-off-by: Luciano Coelho <luciano.coelho@intel.com>
| | | * | | | iwlwifi: mvm: clarify time event end handlingJohannes Berg2015-03-12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The code here is a little confusing, the iwl_mvm_te_check_disconnect() will check that the interface is a station, but going into it after already having processed the time even end for P2P seems strange at first look. Put a switch statement there to distinguish the interface types and make this more readable. Signed-off-by: Johannes Berg <johannes.berg@intel.com> Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
| | | * | | | iwlwifi: mvm: Always enable the smart FIFOEran Harary2015-03-12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We previously enabled the smart FIFO (SF) in BSS only after association. This cause interrupt latency on P2P on certain devices. Change the working model to enable the SF all the time and play with the timeout values based on the association state. This change was not tested on older firwmares, so make it happen only on -13.ucode and up. Signed-off-by: Eran Harary <eran.harary@intel.com> Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
| | | * | | | iwlwifi: update copyright to include 2015Emmanuel Grumbach2015-03-12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
| | | * | | | iwlwifi: add more new 8260 series PCI IDsOren Givon2015-03-12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | More sub system IDs were introduced for the 8260 series. Add the new sub system IDs so the cards can be recognized. Signed-off-by: Oren Givon <oren.givon@intel.com> Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
| | | * | | | iwlwifi: mvm: BT Coex - update the new APIEmmanuel Grumbach2015-03-12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The firmware was not using the new API, so we don't need to differentiate between the different stages of this new API. The main difference here is that most of the hard coded values are not sent through the command anymore. Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
| | | * | | | iwlwifi: mvm: fix force NMI for 8000Emmanuel Grumbach2015-03-12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The newer devices will enable a new register for this (DEVICE_SET_NMI_8000B_REG), but the interrupt handler isn't wired yet. Keep the old register for now. Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
| | | * | | | iwlwifi: mvm: freeze the non-shared queues when a station goes to sleepEmmanuel Grumbach2015-03-12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When a station goes to sleep, we can't transmit any frame to it. This means that until that station will wake up, a queue that is dedicated to this station won't progress at all. Take this into account when monitoring stuck queues and don't account for the time the station was asleep. This allows to mask false positives where the queues are stuck not because of a bug, but because of the station being asleep. Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
| | | * | | | iwlwifi: pcie: allow the op_mode to freeze the stuck queue timerEmmanuel Grumbach2015-03-12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This allows the op_mode to let the transport know that a queue is currently frozen and that its timer should be stopped. When the queue is unfrozen, its timer should be set to expire after the remainder of the timeout has elapsed. This can be used when stations go to sleep. When a station goes to sleep, the op_mode can freeze the timer so that the queue will never be considered as stuck. When the station wakes up, the queue will be unfrozen. This is meant to avoid false positives that would happen if a buggy station goes to sleep for a very long time. In case we have a dedicated queue for this station (BA agreement) and it goes to sleep for a very long time, the queue would rightfully be stopped during all that time. In this case, the stuck queue timer could fire and that would be a false positive. Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
| | | * | | | iwlwifi: mvm: rs: update Tx statistics when using fixed rateEyal Shapira2015-03-12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The Tx statistics weren't updated when using fixed rate for debugging. Fix this as Tx statistics are useful in this use case. Signed-off-by: Eyal Shapira <eyalx.shapira@intel.com> Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
| | | * | | | iwlwifi: mvm: don't init MCC during CT-killArik Nemtsov2015-03-12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | RTNL is not taken during CT-kill so regulatory APIs cannot be invoked. That's fine, since the HW is only brought up to check the temperature during CT-kill. We don't expect Tx or scanning. Signed-off-by: Arik Nemtsov <arikx.nemtsov@intel.com> Reviewed-by: Luciano Coelho <luciano.coelho@intel.com> Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
| | | * | | | iwlwifi: mvm: remove warning on station exhaustionJohannes Berg2015-03-12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When using IBSS, it's easily possible to exhaust the number of available stations in the driver, so don't warn on it. Signed-off-by: Johannes Berg <johannes.berg@intel.com> Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
| | | * | | | iwlwifi: trans: Take ownership on secure machine before FW loadEran Harary2015-03-12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When we load the firmware for the 8000 B step device, it'll verify its signature. In the current version of the hardware, there can be a race between the WiFi firmware being loaded and the Bluetooth firmware being loaded. Check that WiFi is authenticated, if not, take ownership on the authentication machine to make sure that the WiFi firmware will be authenticated. Signed-off-by: Eran Harary <eran.harary@intel.com> Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
| | | * | | | iwlwifi: add new 8260 series PCI IDsOren Givon2015-03-12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | New sub system IDs were introduced for the 8260 series. This patch adds them so new 8260 cards can be recognized. Signed-off-by: Oren Givon <oren.givon@intel.com> Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
| | | * | | | iwlwifi: mvm: rs: improve ss_params debug printEyal Shapira2015-03-12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Make the print a bit more readable. Reported-by: Joe Perches <joe@perches.com> Signed-off-by: Eyal Shapira <eyalx.shapira@intel.com> Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
| | | * | | | iwlwifi: don't allow the FW to return invalid ch indicesArik Nemtsov2015-03-12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If the FW returns an invalid channels count in response to an MCC request, make sure we don't reference invalid indices in the channels array. Signed-off-by: Arik Nemtsov <arikx.nemtsov@intel.com> Reviewed-by: Johannes Berg <johannes.berg@intel.com> Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>