summaryrefslogtreecommitdiff
path: root/drivers/staging/wlan-ng/p80211wext.c
AgeCommit message (Collapse)Author
2010-06-18Staging: wlan-ng: Switch from wext to cfg80211Karl Relton
Switch driver over from wext to cfg80211 interface. Some Notes: - This patch moves the driver wholesale from wext to cfg80211. Wext support is still provided through the cfg80211 provided wext compatability layer. - Currently only infrastructure mode is implemented. Ad hoc mode is not yet implemented, but can be added. - It does not support connecting to a specified bssid, instead roaming is handled by the card itself. This matches the behaviour of the existing driver. - It has been tested using NetworkManager (via wpa_supplicant) configured to use the wext compatability layer, and then again with the native nl80211 layer. Signed-off-by: Karl Relton <karllinuxtest.relton@ntlworld.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2010-05-11Staging: wlan-ng: refactor p80211wext.c to reduce text size.Richard Kennedy
Refactor the wext interface to reduce lines of code & module text size. - add a helper function p80211wext_getmib - rename p80211wext_dorequest to p80211wext_setmib - refactor wext to call the get/set mib helpers and so reduce repeated code. size reported text reduction :- text data bss dec hex filename 8343 720 0 9063 2367 p80211wext.o.patch 9907 720 0 10631 2987 p80211wext.o.orig Tested on x86_32 laptop, everything works correctly using NetworkManager, and iwconfig & iwlist return sensible results when reading from the card. Signed-off-by: Richard Kennedy <richard@rsk.demon.co.uk> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2010-05-11Staging: wlan-ng: fix p80211wext_mhz_to_channel for channel 14Richard Kennedy
Channel 14 is 2484 Mhz (cf p80211wext_channel_to_mhz) so this patch corrects what seems to be just a typo. Signed-off-by: Richard Kennedy <richard@rsk.demon.co.uk> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2010-05-11Staging: wlan-ng: tidy up iw_handlerRichard Kennedy
Use array initialisation technique copied from ipw2200.c. This should always get the function pointers in the correct place, without the needed for endless counting, skipping blanks etc. Signed-off-by: Richard Kennedy <richard@rsk.demon.co.uk> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2010-05-11Staging: wlan-ng: remove duplicated #includeHuang Weiyi
Remove duplicated #include('s) in drivers/staging/wlan-ng/p80211wext.c Signed-off-by: Huang Weiyi <weiyi.huang@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2010-03-30include cleanup: Update gfp.h and slab.h includes to prepare for breaking ↵Tejun Heo
implicit slab.h inclusion from percpu.h percpu.h is included by sched.h and module.h and thus ends up being included when building most .c files. percpu.h includes slab.h which in turn includes gfp.h making everything defined by the two files universally available and complicating inclusion dependencies. percpu.h -> slab.h dependency is about to be removed. Prepare for this change by updating users of gfp and slab facilities include those headers directly instead of assuming availability. As this conversion needs to touch large number of source files, the following script is used as the basis of conversion. http://userweb.kernel.org/~tj/misc/slabh-sweep.py The script does the followings. * Scan files for gfp and slab usages and update includes such that only the necessary includes are there. ie. if only gfp is used, gfp.h, if slab is used, slab.h. * When the script inserts a new include, it looks at the include blocks and try to put the new include such that its order conforms to its surrounding. It's put in the include block which contains core kernel includes, in the same order that the rest are ordered - alphabetical, Christmas tree, rev-Xmas-tree or at the end if there doesn't seem to be any matching order. * If the script can't find a place to put a new include (mostly because the file doesn't have fitting include block), it prints out an error message indicating which .h file needs to be added to the file. The conversion was done in the following steps. 1. The initial automatic conversion of all .c files updated slightly over 4000 files, deleting around 700 includes and adding ~480 gfp.h and ~3000 slab.h inclusions. The script emitted errors for ~400 files. 2. Each error was manually checked. Some didn't need the inclusion, some needed manual addition while adding it to implementation .h or embedding .c file was more appropriate for others. This step added inclusions to around 150 files. 3. The script was run again and the output was compared to the edits from #2 to make sure no file was left behind. 4. Several build tests were done and a couple of problems were fixed. e.g. lib/decompress_*.c used malloc/free() wrappers around slab APIs requiring slab.h to be added manually. 5. The script was run on all .h files but without automatically editing them as sprinkling gfp.h and slab.h inclusions around .h files could easily lead to inclusion dependency hell. Most gfp.h inclusion directives were ignored as stuff from gfp.h was usually wildly available and often used in preprocessor macros. Each slab.h inclusion directive was examined and added manually as necessary. 6. percpu.h was updated not to include slab.h. 7. Build test were done on the following configurations and failures were fixed. CONFIG_GCOV_KERNEL was turned off for all tests (as my distributed build env didn't work with gcov compiles) and a few more options had to be turned off depending on archs to make things build (like ipr on powerpc/64 which failed due to missing writeq). * x86 and x86_64 UP and SMP allmodconfig and a custom test config. * powerpc and powerpc64 SMP allmodconfig * sparc and sparc64 SMP allmodconfig * ia64 SMP allmodconfig * s390 SMP allmodconfig * alpha SMP allmodconfig * um on x86_64 SMP allmodconfig 8. percpu.h modifications were reverted so that it could be applied as a separate patch and serve as bisection point. Given the fact that I had only a couple of failures from tests on step 6, I'm fairly confident about the coverage of this conversion patch. If there is a breakage, it's likely to be something in one of the arch headers which should be easily discoverable easily on most builds of the specific arch. Signed-off-by: Tejun Heo <tj@kernel.org> Guess-its-ok-by: Christoph Lameter <cl@linux-foundation.org> Cc: Ingo Molnar <mingo@redhat.com> Cc: Lee Schermerhorn <Lee.Schermerhorn@hp.com>
2010-03-04Staging: Merge two branches of coding style fixes togetherGreg Kroah-Hartman
Turns out that multiple people sent pretty much the same patch for the same staging drivers. Commit these in two different branches and merge them together to get a more complete coverage of the cleanup and properly credit everyone for the work that they did. Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2010-03-04Staging: wlan-ng: More checkpatch.pl error cleanupsAndrew Elwell
Signed-off-by: Andrew Elwell <Andrew.Elwell@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2010-03-04Staging: wlan-ng - checkpatch.pl fixupsAndrew Elwell
Basic fixups in the staging/wlan-ng directory. (First kernel patch - thanks to FOSDEM talk) Signed-off-by: Andrew Elwell <Andrew.Elwell@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2010-03-04Staging: wlan-ng: multiple safe style cleanupsSvenne Krap
Cleanups as suggested by checkpatch.pl utiltiy. .o's from before and after cleanup have matching SHA1s. Signed-off-by: Svenne Krap <svenne@krap.dk> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2010-03-04Staging: wlan-ng: minor cleanupsRichard Kennedy
Remove iw_handle_def private initialisations as they are no longer need these. Signed-off-by: Richard Kennedy <richard@rsk.demon.co.uk> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2010-03-04Staging: wlan-ng: initialise mibitemSimon Horman
$ gcc --version gcc (Debian 4.4.2-5) 4.4.2 Copyright (C) 2009 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. $ make ... drivers/staging/wlan-ng/p80211wext.c: In function ‘p80211wext_dorequest’: drivers/staging/wlan-ng/p80211wext.c:139: warning: ‘mibitem.len’ is used uninitialized in this function drivers/staging/wlan-ng/p80211wext.c:139: warning: ‘mibitem.status’ is used uninitialized in this function drivers/staging/wlan-ng/p80211wext.c: In function ‘p80211wext_giwretry’: drivers/staging/wlan-ng/p80211wext.c:967: warning: ‘mibitem.len’ is used uninitialized in this function drivers/staging/wlan-ng/p80211wext.c:967: warning: ‘mibitem.status’ is used uninitialized in this function drivers/staging/wlan-ng/p80211wext.c:967: warning: ‘mibitem.data’ is used uninitialized in this function drivers/staging/wlan-ng/p80211wext.c: In function ‘p80211wext_siwretry’: drivers/staging/wlan-ng/p80211wext.c:1057: warning: ‘mibitem.len’ may be used uninitialized in this function drivers/staging/wlan-ng/p80211wext.c:1057: warning: ‘mibitem.status’ may be used uninitialized in this function drivers/staging/wlan-ng/p80211wext.c: In function ‘p80211wext_giwtxpow’: drivers/staging/wlan-ng/p80211wext.c:1149: warning: ‘mibitem.len’ is used uninitialized in this function drivers/staging/wlan-ng/p80211wext.c:1149: warning: ‘mibitem.status’ is used uninitialized in this function drivers/staging/wlan-ng/p80211wext.c:1149: warning: ‘mibitem.data’ is used uninitialized in this function drivers/staging/wlan-ng/p80211wext.c: In function ‘p80211wext_siwtxpow’: drivers/staging/wlan-ng/p80211wext.c:1123: warning: ‘mibitem.len’ may be used uninitialized in this function drivers/staging/wlan-ng/p80211wext.c:1123: warning: ‘mibitem.status’ may be used uninitialized in this function drivers/staging/wlan-ng/p80211wext.c: In function ‘p80211wext_giwfrag’: drivers/staging/wlan-ng/p80211wext.c:891: warning: ‘mibitem.len’ is used uninitialized in this function drivers/staging/wlan-ng/p80211wext.c:891: warning: ‘mibitem.status’ is used uninitialized in this function drivers/staging/wlan-ng/p80211wext.c:891: warning: ‘mibitem.data’ is used uninitialized in this function drivers/staging/wlan-ng/p80211wext.c: In function ‘p80211wext_siwfrag’: drivers/staging/wlan-ng/p80211wext.c:933: warning: ‘mibitem.len’ may be used uninitialized in this function drivers/staging/wlan-ng/p80211wext.c:933: warning: ‘mibitem.status’ may be used uninitialized in this function drivers/staging/wlan-ng/p80211wext.c: In function ‘p80211wext_giwrts’: drivers/staging/wlan-ng/p80211wext.c:826: warning: ‘mibitem.len’ is used uninitialized in this function drivers/staging/wlan-ng/p80211wext.c:826: warning: ‘mibitem.status’ is used uninitialized in this function drivers/staging/wlan-ng/p80211wext.c:826: warning: ‘mibitem.data’ is used uninitialized in this function drivers/staging/wlan-ng/p80211wext.c: In function ‘p80211wext_siwrts’: drivers/staging/wlan-ng/p80211wext.c:866: warning: ‘mibitem.len’ may be used uninitialized in this function drivers/staging/wlan-ng/p80211wext.c:866: warning: ‘mibitem.status’ may be used uninitialized in this function drivers/staging/wlan-ng/p80211wext.c: In function ‘p80211wext_giwrate’: drivers/staging/wlan-ng/p80211wext.c:775: warning: ‘mibitem.len’ is used uninitialized in this function drivers/staging/wlan-ng/p80211wext.c:775: warning: ‘mibitem.status’ is used uninitialized in this function drivers/staging/wlan-ng/p80211wext.c:775: warning: ‘mibitem.data’ is used uninitialized in this function drivers/staging/wlan-ng/p80211wext.c: In function ‘p80211wext_giwfreq’: drivers/staging/wlan-ng/p80211wext.c:273: warning: ‘mibitem.len’ is used uninitialized in this function drivers/staging/wlan-ng/p80211wext.c:273: warning: ‘mibitem.status’ is used uninitialized in this function drivers/staging/wlan-ng/p80211wext.c:273: warning: ‘mibitem.data’ is used uninitialized in this function drivers/staging/wlan-ng/p80211wext.c: In function ‘p80211wext_siwfreq’: drivers/staging/wlan-ng/p80211wext.c:320: warning: ‘mibitem.len’ may be used uninitialized in this function drivers/staging/wlan-ng/p80211wext.c: In function ‘p80211wext_siwmode’: drivers/staging/wlan-ng/p80211wext.c:401: warning: ‘mibitem.len’ may be used uninitialized in this function drivers/staging/wlan-ng/p80211wext.c:401: warning: ‘mibitem.status’ may be used uninitialized in this function ... Signed-off-by: Simon Horman <horms@verge.net.au> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2009-09-15Staging: wlan-ng: Drop the special case handling of older wireless ↵Moritz Muehlenhoff
extensions, WIRELESS_EXT is at 22 for the current kernel. Signed-off-by: Moritz Muehlenhoff <jmm@debian.org> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2009-09-15Staging: wlan-ng: Remove some superflous commentsMoritz Muehlenhoff
Signed-off-by: Moritz Muehlenhoff <jmm@debian.org> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2009-09-15staging: wlan-ng: scripts/checkpatch.pl error fixes.Mithlesh Thukral
scripts/checkpatch.pl error fixes. This is a TODO item. This patch fixes most of the errors reported by checkpatch.pl in wlan-ng directory of staging tree. Signed-off-by: Mithlesh Thukral <mithlesh@linsyssoft.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2009-06-19Staging: wlan-ng: Lindent cleanupsMithlesh Thukral
Lindent script cleanups in wlan-ng driver in the staging tree. This is a item in the TODO list. Signed-off-by: Mithlesh Thukral <mithlesh@linsyssoft.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2009-06-19Staging: wlan-ng: p80211wext.c: problem with IW_ENCODE_ALG_WEPJulia Lawall
The expression !(ext->alg & IW_ENCODE_ALG_WEP) appears to be incorrect, because there are several possible values for ext->alg that give 1 when bit-anded with IW_ENCODE_ALG_WEP. Therefore Richard Kennedy suggested to rewrite the code with != Added \n at the end of the debug string as well. Signed-off-by: Julia Lawall <julia@diku.dk> Cc: Jiri Slaby <jirislaby@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2009-06-19Staging: wlan-ng: Change KERN_DEBUG or pr_debug to match orig driverKarl Relton
Change uses of KERN_DEBUG over to pr_debug to match original driver where messages are only needed during driver development. Signed-off-by: Karl Relton <karllinuxtest.relton@ntlworld.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2009-04-03Staging: wlan-ng: Remove the now empty wlan_compat.hMoritz Muehlenhoff
Signed-off-by: Moritz Muehlenhoff <jmm@debian.org> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2009-04-03Staging: wlan-ng: p80211wext.c: Coding style cleanupsMoritz Muehlenhoff
Signed-off-by: Moritz Muehlenhoff <jmm@debian.org> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2009-04-03Staging: wlan-ng: Replace WLAN_LOG_DEBUG() with printk(KERN_DEBUGMoritz Muehlenhoff
Signed-off-by: Moritz Muehlenhoff <jmm@debian.org> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2009-04-03Staging: wlan-ng: Replace WLAN_LOG_ERROR() with printk()Moritz Muehlenhoff
Signed-off-by: Moritz Muehlenhoff <jmm@debian.org> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2009-04-03Staging: wlan-ng: Remove wlan_max()/wlan_min()Moritz Muehlenhoff
Replace wlan_min() with the generic min_t(), remove unused wlan_max(). Signed-off-by: Moritz Muehlenhoff <jmm@debian.org> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2009-04-03Staging: wlan-ng: Remove WLAN_LOG_INFOMoritz Muehlenhoff
Replace WLAN_LOG_INFO with printk() and remove it. Signed-off-by: Moritz Muehlenhoff <jmm@debian.org> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2009-04-03Staging: wlan-ng: Replace BITx with the generic BIT(x)Moritz Muehlenhoff
Signed-off-by: Moritz Muehlenhoff <jmm@debian.org> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2009-04-03Staging: wlan-ng: Remove DBFENTER/DBFEXIT macrosMoritz Muehlenhoff
Remove the ugly DBFENTER/DBFEXIT macros, which are only inserted to add "<---" and "--->" at the function start/end at higher debug levels and which make the code a lot less readable. Signed-off-by: Moritz Muehlenhoff <jmm@debian.org> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2009-04-03Staging: wlan-ng: Remove use of WLAN_ADDR_LENMoritz Muehlenhoff
Replace the driver local WLAN_ADDR_LEN constant through the kernel-wide ETH_ALEN definiton. Signed-off-by: Moritz Muehlenhoff <jmm@debian.org> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2009-01-06Staging: wlan-ng: fix compiler warningsGreg Kroah-Hartman
This fixes some compiler warnings in teh wlan-ng driver. Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2009-01-06Staging: wlan-ng: p80211wext.c: use ARRAY_SIZEJulia Lawall
ARRAY_SIZE is more concise to use when the size of an array is divided by the size of its type or the size of its first element. The semantic patch that makes this change is as follows: (http://www.emn.fr/x-info/coccinelle/) // <smpl> @i@ @@ #include <linux/kernel.h> @depends on i using "paren.iso"@ type T; T[] E; @@ - (sizeof(E)/sizeof(E[...])) + ARRAY_SIZE(E) @depends on i using "paren.iso"@ type T; T[] E; @@ - (sizeof(E)/sizeof(T)) + ARRAY_SIZE(E) // </smpl> Signed-off-by: Julia Lawall <julia@diku.dk> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2009-01-06Staging: wlan-ng: remove unused #include <version.h>Huang Weiyi
The file(s) below do not use LINUX_VERSION_CODE nor KERNEL_VERSION. drivers/staging/wlan-ng/p80211conv.c drivers/staging/wlan-ng/p80211req.c drivers/staging/wlan-ng/p80211wext.c drivers/staging/wlan-ng/prism2mgmt.c This patch removes the said #include <version.h>. Signed-off-by: Huang Weiyi <weiyi.huang@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2009-01-06Staging: wlan-ng: p80211wext don't set default key id twiceRichard Kennedy
p80211wext don't set default key id twice another change from wlan-ng-devel Signed-off-by: Richard Kennedy <richard@rsk.demon.co.uk> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2009-01-06Staging: wlan-ng: p80211wext.c add latest changes & remove extra nulls from ↵Richard Kennedy
wext_handlers add the latest changes from wlan-ng-devel remove 2 stray nulls from the wext_handler table introduced by the tidy up patch. Signed-off-by: Richard Kennedy <richard@rsk.demon.co.uk> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2009-01-06Staging: wlan-ng: Delete a pile of unused mibs. And fix WEXT SET_TXPOWER.Solomon Peachy
Signed-off-by: Solomon Peachy <pizza@shaftnet.org> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2009-01-06Staging: wlan-ng: Wireless Extension support is mandatory.Solomon Peachy
So take away the option to disable it. Signed-off-by: Solomon Peachy <pizza@shaftnet.org> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2009-01-06Staging: wlan-ng: Use standard kernel integer (u32/s32/etc) types.Solomon Peachy
wlan-ng needed to interact with userspace, and support very old kernels, so it used to define its own types for integers to ensure consistency. It's all rather irrelevant now. Signed-off-by: Solomon Peachy <pizza@shaftnet.org> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2009-01-06Staging: wlan-ng: Eliminate local 'version.h'Solomon Peachy
The kernel provides us with the proper version of this file. Signed-off-by: Solomon Peachy <pizza@shaftnet.org> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2009-01-06Staging: wlan-ng: Eliminate all backwards-compatibility for <2.6.13 kernels.Solomon Peachy
Signed-off-by: Solomon Peachy <pizza@shaftnet.org> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2009-01-06staging: correct dubious use of !x & yHarvey Harrison
Noticed by sparse: drivers/staging/me4000/me4000.c:1213:43: warning: dubious: !x & y drivers/staging/wlan-ng/p80211wext.c:1583:21: warning: dubious: !x & y Signed-off-by: Harvey Harrison <harvey.harrison@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2008-12-07staging-p80211: Kill directly reference of netdev->privWang Chen
In this driver, netdev's private data is wlandevice_t. And the wlandev(type of wlandevice_t) is exist before netdev be allocated. So use netdev->ml_priv to point to the private data. I am not sure whether I should consider the kernel version older than 2.3.38. Because in those kernels, netdevice_t is "structure dev" instead of "structure net_device" and of course "dev->ml_priv" will cause compile error. But before my patch, in function wlan_setup(), there is a ether_setup(net_device) which already broke kernels which older than 2.3.38. Signed-off-by: Wang Chen <wangchen@cn.fujitsu.com> Acked-by: Greg Kroah-Hartman <gregkh@suse.de> Signed-off-by: David S. Miller <davem@davemloft.net>
2008-10-10Staging: add wlan-ng prism2 usb driverGreg Kroah-Hartman
This adds the wlan-ng prism2 USB driver to the drivers/staging tree. The code was originally written by the linux-wlan-ng team, patched by some Novell engineers to properly work on newer kernels, and then hacked into place in order to get it to build properly in a single subdirectory within the kernel tree by me. It supports a wide range of older USB prism2 devices, and contains a 80211 stack to support this single driver. Cc: Christian Zoz <zoz@suse.de> Cc: Andreas Gruenbacher <agruen@suse.de> Cc: linux-wireless <linux-wireless@vger.kernel.org> Cc: John Linville <linville@tuxdriver.com> Cc: Helmut Schaa <helmut.schaa@googlemail.com> Cc: linux-wlan-ng <solomon@linux-wlan.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>