summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* ath9k: eliminate common->{rx,tx}_chainmaskFelix Fietkau2011-09-1410-41/+27Star
| | | | | | | we already have ah->{rx,tx}chainmask for the same purpose Signed-off-by: Felix Fietkau <nbd@openwrt.org> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* mac80211: stop tx before doing hw config and rate updateRajkumar Manoharan2011-09-142-0/+17
| | | | | | | | | | | | | | | The assumption is that during the hw config, transmission was already stopped by mac80211. Sometimes the AP can be switching b/w the ht modes due to intolerant or etc where STA is in the middle of transmission. In such scenario, buffer overflow was observed at driver side. And also before updating the rate control, the frames are continued to xmited with older rates. This patch ensures that the frames are always xmitted with updated rates and avoid buffer overflow. Signed-off-by: Rajkumar Manoharan <rmanohar@qca.qualcomm.com> Reviewed-by: Johannes Berg <johannes@sipsolutions.net> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* b43: N-PHY: implement enabling TX power controlRafał Miłecki2011-09-142-6/+80
| | | | | Signed-off-by: Rafał Miłecki <zajec5@gmail.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* mac80211: Stop forwarding mesh traffic when tx queues are fullJavier Cardona2011-09-143-0/+10
| | | | | | | | | | | Tx flow control for non-mesh modes of operation only needs to act on the net device queues: when the hardware queues are full we stop accepting traffic from the net device. In mesh, however, we also need to stop forwarding traffic. This patch checks the hardware queues before attempting to forward a mesh frame. Signed-off-by: Javier Cardona <javier@cozybit.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* mac80211: check if mesh frame is in RMC after decryptThomas Pedersen2011-09-141-9/+6Star
| | | | | | | | | | To check whether a frame is in the RMC, we need access to the mesh header. This header is encrypted in encrypted data frames, so make this check after the frame has been decrypted. Signed-off-by: Thomas Pedersen <thomas@cozybit.com> Signed-off-by: Javier Cardona <javier@cozybit.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* mac80211: make ieee80211_send_bar available for driversFelix Fietkau2011-09-144-4/+18
| | | | | | | | | To properly maintain the peer's block ack window, the driver needs to be able to control the new starting sequence number that is sent along with the BlockAckReq frame. Signed-off-by: Felix Fietkau <nbd@openwrt.org> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* cfg80211: reorder code to obsolete forward declarationSven Neumann2011-09-141-11/+8Star
| | | | | | | | | | | | | Reorder functions to remove the need for a forward declaration introduced by the last commit. Signed-off-by: Sven Neumann <s.neumann@raumfeld.com> Cc: John W. Linville <linville@tuxdriver.com> Cc: Luis R. Rodriguez <mcgrof@gmail.com> Cc: Daniel Mack <daniel@zonque.org> Cc: linux-wireless@vger.kernel.org Acked-by: Luis R. Rodriguez <mcgrof@qca.qualcomm.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* cfg80211: hold reg_mutex when updating regulatorySven Neumann2011-09-144-5/+18
| | | | | | | | | | | | | | | | | | | The function wiphy_update_regulatory() uses the static variable last_request and thus needs to be called with reg_mutex held. This is the case for all users in reg.c, but the function was exported for use by wiphy_register(), from where it is called without the lock being held. Fix this by making wiphy_update_regulatory() private and introducing regulatory_update() as a wrapper that acquires and holds the lock. Signed-off-by: Sven Neumann <s.neumann@raumfeld.com> Cc: John W. Linville <linville@tuxdriver.com> Cc: Luis R. Rodriguez <mcgrof@gmail.com> Cc: Daniel Mack <daniel@zonque.org> Cc: linux-wireless@vger.kernel.org Acked-by: Luis R. Rodriguez <mcgrof@qca.qualcomm.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* cfg80211: print bandwidth in chan_reg_rule_print_dbg()Pavel Roskin2011-09-131-1/+2
| | | | | | | | | | Two spaces and the second "KHz" suggest that the code author meant to print the bandwidth but forgot it. The code appears in commit e702d3cf already with two spaces and "KHz" in place of the bandwidth. Signed-off-by: Pavel Roskin <proski@gnu.org> Acked-by: Luis R. Rodriguez <mcgrof@qca.qualcomm.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* ath9k: ath9k_hw_set_txpowerlimit sets previous txpowerBill Jordan2011-09-131-2/+2
| | | | | | | | | | | | In commit 9c204b46c7af93e334114bea1f5eeaa6fea9ba07 (ath9k_hw: do not limit initial tx power to 20 dbm), setting of txpower was broken. This patch fixes it by initializing reg_pwr from the new power limit, not the previous value. Signed-off-by: Bill Jordan <bjordan@rajant.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* b43: LCN-PHY: add conditions for few operationsRafał Miłecki2011-09-132-14/+38
| | | | | | | | It was not possible to guess the conditions from MMIO dumps. Take them from brcmsmac code. Signed-off-by: Rafał Miłecki <zajec5@gmail.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* b43: LCN-PHY: rename functions, get rid of magic namesRafał Miłecki2011-09-132-10/+29
| | | | | | | | We've compared b43 with brcmsmac and took functions names from the later. Signed-off-by: Rafał Miłecki <zajec5@gmail.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* b43: LCN-PHY: upload additional 0x7 tableRafał Miłecki2011-09-131-0/+17
| | | | | Signed-off-by: Rafał Miłecki <zajec5@gmail.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* b43: LCN-PHY: rewrite 0x7 table at the end of initRafał Miłecki2011-09-131-0/+12
| | | | | | | | This is not implemented in brcmsmac, but was noticed in (newer) wl. Can be workaround for some hardware bug. Signed-off-by: Rafał Miłecki <zajec5@gmail.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* b43: LCN-PHY: put tables functions in correct fileRafał Miłecki2011-09-132-11/+16
| | | | | Signed-off-by: Rafał Miłecki <zajec5@gmail.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* b43: LCN-PHY: minor fixesRafał Miłecki2011-09-133-6/+7
| | | | | | | | The biggest change is reversing order of reading 32-bit table value. MMIO dumps has shown it's done that way for LCN-PHY. Signed-off-by: Rafał Miłecki <zajec5@gmail.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* rt2x00: Add new chipset supportzero.lin2011-09-131-0/+1
| | | | | Signed-off-by: zero.lin <zero.lin@ralinktech.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* nl80211/cfg80211: add match filtering for sched_scanLuciano Coelho2011-09-133-1/+121
| | | | | | | | | | | | | | | Introduce filtering for scheduled scans to reduce the number of unnecessary results (which cause useless wake-ups). Add a new nested attribute where sets of parameters to be matched can be passed when starting a scheduled scan. Only scan results that match any of the sets will be returned. At this point, the set consists of a single parameter, an SSID. This can be easily extended in the future to support more complex matches. Signed-off-by: Luciano Coelho <coelho@ti.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* nl80211/cfg80211: add WIPHY_FLAG_AP_UAPSD flagEliad Peller2011-09-133-1/+9
| | | | | | | | | | | add WIPHY_FLAG_AP_UAPSD flag to indicate uapsd support on AP mode. Advertise it to userspace by including a new NL80211_ATTR_SUPPORT_AP_UAPSD attribute. Signed-off-by: Eliad Peller <eliad@wizery.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* iwlwifi: signedness bug in iwl_trans_pcie_tx_agg_alloc()Dan Carpenter2011-09-131-1/+1
| | | | | | | | unsigned shorts and unsigned chars are never == -1. Signed-off-by: Dan Carpenter <error27@gmail.com> Signed-off-by: Wey-Yi Guy <wey-yi.w.guy@intel.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* iwlwifi: fix double assign in iwl_start_tx_ba_trans_ready()Dan Carpenter2011-09-131-1/+1
| | | | | | | | | | | | "vif" is assigned twice. We can remove the first one. This silences a Smatch warning that "ctx" could be one step past the end of the priv->contexts[] array. Signed-off-by: Dan Carpenter <error27@gmail.com> Reviewed-by: Johannes Berg <johannes@sipsolutions.net> Signed-off-by: Wey-Yi Guy <wey-yi.w.guy@intel.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* ath9k_hw: Fix rx latency of 11a modeRajkumar Manoharan2011-09-131-2/+5
| | | | | | | | Rx latecy to start signal(usec) of 11a is 41 not 37 and also corrected the rx delay in quarter rate. Signed-off-by: Rajkumar Manoharan <rmanohar@qca.qualcomm.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* mac80211: handle allocation failures in mesh_pathtbl_init()Dan Carpenter2011-09-131-2/+17
| | | | | | | | | The calls to kzalloc() weren't checked here and it upsets the static checkers. Obviously they're not super likely to fail, but we might as well add some error handling. Signed-off-by: Dan Carpenter <error27@gmail.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* mac80211: add flag to indicate HW only Tx-agg setup supportArik Nemtsov2011-09-134-2/+11
| | | | | | | | | When this flag is set, Tx A-MPDU sessions will not be started by mac80211. This flag is required for devices that support Tx A-MPDU setup in hardware. Signed-off-by: Arik Nemtsov <arik@wizery.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* wireless: Remove unnecessary OOM logging messagesJoe Perches2011-09-134-13/+2Star
| | | | | | | | | | | Removing unnecessary messages saves code and text. Site specific OOM messages are duplications of a generic MM out of memory message and aren't really useful, so just delete them. Signed-off-by: Joe Perches <joe@perches.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* rfkill: Remove unnecessary OOM logging messagesJoe Perches2011-09-131-1/+0Star
| | | | | | | | | | | Removing unnecessary messages saves code and text. Site specific OOM messages are duplications of a generic MM out of memory message and aren't really useful, so just delete them. Signed-off-by: Joe Perches <joe@perches.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* mac80211: Remove unnecessary OOM logging messagesJoe Perches2011-09-1310-93/+32Star
| | | | | | | | | | | Removing unnecessary messages saves code and text. Site specific OOM messages are duplications of a generic MM out of memory message and aren't really useful, so just delete them. Signed-off-by: Joe Perches <joe@perches.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* mac80211: Consolidate mesh path duplicated functionsJavier Cardona2011-09-131-42/+28Star
| | | | Signed-off-by: John W. Linville <linville@tuxdriver.com>
* mac80211: Consolidate {mesh,mpp}_path_flush into one functionJavier Cardona2011-09-131-39/+26Star
| | | | | Signed-off-by: Javier Cardona <javier@cozybit.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* mac80211: Don't iterate twice over all mpaths when once in sufficientJavier Cardona2011-09-131-27/+37
| | | | | Signed-off-by: Javier Cardona <javier@cozybit.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* mac80211: Remove redundant mesh path expiration checksJavier Cardona2011-09-131-6/+3Star
| | | | | Signed-off-by: Javier Cardona <javier@cozybit.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* mac80211: Improve mpath state lockingJavier Cardona2011-09-132-11/+7Star
| | | | | | | | No need to take the mpath state lock when an mpath is removed. Also, no need checking the lock when reading mpath flags. Signed-off-by: Javier Cardona <javier@cozybit.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* mac80211: Remove mesh paths when an interface is removedJavier Cardona2011-09-134-3/+47
| | | | | | | | | | | When an interface is removed, the mesh paths associated with it should also be removed. This fixes a bug we observed when reloading a device driver module without reloading mac80211s. Signed-off-by: Javier Cardona <javier@cozybit.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* mac80211: Fix RCU pointer dereference in mesh_path_discard_frame()Javier Cardona2011-09-131-1/+6
| | | | | | | Reported by Pedro Larbig (ASPj) Signed-off-by: Javier Cardona <javier@cozybit.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* mwifiex: replace kmalloc & memcpy sequence with kmemdupYogesh Ashok Powar2011-09-133-9/+9
| | | | | | | | | | | Sequence of kmalloc/kzalloc and memcpy is replaced with kmemdup. Cc: Walter Harms <wharms@bfs.de> Signed-off-by: Yogesh Ashok Powar <yogeshp@marvell.com> Signed-off-by: Kiran Divekar <dkiran@marvell.com> Signed-off-by: Bing Zhao <bzhao@marvell.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* ath9k: fix checks for first subframe delimiter paddingFelix Fietkau2011-09-132-2/+3
| | | | | | | | | | | The commit "ath9k_hw: Fix exceed transmission burst-time of 5GHz" added a padding of 60 delimiters on the first subframe to work around an issue on AR9380, but it lacked the checks to prevent it from being applied to pre-AR9380, enterprise AR9380 or AR9580+ Signed-off-by: Felix Fietkau <nbd@openwrt.org> Cc: Rajkumar Manoharan <rmanohar@qca.qualcomm.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* mwl8k: Set hardware flag IEEE80211_HW_AP_LINK_PSYogesh Ashok Powar2011-09-131-0/+8
| | | | | | | | | | This will avoid mac80211 to trigger PS mode for connected station based on the PM bit of incoming frames. AP firmware is capable of handling such frames and buffering TX frames destined to the stations that are in PS mode. Signed-off-by: Yogesh Ashok Powar <yogeshp@marvell.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* ath9k_hw: fix the last register write for ar5416 addacFelix Fietkau2011-09-131-1/+1
| | | | | | | | The previous register used in these initvals was probably accidentally copied over from the AR9100 values. Signed-off-by: Felix Fietkau <nbd@openwrt.org> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* ath9k_hw: drop an unused column in AR5008-AR9002 initvalsFelix Fietkau2011-09-134-1912/+1934
| | | | | | | | It was used for the defunct 'turbo' mode which was never implemented in the driver. Saves ~7.5k uncompressed Signed-off-by: Felix Fietkau <nbd@openwrt.org> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* cfg80211/nl80211: Indicate roaming feature capability to userspace.Vivek Natarajan2011-09-133-0/+12
| | | | | | | | | | | | | | | | | | When the rssi of the current AP drops, both wpa_supplicant and the firmware may do a background scan to find a better AP and try to associate. Since firmware based roaming is faster, inform wpa_supplicant to avoid roaming and let the firmware decide to roam if necessary. For fullmac drivers like ath6kl, it is just enough to provide the ESSID and the firmware will decide on the BSSID. Since it is not possible to do pre-auth during roaming for fullmac drivers, the wpa_supplicant needs to completely disconnect with the old AP and reconnect with the new AP. This consumes lot of time and it is better to leave the roaming decision to the firmware. Signed-off-by: Vivek Natarajan <nataraja@qca.qualcomm.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* mac80211: retry sending failed BAR frames later instead of tearing down aggrFelix Fietkau2011-09-132-1/+41
| | | | | | | | | | | | | | Unfortunately failed BAR tx attempts happen more frequently than I expected, and the resulting aggregation teardowns cause performance issues, as the aggregation session does not always get re-established properly. Instead of tearing down the entire aggr session, we can simply store the SSN of the last failed BAR tx attempt, wait for the first successful tx status event, and then send another BAR with the same SSN. Signed-off-by: Felix Fietkau <nbd@openwrt.org> Cc: Helmut Schaa <helmut.schaa@googlemail.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* b43: LCN-PHY: implement saving and restoring PHY & radio configurationRafał Miłecki2011-09-131-0/+35
| | | | | Signed-off-by: Rafał Miłecki <zajec5@gmail.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* bcma: extract some basic info about board from SPROMRafał Miłecki2011-09-131-0/+9
| | | | | Signed-off-by: Rafał Miłecki <zajec5@gmail.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* ssb: use u16 for storing board revRafał Miłecki2011-09-131-1/+1
| | | | | | | | Specs say about size 2 (u16) and my 14e4:4727 has board rev 0x1211. Signed-off-by: Rafał Miłecki <zajec5@gmail.com> Acked-by: Larry Finger <Larry.Finger@lwfinger.net> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* b43: LCN-PHY: prepare functions for channel switchingRafał Miłecki2011-09-131-2/+84
| | | | | | | Switching is not fully implemented yet, prepare place for the code. Signed-off-by: Rafał Miłecki <zajec5@gmail.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* b43: LCN-PHY: implement more PHY ops before radio initRafał Miłecki2011-09-131-3/+53
| | | | | Signed-off-by: Rafał Miłecki <zajec5@gmail.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* b43: LCN-PHY: add R/W ops for PHY and radioRafał Miłecki2011-09-131-2/+40
| | | | | Signed-off-by: Rafał Miłecki <zajec5@gmail.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* ath9k_hw: do not apply the 2.4 ghz ack timeout workaround to ctsFelix Fietkau2011-09-131-2/+3
| | | | | | | | | | | It is only used to workaround interoperability issues related to longer delays in receiving the block ack, so it is not necessary to apply it to the CTS exchange. Should improve throughput slightly, especially when there are lots of retransmissions. Signed-off-by: Felix Fietkau <nbd@openwrt.org> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* mac80211: Defer tranmission of mesh path errorsJavier Cardona2011-09-131-2/+30
| | | | | | | | | Under failure conditions, the mesh stack sends PERR messages to the previous sender of the failed frame. This happens in the tx feedback path, in which the transmission queue lock may be taken. Avoid a deadlock by sending the path error via the pending queue. Signed-off-by: John W. Linville <linville@tuxdriver.com>
* iwlwifi: iwl-agn-rs.c: remove old commentGreg Dietsche2011-08-301-1/+0Star
| | | | | | | | this comment refers to some code that was removed. Signed-off-by: Greg Dietsche <Gregory.Dietsche@cuw.edu> Signed-off-by: Wey-Yi Guy <wey-yi.w.guy@intel.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>