aboutsummaryrefslogtreecommitdiff
path: root/drivers/net/wireless
AgeCommit message (Collapse)Author
2006-06-05[PATCH] ipw2200: Filter unsupported channels out in ad-hoc modeZhu Yi
Currently iwlist ethX freq[uency]/channel lists all the channels the card supported for the current region, which includes some channels can only be used in infrastructure mode. This patch filters these channels out if the card is currently in ad-hoc mode. Signed-off-by: Zhu Yi <yi.zhu@intel.com> Signed-off-by: John W. Linville <linville@tuxdriver.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de> Signed-off-by: Chris Wright <chrisw@sous-sol.org>
2006-04-07[PATCH] hostap: Fix EAPOL frame encryptionJouni Malinen
Fixed encrypted of EAPOL frames from wlan#ap interface (hostapd). This was broken when moving to use new frame control field defines in net/ieee80211.h. hostapd uses Protected flag, not protocol version (which was cleared in this function anyway). This fixes WPA group key handshake and re-authentication. http://hostap.epitest.fi/bugz/show_bug.cgi?id=126 Signed-off-by: Jouni Malinen <jkmaline@cc.hut.fi>
2006-04-07[PATCH] AIRO{,_CS} <-> CRYPTO fixesAdrian Bunk
CRYPTO is a helper variable, and to make it easier for users, it should therefore select'ed and not be listed in the dependencies. drivers/net/wireless/airo.c requires CONFIG_CRYPTO for compilations. Therefore, AIRO_CS also has to select CRYPTO. Signed-off-by: Adrian Bunk <bunk@stusta.de> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2006-04-07[PATCH] drivers/net/wireless/ipw2200.c: fix an array overunAdrian Bunk
This patch fixes a big array overun found by the Coverity checker. This was already fixed in Linus' tree. Signed-off-by: Adrian Bunk <bunk@stusta.de> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2006-04-07[PATCH] PCMCIA_SPECTRUM must select FW_LOADERAdrian Bunk
PCMCIA_SPECTRUM must select FW_LOADER. Reported by "Alexander E. Patrakov" <patrakov@ums.usu.ru>. This patch was already included in Linus' tree. Signed-off-by: Adrian Bunk <bunk@stusta.de> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2006-03-01[PATCH] pcmcia: avoid binding hostap_cs to Orinoco cardsPavel Roskin
Don't just use cards with PCMCIA ID 0x0156, 0x0002. Make sure that the vendor string is "Intersil" or "INTERSIL" Signed-off-by: Pavel Roskin <proski@gnu.org> Signed-off-by: Dominik Brodowski <linux@dominikbrodowski.net>
2006-02-20[PATCH] ipw2200: Suppress warning messageZhu Yi
The following message will be only printed if DEBUG_NOTIF is on. "Unknown notification: subtype=40,flags=0xa0,size=40" Signed-off-by: Zhu Yi <yi.zhu@intel.com> Cc: James Ketrenos <jketreno@linux.intel.com> Cc: Jeff Garzik <jgarzik@pobox.com> Cc: "John W. Linville" <linville@tuxdriver.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2006-02-17[PATCH] Wavelan_cs bitfield fixesJean Tourrilhes
Some bitfields were incorrectly initialised in wavelan_cs, causing some compiler warning. Also killed a error message that should not be there... Signed-off-by: Jean Tourrilhes <jt@hpl.hp.com> Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
2006-02-17[PATCH] wireless/atmel: fix Open System authentication process bugsDan Williams
This patch fixes a number of bugs in the authentication process: 1) When falling back to Shared Key authentication mode from Open System, a missing 'return' would cause the auth request to be sent, but would drop the card into Management Error state. When falling back, the driver should also indicate that it is switching to Shared Key mode by setting exclude_unencrypted. 2) Initial authentication modes were apparently wrong in some cases, causing the driver to attempt Shared Key authentication mode when in fact the access point didn't support that mode or even had WEP disabled. The driver should set the correct initial authentication mode based on wep_is_on and exclude_unencrypted. 3) Authentication response packets from the access point in Open System mode were getting ignored because the driver was expecting the sequence number of a Shared Key mode response. The patch separates the OS and SK mode handling to provide the correct behavior. Signed-off-by: Dan Williams <dcbw@redhat.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
2006-02-17[PATCH] wireless/atmel: fix setting TX key only in ENCODEEXTDan Williams
The previous patch that added ENCODEEXT and AUTH support to the atmel driver contained a slight error which would cause just setting the TX key index to also set the encryption key again. This patch allows any combination of setting the TX key index and setting an encryption key. Signed-off-by: Dan Williams <dcbw@redhat.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
2006-02-12[PATCH] orinoco: support smc2532wJesse Allen
The orinoco wireless driver can support the SMC 2532W-B PC Card, so add the id for it. Signed-off-by: Jesse Allen <the3dfxdude@gmail.com> Cc: Pavel Roskin <proski@gnu.org> Cc: David Gibson <david@gibson.dropbear.id.au> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2006-02-10[PATCH] wrong firmware location in IPW2100 Kconfig entryJesper Juhl
Firmware should go into /lib/firmware, not /etc/firmware. Found by Alejandro Bonilla. Signed-off-by: Jesper Juhl <jesper.juhl@gmail.com> Signed-off-by: Adrian Bunk <bunk@stusta.de> Acked-by: Zhu Yi <yi.zhu@intel.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2006-02-08[PATCH] type-safe min() in prism54Al Viro
we do min() on u8 and small integer constant; cast the latter to u8. Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
2006-02-01[PATCH] ipw2200: fix ->eeprom[EEPROM_VERSION] checkAlexey Dobriyan
priv->eeprom is a pointer. Signed-off-by: Alexey Dobriyan <adobriyan@gmail.com> Acked-by: Yi Zhu <yi.zhu@intel.com> Cc: James Ketrenos <jketreno@linux.intel.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2006-01-30[PATCH] PCMCIA=m, HOSTAP_CS=y is not a legal configurationAdrian Bunk
CONFIG_PCMCIA=m, CONFIG_HOSTAP_CS=y doesn't compile. Reported by "Gabriel C." <crazy@pimpmylinux.org>. Signed-off-by: Adrian Bunk <bunk@stusta.de> Signed-off-by: John W. Linville <linville@tuxdriver.com>
2006-01-30[PATCH] ipw2200: Fix a variable referenced after kfree() bugZhu Yi
Signed-off-by: Zhu Yi <yi.zhu@intel.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
2006-01-30[PATCH] ipw2200: Fix sw_reset doesn't clear the static essid problemZhu Yi
Signed-off-by: Zhu Yi <yi.zhu@intel.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
2006-01-30[PATCH] ipw2200: Fix "iwspy ethx off" causes kernel panicZhu Yi
Signed-off-by: Hong Liu <hong.liu@intel.com> Signed-off-by: Zhu Yi <yi.zhu@intel.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
2006-01-30[PATCH] ipw2100: Fix setting txpower failed problemZhu Yi
The ipw2100 driver misunderstood the parameter of txpower. Tx Power off means turn off the radio, but the driver interpret it as "can't set txpower". So when getting the txpower, it sets disabled=1 to the iwconifg tool in managed mode. And the tool will display "Tx Power off" when disabled=1. Now, in managed mode, iwconfig will not show "TX Power" if the radio is not switched off. It will only display "Tx Power off" only if the radio is killed. Signed-off-by: Hong Liu <hong.liu@intel.com> Signed-off-by: Zhu Yi <yi.zhu@intel.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
2006-01-30[PATCH] ipw2100: Fix a gcc compile warningZhu Yi
drivers/net/wireless/ipw2100.c:2236: warning: `ipw2100_match_buf' defined but not used Cc: Yi Zhu <yi.zhu@intel.com> Cc: James Ketrenos <jketreno@linux.intel.com> Cc: Jeff Garzik <jgarzik@pobox.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Zhu Yi <yi.zhu@intel.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
2006-01-27[PATCH] orinoco_cs: tweak Vcc debugging messagesValdis.Kletnieks@vt.edu
The current orinoco_cs.c can issue the exact same error message for 2 different tests that can fail. Alter them so we can tell which one of the two failed. Signed-off-by: Valdis Kletnieks <valdis.kletnieks@vt.edu> Signed-off-by: John W. Linville <linville@tuxdriver.com>
2006-01-17airo: Off-by-one channel fixJavier Achirica
2006-01-16[PATCH] hostap: don't #include C files in hostap_main.cAdrian Bunk
This patch contains an attempt to properly build hostap.o without #include'ing C files. Signed-off-by: Adrian Bunk <bunk@stusta.de> Signed-off-by: John W. Linville <linville@tuxdriver.com>
2006-01-16[PATCH] ipw2100: remove code for WIRELESS_EXT < 18Adrian Bunk
WIRELESS_EXT < 18 will never be true in the kernel. Signed-off-by: Adrian Bunk <bunk@stusta.de> Signed-off-by: John W. Linville <linville@tuxdriver.com>
2006-01-16[PATCH] drivers/net/wireless: correct reported ssid lengthsDan Williams
ESSIDs can technically include NULL characters. Drivers should not be adjusting the length of the ESSID before reporting it in their SIOCGIWESSID handlers. Breaks stuff like wpa_supplicant. Note that ipw drivers, which seem to currently be the "most correct", don't have this problem. Signed-off-by: Dan Williams <dcbw@redhat.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
2006-01-16[PATCH] hostap: allow flashing firmwarePavel Roskin
Host AP driver has code to support writing firmware to non-volatile memory, a.k.a. flash. This code has been extensively tested when Host AP was a standalone driver. Add a configuration option to the kernel to allow enabling this functionality. Improve the description of the RAM download option. Mention cards that require it. Remove obsolete scary comment. Signed-off-by: Pavel Roskin <proski@gnu.org> Signed-off-by: John W. Linville <linville@tuxdriver.com>
2006-01-16[PATCH] ipw2200: do not sleep in ipw_request_direct_scanOlaf Kirch
Drivers should not sleep for very long inside an ioctl - so return EAGAIN and let wpa_supplicant handle the problem. Signed-off-by: Olaf Kirch <okir@suse.de> Signed-off-by: John W. Linville <linville@tuxdriver.com>
2006-01-16[PATCH] prism54/islpci_eth.c: dev_kfree_skb used with interrupts disabledGraham Gower
dev_kfree_skb should not be used with interrupts disabled. Change to use dev_kfree_skb_irq instead. Signed-off-by: Graham Gower <graham.gower@gmail.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
2006-01-15Merge git://git.kernel.org/pub/scm/linux/kernel/git/bunk/trivialLinus Torvalds
2006-01-14[PATCH] Unlinline a bunch of other functionsArjan van de Ven
Remove the "inline" keyword from a bunch of big functions in the kernel with the goal of shrinking it by 30kb to 40kb Signed-off-by: Arjan van de Ven <arjan@infradead.org> Signed-off-by: Ingo Molnar <mingo@elte.hu> Acked-by: Jeff Garzik <jgarzik@pobox.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2006-01-15drivers/net/{,wireless/}Kconfig: remove dead URLAdrian Bunk
shadow.cabi.net does no longer exist. Signed-off-by: Adrian Bunk <bunk@stusta.de>
2006-01-15Spelling fix in IPW2100 and IPW2200 Kconfig entriesAlex Shepard
s/remvoed/removed/ Signed-off-by: Alex Shepard <ashepard@u.washington.edu> Signed-off-by: Adrian Bunk <bunk@stusta.de>
2006-01-12[PATCH] wireless/atmel: add IWENCODEEXT, IWAUTH, and association event supportDan Williams
This patch allows the Atmel driver to work correctly with wpa_supplicant and other programs that require some conformance with WEXT-18. It should not affect current behavior of the driver. The patch does four things: 1) Implements SIOCSIWENCODEEXT, SIOCGIWENCODEEXT, SIOCSIWAUTH, and SIOCGIWAUTH calls for unencrypted and WEP operation 2) Accepts zero-filled addresses for SIOCSIWAP, which are legal and should turn off any previous forced WAP address 3) Sends association and de-association events to userspace at most of the appropriate times 4) Fixes erroneous order of CIPHER_SUITE_WEP_* arguments in one location which are actually unused anyway Signed-off-by: Dan Williams <dcbw@redhat.com> Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
2006-01-12[PATCH] CONFIG_AIRO needs CONFIG_CRYPTOdann frazier
airo.c currently has MICSUPPORT enabled, which requires CONFIG_CRYPTO. A user reported a build failure which is due to the lack of a Kconfig dependency. See http://bugs.debian.org/344205. This patch makes Kconfig enforce this dependency. Signed-off-by: dann frazier <dannf@debian.org> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
2006-01-10[PATCH] TTY layer buffering revampAlan Cox
The API and code have been through various bits of initial review by serial driver people but they definitely need to live somewhere for a while so the unconverted drivers can get knocked into shape, existing drivers that have been updated can be better tuned and bugs whacked out. This replaces the tty flip buffers with kmalloc objects in rings. In the normal situation for an IRQ driven serial port at typical speeds the behaviour is pretty much the same, two buffers end up allocated and the kernel cycles between them as before. When there are delays or at high speed we now behave far better as the buffer pool can grow a bit rather than lose characters. This also means that we can operate at higher speeds reliably. For drivers that receive characters in blocks (DMA based, USB and especially virtualisation) the layer allows a lot of driver specific code that works around the tty layer with private secondary queues to be removed. The IBM folks need this sort of layer, the smart serial port people do, the virtualisers do (because a virtualised tty typically operates at infinite speed rather than emulating 9600 baud). Finally many drivers had invalid and unsafe attempts to avoid buffer overflows by directly invoking tty methods extracted out of the innards of work queue structs. These are no longer needed and all go away. That fixes various random hangs with serial ports on overflow. The other change in here is to optimise the receive_room path that is used by some callers. It turns out that only one ldisc uses receive room except asa constant and it updates it far far less than the value is read. We thus make it a variable not a function call. I expect the code to contain bugs due to the size alone but I'll be watching and squashing them and feeding out new patches as it goes. Because the buffers now dynamically expand you should only run out of buffering when the kernel runs out of memory for real. That means a lot of the horrible hacks high performance drivers used to do just aren't needed any more. Description: tty_insert_flip_char is an old API and continues to work as before, as does tty_flip_buffer_push() [this is why many drivers dont need modification]. It does now also return the number of chars inserted There are also tty_buffer_request_room(tty, len) which asks for a buffer block of the length requested and returns the space found. This improves efficiency with hardware that knows how much to transfer. and tty_insert_flip_string_flags(tty, str, flags, len) to insert a string of characters and flags For a smart interface the usual code is len = tty_request_buffer_room(tty, amount_hardware_says); tty_insert_flip_string(tty, buffer_from_card, len); More description! At the moment tty buffers are attached directly to the tty. This is causing a lot of the problems related to tty layer locking, also problems at high speed and also with bursty data (such as occurs in virtualised environments) I'm working on ripping out the flip buffers and replacing them with a pool of dynamically allocated buffers. This allows both for old style "byte I/O" devices and also helps virtualisation and smart devices where large blocks of data suddenely materialise and need storing. So far so good. Lots of drivers reference tty->flip.*. Several of them also call directly and unsafely into function pointers it provides. This will all break. Most drivers can use tty_insert_flip_char which can be kept as an API but others need more. At the moment I've added the following interfaces, if people think more will be needed now is a good time to say int tty_buffer_request_room(tty, size) Try and ensure at least size bytes are available, returns actual room (may be zero). At the moment it just uses the flipbuf space but that will change. Repeated calls without characters being added are not cumulative. (ie if you call it with 1, 1, 1, and then 4 you'll have four characters of space. The other functions will also try and grow buffers in future but this will be a more efficient way when you know block sizes. int tty_insert_flip_char(tty, ch, flag) As before insert a character if there is room. Now returns 1 for success, 0 for failure. int tty_insert_flip_string(tty, str, len) Insert a block of non error characters. Returns the number inserted. int tty_prepare_flip_string(tty, strptr, len) Adjust the buffer to allow len characters to be added. Returns a buffer pointer in strptr and the length available. This allows for hardware that needs to use functions like insl or mencpy_fromio. Signed-off-by: Alan Cox <alan@redhat.com> Cc: Paul Fulghum <paulkf@microgate.com> Signed-off-by: Hirokazu Takata <takata@linux-m32r.org> Signed-off-by: Serge Hallyn <serue@us.ibm.com> Signed-off-by: Jeff Dike <jdike@addtoit.com> Signed-off-by: John Hawkes <hawkes@sgi.com> Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com> Signed-off-by: Adrian Bunk <bunk@stusta.de> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2006-01-09[patch] ipw2100: support WEXT-18 enc_capa v3Dan Williams
This patch allows ipw2100 driver to advertise the WPA-related encryption options that it does really support. It's necessary to work correctly with NetworkManager and other programs that actually check driver & card capabilities. Signed-off-by: Dan Williams <dcbw@redhat.com> Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
2006-01-06[PATCH] pcmcia: unify attach, EVENT_CARD_INSERTION handlers into one probe ↵Dominik Brodowski
callback Unify the EVENT_CARD_INSERTION and "attach" callbacks to one unified probe() callback. As all in-kernel drivers are changed to this new callback, there will be no temporary backwards-compatibility. Inside a probe() function, each driver _must_ set struct pcmcia_device *p_dev->instance and instance->handle correctly. With these patches, the basic driver interface for 16-bit PCMCIA drivers now has the classic four callbacks known also from other buses: int (*probe) (struct pcmcia_device *dev); void (*remove) (struct pcmcia_device *dev); int (*suspend) (struct pcmcia_device *dev); int (*resume) (struct pcmcia_device *dev); Signed-off-by: Dominik Brodowski <linux@dominikbrodowski.net>
2006-01-06[PATCH] pcmcia: remove dev_list from driversDominik Brodowski
The linked list of devices managed by each PCMCIA driver is, in very most cases, unused. Therefore, remove it from many drivers. Signed-off-by: Dominik Brodowski <linux@dominikbrodowski.net>
2006-01-06[PATCH] pcmcia: unify detach, REMOVAL_EVENT handlers into one remove callbackDominik Brodowski
Unify the "detach" and REMOVAL_EVENT handlers to one "remove" function. Old functionality is preserved, for the moment. Signed-off-by: Dominik Brodowski <linux@dominikbrodowski.net>
2006-01-05[PATCH] pcmcia: new suspend coreDominik Brodowski
Move the suspend and resume methods out of the event handler, and into special functions. Also use these functions for pre- and post-reset, as almost all drivers already do, and the remaining ones can easily be converted. Bugfix to include/pcmcia/ds.c Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Dominik Brodowski <linux@dominikbrodowski.net>
2006-01-04Merge branch 'upstream-linus' of ↵Linus Torvalds
master.kernel.org:/pub/scm/linux/kernel/git/jgarzik/netdev-2.6
2006-01-03[IEEE80211] ipw2200: Simplify multicast checks.Stephen Hemminger
From: Stephen Hemminger <shemminger@osdl.org> is_multicast_ether_addr() accepts broadcast too, so the is_broadcast_ether_addr() calls are redundant. Signed-off-by: David S. Miller <davem@davemloft.net>
2006-01-03Merge branch 'master'Jeff Garzik
2005-12-24[PATCH] orinoco_nortel: Add Symbol LA-4123 IDPavel Roskin
Add ID for Symbol LA-4123. Reported by Tomas Novak <tap@post.cz> Signed-off-by: Pavel Roskin <proski@gnu.org> Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
2005-12-24[PATCH] orinoco_nortel: Fix incorrect PCI resource usePavel Roskin
orinoco_nortel was broken during conversion to iomem API. Wrong PCI BAR is used for chipset registers. Reported by Tomas Novak <tap@post.cz> Signed-off-by: Pavel Roskin <proski@gnu.org> Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
2005-12-01[PATCH] Duplicate IPW_DEBUG option for ipw2100 and 2200Brice Goglin
There are currently two IPW_DEBUG options in drivers/net/wireless/Kconfig (one for ipw2100 and one for ipw2200). The attached patch splits it into IPW2100_DEBUG and IPW2200_DEBUG. Signed-off-by: Brice Goglin <Brice.Goglin@ens-lyon.org> Cc: "James P. Ketrenos" <ipw2100-admin@linux.intel.com> Cc: Jeff Garzik <jgarzik@pobox.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
2005-12-01[PATCH] ipw2200: kzalloc conversion and Kconfig dependency fixTakis
- Use kzalloc for IPW2200 - Fix config dependency for IPW2200 Signed-off-by: Panagiotis Issaris <takis@issaris.org> Cc: James Ketrenos <jketreno@linux.intel.com> Cc: Yi Zhu <yi.zhu@intel.com> Cc: Jeff Garzik <jgarzik@pobox.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
2005-12-01Merge branch 'upstream-fixes'Jeff Garzik
2005-12-01[PATCH] airo.c: add support for IW_ENCODE_TEMP (i.e. xsupplicant)Dan Streetman
Hello Jeff, this patch changes causes the airo driver to not reset the card when a temporary WEP key is set, when the IW_ENCODE_TEMP flag is used. This is needed for xsupplicant as 802.1x, LEAP, etc. change WEP keys frequently after authentication and resetting the card causes infinite reauthentication. Javier and Jean agree with the patch, Javier suggested I send this to you, can you apply this? Thanks. Signed-off-by: Dan Streetman <ddstreet@ieee.org> Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
2005-12-01[wireless airo] reset card in initMatthieu CASTET
without this patch after an rmmod, modprobe the card won't work anymore until the next reboot. This patch seem safe to apply for all cards as the bsd driver already do that. I had to add a timeout because strange things happen (issuecommand will fail) if the card is already reseted (after a reboot). PS : it seems there are missing reset when leaving monitor mode... Signed-off-by: Matthieu CASTET <castet.matthieu@free.fr>