summaryrefslogtreecommitdiff
path: root/drivers/net/wireless/ath/ath6kl
AgeCommit message (Collapse)AuthorFilesLines
2012-04-26ath6kl: Don't advertise HT capability for incapable firmwareVasanthakumar Thiagarajan1-1/+8
With firmwares which do not support rsn capability override (ATH6KL_FW_CAPABILITY_RSN_CAP_OVERRIDE) from host would cause 4-way handshake failure when HT cap is advertised. To fix this, do not advertise HT cap with cfg80211 for those fw. kvalo: fix a checkpatch warning Signed-off-by: Vasanthakumar Thiagarajan <vthiagar@qca.qualcomm.com> Signed-off-by: Kalle Valo <kvalo@qca.qualcomm.com>
2012-04-26ath6kl: Multicast filter support in wow suspend and non-suspendNaveen Gangadharan3-10/+43
This patch enables all multicast packets in non suspend mode and enable multicast filtering in wow suspend mode. This also fixes a bug in multicast where the driver assumed disable multicast-all command disabled/filtered all multicast packets, which was wrong assumption, because firmware will apply the programmed filter. Multicast requirements - Enable forward all multicast packets(no filtering) in non suspend mode. - Enable multicast filtering in wow suspend mode for both AP and CLIENT. kvalo: fix a checkpatch warning and drop unrelated newline removal Signed-off-by: Naveen Gangadharan <ngangadh@qca.qualcomm.com> Signed-off-by: Kalle Valo <kvalo@qca.qualcomm.com>
2012-04-25ath6kl: check for sband existence when creating scan cmdThomas Pedersen1-5/+10
The patch "ath6kl: support fw reporting phy capabilities" gave the firmware the ability to disable certain wiphy supported bands. Check if this is the case in ath6kl_wmi_beginscan_cmd to avoid dereferencing a NULL pointer. kvalo: change the patch so that there's no code between declarations Signed-off-by: Thomas Pedersen <c_tpeder@qca.qualcomm.com> Signed-off-by: Kalle Valo <kvalo@qca.qualcomm.com>
2012-04-25ath6kl: include in.h explicitlyLuis R. Rodriguez1-0/+1
Do not assume anyone before us includes it for us. Signed-off-by: Luis R. Rodriguez <mcgrof@do-not-panic.com> Signed-off-by: Kalle Valo <kvalo@qca.qualcomm.com>
2012-04-23ath6kl: unblock fwlog_block_read() on exitThomas Pedersen1-0/+1
Complete the waiting fwlog_block_read on debugfs cleanup, otherwise userspace and module unload might softlock. Signed-off-by: Thomas Pedersen <c_tpeder@qca.qualcomm.com> Signed-off-by: Kalle Valo <kvalo@qca.qualcomm.com>
2012-04-23ath6kl: fix an indenting issueDan Carpenter1-10/+11
This is supposed to be pushed in one indent level. Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com> Signed-off-by: Kalle Valo <kvalo@qca.qualcomm.com>
2012-04-23ath6kl: change || to &&Dan Carpenter1-2/+2
The original conditions are always true. I think && was intended here, but I don't have the hardware to test. Could you take a look? kvalo: Chilam confirmed that the fix is valid Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com> Signed-off-by: Kalle Valo <kvalo@qca.qualcomm.com>
2012-04-23ath6kl: disallow WoW with multiple vifsThomas Pedersen1-0/+8
The ath6kl fw does not have enough memory to support the WoW filters of more than one vif. Disallow WoW suspend if this is the case. Signed-off-by: Thomas Pedersen <c_tpeder@qca.qualcomm.com> Signed-off-by: Kalle Valo <kvalo@qca.qualcomm.com>
2012-04-23ath6kl: only restore supported HT capsThomas Pedersen1-7/+19
Now that we know the supported PHY capabilities, only restore supported bands / HT capabilities in firmware when stopping AP. Signed-off-by: Thomas Pedersen <c_tpeder@qca.qualcomm.com> Signed-off-by: Kalle Valo <kvalo@qca.qualcomm.com>
2012-04-23ath6kl: support fw reporting phy capabilitiesThomas Pedersen5-5/+51
Currently the supported bands are just hard coded in the driver. However, the ath6kl FW will include its 11n and band capabilites in a WMI_READY event. Handle this and report capabilites to cfg80211 accordingly. Signed-off-by: Thomas Pedersen <c_tpeder@qca.qualcomm.com> Signed-off-by: Kalle Valo <kvalo@qca.qualcomm.com>
2012-04-23ath6kl clear the MMC_PM_KEEP_POWER for cutpower caseMing Jiang1-0/+3
ath6kl: If wow deepsleep pno suspend failure driver will choose cutpower. in this scenario MMC_PM_KEEP_POWER should be cleared so that mmc will power off the ar6000 kvalo: remove extra parenthesis Signed-off-by: Ming Jiang <mjiang@qca.qualcomm.com> Signed-off-by: Kalle Valo <kvalo@qca.qualcomm.com>
2012-04-18Merge branch 'master' of ↵John W. Linville20-165/+3370
git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-next into for-davem Conflicts: drivers/net/wireless/iwlwifi/iwl-testmode.c include/net/nfc/nfc.h net/nfc/netlink.c net/wireless/nl80211.c
2012-04-18ath6kl: Configure probed SSID list consistentlyJouni Malinen1-28/+35
Set max_scan_ssids and max_sched_scan_ssids to same value. These use the same probed SSID list, so there is no point in using different maximum number of SSIDs. Clear probed SSID entries that are not used. This was already done for sched_scan, but not for scan. Be consistent and clear the table for both cases to avoid leaving bogus entries. In addition, share the same function for setting the probed SSIDs for scan and sched_scan paths. This fixes setting of wildcard SSID flag (ANY_SSID_FLAG) and changes the scan path to use probed SSID index consistently (i.e., start with 0 similarly to sched_scan; firmware will handle the needed internal mapping). Signed-off-by: Jouni Malinen <jouni@qca.qualcomm.com> Signed-off-by: Kalle Valo <kvalo@qca.qualcomm.com>
2012-04-18ath6kl: Remove incorrect Probe Response offload support for InterworkingJouni Malinen1-2/+1
ath6kl does not support Probe Response offloading for Interworking (IEEE 802.11u), so remove the incorrectly added capability flag for it. Signed-off-by: Jouni Malinen <jouni@qca.qualcomm.com> Signed-off-by: Kalle Valo <kvalo@qca.qualcomm.com>
2012-04-18ath6kl: Fix bug in bg scan configuration in schedule scanSubramania Sharma Thandaveswaran1-1/+1
Background scan interval should not be modified while starting schedule scanning as it changes the bg scan interval when connected to AP. Use the currently configured interval instead. kvalo: improve commit log Signed-off-by: Subramania Sharma <sharmat@qca.qualcomm.com> Signed-off-by: Kalle Valo <kvalo@qca.qualcomm.com>
2012-04-18ath6kl: Retain bg scan period value modified by the userRaja Mani3-0/+9
Added a new member bg_scan_period in struct ath6kl_vif to retain background scan period value configured via debugfs entry 'bgscan_interval'. This backup is needed in schedule scan path while configuring scan parameters. Signed-off-by: Raja Mani <rmani@qca.qualcomm.com> Signed-off-by: Kalle Valo <kvalo@qca.qualcomm.com>
2012-04-16ath6kl: list_first_entry() is never NULLDan Carpenter1-8/+0
We can remove the NULL check here. It triggers a Smatch warning because list_first_entry() never is NULL and people who check for it normally intend to check for list_empty() instead. In these cases however, we've already verified that the lists are not empty. Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com> Signed-off-by: Kalle Valo <kvalo@qca.qualcomm.com>
2012-04-16ath6kl: Normalize use of FW_DIRTim Gardner1-10/+10
kvalo: do the same changes for ar6004 hw1.2 as well Cc: Kalle Valo <kvalo@qca.qualcomm.com> Cc: "John W. Linville" <linville@tuxdriver.com> Cc: linux-wireless@vger.kernel.org Cc: netdev@vger.kernel.org Signed-off-by: Tim Gardner <tim.gardner@canonical.com> Signed-off-by: Kalle Valo <kvalo@qca.qualcomm.com>
2012-04-16ath6kl: allow deepsleep_suspend function when wlan interface downMing Jiang1-1/+3
Aafter wlan interface is down WLAN_ENABLED flags will be cleared and deepsleep_suspend function will be blocked in this senario. This patch allows deepsleep_suspend function when wlan interface down by removed the WLAN_ENABLED flag checking. kvalo: fix commit log Signed-off-by: Ming Jiang <mjiang@qca.qualcomm.com> Signed-off-by: Kalle Valo <kvalo@qca.qualcomm.com>
2012-04-16ath6kl: Fix system crash sometimes for USB hotplugRay Chen1-0/+9
System crash because of NULL pointer reference due to cleanup_scatter is not implemented for USB. Signed-off-by: Ray Chen <raychen@qca.qualcomm.com> Signed-off-by: Kalle Valo <kvalo@qca.qualcomm.com>
2012-04-16ath6kl: merge split format strings into oneKalle Valo5-62/+64
Found by checkpatch: WARNING: quoted string split across lines Signed-off-by: Kalle Valo <kvalo@qca.qualcomm.com>
2012-04-13ath6kl: fix memory leak in ath6kl_fwlog_block_read()Jesper Juhl1-1/+3
If, in drivers/net/wireless/ath/ath6kl/debug.c::ath6kl_fwlog_block_read(), the call to wait_for_completion_interruptible() returns -ERESTARTSYS then we'll return without freeing the (as yet unused) memory we allocated for 'buf' - thus leaking it. Signed-off-by: Jesper Juhl <jj@chaosbits.net> Signed-off-by: Kalle Valo <kvalo@qca.qualcomm.com>
2012-04-12Merge branch 'for-linville' of git://github.com/kvalo/ath6klJohn W. Linville20-165/+3370
2012-04-12Merge branch 'master' into for-davemJohn W. Linville4-0/+8
Conflicts: drivers/net/wireless/iwlwifi/iwl-testmode.c net/wireless/nl80211.c
2012-04-12Merge branch 'master' of ↵John W. Linville1-24/+18
git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless
2012-04-12ath6kl: Add AR6004 1.2 support for USB and SDIORay Chen4-0/+32
Add the necessary change for AR6004 1.2 chip support Signed-off-by: Ray Chen <raychen@qca.qualcomm.com> Signed-off-by: Kalle Valo <kvalo@qca.qualcomm.com>
2012-04-12ath6kl: Configure 0 as rsn cap when it is not there in rsn ieVasanthakumar Thiagarajan1-7/+13
Currently rsn capability is not set when it is not available in rsn IE. Set it to 0 in firmware when it is not there in the ie to make sure host and target are consistent. Signed-off-by: Vasanthakumar Thiagarajan <vthiagar@qca.qualcomm.com> Signed-off-by: Kalle Valo <kvalo@qca.qualcomm.com>
2012-04-12ath6kl: Fix possible unaligned memory access in ath6kl_get_rsn_capab()Vasanthakumar Thiagarajan1-2/+2
alignment is not taken care in accessing pairwise cipher and AKM suite count which are parsed from rsn ie. Fix this alignment issue. Reported-by: Joe Perches <joe@perches.com> Signed-off-by: Vasanthakumar Thiagarajan <vthiagar@qca.qualcomm.com> Signed-off-by: Kalle Valo <kvalo@qca.qualcomm.com>
2012-04-12ath6kl: handle concurrent AP-STA channel switchesThomas Pedersen5-1/+85
If an ath6kl AP vif is beaconing on one channel, and a STA vif associates on a different channel, a WMI_DISCONNECT event will be sent to the AP vif. Make the AP vif follow the STA interface, and notify userspace. kvalo: fix a sparse warning with vif->next_chan Signed-off-by: Thomas Pedersen <c_tpeder@qca.qualcomm.com> Signed-off-by: Kalle Valo <kvalo@qca.qualcomm.com>
2012-04-12Merge remote branch 'wireless-next/master' into ath6kl-nextKalle Valo4-0/+8
2012-04-10ath: Add and use pr_fmt, convert printks to pr_<level>Joe Perches4-0/+8
Use a more current logging style. Make sure all output is prefixed appropriately. Signed-off-by: Joe Perches <joe@perches.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
2012-04-10Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/netDavid S. Miller1-24/+18
2012-04-09ath6kl: Fix 4-way handshake failure in AP and P2P GO modeVasanthakumar Thiagarajan4-0/+107
RSN capability field of RSN IE which is generated (which is what really advertised in beacon/probe response) differs from the one generated in wpa_supplicant. This inconsistency in rsn IE results in 4-way handshake failure. To fix this, configure rsn capability used in wpa_supplicant in firmware using a new wmi command, WMI_SET_IE_CMDID. There is a bit (ATH6KL_FW_CAPABILITY_RSN_CAP_OVERRIDE) in fw_capabilities to advertise this support to driver. Signed-off-by: Subramania Sharma <sharmat@qca.qualcomm.com> Signed-off-by: Vasanthakumar Thiagarajan <vthiagar@qca.qualcomm.com> Signed-off-by: Kalle Valo <kvalo@qca.qualcomm.com>
2012-04-09ath6kl: Configure htcap in fw based on the channel type in AP modeVasanthakumar Thiagarajan5-21/+116
This patch disables HT in start_ap if the type of the channel on which the AP mode is going to be operating is non-HT. HT is enabled with default ht cap setting if the operating channel is going to be 11n. Signed-off-by: Vasanthakumar Thiagarajan <vthiagar@qca.qualcomm.com> Signed-off-by: Kalle Valo <kvalo@qca.qualcomm.com>
2012-04-09ath6kl: Don't advertise HT40 support in 2.4 GhzVasanthakumar Thiagarajan1-2/+3
HT40 is not supported in 2.4Ghz. Signed-off-by: Vasanthakumar Thiagarajan <vthiagar@qca.qualcomm.com> Signed-off-by: Kalle Valo <kvalo@qca.qualcomm.com>
2012-04-09ath6kl: Fix target assert in p2p bringup with multi vifVasanthakumar Thiagarajan2-9/+47
Using interface 0 for p2p causes target assert. This is because interface 0 is always initialized to non-p2p operations. Fix this issue by initializing all the interfaces for p2p when fw is capable of dynamic interface switching. When fw is not capable of dynamic switching, make sure p2p is not brought up on interface which is not initialized for this purpose. Reported-by: Naveen Singh navesing@qca.qualcomm.com Signed-off-by: Vasanthakumar Thiagarajan <vthiagar@qca.qualcomm.com> Signed-off-by: Kalle Valo <kvalo@qca.qualcomm.com>
2012-04-06simple_open: automatically convert to simple_open()Stephen Boyd1-24/+18
Many users of debugfs copy the implementation of default_open() when they want to support a custom read/write function op. This leads to a proliferation of the default_open() implementation across the entire tree. Now that the common implementation has been consolidated into libfs we can replace all the users of this function with simple_open(). This replacement was done with the following semantic patch: <smpl> @ open @ identifier open_f != simple_open; identifier i, f; @@ -int open_f(struct inode *i, struct file *f) -{ ( -if (i->i_private) -f->private_data = i->i_private; | -f->private_data = i->i_private; ) -return 0; -} @ has_open depends on open @ identifier fops; identifier open.open_f; @@ struct file_operations fops = { ... -.open = open_f, +.open = simple_open, ... }; </smpl> [akpm@linux-foundation.org: checkpatch fixes] Signed-off-by: Stephen Boyd <sboyd@codeaurora.org> Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org> Cc: Al Viro <viro@zeniv.linux.org.uk> Cc: Julia Lawall <Julia.Lawall@lip6.fr> Acked-by: Ingo Molnar <mingo@elte.hu> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2012-04-04ath6kl: Support net_stats.multicastVasanthakumar Thiagarajan1-1/+2
net_stats.multicast is updated with the count of received multicast packets. kvalo: indentation changes Signed-off-by: Vasanthakumar Thiagarajan <vthiagar@qca.qualcomm.com> Signed-off-by: Kalle Valo <kvalo@qca.qualcomm.com>
2012-04-03ath6kl: Fix scan related issue on suspend-resumeVivek Natarajan1-0/+4
When a scan request is pending while going to suspend, any new scan request after resume will fail. So, cancel all scan requests in all the vifs before moving to suspend state. Signed-off-by: PingYang Zhang <pingzhan@qca.qualcomm.com> Signed-off-by: Vivek Natarajan <nataraja@qca.qualcomm.com> Signed-off-by: Kalle Valo <kvalo@qca.qualcomm.com>
2012-04-03ath6kl: Use vmalloc instead of kmalloc for fwVivek Natarajan2-2/+5
Sometimes it has been observed that allocating a contiguous memory of more than 100K fails with kmalloc. This has been modified to use vmalloc instead. Signed-off-by: PingYang Zhang <pingzhan@qca.qualcomm.com> Signed-off-by: Vivek Natarajan <nataraja@qca.qualcomm.com> Signed-off-by: Kalle Valo <kvalo@qca.qualcomm.com>
2012-04-02ath6kl: Stop using NLA_PUT*().David S. Miller1-2/+3
These macros contain a hidden goto, and are thus extremely error prone and make code hard to audit. Signed-off-by: David S. Miller <davem@davemloft.net>
2012-03-28ath6kl: Set background scan period.Bala Shanmugam1-0/+13
After connect command, send scan params WMI command to set background scan period. If period value is zero send 0xffff as bg scan period to disable bg scan. Set default bg scan period to be 60 seconds if not specified. This patch depends on below patch cfg80211: Add background scan period attribute. kvalo: fix open parenthesis alignment Signed-off-by: Bala Shanmugam <bkamatch@qca.qualcomm.com> Signed-off-by: Kalle Valo <kvalo@qca.qualcomm.com>
2012-03-28ath6kl: Store scan request info in-advance before sending SCAN requestRaja Mani1-3/+5
In current code, Scan request info is recorded in vif->scan_req after sending SCAN request to the firmware in ath6kl_cfg80211_scan(). In some corner cases, firmware sends SCAN_COMPLETE event immediately when it receives SCAN request, which internally executes scan complete event handler ath6kl_cfg80211_scan_complete_event() first. So, Scan completion handler will a get a chance to executed even before storing scan request info in ath6kl_cfg80211_scan(). Scan completion handler never report SCAN_COMPLETE event to cfg80211 if scan request info(vif->scan_req) is NULL. This leads to scan failure issue ("Device or resource busy error") during next SCAN request from the user space. This patch ensures that scan request info is stored before sending SCAN request. Signed-off-by: Raja Mani <rmani@qca.qualcomm.com> Signed-off-by: Kalle Valo <kvalo@qca.qualcomm.com>
2012-03-26ath6kl: add full USB supportKalle Valo2-4/+782
Now, with HTC pipe, it's possible to fully support USB version of AR6004. Based on code by Kevin Fang. Signed-off-by: Kalle Valo <kvalo@qca.qualcomm.com>
2012-03-26ath6kl: Add HTC pipe implementationKalle Valo7-0/+1808
This is needed for USB. Based on code by Kevin Fang. Signed-off-by: Kalle Valo <kvalo@qca.qualcomm.com>
2012-03-26ath6kl: add htc opsKalle Valo10-55/+219
In preparation for adding HTC pipe implementation add htc-ops.h to make it possible dynamically choose which HTC type is used. Needed for full USB support. Based on the code by Ray Chen <raychen@qca.qualcomm.com>. Signed-off-by: Kalle Valo <kvalo@qca.qualcomm.com> Signed-off-by: Ray Chen <raychen@qca.qualcomm.com> Signed-off-by: Kalle Valo <kvalo@qca.qualcomm.com>
2012-03-26ath6kl: remove void pointer from ath6kl_credit_setup()Kalle Valo2-3/+3
Void pointers are bad. Signed-off-by: Kalle Valo <kvalo@qca.qualcomm.com>
2012-03-26ath6kl: add rx data padding supportKalle Valo2-0/+10
Needed when using USB. Signed-off-by: Kalle Valo <kvalo@qca.qualcomm.com>
2012-03-26ath6kl: add pointer to the skb in htc_packetKalle Valo2-0/+13
Needed by the USB code. Signed-off-by: Kalle Valo <kvalo@qca.qualcomm.com>
2012-03-26ath6kl: add tx_comp_multi() to struct htc_ep_callbacksKalle Valo2-0/+2
It's also needed by the USB code. Signed-off-by: Kalle Valo <kvalo@qca.qualcomm.com>