aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAge
* libertas: move lbs_hard_start_xmit() into tx.cDavid Woodhouse2008-01-28
| | | | | | | ... where it can shortly be merged with lbs_process_tx()... Signed-off-by: David Woodhouse <dwmw2@infradead.org> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* libertas: kill SendSinglePacket() function.David Woodhouse2008-01-28
| | | | | | | | | | Make a start on reducing the number of pointless nested functions, starting with the StudlyCaps. No semantic changes (yet) -- we can sort out the now-obvious discrepancy in the failure paths in a separate commit. Signed-off-by: David Woodhouse <dwmw2@infradead.org> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* libertas: kill internal tx queue for PS modeDavid Woodhouse2008-01-28
| | | | | | | | | | | | | It was buggy as hell anyway, since it was just spewing packets at the device when it wasn't necessarily ready for them (in the USB case, while the URB was still busy). We could probably do with a better way of flushing packets to the device _immediately_, before we stick it back into sleep mode. But we can no longer just dequeue packets directly, it seems. Signed-off-by: David Woodhouse <dwmw2@infradead.org> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* libertas: stop debugfs code looking at cmdpendingqDavid Woodhouse2008-01-28
| | | | | | | | | | | It doesn't need to wait until no commands are pending anyway -- it only needs to wait until the scan is finished. We can hopefully find it something else to wait on too -- it's the only user of the cmd_pending waitqueue. Signed-off-by: David Woodhouse <dwmw2@infradead.org> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* libertas: cope with device which already has firmware loadedDavid Woodhouse2008-01-28
| | | | | Signed-off-by: David Woodhouse <dwmw2@infradead.org> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* libertas: use lbs_host_to_card_done() in lbs_tx_timeout()David Woodhouse2008-01-28
| | | | | | | Also attempt some locking in lbs_host_to_card_done() Signed-off-by: David Woodhouse <dwmw2@infradead.org> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* libertas: kill struct lbs_adapterDavid Woodhouse2008-01-28
| | | | | | | | 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: kill TxLockFlagDavid Woodhouse2008-01-28
| | | | | | | We don't need this. We can use adapter->currenttxskb instead. Signed-off-by: David Woodhouse <dwmw2@infradead.org> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* libertas: fix lbs_rtap attribute in sysfsDavid Woodhouse2008-01-28
| | | | | | | | | | | At least it doesn't oops when you attempt to read or write it now. Only when you enable it and then later turn it off. And when it's enabled I don't see how it actually works. But one fewer oops is good, for now... Signed-off-by: David Woodhouse <dwmw2@infradead.org> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* libertas: clean up lbs_thread() to make it slightly more readableDavid Woodhouse2008-01-28
| | | | | | | No semantic changes. Signed-off-by: David Woodhouse <dwmw2@infradead.org> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* libertas: switch lbs_cmd() to take a callback function pointerDavid Woodhouse2008-01-28
| | | | | | | | | | All existing code which sends commands is set up to have some function called with the results, not to get data back. It's more versatile this way, and providing it with a callback function which involves memcpy() is hardly difficult. Signed-off-by: David Woodhouse <dwmw2@infradead.org> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* libertas: kill adapter->nr_cmd_pendingDavid Woodhouse2008-01-28
| | | | | Signed-off-by: David Woodhouse <dwmw2@infradead.org> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* libertas: Fix up error handling in lbs_setuserscan()David Woodhouse2008-01-28
| | | | | 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-28
| | | | | | | 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: endianness fixesHolger Schurig2008-01-28
| | | | | | | | | | | | | | | Recently I found that that sparse by default doesn't endianness checks. So I changed my compilation habit to be make modules C=1 SUBDIRS=drivers/net/wireless/libertas CHECKFLAGS="-D__CHECK_ENDIAN__" so that I get the little-endian checks from sparse as well. That showed up a good bunch of problems. Signed-off-by: Holger Schurig <hs4233@mail.mn-solutions.de> Signed-off-by: David Woodhouse <dwmw2@infradead.org> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* libertas: Switch to using a callback function pointer for commandsDavid Woodhouse2008-01-28
| | | | | Signed-off-by: David Woodhouse <dwmw2@infradead.org> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* libertas: when usb_submit_usb fails, include the error code in the printkDavid Woodhouse2008-01-28
| | | | | Signed-off-by: David Woodhouse <dwmw2@infradead.org> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* libertas: implement new scanning logicHolger Schurig2008-01-28
| | | | | | | | | | | | | | | | This changes the code that is used for scanning and makes it hopefully easier to understand: * move function into logical blocks * create a bunch of lbs_scan_add_XXXX_tlv() functions, that help to create the TLV parameter of CMD_802_11_SCAN * all of them are now called from the much simpler lbs_do_scan() * no **puserscancfg double-pointers :-) Signed-off-by: Holger Schurig <hs4233@mail.mn-solutions.de> Acked-by: Dan Williams <dcbw@redhat.com> Signed-off-by: David Woodhouse <dwmw2@infradead.org> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* libertas: Fix endianness in boot2_version handling.David Woodhouse2008-01-28
| | | | | | | | We read it from the card. We byte-swap it. We write it back to the card. D'oh. Signed-off-by: David Woodhouse <dwmw2@infradead.org> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* libertas: Remove SET_BOOT2_VER support from the Big Switch Statement.David Woodhouse2008-01-28
| | | | | | | And the death of libertas_prepare_and_send_command() starts... Signed-off-by: David Woodhouse <dwmw2@infradead.org> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* libertas: Use lbs_cmd() for setting Boot2 versionDavid Woodhouse2008-01-28
| | | | | Signed-off-by: David Woodhouse <dwmw2@infradead.org> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* libertas: fix data packet size errorsHolger Schurig2008-01-28
| | | | | | | | | | | | | | I wondered about junk bytes at the end when using "lbsdebug +hex +host" until I noticed that firmware for the CF card sends my extranous bytes. It says "I have 20 bytes", I take 20 bytes, but the last 8 bytes of this are just data junk. Also, in the new lbs_cmd() where was a size miscalulation that made itself clear after fixing this bug. Signed-off-by: Holger Schurig <hs4233@mail.mn-solutions.de> Signed-off-by: David Woodhouse <dwmw2@infradead.org> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* libertas: don't cast a pointer to pointer ofLi Zefan2008-01-28
| | | | | | | | | | | | Don't cast struct foo * to struct list_head *, it's safe only when the list member is the first member of struct foo. Also don't cast struct list_head * to struct foo *. Signed-off-by: Li Zefan <lizf@cn.fujitsu.com> Signed-off-by: Holger Schurig <hs4233@mail.mn-solutions.de> Signed-off-by: David Woodhouse <dwmw2@infradead.org> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* libertas: Byteswap cmdptr->size in lbs_cmd()David Woodhouse2008-01-28
| | | | | | | | Bad Holger. Always test on big-endian machines, if it's little-endian you need to be swapping to/from. Signed-off-by: David Woodhouse <dwmw2@infradead.org> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* libertas: Zero 'pdata_size' field in cmd_ctrl_node reliably.David Woodhouse2008-01-28
| | | | | | | | Otherwise, lbs_process_rx_command() will take the new path for lbs_cmd() responses, when it shouldn't. Signed-off-by: David Woodhouse <dwmw2@infradead.org> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* libertas: Move SET_BOOT2_VER command to if_usb where it belongsDavid Woodhouse2008-01-28
| | | | | | | | | This is meaningless for non-USB devices and unimplemented in their firmware. It's somewhat dubious for USB devices too, but that's a different story. Signed-off-by: David Woodhouse <dwmw2@infradead.org> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* libertas: Don't claim to have checksummed incoming packets.David Woodhouse2008-01-28
| | | | | | | | This explains why we never noticed the corruption of checksums on outgoing packets... we weren't actually checking them either. Signed-off-by: David Woodhouse <dwmw2@infradead.org> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* libertas: handy function to call firmware commandsHolger Schurig2008-01-28
| | | | | | | | | | | | | | | | Using an arbitrary firmware command was actually very painful. One had to change big switch() statements in cmd.c, cmdresp.c, add structs to the big union in "struct cmd_ds_command" and add the define for the CMD_802_11_xxx to the proper place. With this function, this is now much easier. For now, it implements a blocking (a.k.a. CMD_OPTION_WAITFORRSP) way where one deals directly with command requests and response buffers. You can do everything in one place: Signed-off-by: Holger Schurig <hs4233@mail.mn-solutions.de> Signed-off-by: David Woodhouse <dwmw2@infradead.org> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* libertas: make more functions staticHolger Schurig2008-01-28
| | | | | | | | | These functions were used in the old debugfs code for events, but as this code is now gone, there's no need to export those functions. Signed-off-by: Holger Schurig <hs4233@mail.mn-solutions.de> Signed-off-by: David Woodhouse <dwmw2@infradead.org> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* libertas: remove cmd_ctrl_node->statusHolger Schurig2008-01-28
| | | | | | | | There was no code that ever did set this variable. Signed-off-by: Holger Schurig <hs4233@mail.mn-solutions.de> Signed-off-by: David Woodhouse <dwmw2@infradead.org> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* libertas: remove cmd_ctrl_node->cmdflagsHolger Schurig2008-01-28
| | | | | | | | There was no code that ever did set this flag. Signed-off-by: Holger Schurig <hs4233@mail.mn-solutions.de> Signed-off-by: David Woodhouse <dwmw2@infradead.org> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* libertas: Consolidate lbs_host_to_card_done() function.David Woodhouse2008-01-28
| | | | | | | | | As we move towards having this done by a state machine, start by having a single 'stuff sent' function, which is called by if_usb/if_sdio/if_cs after sending both data and commands. Signed-off-by: David Woodhouse <dwmw2@infradead.org> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* libertas: Remove cmd_oid from struct cmd_ctrl_nodeDavid Woodhouse2008-01-28
| | | | | | | | This is only needed for SNMP and key operations; it doesn't need to be preserved outside that context. Signed-off-by: David Woodhouse <dwmw2@infradead.org> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* libertas: Fix memory leak of RX skbsDavid Woodhouse2008-01-28
| | | | | Signed-off-by: David Woodhouse <dwmw2@infradead.org> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* b43: Fix for broken transmissionMichael Buesch2008-01-28
| | | | | | | | | | | | This patch fixes the transmission problems introduced by commit f04b3787bbce4567e28069a9ec97dcd804626ac7 I'm not sure if the dummy read is really required. The old code does it. I think it can't hurt and can possibly fix some write posting problems (hardware bugs or whatever. Who knows). Signed-off-by: Michael Buesch <mb@bu3sch.de> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* b43: Fix ofdmtab write regressionMichael Buesch2008-01-28
| | | | | | | | | | | | | | | | commit f04b3787bbce4567e28069a9ec97dcd804626ac7 introduced a regression for the ofdmtable writing. It incorrectly removed the writing of the high 16bits for a 32bit table write and initialized the direction identifier too late. This patch does also some cleanups to make the code much more readable and adds a few comments, so non rocket scientists are also able to understand what this address caching is all about. Signed-off-by: Michael Buesch <mb@bu3sch.de> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* iwlwifi: add missing commentsTomas Winkler2008-01-28
| | | | | | | This patch add comments that escaped from the previous merge Signed-off-by: Tomas Winkler <tomas.winkler@intel.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* iwlwifi: fix compliation warningsTomas Winkler2008-01-28
| | | | | | | | This patch fixes compilation warnings introduced by 'fix ucode assertion for RX queue overrun' patch Signed-off-by: Tomas Winkler <tomas.winkler@intel.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* iwlwifi: remove HT code from iwl-3945.hReinette Chatre2008-01-28
| | | | | | | | | This pach removes HT code from iwl-3945.h - it is not needed here as 3945 does not support HT. The code ended up here during the header file split Signed-off-by: Reinette Chatre <reinette.chatre@intel.com> Signed-off-by: Tomas Winkler <tomas.winkler@intel.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* orinoco: always use latest BSS info when caching scan resultsDan Williams2008-01-28
| | | | | | | | | Always copy the latest BSS information from the firmware's results to the driver's BSS table to ensure that everything is up-to-date (IEs, supported rates, encryption status, etc). Signed-off-by: Dan Williams <dcbw@redhat.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* ipg: add __devexit annotationAdrian Bunk2008-01-28
| | | | | | ipg_remove() can become __devexit. Signed-off-by: Adrian Bunk <bunk@kernel.org>
* rt2x00: correct "skb_buff" typoJohn W. Linville2008-01-28
| | | | | Signed-off-by: John W. Linville <linville@tuxdriver.com> Signed-off-by: Jeff Garzik <jeff@garzik.org>
* ipg: fix checkpatch reported errorsPekka Enberg2008-01-28
| | | | | | | Signed-off-by: Pekka Enberg <penberg@cs.helsinki.fi> Cc: Francois Romieu <romieu@fr.zoreil.com> Cc: Sorbica Shieh <sorbica@icplus.com.tw> Cc: Jesse Huang <jesse@icplus.com.tw>
* ipg: naming convention fixesPekka Enberg2008-01-28
| | | | | | | | | | This changes some camel-case names to follow proper kernel naming convention. Signed-off-by: Pekka Enberg <penberg@cs.helsinki.fi> Cc: Francois Romieu <romieu@fr.zoreil.com> Cc: Sorbica Shieh <sorbica@icplus.com.tw> Cc: Jesse Huang <jesse@icplus.com.tw> Signed-off-by: David S. Miller <davem@davemloft.net>
* ipg: remove some internal commentsPekka Enberg2008-01-28
| | | | | | | | | | This removes some now useless comments that were added when the driver was developed out-of-tree. Signed-off-by: Pekka Enberg <penberg@cs.helsinki.fi> Cc: Francois Romieu <romieu@fr.zoreil.com> Cc: Sorbica Shieh <sorbica@icplus.com.tw> Cc: Jesse Huang <jesse@icplus.com.tw>
* ipg: remove commented out codePekka Enberg2008-01-28
| | | | | | | Signed-off-by: Pekka Enberg <penberg@cs.helsinki.fi> Cc: Francois Romieu <romieu@fr.zoreil.com> Cc: Sorbica Shieh <sorbica@icplus.com.tw> Cc: Jesse Huang <jesse@icplus.com.tw>
* ipg: remove driver versionPekka Enberg2008-01-28
| | | | | | | | | | The driver is in mainline now so there's no need to maintain a separate version number. Signed-off-by: Pekka Enberg <penberg@cs.helsinki.fi> Cc: Francois Romieu <romieu@fr.zoreil.com> Cc: Sorbica Shieh <sorbica@icplus.com.tw> Cc: Jesse Huang <jesse@icplus.com.tw>
* ipg: remove IPG_DEV_KFREE_SKB macroPekka Enberg2008-01-28
| | | | | | | Signed-off-by: Pekka Enberg <penberg@cs.helsinki.fi> Cc: Francois Romieu <romieu@fr.zoreil.com> Cc: Sorbica Shieh <sorbica@icplus.com.tw> Cc: Jesse Huang <jesse@icplus.com.tw>
* ipg: remove boolean macrosPekka Enberg2008-01-28
| | | | | | | Signed-off-by: Pekka Enberg <penberg@cs.helsinki.fi> Cc: Francois Romieu <romieu@fr.zoreil.com> Cc: Sorbica Shieh <sorbica@icplus.com.tw> Cc: Jesse Huang <jesse@icplus.com.tw>
* ipg: remove old contact informationPekka Enberg2008-01-28
| | | | | | | | | Remove old comment as up-to-date contact information is in MAINTAINERS. Signed-off-by: Pekka Enberg <penberg@cs.helsinki.fi> Cc: Francois Romieu <romieu@fr.zoreil.com> Cc: Sorbica Shieh <sorbica@icplus.com.tw> Cc: Jesse Huang <jesse@icplus.com.tw>