cff23cec822cd6bd0878c2a6afe6140f04c17dcf |
|
14-Mar-2012 |
Yogesh Ashok Powar <yogeshp@marvell.com> |
mwifiex: fix checkpatch --strict warnings/errors Part 5 For file scan.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>
|
6685d109f4b60604fd206cff01355094a2e3b419 |
|
13-Mar-2012 |
Yogesh Ashok Powar <yogeshp@marvell.com> |
mwifiex: merge functions to derive cfp by chan & freq in one There exist different functions with very long names to derive the channel frequency and power tripplet based on band and channel/freq. 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>
|
be0b281e8f7afd56d2250a568b85dafc850bc9ae |
|
28-Feb-2012 |
Amitkumar Karwar <akarwar@marvell.com> |
mwifiex: fix bug in wildcard scan handling Currently if valid SSID list is provided in scan request, driver performs specific SSID scan otherwise wildcard scan is chosen. When wpa_supplicant provides valid SSID list followed by zero-length SSID for wildcard scan, only specific SSID scan is performed by driver. Actually driver is expected to do both type of scanning in this case. The patch fixes this issue. Also, use SSID list pointer provided by stack directly, instead of copying SSID's to local structure. 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>
|
b9be5f39bdabb25708a9de294c2cae7bdd8dfb17 |
|
28-Feb-2012 |
Amitkumar Karwar <akarwar@marvell.com> |
mwifiex: remove unnecessary struct mwifiex_802_11_ssid Use struct cfg80211_ssid available in include/net/cfg80211.h instead of having similar definition in driver. 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>
|
5eb02e44adc92a71bae3ff60acb1eea5ada14e93 |
|
25-Feb-2012 |
Amitkumar Karwar <akarwar@marvell.com> |
mwifiex: remove unnecessary enum MWIFIEX_802_11_WEP_STATUS Instead of defining an 'enum', we can simply use 'u8' flag for WEP status. Rename 'wep_status' to 'wep_enabled' to match with 'wpa_enabled' and 'wpa2_enabled'. 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>
|
caf60a6c957e7a35837a41f845e57b4433e20276 |
|
03-Feb-2012 |
Amitkumar Karwar <akarwar@marvell.com> |
mwifiex: update correct dtim_period in dump_station() Earlier we were using dtim period extracted from scan response buffer provided by FW in scan operation. But it is observed that sometimes the buffer doesn't contain dtim period tlv, and wrong value (0) was sent to user space. After association FW will start listening to beacon frames of connected AP and store dtim period. Therefore we can get it from FW in dump_station() instead of using wrong value obtained in scanning. Redundant code after adapting new approach for dtim period is also removed in this patch. 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>
|
c4f3b9725ed476adbcaf1c49d882ab541bc4214c |
|
25-Jan-2012 |
Amitkumar Karwar <akarwar@marvell.com> |
mwifiex: update BSS parameters in dump_station_info() This enables user to check beacon interval, DTIM period, short slot time and short preamble information using "iw dev mlan0 link" command when station is in connected state. 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>
|
75ac9a28a0c6b818ba1aba874b6b3ae17241552c |
|
09-Jan-2012 |
Julia Lawall <julia.lawall@lip6.fr> |
drivers/net/wireless/mwifiex/scan.c: convert GFP_KERNEL to GFP_ATOMIC The function is called with locks held and thus should not use GFP_KERNEL. The semantic patch that makes this report is available in scripts/coccinelle/locks/call_kern.cocci. More information about semantic patching is available at http://coccinelle.lip6.fr/ Signed-off-by: Julia Lawall <julia.lawall@lip6.fr> Acked-by: Bing Zhao <bzhao@marvell.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
|
186630c2809bc87fba6e49896fa2279c43f512d2 |
|
16-Dec-2011 |
Amitkumar Karwar <akarwar@marvell.com> |
mwifiex: cleanup work in scan.c Scan type derived from IEEE80211_CHAN_PASSIVE_SCAN bit is a boolean flag representing passive scanning. We should not again compare it with driver specific macro MWIFIEX_SCAN_TYPE_PASSIVE to determine passive or active scan. We can also avoid the use of local variable by using the flag directly. 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>
|
38c9d6641ff0664911aebe4ba67124f28169a972 |
|
14-Dec-2011 |
Amitkumar Karwar <akarwar@marvell.com> |
mwifiex: remove cfg_workqueue cfg_workqueue was added to notify cfg80211 that scan, connect or disconnect is done by calling respective completion handlers. We can avoid use of this workqueue by calling those handlers from other places. 1) Call connect, disconnect completion handlers in their callback functions. ex. Call cfg80211_connect_result() in mwifiex_cfg80211_connect() 2) Call scan completion handler after parsing response of last scan command in a queue. After removing the workqueue, variables (assoc_request etc.) and checks used for mutual exclusion become redundant. Those are also removed in this patch. Signed-off-by: Amitkumar Karwar <akarwar@marvell.com> Signed-off-by: Yogesh Ashok Powar <yogeshp@marvell.com> Signed-off-by: Nishant Sarmukadam <nishants@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>
|
aa95a48d46328f35403f3b03e0cafb3c5883aaba |
|
08-Nov-2011 |
Amitkumar Karwar <akarwar@marvell.com> |
mwifiex: release bss structure returned by cfg80211_inform_bss() Following compilation warning is fixed by releasing referenced BSS structure returned by cfg80211_inform_bss(). "warning: ignoring return value of cfg80211_inform_bss, declared with attribute warn_unused_result" Cc: Johannes Berg <johannes.berg@intel.com> 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>
|
f72fa45f7d3e3ec627b62fed2e3451f5a597914d |
|
08-Nov-2011 |
Amitkumar Karwar <akarwar@marvell.com> |
mwifiex: remove unnecessary free_priv handler Cfg80211 stack allocates private area for driver use in struct cfg80211_bss. It will be freed by stack in bss_release(). Driver don't need to worry about it. In mwifiex driver, we use the private area just to store band information(u8). We don't allocate memory explicitly and store it's pointer in bss->priv. Hence we don't have any cleanup work to do in free_priv handler. Currently we try to free the allocated private area in free_priv handler which is not correct. This patch removes unnecessary free_priv handler. 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>
|
fada10584d3890258e59da73728510ad7e08a033 |
|
10-Nov-2011 |
Amitkumar Karwar <akarwar@marvell.com> |
mwifiex: fix association issue with AP configured in hidden SSID mode Firmware expects 'max_ssid_length' field in 'struct mwifiex_ie_types_wildcard_ssid_params' to be '0' for performing SSID specific scan. Currently driver updates it with an actual SSID length. Hence UUT is not able to find the AP configured in hidden SSID mode in scan results and association fails. max_ssid_length is filled with '0' to fix the issue. 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>
|
db652e4b36e5f1e5f49a4a49caf3aa365fe851c4 |
|
06-Nov-2011 |
Jesper Juhl <jj@chaosbits.net> |
net, wireless, mwifiex: Fix mem leak in mwifiex_update_curr_bss_params() If kmemdup() fails we leak the memory allocated to bss_desc. This patch fixes the leak. I also removed the pointless default assignment of 'NULL' to 'bss_desc' while I was there anyway. Signed-off-by: Jesper Juhl <jj@chaosbits.net> Reviewed-by: Srivatsa S. Bhat <srivatsa.bhat@linux.vnet.ibm.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
|
711825a06bb288e04f8236d77c4e12eba9a1c478 |
|
13-Oct-2011 |
Amitkumar Karwar <akarwar@marvell.com> |
mwifiex: fix make namespacecheck warnings This patch takes care of warnings found by running 'make namespacecheck': 1. Remove dead code. 2. Reorder function definitions to avoid forward declarations. 3. Remove unnecessary function/structure declarations and mark them as static. 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>
|
efaaa8b8414e0ab4ba09aaaf79ab92a34b75797b |
|
13-Oct-2011 |
Amitkumar Karwar <akarwar@marvell.com> |
mwifiex: use separate wait condition for each command node Currently global wait condition (adapter->cmd_wait_q.condition) is used while sending synchronous commands to FW. When two threads enter in mwifiex_send_cmd_sync() routine at the same time, both the threads wait for their command responses. Since wait condition is same for both, they wake up simultaneously after getting response of 1st command. After this when a thread is waiting for command response of 3rd command, it wakes up after getting response of 2nd command and so on. Therefore we don't wait for the response of last command(0xaa) during unload. Hence while next time loading the driver command time out is seen for INIT command. This problem is resolved by having separate wait condition flag for each command(except scan command). Since scan command is treated differently (by maintaining scan pending q etc.), newly defined flag (scan_wait_q_woken) is used as a scan wait condition. 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>
|
5116f3cef206e7fcd6023ba8595a6321f33c2044 |
|
22-Sep-2011 |
Amitkumar Karwar <akarwar@marvell.com> |
mwifiex: update bss band information In recent commit "mwifiex: use cfg80211 dynamic scan..." (7c6fa2a843..) scan table handling in driver is removed to make use of cfg80211 dynamic scan table. Now driver sends beacon buffers found in scanning directly to stack and parse the buffer for requested BSS only during association. Beacon buffer doesn't contain bss band information. Driver gets it from firmware in separate tlv (chan_band_tlv). Currently since we don't inform stack about bss bandinfo, there is an issue with 5GHz association. Use "priv" field of struct cfg80211_bss to store bandinfo. This fixes 5GHz association issue. 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>
|
d06b7b9e1fd5f2512840a687bd13b50caa42f82b |
|
22-Sep-2011 |
Amitkumar Karwar <akarwar@marvell.com> |
mwifiex: fix 5GHz association issue Sometimes association in 5GHz doesn't work. Dmesg log shows "Can not find requested SSID xyz" error message. Currently while preparing scan channel list for firmware Null entries are created for disabled channels. The routine which retrieves this list ignores channels after Null entry. Hence sometimes driver doesn't scan the channel of requested AP and association fails. The issue is fixed by avoiding those NULL entries. 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>
|
5982b47aa410e6aef55a5b0087269f5c9c172110 |
|
29-Aug-2011 |
Yogesh Ashok Powar <yogeshp@marvell.com> |
mwifiex: replace kmalloc & memcpy sequence with kmemdup 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>
|
f750323009b6540cc614304fd784300b49506797 |
|
22-Aug-2011 |
Julia Lawall <julia@diku.dk> |
drivers/net/wireless/mwifiex/scan.c: test the just-initialized value Test the just-initialized value rather than some other one. The semantic match that finds this problem is as follows: (http://coccinelle.lip6.fr/) // <smpl> @r@ identifier x,y,f!={PTR_ERR,ERR_PTR,ERR_CAST}; statement S; @@ x = f(...); ( if (\(x == NULL\|IS_ERR(x)\)) S | *if (\(y == NULL\|IS_ERR(y)\)) { ... when != x return ...; } ) // </smpl> Signed-off-by: Julia Lawall <julia@diku.dk> Acked-by: Bing Zhao <bzhao@marvell.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
|
7c6fa2a843c5ac0f8e3e4bf679cee9c93d5e3437 |
|
11-Aug-2011 |
Amitkumar Karwar <akarwar@marvell.com> |
mwifiex: use cfg80211 dynamic scan table and cfg80211_get_bss API Instead of maintaining static scan table in driver, scan list is sent to cfg80211 stack (after parsing each scan command response). In assoc handler (for infra and ibss network) requested BSS information is retrieved using cfg80211_get_bss() API. With the changes above some redundant code are removed. 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>
|
67a50035b3f9335b9e5800c32149173e797b9cc0 |
|
14-Jul-2011 |
Bing Zhao <bzhao@marvell.com> |
mwifiex: remove wireless.h inclusion and fix resulting bugs replace IW_MAX_AP & IW_CUSTOM_MAX with local definitions and remove usage of struct iw_statistics. Cc: Johannes Berg <johannes.berg@intel.com> Signed-off-by: Bing Zhao <bzhao@marvell.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
|
a5ffddb70c5cab29fa00e2fdf12217b64b940796 |
|
21-Jun-2011 |
Amitkumar Karwar <akarwar@marvell.com> |
mwifiex: remove casts of void pointers In some cases local pointers are used to cast void pointers passed to the function. Those unnecessary local pointers are also removed. This patch was inspired by Joe Perches' patch [PATCH net-next 1/2] wireless: Remove casts of void *; and the comments from Julian Calaby. Signed-off-by: Amitkumar Karwar <akarwar@marvell.com> Cc: Joe Perches <joe@perches.com> Cc: Julian Calaby <julian.calaby@gmail.com> Signed-off-by: Bing Zhao <bzhao@marvell.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
|
b53575ecf939a4f752de87eabf1adbcfa4478a6c |
|
08-May-2011 |
Christoph Fritz <chf.fritz@googlemail.com> |
mwifiex: fix null derefs, mem leaks and trivia This patch: - adds kfree() where necessary - prevents potential null dereferences - makes use of kfree_skb() - replaces -1 for failed kzallocs with -ENOMEM Signed-off-by: Christoph Fritz <chf.fritz@googlemail.com> Reviewed-by: Kiran Divekar <dkiran@marvell.com> Tested-by: Amitkumar Karwar <akarwar@marvell.com> Acked-by: Bing Zhao <bzhao@marvell.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
|
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>
|
030fe7974f48bd86bb706ec05188ebab0cb7af80 |
|
28-Apr-2011 |
Amitkumar Karwar <akarwar@marvell.com> |
mwifiex: fix bug in mwifiex_save_curr_bcn() Since timestamp in beacon buffer keeps changing all the time, the memcmp check in mwifiex_save_curr_bcn() is redundant. Remove that memcmp check and also avoid freeing and allocation of buffer if required beacon buffer size is same as previous one. 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>
|
a46b7b5c13b9ecfe2b4e045e06aaec644dcf55d8 |
|
28-Apr-2011 |
Amitkumar Karwar <akarwar@marvell.com> |
mwifiex: HT capability information handling 1) Initialise HT capabilities in cfg80211 properly. 2) Cfg80211 stack may modify "sband->ht_cap" to disable 40Mhz operation in 2.4GHz band (after recent patch "cfg80211: module_param to disable HT40 in 2.4GHz band") Therefore read "sband->ht_cap" instead of an adapter variable "hw_dot_11n_dev_cap" to get HT capabilities. 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>
|
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>
|
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>
|
600f5d909a54a8dccf8c8c23898fc2e91bc0953e |
|
14-Apr-2011 |
Amitkumar Karwar <akarwar@marvell.com> |
mwifiex: cleanup ioctl wait queue and abstraction layer 1) remove mwifiex_alloc_fill_wait_queue() and mwifiex_request_ioctl() 2) avoid dynamic allocation of wait queue 3) remove unnecessary mwifiex_error_code macros that were used mainly by the wait queue status code 4) remove some abstraction functions 5) split mwifiex_prepare_cmd() to mwifiex_send_cmd_async() and mwifiex_send_sync() to handle asynchronous and synchronous commands respectively 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>
|
2be50b8df53f2f329b7ddcc8be286ef6a7469fd2 |
|
02-Apr-2011 |
Yogesh Ashok Powar <yogeshp@marvell.com> |
mwifiex: remove redundant encryption_mode mapping remove MWIFIEX_ENCRYPTION_MODE_ and use WLAN_CIPHER_SUITE_ macros directly 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>
|
7327890a1f42046c50030c8723bdbd9266d781bc |
|
31-Mar-2011 |
Bing Zhao <bzhao@marvell.com> |
mwifiex: remove struct mwifiex_802_11_fixed_ies struct mwifiex_802_11_fixed_ies is not necessary. struct mwifiex_event_wep_icv_err is not used any more. Signed-off-by: Bing Zhao <bzhao@marvell.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
|
eecd8250e492ffc4e7b72953cda9c2f3ba0e6ccc |
|
29-Mar-2011 |
Bing Zhao <bzhao@marvell.com> |
mwifiex: remove MWIFIEX_BSS_MODE_ macros replace them with NL80211_IFTYPE_ macros Also remove redundant functions mwifiex_drv_get_mode() and mwifiex_bss_ioctl_mode(). Signed-off-by: Bing Zhao <bzhao@marvell.com> Signed-off-by: Amitkumar Karwar <akarwar@marvell.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
|
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>
|