summaryrefslogtreecommitdiff
path: root/drivers/net/wireless/libertas/if_usb.c
AgeCommit message (Collapse)AuthorFilesLines
2007-10-11[PATCH] libertas: monitor mode support for OLPC firmwareLuis Carlos Cobo1-0/+2
Driver support for the monitor mode support that will be available in the next OLPC 'bleeding edge' Marvell firmware release (most likely, 5.110.16.p2). To activate monitor mode, echo mode > /sys/class/net/{ethX,mshX}/device/libertas_rtap where mode is the hex mask that specifies which frames to sniff (in short, 0x1 for data, 0x2 for all management but beacons, 0x4 for beacons). Any non zero mode will activate the monitor mode, inhibiting transmission in ethX and mshX interfaces and routing all the incoming traffic to a new rtapX interface that will output the packets in 802.11+radiotap headers format. Signed-off-by: Luis Carlos Cobo <luisca@cozybit.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
2007-10-11[PATCH] libertas: keep mesh autostart enabled while asleepLuis Carlos Cobo1-0/+26
After loading the firmware, mesh autostart will be disabled. After that, the user will still be able to enable or disable it at will. On suspend, it will be always activated and later on resume it will go back to the state it had before going to sleep. Signed-off-by: Luis Carlos Cobo <luisca@cozybit.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
2007-10-11[PATCH] libertas: uppercase some #definesHolger Schurig1-3/+3
Usually constants defined by #define are in ALL_UPPERCASE. This patch fixes this. I also shuffled the bits around so that they match the bit positions in the host-interrupt-state register of the CF/SDIO card :-) Signed-off-by: Holger Schurig <hs4233@mail.mn-solutions.de> Signed-off-by: John W. Linville <linville@tuxdriver.com>
2007-10-11[PATCH] libertas: make more functions static & remove unused functionsHolger Schurig1-3/+5
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>
2007-10-11[PATCH] libertas: remove fw.cHolger Schurig1-2/+76
Firmware download is quite different for different hardware. The SDIO and CF cards have two flat files that need to be downloaded, whereas the USB driver needs only one file, but with an internal structure. The code that handles this (USB only) structured file is currently in fw.c. This patch moves this code into if_usb.c. The remaining functions in fw.c have not much to do with firmware, they are various card- and network-stack initialisation functions. I've moved them into main.c. Signed-off-by: Holger Schurig <hs4233@mail.mn-solutions.de> Signed-off-by: John W. Linville <linville@tuxdriver.com>
2007-10-11[PATCH] libertas: move generic firmware reset command to common codeDan Williams1-20/+10
It's not USB specific, so move it out of the USB interface code. Signed-off-by: Dan Williams <dcbw@redhat.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
2007-10-11[PATCH] libertas: remove thread.h and make kthread usage clearerDan Williams1-1/+1
Remove the thread.h abstractions and opencode kthread stuff to make it clearer. Signed-off-by: Dan Williams <dcbw@redhat.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
2007-10-11[PATCH] libertas: re-uppercase command defines and other constantsDan Williams1-3/+3
For readability. Signed-off-by: Dan Williams <dcbw@redhat.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
2007-10-11[PATCH] libertas: remove if_bootcmd.cDan Williams1-0/+24
Move the only function in it to if_usb.c, which was its only user anyway. Signed-off-by: Dan Williams <dcbw@redhat.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
2007-06-11[PATCH] libertas: More endianness fixes.David Woodhouse1-2/+2
Now it at least manages to load the firmware. Signed-off-by: David Woodhouse <dwmw2@infradead.org> Signed-off-by: John W. Linville <linville@tuxdriver.com>
2007-06-11[PATCH] libertas: first pass at fixing up endianness issuesDavid Woodhouse1-26/+22
Signed-off-by: David Woodhouse <dwmw2@infradead.org> Signed-off-by: John W. Linville <linville@tuxdriver.com>
2007-06-11[PATCH] libertas: fix oops on rmmodMarcelo Tosatti1-5/+2
Use list_for_each_entry_safe, to protect against list_del(). Signed-off-by: Marcelo Tosatti <mtosatti@redhat.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
2007-06-11[PATCH] libertas: correctly unregister mesh netdev on errorDan Williams1-2/+1
Subject says it all. Signed-off-by: Dan Williams <dcbw@redhat.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
2007-06-11[PATCH] libertas: call SET_NETDEV_DEV from common codeDan Williams1-10/+2
Move usage of SET_NETDEV_DEV into common code since it has nothing to do with bus-specific devices. Also fixes a bug where the mesh device was getting SET_NETDEV_DEV called after register_netdevice, resulting in no 'device' link in /sys/class/net/mshX/. Signed-off-by: Dan Williams <dcbw@redhat.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
2007-06-11[PATCH] libertas: add URB debug infoLuis Carlos Cobo1-1/+1
Signed-off-by: Luis Carlos Cobo <luisca@cozybit.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
2007-06-11[PATCH] libertas: remove unused variables in wlan_dev_tHolger Schurig1-23/+23
Actually, this patch removev wlan_dev_t totally and puts the used variables of it directly into wlan_private. That reduces one level of indirection and looks a little bit simpler. It's now "priv->card" and not "priv->wlan_dev.card" and "priv->dev" instead of "priv->wlan_dev.netdev" Changed two occurences of "((wlan_private *) dev->priv)->wlan_dev.netdev" into "dev", because I didn't see the point in doing pointer-ping-pong. The variables "ioport", "upld_rcv" and "upld_type" where unused. They have been removed. Signed-off-by: Holger Schurig <hs4233@mail.mn-solutions.de> Signed-off-by: John W. Linville <linville@tuxdriver.com>
2007-06-11[PATCH] libertas: let DRV_NAME be overridableHolger Schurig1-0/+2
For now, it's "libertas" by default, but that is overwritten in if_usb.c/if_bootcmd.c and in if_cs.c. Signed-off-by: Holger Schurig <hs4233@mail.mn-solutions.de> Signed-off-by: John W. Linville <linville@tuxdriver.com>
2007-06-11[PATCH] libertas: fix RESET logic at unload timeHolger Schurig1-47/+37
Previously, we had a fixed array of 5 elements where we remembered all initialized devices. This has been changed to use a "struct list_head" organization, which is IMHO cleaner. Also renamed usb_cardp to cardp, as in the reset of the code. Renamed reset_device() to if_usb_reset_device() like many other functions. Signed-off-by: Holger Schurig <hs4233@mail.mn-solutions.de> Signed-off-by: John W. Linville <linville@tuxdriver.com>
2007-06-11[PATCH] libertas: split module into two (libertas.ko and usb8xxx.ko)Holger Schurig1-26/+36
* add CONFIG_LIBERTAS to Kconfig * remove global variable libertas_fw_name, the USB module might want to use a different default FW name than the CF module, so libertas_fw_name is now local to if_usb.c * exported some symbols as GPL Signed-off-by: Holger Schurig <hs4233@mail.mn-solutions.de> Signed-off-by: John W. Linville <linville@tuxdriver.com>
2007-06-11[PATCH] libertas: indirect all hardware access via hw_XXXX functionsHolger Schurig1-10/+22
This functions makes all libertas_sbi_XXX functions static to the if_usb.c file and renames them to if_usb_XXXX(). The get called from other places of the source code via priv->hw_XXXX(). Signed-off-by: Holger Schurig <hs4233@mail.mn-solutions.de> Signed-off-by: John W. Linville <linville@tuxdriver.com>
2007-06-11[PATCH] libertas: fix error handling of card initializationMarcelo Tosatti1-2/+8
Subject says it all. Signed-off-by: Marcelo Tosatti <mtosatti@redhat.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
2007-06-11[PATCH] libertas: fixed transmission flow control on the mesh interfaceJavier Cardona1-4/+10
This patch implements proper transmission flow control on mshX. Signed-off-by: Javier Cardona <javier@cozybit.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
2007-06-11[PATCH] libertas: split wlan_add_card()Holger Schurig1-0/+3
Split wlan_add_card() into a part that just setups kernel parameters and into the function libertas_activate_card(), which will implizitly use hardware functions by the started thread. This allows us later to do something like this: priv = libertas_add_card(); priv->hw_command_to_host = if_usb_command_to_host; priv->hw_xxxx = if_usb_xxxx; priv->hw_yyyy = if_usb_yyyy; wlan_activate_card() and of course the CF driver can set it's own functions. Signed-off-by: Holger Schurig <hs4233@mail.mn-solutions.de> Signed-off-by: John W. Linville <linville@tuxdriver.com>
2007-06-11[PATCH] libertas: move reset_device() code main.c to if_usb.cHolger Schurig1-2/+35
The reset_device() logic is only needed for USB devices, not for CF devices. Signed-off-by: Holger Schurig <hs4233@mail.mn-solutions.de> Signed-off-by: John W. Linville <linville@tuxdriver.com>
2007-06-11[PATCH] libertas: get rid of libertas_sbi_get_priv()Holger Schurig1-12/+1
It's not really needed, because we can call wlan_remove_card() with wlan_private* anyway. Signed-off-by: Holger Schurig <hs4233@mail.mn-solutions.de> Signed-off-by: John W. Linville <linville@tuxdriver.com>
2007-06-11[PATCH] libertas: single out mesh codeHolger Schurig1-2/+5
This patches adds the two functions wlan_add_mesh() and wlan_remove_mesh(), which are responsible for the mshX interface. In a CF driver with a non- mesh-aware firmware you can omit the calls to this functions. Signed-off-by: Holger Schurig <hs4233@mail.mn-solutions.de> Signed-off-by: John W. Linville <linville@tuxdriver.com>
2007-06-11[PATCH] libertas: make debug configurableHolger Schurig1-66/+80
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>
2007-06-11[PATCH] libertas: move vendor & product id's into if_usb.cHolger Schurig1-6/+2
For me it looks cleaner, because it removes one level of indirection. Signed-off-by: Holger Schurig <hs4233@mail.mn-solutions.de> Signed-off-by: John W. Linville <linville@tuxdriver.com>
2007-06-11[PATCH] libertas: remove deprecated pm_register and associated codeMarcelo Tosatti1-12/+0
Subject says it all. Signed-off-by: Marcelo Tosatti <mtosatti@redhat.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
2007-05-11[PATCH] libertas: 64-bit cleanupsDan Williams1-1/+1
Signed-off-by: Dan Williams <dcbw@redhat.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
2007-05-11[PATCH] libertas: fix missing unlock in TX error pathDan Williams1-0/+1
Signed-off-by: Dan Williams <dcbw@redhat.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
2007-05-11[PATCH] libertas: remove SUPPORT_BOOT_COMMANDDan Williams1-2/+0
Remove the static definition of SUPPORT_BOOT_COMMAND. 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>
2007-04-28[PATCH] Marvell Libertas 8388 802.11b/g USB driverMarcelo Tosatti1-0/+952
Add the Marvell Libertas 8388 802.11 USB driver. Signed-off-by: Marcelo Tosatti <marcelo@kvack.org> Signed-off-by: John W. Linville <linville@tuxdriver.com>