30716eeec35ce79a2140b4814bd417e02da08450 |
|
21-Jun-2012 |
Stone Piao <piaoyun@marvell.com> |
mwifiex: fix WPS eapol handshake failure commit f03ba7e9a24e5e9efaad56bd1713b994ea556b16 upstream. After association, STA will go through eapol handshake with WPS enabled AP. It's observed that WPS handshake fails with some 11n AP. The reason for the failure is that the eapol packet is sent via 11n frame aggregation. The eapol packet should be sent directly without 11n aggregation. This patch fixes the problem by adding WPS session control while dequeuing Tx packets for transmission. Signed-off-by: Stone Piao <piaoyun@marvell.com> 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> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
/drivers/net/wireless/mwifiex/wmm.c
|
c482c429398b707c9a228e89535b242252cc4c33 |
|
21-Jun-2012 |
Stone Piao <piaoyun@marvell.com> |
mwifiex: fix 11n rx packet drop issue commit 925839243dc9aa4ef25305f5afd10ed18258a4ac upstream. Currently we check the sequence number of last packet received against start_win. If a sequence hole is detected, start_win is updated to next sequence number. Since the rx sequence number is initialized to 0, a corner case exists when BA setup happens immediately after association. As 0 is a valid sequence number, start_win gets increased to 1 incorrectly. This causes the first packet with sequence number 0 being dropped. Initialize rx sequence number as 0xffff and skip adjusting start_win if the sequence number remains 0xffff. The sequence number will be updated once the first packet is received. Signed-off-by: Stone Piao <piaoyun@marvell.com> Signed-off-by: Avinash Patil <patila@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> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
/drivers/net/wireless/mwifiex/wmm.c
|
c65a30f35f938b421ac67c34a9e70b0e49e6019a |
|
14-Mar-2012 |
Yogesh Ashok Powar <yogeshp@marvell.com> |
mwifiex: fix checkpatch --strict warnings/errors Part 9 For files sta_rx.c, sta_tx.c, txrx.c, util.c and wmm.c Signed-off-by: Yogesh Ashok Powar <yogeshp@marvell.com> Signed-off-by: Bing Zhao <bzhao@marvell.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
/drivers/net/wireless/mwifiex/wmm.c
|
bb7de2bad5cb527e5fdc6b64d7f5d6e5009f2962 |
|
13-Mar-2012 |
Yogesh Ashok Powar <yogeshp@marvell.com> |
mwifiex: rearrange if and else blocks to avoid extra indentation This adds better readability. Signed-off-by: Yogesh Ashok Powar <yogeshp@marvell.com> Signed-off-by: Bing Zhao <bzhao@marvell.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
/drivers/net/wireless/mwifiex/wmm.c
|
3e822635a79c55a7768ec38cd5007081dae95171 |
|
13-Mar-2012 |
Yogesh Ashok Powar <yogeshp@marvell.com> |
mwifiex: rename long function names to shorter ones This saves some space and adds better readability. Signed-off-by: Yogesh Ashok Powar <yogeshp@marvell.com> Signed-off-by: Bing Zhao <bzhao@marvell.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
/drivers/net/wireless/mwifiex/wmm.c
|
2690e1bb35e97a3b15f0064e9176cd2ec61c2511 |
|
25-Jan-2012 |
Avinash Patil <patila@marvell.com> |
mwifiex: pass priv pointer instead of adapter Pass mwifiex_private pointer directly to wmm_add_buf_txqueue() instead of passing adapter and then deriving priv again in mwifiex_get_priv_by_id(). This reduces a 'for' loop in TX path. 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>
/drivers/net/wireless/mwifiex/wmm.c
|
9da9a3b29ba6a9a98e437f24576f13cbe259997b |
|
12-Jan-2012 |
Yogesh Ashok Powar <yogeshp@marvell.com> |
mwifiex: use bss_type and bss_num to retrieve priv Current implementation, for retrieving priv from adapter, uses bss_index. In multi interface environment supporting different types, bss_index may not be unique. Use bss_type along with bss_num to retrieve the priv. bss_index is removed with this change. 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>
/drivers/net/wireless/mwifiex/wmm.c
|
d930faee141bd0a6a4873791996c5354c9a85ca7 |
|
12-Oct-2011 |
Amitkumar Karwar <akarwar@marvell.com> |
mwifiex: add support for Marvell pcie8766 chipset 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>
/drivers/net/wireless/mwifiex/wmm.c
|
d85c5fe462fe3531f607fda787e9c80617e35437 |
|
30-Sep-2011 |
Amitkumar Karwar <akarwar@marvell.com> |
mwifiex: correct AMSDU aggregation check The commit "mwifiex: remove list traversal.."(fcf2176c87..) wrongly modifies AMSDU aggregation check. Due to this even though packet size for iperf traffic is already large, we unnecessarily try to aggregate them which adds some delay. If Tx iperf is started on UUT for 30 seconds, UUT keeps sending Tx packets for few more seconds. That commit is reverted to fix the problem. Also, MIN_NUM_AMSDU check is moved inside the loop to optimize the loop. Signed-off-by: Amitkumar Karwar <akarwar@marvell.com> Signed-off-by: Yogesh Ashok Powar <yogeshp@marvell.com> Signed-off-by: Bing Zhao <bzhao@marvell.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
/drivers/net/wireless/mwifiex/wmm.c
|
4e3c44207f90500f65a3858d344b4ff3c63ea765 |
|
14-Jul-2011 |
Amitkumar Karwar <akarwar@marvell.com> |
mwifiex: put multicast/broadcast packets to the same RA For ad-hoc mode, RA is created for each peer connected. In case of multicast traffic new RA will be created for each multicast address. While processing Tx packets we have to go through this RA list. We can avoid some RA nodes by sharing same RA for both multicast and broadcast packets. Therefore "memset(0xff)" is used to treat multicast packet as broadcast one while choosing RA. Signed-off-by: Amitkumar Karwar <akarwar@marvell.com> Signed-off-by: Yogesh Ashok Powar <yogeshp@marvell.com> Signed-off-by: Bing Zhao <bzhao@marvell.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
/drivers/net/wireless/mwifiex/wmm.c
|
fcf2176c87af77e5ee947edaf8e390bc67b729d8 |
|
06-Jun-2011 |
Yogesh Ashok Powar <yogeshp@marvell.com> |
mwifiex: remove list traversal in mwifiex_num_pkts_in_txq Instead of counting the number of packets in txq for particular RA list before AMSDU creation, maintain a counter which will keep track of the same. This will reduce some MIPS while generating AMSDU traffic as we only have to check the counter instead of traversing through skb list. Signed-off-by: Yogesh Ashok Powar <yogeshp@marvell.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
/drivers/net/wireless/mwifiex/wmm.c
|
17e8cec87586c26b953c6541c8a045e906ea046c |
|
17-May-2011 |
Marc Yang <yangyang@marvell.com> |
mwifiex: CPU mips optimization with NO_PKT_PRIO_TID If we go through the entire for loop in mwifiex_wmm_get_highest_priolist_ptr() and don't find any packets, set highest_queued_prio to NO_PKT_PRIO_TID (< LOW_PRIO_TID). Signed-off-by: Marc Yang <yangyang@marvell.com> Signed-off-by: Bing Zhao <bzhao@marvell.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
/drivers/net/wireless/mwifiex/wmm.c
|
93968147874508e6dd534af1e236a7353269da3f |
|
17-May-2011 |
Marc Yang <yangyang@marvell.com> |
mwifiex: check mwifiex_wmm_lists_empty() before dequeue add checks to mwifiex_wmm_process_tx() loop so it doesn't re-enter mwifiex_dequeue_tx_packet() to find it can't send. Signed-off-by: Marc Yang <yangyang@marvell.com> Signed-off-by: Bing Zhao <bzhao@marvell.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
/drivers/net/wireless/mwifiex/wmm.c
|
49729ff616547d7abcb96924d14aa860320e7352 |
|
17-May-2011 |
Marc Yang <yangyang@marvell.com> |
mwifiex: reduce CPU usage by tracking highest_queued_prio This patch adds highest_queued_prio to track priority of packets as they are enqueued so that mwifiex_wmm_get_highest_priolist_ptr() starts checking at the first level where we have packets, instead of the highest. The function also lowers priority value to the level where first packet is found. Signed-off-by: Marc Yang <yangyang@marvell.com> Signed-off-by: Bing Zhao <bzhao@marvell.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
/drivers/net/wireless/mwifiex/wmm.c
|
f699254c7126d7df94491dfd4c3648f8ec0c0d51 |
|
17-May-2011 |
Marc Yang <yangyang@marvell.com> |
mwifiex: reduce CPU usage by tracking tx_pkts_queued This patch adds tx_pkts_queued to track number of packets being enqueued & dequeued so that mwifiex_wmm_lists_empty() evaluation is lightweight. Signed-off-by: Marc Yang <yangyang@marvell.com> Signed-off-by: Bing Zhao <bzhao@marvell.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
/drivers/net/wireless/mwifiex/wmm.c
|
270e58e8898c8be40451ebee45b6c9b5bd5db04b |
|
04-May-2011 |
Yogesh Ashok Powar <yogeshp@marvell.com> |
mwifiex: remove unnecessary variable initialization Skip initialization of local variables with some default values if the values are not going to be used further down the code path. Signed-off-by: Yogesh Ashok Powar <yogeshp@marvell.com> Signed-off-by: Bing Zhao <bzhao@marvell.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
/drivers/net/wireless/mwifiex/wmm.c
|
636c4598499eeacce0893dc8d91113b904bd531e |
|
16-Apr-2011 |
Yogesh Ashok Powar <yogeshp@marvell.com> |
mwifiex: remove redundant local variables and comments Remove some local variables (mainly function return values) that are used only once. Also, one dummy function and some wordy comments are removed. 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>
/drivers/net/wireless/mwifiex/wmm.c
|
53d7938e6a2ac6569476fc59b404e70c0537b42b |
|
14-Apr-2011 |
Bing Zhao <bzhao@marvell.com> |
mwifiex: rename function mwifiex_is_ba_stream_avail The old function name sounds like checking for existing BA stream. The function actually checks if we have room for creating new BA stream or not. Signed-off-by: Bing Zhao <bzhao@marvell.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
/drivers/net/wireless/mwifiex/wmm.c
|
572e8f3ead47ad223fb428a4f1db986317e8e0ec |
|
14-Apr-2011 |
Amitkumar Karwar <akarwar@marvell.com> |
mwifiex: remove unused function parameters Some function parameters become useless after previous cleanup changes. 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>
/drivers/net/wireless/mwifiex/wmm.c
|
19a898601ad192d8c59c3a8f1a4501919f53b94d |
|
14-Apr-2011 |
Yogesh Ashok Powar <yogeshp@marvell.com> |
mwifiex: remove redundant "return" at end of void function The return statement at the last line of a void function is not necessary. Signed-off-by: Yogesh Ashok Powar <yogeshp@marvell.com> Signed-off-by: Bing Zhao <bzhao@marvell.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
/drivers/net/wireless/mwifiex/wmm.c
|
5e6e3a92b9a4c9416b17f468fa5c7fa2233b8b4e |
|
22-Mar-2011 |
Bing Zhao <bzhao@marvell.com> |
wireless: mwifiex: initial commit for Marvell mwifiex driver This driver adds WiFi support for Marvell 802.11n based chipsets with SDIO interface. Currently only SD8787 is supported. More chipsets will be supported later. drivers/net/wireless/mwifiex/ Signed-off-by: Nishant Sarmukadam <nishants@marvell.com> Signed-off-by: Amitkumar Karwar <akarwar@marvell.com> Signed-off-by: Kiran Divekar <dkiran@marvell.com> Signed-off-by: Bing Zhao <bzhao@marvell.com> Signed-off-by: Yogesh Ashok Powar <yogeshp@marvell.com> Signed-off-by: Marc Yang <yangyang@marvell.com> Signed-off-by: Ramesh Radhakrishnan <rramesh@marvell.com> Signed-off-by: Frank Huang <frankh@marvell.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
/drivers/net/wireless/mwifiex/wmm.c
|