summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* mac80211: Build TX radiotap header dynamicallyHelmut Schaa2011-10-143-52/+78
| | | | | | | | | | | | | | | | Get rid of the ieee80211_tx_status_rtap_hdr struct and instead build the rtap header dynamically. This makes it easier to extend the rtap header generation in the future. Add ieee80211_tx_radiotap_len to calculate the expected size of the rtap header before generating it. Since we can't check if the rtap header fits into the requested headroom during compile time anymore add a WARN_ON_ONCE. Also move the actual rtap header generation into its own function. Signed-off-by: Helmut Schaa <helmut.schaa@googlemail.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* iwlagn: add missing include to iwl-agn-rs.hEmmanuel Grumbach2011-10-141-0/+4
| | | | | | | | A few were missing Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com> Signed-off-by: Wey-Yi Guy <wey-yi.w.guy@intel.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* iwlagn: remove uneeded include to iwl-dev.hEmmanuel Grumbach2011-10-142-5/+1
| | | | | | | | iwl-core.c and iwl-trans-pcie-tx.c don't need to include iwl-dev.h Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com> Signed-off-by: Wey-Yi Guy <wey-yi.w.guy@intel.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* iwlagn: move iwl_enable_rfkill_int and kill iwl-helpers.hEmmanuel Grumbach2011-10-1416-59/+8
| | | | | | | | | Move iwl_enable_rfkill_int to iwl-core.h, and remove the empty iwl-helpers.h Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com> Signed-off-by: Wey-Yi Guy <wey-yi.w.guy@intel.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* iwlagn: move iwl_beacon_time_mask_XXX near to usageEmmanuel Grumbach2011-10-142-29/+23
| | | | | | | | | Since iwl_beacon_time_mask_[high,low] are used in iwl-core.c only, move them to there. Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com> Signed-off-by: Wey-Yi Guy <wey-yi.w.guy@intel.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* iwlagn: remove 6000 hw headerJohannes Berg2011-10-144-83/+9
| | | | | | | | | | The constants can be moved together with the similar ones for other devices and we can then remove the file. Signed-off-by: Johannes Berg <johannes.berg@intel.com> Signed-off-by: Wey-Yi Guy <wey-yi.w.guy@intel.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* iwlagn: remove 5000 hw headerJohannes Berg2011-10-142-89/+15
| | | | | | | | | The inline function in this header is only used in a single file, so we can move it there. Signed-off-by: Johannes Berg <johannes.berg@intel.com> Signed-off-by: Wey-Yi Guy <wey-yi.w.guy@intel.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* iwlagn: rename iwl-rx.c to iwl-agn-rx.cWey-Yi Guy2011-10-142-51/+56
| | | | | | | | After driver split, there were no shared functions between agn and legacy; rename iwl-rx.c to iwl-agn-rx.c Signed-off-by: Wey-Yi Guy <wey-yi.w.guy@intel.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* iwlagn: merge station management functionsWey-Yi Guy2011-10-1417-1007/+940
| | | | | | | | After driver split, no need to separate station management functions in two files, merge it Signed-off-by: Wey-Yi Guy <wey-yi.w.guy@intel.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* iwlagn: rename all the mac80211 callback functionsWey-Yi Guy2011-10-1412-56/+63
| | | | | | | Use the same calling style for all the mac80211 callback functions Signed-off-by: Wey-Yi Guy <wey-yi.w.guy@intel.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* iwlagn: add debug for mac80211 callbackWey-Yi Guy2011-10-145-9/+40
| | | | | | | Add IWL_DEBUG_MAC80211 debug for all mac80211 callback function Signed-off-by: Wey-Yi Guy <wey-yi.w.guy@intel.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* iwlagn: don't stop rts/cts until last aggregation queue closeWey-Yi Guy2011-10-141-6/+4
| | | | | | | | Once enable rts/cts for aggregation queue, do not disable until the last aggregation queue closed. Signed-off-by: Wey-Yi Guy <wey-yi.w.guy@intel.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* iwlagn: more info on warning for shutdown agg queueWey-Yi Guy2011-10-141-2/+3
| | | | | | | | When detect wrong state on shutdown aggregation queue, show more information for debugging Signed-off-by: Wey-Yi Guy <wey-yi.w.guy@intel.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* iwlwifi: update comments on how to enable debug flagWey-Yi Guy2011-10-142-5/+7
| | | | | | | Modify comments on how to enable and change debug_level Signed-off-by: Wey-Yi Guy <wey-yi.w.guy@intel.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* iwlagn: use low retry limit for WoWLANWey-Yi Guy2011-10-142-11/+18
| | | | | | | When in D3 state, use low retry limit for both data and rts Signed-off-by: Wey-Yi Guy <wey-yi.w.guy@intel.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* iwlagn: do nothing when disable agg in wrong stateWey-Yi Guy2011-10-141-0/+2
| | | | | | | When disable aggregation request come in on wrong agg state. ignore it Signed-off-by: Wey-Yi Guy <wey-yi.w.guy@intel.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* iwlagn: warn only once if AGG state is wrongEmmanuel Grumbach2011-10-141-1/+1
| | | | | | | | This one can be _very_ noisy. Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com> Signed-off-by: Wey-Yi Guy <wey-yi.w.guy@intel.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* iwlagn: fix a race in the unmapping of the TFDsEmmanuel Grumbach2011-10-141-0/+3
| | | | | | | | | | | | | | | While inspecting the code, I saw that iwl_tx_queue_unmap modifies the read pointer of the Tx queue without taking any locks. This means that it can race with the reclaim flow. This can possibly lead to a DMA warning complaining that we unmap the same buffer twice. This is more a W/A than a fix since it is really weird to take sta_lock inside iwl_tx_queue_unmap, but it can help until we revamp the locking model in the transport layer. Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com> Signed-off-by: Wey-Yi Guy <wey-yi.w.guy@intel.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* iwlagn: Add "_d" sku to 105 series of devicesWey-Yi Guy2011-10-143-0/+8
| | | | | | | Add additional sku to 105 series Signed-off-by: Wey-Yi Guy <wey-yi.w.guy@intel.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* iwlagn: add "_d" sku to 6005 series of devicesWey-Yi Guy2011-10-143-0/+8
| | | | | | | Add additional sku to 6005 series of devices Signed-off-by: Wey-Yi Guy <wey-yi.w.guy@intel.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* iwlagn: set rts retry limitWey-Yi Guy2011-10-142-10/+13
| | | | | | | setup the rts rety limit for tx command Signed-off-by: Wey-Yi Guy <wey-yi.w.guy@intel.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* iwlagn: remove un-necessary stepWey-Yi Guy2011-10-141-2/+1
| | | | | | | No need to copy twice. Signed-off-by: Wey-Yi Guy <wey-yi.w.guy@intel.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* iwlagn: stop interrupts when suspendingJohannes Berg2011-10-141-1/+6
| | | | | | | | | | | | | | | | | Occasionally, the device will send interrupts while it is resuming, at a point where we are not set up again to handle them. This causes the core IRQ handling to completely disable the IRQ, and then the driver won't work again until it is reloaded/rebound. To fix this issue disable the IRQ on suspend, this will cause us to only get interrupts again after we've setup everything on resume. Signed-off-by: Johannes Berg <johannes.berg@intel.com> Signed-off-by: Wey-Yi Guy <wey-yi.w.guy@intel.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* iwlagn: eliminate bus pointer from iwl_priv structureDon Fry2011-10-146-19/+14
| | | | | | | | | A pointer to the bus structure is still in iwl_priv. Finish cleanup and remove it. Signed-off-by: Don Fry <donald.h.fry@intel.com> Signed-off-by: Wey-Yi Guy <wey-yi.w.guy@intel.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* iwlagn: kill hw_params.max_stationsEmmanuel Grumbach2011-10-147-15/+6
| | | | | | | | Not needed since driver split. Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com> Signed-off-by: Wey-Yi Guy <wey-yi.w.guy@intel.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* iwlagn: send simple LQ command for WoWLANJohannes Berg2011-10-143-11/+25
| | | | | | | | | | | | For some reason, WoWLAN doesn't always seem to be happy with more advanced LQ commands. Since we don't need them as we're not going to send a lot of data, simply program the station with the very simple default LQ command. Signed-off-by: Johannes Berg <johannes.berg@intel.com> Signed-off-by: Wey-Yi Guy <wey-yi.w.guy@intel.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* iwlagn: don't assign seqno to QoS Null framesJohannes Berg2011-10-141-2/+2
| | | | | | | | | | | | | | | | | 802.11 says: "Sequence numbers for QoS (+)Null frames may be set to any value." However, if we use the normal counters then peers will get confused with aggregation since there'll be holes in the sequence number sequence. To avoid that, don't assign sequence numbers to QoS Null frames. Signed-off-by: Johannes Berg <johannes.berg@intel.com> Signed-off-by: Wey-Yi GUy <wey-yi.w.guy@intel.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* iwlagn: update beacon smarterJohannes Berg2011-10-142-2/+11
| | | | | | | | | | | | | | | | | | | Updating the beacon every time right after one was transmitted is pointless, most of the time we might not even have to update it. We will update it every time it changes, which includes from set_tim(), a callback iwlwifi didn't implement so far. This also reduces latency for clients, previously we would update the beacon right after the previous one was transmitted, and then a TIM change would only take effect after that again -- updating the beacon right after the TIM changes makes the TIM change go out to the air faster. Signed-off-by: Johannes Berg <johannes.berg@intel.com> Signed-off-by: Wey-Yi Guy <wey-yi.w.guy@intel.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* iwlagn: add "echo test" command to debugfsWey-Yi Guy2011-10-143-1/+27
| | | | | | | For command queue testing, add "echo test" to debugfs Signed-off-by: Wey-Yi Guy <wey-yi.w.guy@intel.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* iwlagn: check rf kill in queue stuckWey-Yi Guy2011-10-141-0/+3
| | | | | | | check the RF KILL flag in queue stuck watch dog function Signed-off-by: Wey-Yi Guy <wey-yi.w.guy@intel.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* iwlagn: add "echo" test when command queue stuckWey-Yi Guy2011-10-142-1/+23
| | | | | | | | When detect command queue stuck, instead of reload the firmware do the "echo" test to make sure it is really stuck before reload Signed-off-by: Wey-Yi Guy <wey-yi.w.guy@intel.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* iwlagn: add WARN if tx cmd complete come back lateWey-Yi Guy2011-10-141-0/+5
| | | | | | | | For error condition, STATUS_HCMD_ACTIVE already got clear before receive tx cmd complete, give warning Signed-off-by: Wey-Yi Guy <wey-yi.w.guy@intel.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* iwlagn: add REPLY_ECHO host commandWey-Yi Guy2011-10-141-0/+1
| | | | | | | | Add "echo" host command for testing and drebugging to make sure uCode still responding Signed-off-by: Wey-Yi Guy <wey-yi.w.guy@intel.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* iwlagn: add cmd queue pointer info when timeoutWey-Yi Guy2011-10-141-0/+9
| | | | | | | When detect cmd queue time out, display the current read/write pointer Signed-off-by: Wey-Yi Guy <wey-yi.w.guy@intel.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* net: wireless: brcm80211: replace ndo_set_multicast_list with ndo_set_rx_modeStephen Rothwell2011-10-121-1/+1
| | | | | Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* mwifiex: add support for Marvell pcie8766 chipsetAmitkumar Karwar2011-10-1218-37/+2284
| | | | | | | | | | | | | | | This patch supports 88W8766P chipset with a PCIe interface. The corresponding firmware image file is located at: "mrvl/pcie8766_uapsta.bin" Signed-off-by: Amitkumar Karwar <akarwar@marvell.com> Signed-off-by: Ramesh Radhakrishnan <rramesh@marvell.com> 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: Frank Huang <frankh@marvell.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* ath9k: only send FCS-fail packets to mac80211 if requestedFelix Fietkau2011-10-111-1/+2
| | | | | | | | Prevents lots of broken frames from showing up on monitor interfaces by default. Signed-off-by: Felix Fietkau <nbd@openwrt.org> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* ath9k_hw: fix a regression in key miss handlingFelix Fietkau2011-10-114-17/+19
| | | | | | | | | | | | | | | | | | | | The commit "ath9k_hw: Fix incorrect key_miss handling" changed the code to only report key miss errors if a MIC error wasn't reported. When checking the flags in that order in the MAC code, it might miss some real events, because the value of the MIC error flag is undefined under some conditions. The primary issue addressed by the previous commit is making sure that MIC errors are properly reported on the STA side. This can be fixed in a better way by adding a separate rx status flag for key miss and ignoring it for multicast frames. This fix slightly improves stability in AP mode on some older hardware, like AR9132. Signed-off-by: Felix Fietkau <nbd@openwrt.org> Cc: stable@kernel.org Signed-off-by: John W. Linville <linville@tuxdriver.com>
* ath9k_hw: remove EEP_REG_1Felix Fietkau2011-10-115-9/+0
| | | | | | | It was previously used for current_rd_ext Signed-off-by: Felix Fietkau <nbd@openwrt.org> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* ath: remove ath_regulatory::current_rd_extFelix Fietkau2011-10-113-7/+0
| | | | | | | | It is unused since the previous dead code that was using it had been removed earlier. Signed-off-by: Felix Fietkau <nbd@openwrt.org> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* ath9k_hw: clean up tx power handlingFelix Fietkau2011-10-1113-176/+85
| | | | | | | | | | | | | | | The code for handling various restrictions concerning regulatory limits, antenna gain, etc. is very convoluted and duplicated across various EEPROM parsing implementations, making it hard to review. This patch partially cleans up the mess by unifying regulatory limit handling in one function and simplifying handling of antenna gain. It also removes unused transmit power scaling arrays from the EEPROM code, which belonged to an unimplemented API that isn't supposed to be in the driver anyway. Signed-off-by: Felix Fietkau <nbd@openwrt.org> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* ath9k_hw: make ath9k_hw_set_interrupts use ah->imask by defaultFelix Fietkau2011-10-116-17/+17
| | | | | Signed-off-by: Felix Fietkau <nbd@openwrt.org> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* ath9k: disable unnecessary PHY error reportingFelix Fietkau2011-10-112-9/+1
| | | | | | | | | | | PHY errors relevant for ANI are always tracked by hardware counters, the bits that allow them to pass through the rx filter are independent of that. Enabling PHY errors in the rx filter often creates lots of useless DMA traffic and might be responsible for some of the rx dma stop failure warnings. Signed-off-by: Felix Fietkau <nbd@openwrt.org> Cc: stable@kernel.org Signed-off-by: John W. Linville <linville@tuxdriver.com>
* b43: trivial: do not report any link quality instead of invalid oneRafał Miłecki2011-10-111-5/+7
| | | | | | | We don't want to report random quality info (new PHYs are affected). Signed-off-by: Rafał Miłecki <zajec5@gmail.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* rtlwifi: Change debug parameter to apply to individual driversLarry Finger2011-10-116-6/+25
| | | | | | | | | The current debug parameter is applied to rtlwifi, which means that all loaded drivers have the same level of debugging applied. In addition, the previous method requires a two-step load process to enable debugging. Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* mac80211: dont orphan TX skbJohannes Berg2011-10-111-5/+0
| | | | | | | | | | | | | | | | | This was another workaround for truesize "bugs". The reason we did this was that when we orphaned the SKB it wouldn't be truesize-checked later. Now that the check is gone (and we just charge the former smaller size to the socket) there's no longer a reason to orphan the skb here. Keep the skb charged to the socket until it is really freed (or orphaned in TX status). This helps flow control and allows us to get at the socket later for other purposes. Signed-off-by: Johannes Berg <johannes.berg@intel.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* mac80211: dont adjust truesizeJohannes Berg2011-10-111-3/+0
| | | | | | | | | | | | | | | | There's no need to adjust truesize. The history of this was that we always ran into skb_truesize_bug (via skb_truesize_check) which has since been removed in commit 92a0acce186cd. skb_truesize_check() checked that truesize was bigger or equal to the actual allocation, which would trigger in mac80211 due to header adding. The check no longer exists and we shouldn't be messing with the truesize anwyay. Signed-off-by: Johannes Berg <johannes.berg@intel.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* mac80211: parse radiotap header earlierJohannes Berg2011-10-112-116/+89
| | | | | | | | | | | We can now move the radiotap header parsing into ieee80211_monitor_start_xmit(). This moves it out of the hotpath, and also helps the code since now the radiotap header will no longer be present in ieee80211_xmit() etc. which is easier to understand. Signed-off-by: Johannes Berg <johannes.berg@intel.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* mac80211: move fragment flag to info flag as dont-fragmentJohannes Berg2011-10-114-27/+20
| | | | | | | | | | | | | The purpose of this is two-fold: 1) by moving it out of tx_data.flags, we can in another patch move the radiotap parsing so it no longer is in the hotpath 2) if a device implements fragmentation but can optionally skip it, the radiotap request for not doing fragmentation may be honoured Signed-off-by: Johannes Berg <johannes.berg@intel.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* mac80211: remove tx_data ethertypeJohannes Berg2011-10-112-7/+1
| | | | | | | It's set, but never used, so kill it. Signed-off-by: Johannes Berg <johannes.berg@intel.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
OpenPOWER on IntegriCloud