summaryrefslogtreecommitdiffstats
path: root/drivers/net/wireless/libertas/wext.c
Commit message (Collapse)AuthorAgeFilesLines
* libertas: rate adaptation configuration via iwconfig.Javier Cardona2008-06-031-9/+18
| | | | | | | | | | | | | Implemented rate adaptation support via 'iwconfig rate' API. It is now possible to specify a bit-rate value and append 'auto'. That will configure rate adaptation to use all bit-rates equal or lower than than selected value. Made lbs_cmd_802_11_rate_adapt_rateset a direct command. Signed-off-by: Javier Cardona <javier@cozybit.com> Signed-off-by: David Woodhouse <dwmw2@infradead.org> Acked-by: Dan Williams <dcbw@redhat.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* libertas: Extend MESH_CONFIG command to access non-volatile configurationJavier Cardona2008-05-211-2/+3
| | | | | | | | | | | | | | | This patch is based on a patch from Shailendra Govardhan and Brian Cavagnolo. It extends the MESH_CONFIG command to configure non-volatile parameters on libertas devices that support them (e.g. OLPC Active Antenna). This patch only implements the driver/firmware interface. See http://dev.laptop.org/ticket/6823 for minimal testing results and known issues. Signed-off-by: Javier Cardona <javier@cozybit.com> Signed-off-by: David Woodhouse <dwmw2@infradead.org> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* libertas: remove lbs_get_fwversion()Holger Schurig2008-04-081-17/+0
| | | | | | | | It was used only at one place anyway. Signed-off-by: Holger Schurig <hs4233@mail.mn-solutions.de> Acked-by: Dan Williams <dcbw@redhat.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* libertas: move association code from scan.c into assoc.cHolger Schurig2008-04-081-0/+1
| | | | | | | | | | | | Besides code moving, I did the following changes: * made some functions static * removed some unneeded #include's * made patch checkpatch.pl clean Signed-off-by: Holger Schurig <hs4233@mail.mn-solutions.de> Acked-by: Dan Williams <dcbw@redhat.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* libertas: move association code from join.c into scan.cHolger Schurig2008-04-081-1/+0
| | | | | | | | | | | | Besides code moving, I did the following changes: * made some functions static * removed some unneeded #include's * made patch checkpatch.pl clean Signed-off-by: Holger Schurig <hs4233@mail.mn-solutions.de> Acked-by: Dan Williams <dcbw@redhat.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* libertas: remove lots of unused stuffHolger Schurig2008-03-251-1/+1
| | | | | | | | | | This removes many unused function parameters as well as some not-implemented functions, e.g. CMD_802_11_GET_STATS. The silly lbs_set_cmd_ctrl_node() function is now also gone. Signed-off-by: Holger Schurig <hs4233@mail.mn-solutions.de> Acked-by: Dan Williams <dcbw@redhat.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* libertas: misc power saving adjustsHolger Schurig2008-03-251-17/+7
| | | | | | | | | | | | | * firmware for the CF card supports power saving * the driver currenly only accept "iwconfig ethX power on|off", so I fixed what the range wext ioctl reports. * initialize value/flags in lbs_get_power() * get rid of unused parameter psmode in lbs_ps_confirm_sleep() * some minor debug output tweaks Signed-off-by: Holger Schurig <hs4233@mail.mn-solutions.de> Acked-by: Dan Williams <dcbw@redhat.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* libertas: convert GET_LOG to a direct commandHolger Schurig2008-03-251-6/+8
| | | | | | | | | | | | | | | | Now uses __lbs_cmd() to get the "log" (it's actually more a snapshot of various counters, not a sequential log). Besides the "mechanical" convertion the patch add the following logical changes: * Removes the priv->logmsg variable, it was only used in one place anyway, also don't blindly get the counters when associating. Getting the counters then the user asks via WEXT for them is good enought. * don't set wstats.discard.fragment with log.rxfrag, because the latter is a counter for successfully received packets, not for fragmented packets. Signed-off-by: Holger Schurig <hs4233@mail.mn-solutions.de> Acked-by: Dan Williams <dcbw@redhat.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* libertas: implement SSID scanning for SIOCSIWSCANHolger Schurig2008-03-131-0/+3
| | | | | | | | | | | | | | | After my bit scan re-writing the SIOCSIWSCAN wext ioctl no longer supported scanning for a specific SSID. However, wpa_supplicant is a possible user of this ioctl, so here is code that add's this. While passing, removed even more of the debugfs-based scanning. You can (and should) the SIOCSIWSCAN to ask for scans, so there is no need for proprietary interfaces for scanning. And, besides, the scan result couldn't be used further, e.g. not for associating. Signed-off-by: Holger Schurig <hs4233@mail.mn-solutions.de> Acked-by: Dan Williams <dcbw@redhat.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* libertas: always show firmware releaseHolger Schurig2008-01-281-11/+5
| | | | | | | | | Always shows the firmware release. Also converts the firmware release into something that is easily comparable. Signed-off-by: Holger Schurig <hs4233@mail.mn-solutions.de> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* libertas: allow for PS mode to be disabled when firmware doesn't support itDavid Woodhouse2008-01-281-0/+7
| | | | | | | | | | Otherwise, we go into an endless busy loop trying to enable PS mode when the command queue is empty, dealing with the error response, and then trying to enable PS mode again because the command queue is empty.... it doesn't really save much power. Signed-off-by: David Woodhouse <dwmw2@infradead.org> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* libertas: pass channel argument directly to lbs_mesh_config()David Woodhouse2008-01-281-4/+3
| | | | | | | | There is weirdness here; the firmware seems to refuse to change channels at will. Signed-off-by: David Woodhouse <dwmw2@infradead.org> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* libertas: allow setting channel on mshX deviceDavid Woodhouse2008-01-281-1/+52
| | | | | Signed-off-by: David Woodhouse <dwmw2@infradead.org> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* libertas: allow get/set SSID on mshX deviceDavid Woodhouse2008-01-281-2/+50
| | | | | Signed-off-by: David Woodhouse <dwmw2@infradead.org> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* libertas: convert DATA_RATE to a direct commandDan Williams2008-01-281-6/+3
| | | | | | Signed-off-by: Dan Williams <dcbw@redhat.com> Signed-off-by: David Woodhouse <dwmw2@infradead.org> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* libertas: kill struct lbs_adapterDavid Woodhouse2008-01-281-203/+169
| | | | | | | | There seems to be no reason for a separate structure; move it all into struct lbs_private. Signed-off-by: David Woodhouse <dwmw2@infradead.org> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* libertas: Don't set IW_ENCODE_NOKEY when returning WEP keys.David Woodhouse2008-01-281-10/+1
| | | | | | | Also clean up the double setting/clearing of IW_ENCODE_DISABLED. Signed-off-by: David Woodhouse <dwmw2@infradead.org> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* libertas: remove arbitrary typedefsHolger Schurig2008-01-281-80/+84
| | | | | | | | | | | | New typedefs are usually frowned upon. This patch changes libertas_adapter -> struct libertas_adapter libertas_priv -> struct libertas_priv While passing, make everything checkpatch.pl-clean that gets touches. Signed-off-by: Holger Schurig <hs4233@mail.mn-solutions.de> Acked-by: Dan Williams <dcbw@redhat.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* libertas: separate mesh connectivity from that of the main interfaceBrajesh Dave2008-01-281-4/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The transmit and receive traffic as soon as the mesh interface is brought up. Test case 1: Bring up only the mesh interface and ping. No need for any iwconfig commands on the main interface. $ ifconfig msh0 192.168.5.3 $ iwconfig msh0 channel X $ ping 192.168.5.2 If ping succeeds, PASS Test case 2: Associate with the main interface, and turn off AP. Mesh interface should not lose connectivity. $ iwconfig eth0 mode managed essid "my_ssid" $ ifconfig msh0 192.168.5.3 $ ping 192.168.5.2 <turn off access point> If ping continues uninterrupted, PASS This feature requires firmware version 5.110.19.p0 or newer, available here: http://dev.laptop.org/pub/firmware/libertas/ Signed-off-by: Ashish Shukla <ashishs@marvell.com> Signed-off-by: Javier Cardona <javier@cozybit.com> Signed-off-by: Dan Williams <dcbw@redhat.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* libertas: move to uniform lbs_/LBS_ namespaceHolger Schurig2008-01-281-238/+238
| | | | | | | | | | | | | | | | | | This patch unifies the namespace of variables, functions defines and structures. It does: - rename libertas_XXX to lbs_XXX - rename LIBERTAS_XXX to lbs_XXX - rename wlan_XXX to lbs_XXX - rename WLAN_XXX to LBS_XXX (but only those that were defined in libertas-local *.h files, e.g. not defines from net/ieee80211.h) While passing, I fixed some checkpatch.pl errors too. Signed-off-by: Holger Schurig <hs4233@mail.mn-solutions.de> Acked-by: Dan Williams <dcbw@redhat.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* wireless: checkpatch cleanupsJeff Garzik2008-01-281-4/+2
| | | | Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
* netdev: ARRAY_SIZE() cleanupsAlejandro Martinez Ruiz2008-01-281-8/+3
| | | | | | | Convert array size calculations to use ARRAY_SIZE(). Signed-off-by: Alejandro Martinez Ruiz <alex@flawedcode.org> Signed-off-by: Jeff Garzik <jeff@garzik.org>
* wireless: fix '!x & y' typo'sRoel Kluin2008-01-281-1/+1
| | | | | | | Fix priority mistakes similar to '!x & y' Signed-off-by: Roel Kluin <12o3l@tiscali.nl> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* libertas: move wlan_*_association_work from header to c fileHolger Schurig2008-01-281-16/+34
| | | | | | | | | | | Move wlan_postpone_association_work() and wlan_cancel_association_work() from a assoc.h file to the sole user, into wext.c. Renamed those two functions to to libertas_XXX as well. Signed-off-by: Holger Schurig <hs4233@mail.mn-solutions.de> Acked-by: Dan Williams <dcbw@redhat.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* drivers/net/wireless: Add missing "space"Joe Perches2007-11-291-1/+1
| | | | | Signed-off-by: Joe Perches <joe@perches.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* [PATCH] libertas: let get nick return what set nick has setHolger Schurig2007-10-101-27/+7
| | | | | | | | | | | Make the get-nickname wireless extension actually work. Before this patch, I could do "iwconfig eth1 nick BLAH" but "iwconfig eth1" would have still showed "MRVL-USB8388" to me. Hey, and that was wrong anyway, I'm on a CF card, not on USB :-) Signed-off-by: Holger Schurig <hs4233@mail.mn-solutions.de> Acked-By: Dan Williams <dcbw@redhat.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* [NET]: Introduce and use print_mac() and DECLARE_MAC_BUF()Joe Perches2007-10-101-2/+3
| | | | | | | This is nicer than the MAC_FMT stuff. Signed-off-by: Joe Perches <joe@perches.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* drivers/net/: all drivers/net/ cleanup with ARRAY_SIZEDenis Cheng2007-10-101-2/+2
| | | | | Signed-off-by: Denis Cheng <crquan@gmail.com> Signed-off-by: Jeff Garzik <jeff@garzik.org>
* [PATCH] libertas: fix sparse-reported problemsDan Williams2007-10-101-4/+4
| | | | | | | | A few fields being converted to the wrong sized type, and a few missed endian conversions. Signed-off-by: Dan Williams <dcbw@redhat.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* [PATCH] libertas: fix a few wext abuses...Jean Tourrilhes2007-10-101-93/+27
| | | | | | | | | | | | | | | o SIOCGIWNAME is not designed to return the version number of the driver. On the other hand, you are free to abuse SIOCGIWNICKN for that purpose. o Don't attempt to fix the WE19/WE20 transition in the driver, because your fixes are bogus, and redundant with the code in the kernel (you may endup with +2, you can't read 32 char ESSID...). o In SIOCSIWTXPOW, if you specified in iwrange that you want dBm, you should only get dBm, which allow to reduce code bloat. Signed-off-by: Jean Tourrilhes <jt@hpl.hp.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* [PATCH] libertas: remove adapter->txrateHolger Schurig2007-10-101-1/+1
| | | | | | | | The value of txrate was only set by a CMD_802_11_TX_RATE_QUERY command, but there was no code in the driver that ever issued this command. Signed-off-by: Holger Schurig <hs4233@mail.mn-solutions.de> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* [PATCH] libertas: fix WEXT quality reportingDan Williams2007-10-101-1/+1
| | | | | | | Found by Ronak and others at Marvell. Signed-off-by: Dan Williams <dcbw@redhat.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* [PATCH] libertas: make more functions static & remove unused functionsHolger Schurig2007-10-101-1/+1
| | | | | | | | | | | Some functions where declared in header files, but used only once. They are now static functions. After doing this, I found out that some functions weren't used at all. I removed this dead code. Signed-off-by: Holger Schurig <hs4233@mail.mn-solutions.de> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* [PATCH] libertas: simplify and clean up data rate handlingDan Williams2007-10-101-123/+40
| | | | | | | | | | | | | | | | | | | Remove unused/duplicated fields and consolidate static data rate arrays, for example the libertas_supported_rates[] and datarates[] arrays in the bss_descriptor structure, and the libertas_supported_rates field in the wlan_adapter structure. Introduce libertas_fw_index_to_data_rate and libertas_data_rate_to_fw_index functions and use them everywhere firmware requires a rate index rather than a rate array. The firmware requires the 4 basic rates to have the MSB set, but most other stuff doesn't, like WEXT and mesh ioctls. Therefore, only set the MSB on basic rates when pushing rate arrays to firmware instead of doing a ton of (rate & 0x7f) everywhere. Signed-off-by: Dan Williams <dcbw@redhat.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* [PATCH] libertas: fix more mixed-case abuseDan Williams2007-10-101-2/+2
| | | | | | | | Mistakently introduced by a previous patch to upper-case all command constants. Signed-off-by: Dan Williams <dcbw@redhat.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* [PATCH] libertas: re-uppercase command defines and other constantsDan Williams2007-10-101-43/+43
| | | | | | | For readability. Signed-off-by: Dan Williams <dcbw@redhat.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* [PATCH] libertas: rename WLAN_802_11_KEY to enc_key and clean up usageDan Williams2007-10-101-7/+7
| | | | | | | | It doesn't touch hardware and therefore doesn't need endian notations either. Signed-off-by: Dan Williams <dcbw@redhat.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* [PATCH] drivers/net/wireless/libertas/wext.c: remove dead codeAdrian Bunk2007-07-101-3/+0
| | | | | | | | | This patch removes dead code introduced by commit 90a42210f275e1f828eb6c08bf8252c2d6a774e0 and spotted by the Coverity checker. Signed-off-by: Adrian Bunk <bunk@stusta.de> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* [PATCH] libertas: remove private ioctlsDan Williams2007-06-281-152/+0
| | | | | | Signed-off-by: Christoph Hellwig <hch@infradead.org> Acked-by: Dan Williams <dcbw@redhat.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* [PATCH] libertas: remove structure WLAN_802_11_SSID and libertas_escape_essidDan Williams2007-06-111-18/+24
| | | | | | | | | Replace WLAN_802_11_SSID with direct 'ssid' and 'ssid_len' members like ieee80211. In the process, remove private libertas_escape_essid and depend on the ieee80211 implementation of escape_essid instead. Signed-off-by: Dan Williams <dcbw@redhat.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* [PATCH] libertas: don't byte-swap firmware version number. It's a byte array.David Woodhouse2007-06-111-9/+10
| | | | | Signed-off-by: David Woodhouse <dwmw2@infradead.org> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* [PATCH] libertas: first pass at fixing up endianness issuesDavid Woodhouse2007-06-111-6/+6
| | | | | Signed-off-by: David Woodhouse <dwmw2@infradead.org> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* [PATCH] libertas: split wext for eth and mshLuis Carlos Cobo Rus2007-06-111-0/+104
| | | | | | | | | | | Separate wireless handlers of mshX and ethX. ethX remains as before. For mshX, it has been disabled set/get essid, wap and set mode. Get mode always returns "Repeater" and by now we use the Nickname to show if the mesh is active ("Mesh") or not (empty). The rest remains as before. Signed-off-by: Luis Carlos Cobo Rus <luisca@cozybit.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* [PATCH] libertas: Make WPA work through supplicant handshakeDan Williams2007-06-111-28/+64
| | | | | | | | | | | | | | Fix WPA so it works up through the supplicant 4-Way handshake process. Doesn't successfully pass traffic yet; may be problems installing the GTK to the firmware. - RSN needs to be enabled before the association command is sent - Use keys from the association request not the adapter structure - cmd_act_mac_strict_protection_enable != IW_AUTH_DROP_UNENCRYPTED - Fix network filtering logic in is_network_compatible() WPA helpers Signed-off-by: Dan Williams <dcbw@redhat.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* [PATCH] libertas: move channel changing into association frameworkDan Williams2007-06-111-151/+31
| | | | | | | | | Handle channel changes through the deferred association framework rather than directly. Fixes errors when setting channels along with other parameters like mode and SSID. Signed-off-by: Dan Williams <dcbw@redhat.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* [PATCH] libertas: fix 'keep previous scan' behaviorDan Williams2007-06-111-1/+1
| | | | | | | | | | Do not clear the scan list except under specific conditions, such as when (a) user-requested, or (b) joining/starting an adhoc network. Furthermore, only clear entries which match the SSID or BSSID of the request, not the whole scan list. Signed-off-by: Dan Williams <dcbw@redhat.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* [PATCH] libertas: make scan result handling more flexibleDan Williams2007-06-111-31/+28
| | | | | | | | | | | - use a linked list for scan results - age scan results - pass bss_descriptors around instead of indexes into the scan table - lock access to the scan results - stop returning EAGAIN from SIOCGIWSCAN handler Signed-off-by: Dan Williams <dcbw@redhat.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* [PATCH] libertas: updated mesh commands for 5.220.9.p11Luis Carlos Cobo2007-06-111-0/+10
| | | | | | | | | | | Updated commands fwt_add and fwt_list, bt_list. New commands: bt_get_invert, bt_set_invert, to invert the blinding table, i.e., receive only frames from nodes listed in the BT. This patch needs/is needed for firmware 5.220.9.p11. Signed-off-by: Luis Carlos Cobo <luisca@cozybit.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* [PATCH] libertas: fixed incorrect assigment of fcs errors to frag errorsLuis Carlos Cobo2007-06-111-1/+1
| | | | | Signed-off-by: Luis Carlos Cobo <luisca@cozybit.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* [PATCH] libertas: make debug configurableHolger Schurig2007-06-111-176/+176
| | | | | | | | | The debug output of libertas was either not present or it was overwhelming. This patch adds the possibility to specify a bitmask for the area of interest. One should then only get the desired output. Signed-off-by: Holger Schurig <hs4233@mail.mn-solutions.de> Signed-off-by: John W. Linville <linville@tuxdriver.com>
OpenPOWER on IntegriCloud