summaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2012-11-16ath9k_hw: Fix wrong peak detector DC offsetRajkumar Manoharan3-8/+116
An issue is reported in AR9462 & AR9565 that NF_cal_not_done is not observed when HW peak detector calibration is disabled. At that state, the HW is stuck at NF calibration which prevents tx output. The root cause is wrong peak detector offset calibrated by HW. To resolve this issue, peak detector calibration is done manually by SW for AR9462 and AR9565. Signed-off-by: Rajkumar Manoharan <rmanohar@qca.qualcomm.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
2012-11-16mwl8k: Send BASTREAM firmware commands per vifYogesh Ashok Powar1-6/+7
The firmware supports 8 macid's corresponding to 8 BSS that can be created in an MBSS environment. Currently, BASTREAM commands were always sent with macid 0. This macid is used to configure the hardware ampdu registers with appropriate BSS address in an MBSS environment. This mac address is used by the hardware for various ampdu related requirements e.g. source address in BAR generation, BA interpretation e.t.c. Using invalid macid results in this mac address not getting appropriately configured in the hardware which results in issues during ampdu traffic. Fix this by sending the BASTREAM commands with appropriate macid. Signed-off-by: Nishant Sarmukadam <nishants@marvell.com> Signed-off-by: Yogesh Ashok Powar <yogeshp@marvell.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
2012-11-16ssb: fix SPROM offsetPiotr Haber1-1/+1
Offset for temperature compensation values is wrong in ssb SPROMv8 map. Reviewed-by: Pieter-Paul Giesberts <pieterpg@broadcom.com> Reviewed-by: Arend van Spriel <arend@broadcom.com> Signed-off-by: Piotr Haber <phaber@broadcom.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
2012-11-16ath9k: [DFS] add pulse width tolerance for ETSIZefir Kurtisi1-1/+6
Add 5% width tolerance for radar patterns defined by ETSI. Signed-off-by: Zefir Kurtisi <zefir.kurtisi@neratec.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
2012-11-16Merge branch 'for-linville' of git://github.com/kvalo/ath6klJohn W. Linville18-285/+990
2012-11-16Merge branch 'for-john' of ↵John W. Linville17-112/+183
git://git.kernel.org/pub/scm/linux/kernel/git/iwlwifi/iwlwifi-next Conflicts: drivers/net/wireless/iwlwifi/pcie/trans.c
2012-11-16Merge branch 'for-john' of ↵John W. Linville41-481/+1324
git://git.kernel.org/pub/scm/linux/kernel/git/jberg/mac80211-next
2012-11-16ath6kl: support NL80211_USER_REG_HINT_CELL_BASE eventsKalle Valo1-3/+12
As ath6kl firmware can't do intersections the driver should only listen to regdom changes from cellular base stations, all other requests need to be refused. Signed-off-by: Kalle Valo <kvalo@qca.qualcomm.com>
2012-11-14mwl8k: Set packet timestamp to 0 when life time expiry is not usedNishant Sarmukadam1-0/+2
Set tx packet timestamp to 0 in following scenarios:- - All packets in STA mode - Mgmt packets in AP mode - Eapol packets in AP mode In STA mode, this field is unused in the firmware. In AP mode, we should not be expiring mgmt and eapol frames. Setting timestamp to 0 will ensure that. Signed-off-by: Nishant Sarmukadam <nishants@marvell.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
2012-11-14mwl8k: Do not expire eapol framesNishant Sarmukadam1-4/+7
This can cause issues when clients try to connect when the traffic is heavy Signed-off-by: Nishant Sarmukadam <nishants@marvell.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
2012-11-14mwl8k: Unmap the pci DMA address in xmit error pathNishant Sarmukadam1-0/+2
We should unmap the DMA address in the error path, else it causes resource leaks. Fix this. Signed-off-by: Nishant Sarmukadam <nishants@marvell.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
2012-11-14mwl8k: recheck if station still has valid ratesYogesh Ashok Powar1-0/+10
We have 6.5 Mbps is minimum rate of the link as the criterion for creation of BA. Although we check this before creating the BA stream, by the time amdpu_action is called from the workqueue, the link can get affected in the meantime. Hence, add an additional check in amdpu_action. Signed-off-by: Yogesh Ashok Powar <yogeshp@marvell.com> Signed-off-by: Nishant Sarmukadam <nishants@marvell.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
2012-11-14mwl8k: defining interface combinationsYogesh Ashok Powar1-1/+18
AP mode support upto 8 interfaces. Defining it using iface_combinations Signed-off-by: Yogesh Ashok Powar <yogeshp@marvell.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
2012-11-14mwifiex: process RX packets in SDIO IRQ thread directlyBing Zhao2-3/+4
ksdioirqd has higher priority than kworker. Process RX packets in SDIO IRQ thread (ksdioirqd/mmcX) directly instead of deferring the work to kworker to avoid the extra latency. This improves TCP throughput 15~20% on an ARM platform with SDIO 2.0 controller. Signed-off-by: Bing Zhao <bzhao@marvell.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
2012-11-14brcmfmac: use struct brcmf_if parameter in firmware event callbacksArend van Spriel3-46/+46
Firmware events are passed to wl_cfg80211 module associated with the primary net device. With virtual interface support events can be received for different interfaces, ie. struct brcmf_if instances. Pass it in the event to determine appropriate net device associated with the event. Reviewed-by: Hante Meuleman <meuleman@broadcom.com> Reviewed-by: Pieter-Paul Giesberts <pieterpg@broadcom.com> Signed-off-by: Arend van Spriel <arend@broadcom.com> Signed-off-by: Franky Lin <frankyl@broadcom.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
2012-11-14brcmfmac: add dedicated USB log level.Hante Meuleman2-29/+53
Add USB log level and update and add log messages in usb module. Reviewed-by: Arend Van Spriel <arend@broadcom.com> Signed-off-by: Hante Meuleman <meuleman@broadcom.com> Signed-off-by: Franky Lin <frankyl@broadcom.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
2012-11-14brcmfmac: on halting driver check before release or free.Hante Meuleman1-1/+5
brcmf_netdev_stop shall first check bus_if status before bringing down cfg80211. brcmf_detach shall first check if driver is allocated. Reviewed-by: Arend Van Spriel <arend@broadcom.com> Signed-off-by: Hante Meuleman <meuleman@broadcom.com> Signed-off-by: Franky Lin <frankyl@broadcom.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
2012-11-14brcmfmac: check bus state to be data before sending data.Hante Meuleman2-2/+2
brcmf_netdev_start_xmit and brcmf_fil_cmd_data are checking bus state for down. These functions should check for data state. Reviewed-by: Arend Van Spriel <arend@broadcom.com> Signed-off-by: Hante Meuleman <meuleman@broadcom.com> Signed-off-by: Franky Lin <frankyl@broadcom.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
2012-11-14brcmfmac: return immediately error for out of range key_idx.Hante Meuleman1-9/+6
when brcmf_cfg80211_del_key was called with out of range key index then firmware would return error. Checking was added to brcmf_cfg80211_del_key to immediately return error. Reviewed-by: Arend Van Spriel <arend@broadcom.com> Signed-off-by: Hante Meuleman <meuleman@broadcom.com> Signed-off-by: Franky Lin <frankyl@broadcom.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
2012-11-14brcmfmac: fix build regressionArend van Spriel1-1/+1
This fixes a build regression for x86_64 target that showed up in 3.7-rc1 due to: commit 1a87334239757b69eb9885979c32bbf871b3ec88 Author: Hante Meuleman <meuleman@broadcom.com> Date: Thu Sep 27 14:17:54 2012 +0200 brcmfmac: add hostap supoort. Reported-by: Yuanhan Liu <yuanhan.liu@intel.com> Reported-by: Geert Uytterhoeven <geert@linux-m68k.org> Reported-by: Randy Dunlap <rdunlap@infradead.org> Reviewed-by: Hante Meuleman <meuleman@broadcom.com> Signed-off-by: Arend van Spriel <arend@broadcom.com> Signed-off-by: Franky Lin <frankyl@broadcom.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
2012-11-14brcmfmac: change return type of brcmf_sdio_hdparserFranky Lin1-24/+23
Use int instead of bool as the return type of function brcmf_sdio_hdparser to explicitly describe error returns. Signed-off-by: Franky Lin <frankyl@broadcom.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
2012-11-14brcmfmac: remove brcmf_sdbrcm_wait_for_eventFranky Lin1-8/+3
brcmf_sdbrcm_wait_for_event is now a one line function and only used by brcmf_sdbrcm_bus_txctl. Intergrate the function call wait_event_interruptible_timeout into brcmf_sdbrcm_bus_txctl. Signed-off-by: Franky Lin <frankyl@broadcom.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
2012-11-14brcmfmac: protect consecutive SDIO access with sdio_claim_hostFranky Lin3-71/+82
Semaphore sdsem is used to protect consecutive memory access through SDIO bus. Same functionality is provided by sdio_claim_host/ sdio_release_host interface as well. Replace sdsem with sdio_claim_host. Signed-off-by: Franky Lin <frankyl@broadcom.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
2012-11-14brcmfmac: decrease the range of SDIO access lockFranky Lin1-28/+34
Semaphore sdsem which protects consecutive SDIO bus access is used to lock down unnecessary wide range. Decrease the locking range provides the capability of parallel processing. Signed-off-by: Franky Lin <frankyl@broadcom.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
2012-11-14brcmfmac: use dynamically allocated control frame bufferFranky Lin1-15/+38
Rxbuf in SDIO interface is used in normal frame and control frame read. Use dynamically allocated buffer in control frame read path for post processing to avoid conflicts. Signed-off-by: Franky Lin <frankyl@broadcom.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
2012-11-14brcmfmac: fix NULL pointer access in brcmf_create_iovar()Arend van Spriel1-1/+1
The function brcmf_fil_bsscfg_data_get() calls brcmf_create_iovar() with data pointer set to NULL, which caused a NULL pointer access. As it should be possible to provide data in message towards the firmware, it should just pass the data buffer instead. Reviewed-by: Hante Meuleman <meuleman@broadcom.com> Signed-off-by: Arend van Spriel <arend@broadcom.com> Signed-off-by: Franky Lin <frankyl@broadcom.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
2012-11-14brcmfmac: remove obsolete function brcmf_c_mkiovarHante Meuleman2-24/+0
the refactored firmware interface layer made this function obsolete. Reviewed-by: Arend Van Spriel <arend@broadcom.com> Signed-off-by: Hante Meuleman <meuleman@broadcom.com> Signed-off-by: Franky Lin <frankyl@broadcom.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
2012-11-14brcmfmac: remove obsolete variable from brcmf_cfg80211_start_ap()Arend van Spriel1-5/+3
The function brcmf_cfg80211_start_ap() had some variables declared that were not used or not needed any longer. This patch removes those variables. Reviewed-by: Pieter-Paul Giesberts <pieterpg@broadcom.com> Reviewed-by: Hante Meuleman <meuleman@broadcom.com> Signed-off-by: Arend van Spriel <arend@broadcom.com> Signed-off-by: Franky Lin <frankyl@broadcom.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
2012-11-14brcmfmac: change parameter of brcmf_set_management_ie()Arend van Spriel2-15/+24
The function brcmf_set_management_ie() operates on virtual interface data and brcmf_cfg80211_vif structure provides all information needed for interfacing with firmware. As this function will also be needed for interface without an associated net device it makes sense to provide the vif instead of deriving it from the net device. Reviewed-by: Pieter-Paul Giesberts <pieterpg@broadcom.com> Reviewed-by: Hante Meuleman <meuleman@broadcom.com> Signed-off-by: Arend van Spriel <arend@broadcom.com> Signed-off-by: Franky Lin <frankyl@broadcom.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
2012-11-14brcmfmac: fix pkt_filter sizeof calculation.Hante Meuleman1-6/+2
sizeof calculation in setting pkt_filter was incorrect. This patch fixes that and removes related defines which have become obsolete. Reviewed-by: Arend Van Spriel <arend@broadcom.com> Reviewed-by: Pieter-Paul Giesberts <pieterpg@broadcom.com> Signed-off-by: Hante Meuleman <meuleman@broadcom.com> Signed-off-by: Franky Lin <frankyl@broadcom.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
2012-11-14brcmfmac: use wait_event_timeout for 8021x pending countHante Meuleman2-18/+17
brcmf_netdev_wait_pend8021x was polling to see if 8021x data was already sent. Code was replaced using wait_event_timeout. Reviewed-by: Arend Van Spriel <arend@broadcom.com> Reviewed-by: Pieter-Paul Giesberts <pieterpg@broadcom.com> Signed-off-by: Hante Meuleman <meuleman@broadcom.com> Signed-off-by: Franky Lin <frankyl@broadcom.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
2012-11-14brcmfmac: handle exceptions in brcmf_bus_start correct.Hante Meuleman1-4/+9
On exception during brcmf_bus_start the netdev should be freed, if already allocated. Reviewed-by: Arend Van Spriel <arend@broadcom.com> Reviewed-by: Pieter-Paul Giesberts <pieterpg@broadcom.com> Signed-off-by: Hante Meuleman <meuleman@broadcom.com> Signed-off-by: Franky Lin <frankyl@broadcom.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
2012-11-14brcmfmac: use fwil for netdev callbacks.Hante Meuleman3-259/+70
Change setting up multicast, mac address and offloading to use the refactored firmware interface layer. Remove obsolete brcmf_proto_dcmd function. Reviewed-by: Arend Van Spriel <arend@broadcom.com> Reviewed-by: Pieter-Paul Giesberts <pieterpg@broadcom.com> Signed-off-by: Hante Meuleman <meuleman@broadcom.com> Signed-off-by: Franky Lin <frankyl@broadcom.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
2012-11-14brcmfmac: remove obsolete i-scan and clean up related code.Hante Meuleman5-683/+27
e-scan has become the default scanning method. This patch removes the i-scan related code and cleans up e-scan related code to be always enabled. Reviewed-by: Arend Van Spriel <arend@broadcom.com> Reviewed-by: Pieter-Paul Giesberts <pieterpg@broadcom.com> Signed-off-by: Hante Meuleman <meuleman@broadcom.com> Signed-off-by: Franky Lin <frankyl@broadcom.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
2012-11-14brcmfmac: make pointer type constant in brcmf_set_management_ie()Arend van Spriel1-7/+7
The vendor ie buffer passed to brcmf_set_management_ie() is not modified and the caller always provided a constant buffer, which needed a cast. Better making the buffer parameter of the function constant so the casts can be removed. Reviewed-by: Hante Meuleman <meuleman@broadcom.com> Reviewed-by: Pieter-Paul Giesberts <pieterpg@broadcom.com> Signed-off-by: Arend van Spriel <arend@broadcom.com> Signed-off-by: Franky Lin <frankyl@broadcom.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
2012-11-14brcmfmac: restrict error condition in brcmf_inform_bss()Arend van Spriel1-1/+2
The function brcmf_inform_bss() validates the version received from the device, before processing the individual bss entries. This error condition is only applicable when the list contains entries. A specific scan, ie. for a specific ssid, can result in a scan completion without finding any bss entries. No need to flag it as an error in the log when this happens. Reviewed-by: Hante Meuleman <meuleman@broadcom.com> Reviewed-by: Pieter-Paul Giesberts <pieterpg@broadcom.com> Signed-off-by: Arend van Spriel <arend@broadcom.com> Signed-off-by: Franky Lin <frankyl@broadcom.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
2012-11-14brcmfmac: simplify if-else condition in brcmf_cfg80211_escan()Arend van Spriel1-3/+1
Code flow was: err = foo(); if (!err) return err; else goto exit; return 0; Changed it to just to exit label if err is non-zero. Reviewed-by: Hante Meuleman <meuleman@broadcom.com> Reviewed-by: Pieter-Paul Giesberts <pieterpg@broadcom.com> Signed-off-by: Arend van Spriel <arend@broadcom.com> Signed-off-by: Franky Lin <frankyl@broadcom.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
2012-11-14brcmfmac: remove obsolete structure ap_infoArend van Spriel2-41/+0
The data stored in ap_info structure is no longer used so remove it from the driver. Signed-off-by: Arend van Spriel <arend@broadcom.com> Signed-off-by: Franky Lin <frankyl@broadcom.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
2012-11-14ar5523: Don't dereference sta if NULLPontus Fuchs1-2/+2
A missing else caused a potential NULL dereference. Reported-by: Yuanhan Liu <yuanhan.liu@linux.intel.com> Signed-off-by: Pontus Fuchs <pontus.fuchs@gmail.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
2012-11-14ar5523: Fix sparse endianness warningsPontus Fuchs2-21/+24
__be32 variables where used a little careless leading to sparse warnings. Treat them a little more gentle. Reported-by: Fengguang Wu <fengguang.wu@intel.com> Signed-off-by: Pontus Fuchs <pontus.fuchs@gmail.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
2012-11-14drivers/net/wireless/ath/ath6kl/hif.c: drop if around WARN_ONJulia Lawall1-4/+2
Just use WARN_ON rather than an if containing only WARN_ON(1). A simplified version of the semantic patch that makes this transformation is as follows: (http://coccinelle.lip6.fr/) // <smpl> @@ expression e; @@ - if (e) WARN_ON(1); + WARN_ON(e); // </smpl> Signed-off-by: Julia Lawall <Julia.Lawall@lip6.fr> Signed-off-by: John W. Linville <linville@tuxdriver.com>
2012-11-14Wireless: rt2x00: Add device id for Sweex LW323 to rt2800usb.cJaume Delclòs1-0/+1
This patch adds detection for the Sweex LW323 USB wireless network card in the rt2x00 driver (just one line in rt2800usb.c). It applies to linux-3.7-rc3. Signed-off-by: Jaume Delclòs <jaume@delclos.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
2012-11-14mwifiex: add multi-queue supportAvinash Patil14-98/+107
This patch adds support for multiple TX queues inside mwifiex driver. Four different queues according to WMM access categories are defined for each virtual interface. When a packet is received from netdev for transmission, tx pending count for particular queue is incremented and if tx pending count has reached upper water-mark, this queue is stopped instead of stopping all queues. Similarly when a packet is successfully transmitted from device, tx pending count is decremented per queue and if pending count falls below lower water-mark, queue operations are again resumed. This ensures that not all tranmission is blocked if traffic with particular TOS value suddenly increases. Also wake all queues after association/IBSS_join/uAP_BSS_start to enable traffic on all queues. Signed-off-by: Avinash Patil <patila@marvell.com> Signed-off-by: Bing Zhao <bzhao@marvell.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
2012-11-14mwifiex: add support for SDIO card resetAmitkumar Karwar4-0/+38
When command timeout happens due to a bug in firmware/hardware, the timeout handler just prints some debug information. User is unable to reload the driver in this case. Inspired by 9a821f5 "libertas: add sd8686 reset_card support", this patch adds card reset support for SDIO interface when command timeout happens. If the SDIO host contoller supports MMC_POWER_OFF|UP|ON operations, the chip will be reset and the firmware will be re-downloaded. Signed-off-by: Amitkumar Karwar <akarwar@marvell.com> Signed-off-by: Bing Zhao <bzhao@marvell.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
2012-11-14brcmfmac: remove duplicated include from dhd_dbg.cWei Yongjun1-1/+0
Remove duplicated include. dpatch engine is used to auto generate this patch. (https://github.com/weiyj/dpatch) Signed-off-by: Wei Yongjun <yongjun_wei@trendmicro.com.cn> Signed-off-by: John W. Linville <linville@tuxdriver.com>
2012-11-14ar5523: use module_usb_driver to simplify the codeWei Yongjun1-12/+1
Use the module_usb_driver() macro to make the code simpler by eliminating module_init and module_exit calls. dpatch engine is used to auto generate this patch. (https://github.com/weiyj/dpatch) Signed-off-by: Wei Yongjun <yongjun_wei@trendmicro.com.cn> Signed-off-by: John W. Linville <linville@tuxdriver.com>
2012-11-14add Marvell 88W8688 support to libertas_sdioHarro Haan1-9/+30
This chip is for example used in the GuruPlug. This patch avoids the following error: libertas_sdio: failed to load firmware libertas_sdio: probe of mmc0:0001:1 failed with error -5 The fix is based on code in: drivers/net/wireless/libertas_uap/uap_sdio_mmc.c This file can for example be found on the following links: http://www.xilka.com/sheeva/2.6/2.6.36/2.6.36.2/source/0002-Driver-for-Marvell-Libertas-8688-SDIO-micro-AP-suppo-2.6.35.patch http://www.downloadsnewit.co.uk/kernel-v3.0.7/ I followed the following wiki to setup a working WiFi client mode connection on the GuruPlug: http://wiki.debian.org/libertas Signed-off-by: Harro Haan <hrhaan@gmail.com> Acked-by: Dan Williams <dcbw@redhat.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
2012-11-14carl9170: kill MODULE_VERSIONLuis R. Rodriguez1-5/+0
This is pretty pointless. Lets kill this to stop people from thinking that its actually used. Maybe we should go on a crusade and kill this completely from the kernel. Cc: Vladimir Kondratiev <qca_vkondrat@qca.qualcomm.com> Acked-by: Christian Lamparter <chunkeey@googlemail.com> Signed-off-by: Luis R. Rodriguez <mcgrof@do-not-panic.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
2012-11-14ath9k: fix memory leak in DFS pattern detectorZefir Kurtisi1-0/+1
Free instance of pattern detector if requested DFS domain is not supported. Signed-off-by: Zefir Kurtisi <zefir.kurtisi@neratec.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
2012-11-14ath9k: resolve name collision in DFS detectorZefir Kurtisi2-4/+4
set_domain() is already defined in /arch/arm/asm/domain.h Signed-off-by: Zefir Kurtisi <zefir.kurtisi@neratec.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>