aboutsummaryrefslogtreecommitdiff
path: root/drivers
AgeCommit message (Collapse)AuthorFilesLines
2012-03-15rt2x00: rt2800usb: limit tx queues lengthStanislaw Gruszka1-1/+1
TX status fifo is limited to 16 elements. When we send more frames than that, we can easily loose status, what is not good for rate scaling algorithm. On my testing the change does not degrade performance, actually make is slightly better. Additionally with the patch I can see much less various rt2x00 warnings in dmesg. Signed-off-by: Stanislaw Gruszka <[email protected]> Acked-by: Gertjan van Wingerde <[email protected]> Acked-by: Helmut Schaa <[email protected]> Signed-off-by: John W. Linville <[email protected]>
2012-03-15rt2x00: rt2800usb: do not check packedid for aggregated framesStanislaw Gruszka1-2/+3
Tx statuses of aggregated subframes contain packetid of first subframe in the AMPDU. We can not identify AMPDU subframes based on packedid, so simply assume that status match first pending frame in the queue. Thats mostly the same what 2800pci do. Signed-off-by: Stanislaw Gruszka <[email protected]> Acked-by: Gertjan van Wingerde <[email protected]> Acked-by: Helmut Schaa <[email protected]> Signed-off-by: John W. Linville <[email protected]>
2012-03-15rt2x00: rt2800usb: rework txstatus codeStanislaw Gruszka5-64/+101
Currently we read tx status register after each urb data transfer. As callback procedure also trigger reading, that causing we have many "threads" of reading status. To prevent that introduce TX_STATUS_READING flags, and check if we are already in process of sequential reading TX_STA_FIFO, before requesting new reads. Change timer to hrtimer, that make TX_STA_FIFO overruns less possible. Use 200 us for initial timeout, and then reschedule in 100 us period, this values probably have to be tuned. Make changes on txdone work. Schedule it from rt2800usb_tx_sta_fifo_read_completed() callback when first valid status show up. Check in callback if tx status timeout happens, and schedule work on that condition too. That make possible to remove tx status timeout from generic watchdog. I moved that to rt2800usb. Loop in txdone work, that should prevent situation when we queue work, which is already processed, and after finish work is not rescheduled again. Signed-off-by: Stanislaw Gruszka <[email protected]> Signed-off-by: John W. Linville <[email protected]>
2012-03-15rt2x00: rt2800usb: rework txdone codeStanislaw Gruszka1-41/+31
Patch change txdone code to make it similar like txdone in rt2800pci, process only one entry from queue matching tx status. Before we processed all pending entries from queue until PACKEDID match, that caused that we do not report tx statuses correctly. Signed-off-by: Stanislaw Gruszka <[email protected]> Acked-by: Gertjan van Wingerde <[email protected]> Signed-off-by: John W. Linville <[email protected]>
2012-03-15rt2x00: rt2800usb: move additional txdone into new functionStanislaw Gruszka1-5/+11
Signed-off-by: Stanislaw Gruszka <[email protected]> Acked-by: Gertjan van Wingerde <[email protected]> Signed-off-by: John W. Linville <[email protected]>
2012-03-15ath9k: Fix multi-VIF BSS handlingSujith Manoharan5-34/+14
mac80211 provides short preamble information and ERP protection information on a per-BSS basis, which can be used. Remove flags stored in the driver, which was incorrect since they were being used in a global manner. Signed-off-by: Sujith Manoharan <[email protected]> Signed-off-by: John W. Linville <[email protected]>
2012-03-15ath9k: Remove aggregation flagsSujith Manoharan5-46/+29
SC_OP_TXAGGR and SC_OP_RXAGGR are not really needed. The HT capabilities of the station and HW can be used instead. Signed-off-by: Sujith Manoharan <[email protected]> Signed-off-by: John W. Linville <[email protected]>
2012-03-15ath9k_hw: Cleanup FastChannelChangeSujith Manoharan3-36/+74
The logic to determine whether to use FCC is a bit convoluted. Use a small helper function to decide whether FCC is to be used. Signed-off-by: Sujith Manoharan <[email protected]> Signed-off-by: John W. Linville <[email protected]>
2012-03-15ath9k: Remove 'other' VIF countSujith Manoharan3-4/+2
It is not needed and will not be used anyway since unsupported interfaces are not allowed to be created. Signed-off-by: Sujith Manoharan <[email protected]> Signed-off-by: John W. Linville <[email protected]>
2012-03-15ath9k: Remove unused variablesSujith Manoharan2-6/+0
Signed-off-by: Sujith Manoharan <[email protected]> Signed-off-by: John W. Linville <[email protected]>
2012-03-15ath9k: Remove unnecessary initializationSujith Manoharan1-3/+0
There is no need to mask out SWBA/BMISS from the interrupt mask in start(). Signed-off-by: Sujith Manoharan <[email protected]> Signed-off-by: John W. Linville <[email protected]>
2012-03-15rt2x00: Set IEEE80211_HW_REPORTS_TX_ACK_STATUS in rt2800Helmut Schaa1-1/+3
rt2800 already reports the tx ack status of each frame back to mac80211. Advertise this by setting IEEE80211_HW_REPORTS_TX_ACK_STATUS for rt2800. This allows some mac80211 features like frame loss notifications to work with rt2800. Signed-off-by: Helmut Schaa <[email protected]> Signed-off-by: John W. Linville <[email protected]>
2012-03-14mwifiex: correction in structure name passed to sizeof()Amitkumar Karwar1-1/+1
"hscfg" is declared as struct mwifiex_ds_hs_cfg. Use same structure name for calculating it's size. Signed-off-by: Amitkumar Karwar <[email protected]> Signed-off-by: Bing Zhao <[email protected]> Signed-off-by: John W. Linville <[email protected]>
2012-03-14mwifiex: fix checkpatch --strict warnings/errors Part 9Yogesh Ashok Powar5-95/+94
For files sta_rx.c, sta_tx.c, txrx.c, util.c and wmm.c Signed-off-by: Yogesh Ashok Powar <[email protected]> Signed-off-by: Bing Zhao <[email protected]> Signed-off-by: John W. Linville <[email protected]>
2012-03-14mwifiex: fix checkpatch --strict warnings/errors Part 8Yogesh Ashok Powar2-70/+73
For files sta_event.c and sta_ioctl.c Signed-off-by: Yogesh Ashok Powar <[email protected]> Signed-off-by: Bing Zhao <[email protected]> Signed-off-by: John W. Linville <[email protected]>
2012-03-14mwifiex: fix checkpatch --strict warnings/errors Part 7Yogesh Ashok Powar2-121/+114
For sta_cmd.c and sta_cmdresp.c Signed-off-by: Yogesh Ashok Powar <[email protected]> Signed-off-by: Bing Zhao <[email protected]> Signed-off-by: John W. Linville <[email protected]>
2012-03-14mwifiex: fix checkpatch --strict warnings/errors Part 6Yogesh Ashok Powar1-92/+96
For file sdio.c Signed-off-by: Yogesh Ashok Powar <[email protected]> Signed-off-by: Bing Zhao <[email protected]> Signed-off-by: John W. Linville <[email protected]>
2012-03-14mwifiex: fix checkpatch --strict warnings/errors Part 5Yogesh Ashok Powar1-173/+170
For file scan.c Signed-off-by: Yogesh Ashok Powar <[email protected]> Signed-off-by: Bing Zhao <[email protected]> Signed-off-by: John W. Linville <[email protected]>
2012-03-14mwifiex: fix checkpatch --strict warnings/errors Part 4Yogesh Ashok Powar3-211/+226
For files main.c, main.h and pcie.c Signed-off-by: Yogesh Ashok Powar <[email protected]> Signed-off-by: Bing Zhao <[email protected]> Signed-off-by: John W. Linville <[email protected]>
2012-03-14mwifiex: fix checkpatch --strict warnings/errors Part 3Yogesh Ashok Powar3-101/+98
For files fw.h, init.c and join.c Signed-off-by: Yogesh Ashok Powar <[email protected]> Signed-off-by: Bing Zhao <[email protected]> Signed-off-by: John W. Linville <[email protected]>
2012-03-14mwifiex: fix checkpatch --strict warnings/errors Part 2Yogesh Ashok Powar3-127/+133
For files cfg80211.c, cfp.c, and cmdevt.c Signed-off-by: Yogesh Ashok Powar <[email protected]> Signed-off-by: Bing Zhao <[email protected]> Signed-off-by: John W. Linville <[email protected]>
2012-03-14mwifiex: fix checkpatch --strict warnings/errors Part 1Yogesh Ashok Powar4-43/+43
For files 11n.c, 11n.h, 11n_aggr.c, 11n_rxreorder.c Signed-off-by: Yogesh Ashok Powar <[email protected]> Signed-off-by: Bing Zhao <[email protected]> Signed-off-by: John W. Linville <[email protected]>
2012-03-13mac80211: rename bss_conf timestamp to last_tsfJohannes Berg3-3/+3
This value is not really very useful by itself, yet some drivers (including iwlwifi until I can figure out what it should do) use it. At least rename it to "last_tsf" to indicate the meaning and add a note that it may be really old. I suspect the value may become useful combined with the rx_status->mactime, but we don't (yet) store that value and pass it to the driver. Signed-off-by: Johannes Berg <[email protected]> Signed-off-by: John W. Linville <[email protected]>
2012-03-13brmc80211: dont use jiffies for BSS TSFJohannes Berg1-8/+2
The cfg80211_inform_bss() timestamp argument is intended to be the TSF, not any form of host timestamp. Signed-off-by: Johannes Berg <[email protected]> Signed-off-by: John W. Linville <[email protected]>
2012-03-13mwifiex: rename fuctions and variables for better readabilityYogesh Ashok Powar1-87/+73
Renaming the long fuctions and variable names from 11n_rxreoder.c file to shorter ones for better readability. Signed-off-by: Yogesh Ashok Powar <[email protected]> Signed-off-by: Bing Zhao <[email protected]> Signed-off-by: John W. Linville <[email protected]>
2012-03-13mwifiex: rearrange if and else blocks to avoid extra indentationYogesh Ashok Powar3-70/+68
This adds better readability. Signed-off-by: Yogesh Ashok Powar <[email protected]> Signed-off-by: Bing Zhao <[email protected]> Signed-off-by: John W. Linville <[email protected]>
2012-03-13mwifiex: use usleep_range instead of udelayYogesh Ashok Powar2-5/+5
For the delay of 10 uSec or more usleep_range is prefered. Unlike udelay, sleep_range avoids large number of undesired interrupts. Ref Documentation/timers/timers-howto.txt Signed-off-by: Yogesh Ashok Powar <[email protected]> Signed-off-by: Bing Zhao <[email protected]> Signed-off-by: John W. Linville <[email protected]>
2012-03-13mwifiex: merge functions to derive cfp by chan & freq in oneYogesh Ashok Powar5-82/+46
There exist different functions with very long names to derive the channel frequency and power tripplet based on band and channel/freq. Signed-off-by: Yogesh Ashok Powar <[email protected]> Signed-off-by: Bing Zhao <[email protected]> Signed-off-by: John W. Linville <[email protected]>
2012-03-13mwifiex: rearrange switch statementYogesh Ashok Powar1-111/+87
Fixing coding style by rearranging the switch statement Signed-off-by: Yogesh Ashok Powar <[email protected]> Signed-off-by: Bing Zhao <[email protected]> Signed-off-by: John W. Linville <[email protected]>
2012-03-13mwifiex: rename long function names to shorter onesYogesh Ashok Powar6-53/+43
This saves some space and adds better readability. Signed-off-by: Yogesh Ashok Powar <[email protected]> Signed-off-by: Bing Zhao <[email protected]> Signed-off-by: John W. Linville <[email protected]>
2012-03-13b43: Load firmware from a work queue and not from the probe routineLarry Finger2-27/+35
Recent changes in udev are causing problems for drivers that load firmware from the probe routine. As b43 has such a structure, it must be changed. As this driver loads more than 1 firmware file, changing to the asynchronous routine request_firmware_nowait() would be complicated. In this implementation, the probe routine starts a queue that calls the firmware loading routines. Signed-off-by: Larry Finger <[email protected]> Signed-off-by: John W. Linville <[email protected]>
2012-03-13b43legacy: Load firmware from work queue instead of from probe routineLarry Finger2-13/+23
Recent changes in udev are causing problems for drivers that load firmware from the probe routine. As b43legacy has such a structure, it must be changed. As this driver loads 3 or 4 firmware files, changing to the asynchronous routine request_firmware_nowait() would be complicated. In this implementation, the probe routine starts a work queue that calls the firmware loading routines. Signed-off-by: Larry Finger <[email protected]> Signed-off-by: John W. Linville <[email protected]>
2012-03-13Merge branch 'for-linville' of git://github.com/kvalo/ath6klJohn W. Linville25-667/+1228
2012-03-13ath6kl: fix debug.c file modeKalle Valo1-0/+0
Commit 7504a3e1 ("ath6kl: add padding to firmware log records") accidentally changed debug.c mode from 100644 to 100755. Revert that back to original. Signed-off-by: Kalle Valo <[email protected]>
2012-03-13ath6kl: use max_t() in ath6kl_cfg80211_connect()Kalle Valo1-2/+2
ath6kl/cfg80211.c:589: WARNING: max() should probably be max_t(u16, vif->listen_intvl_t, ATH6KL_MAX_WOW_LISTEN_INTL) Signed-off-by: Kalle Valo <[email protected]>
2012-03-13ath6kl: fix open parenthesis alignment in ath6kl_sdio_suspend()Kalle Valo1-4/+5
ath6kl/sdio.c:875: CHECK: Alignment should match open parenthesis Signed-off-by: Kalle Valo <[email protected]>
2012-03-13ath6kl: replace strict_strtoul() with kstrtoul()Kalle Valo1-17/+2
Recommended by checkpatch. Signed-off-by: Kalle Valo <[email protected]>
2012-03-13ath6kl: fix regression in ath6kl_upload_board_file()Kalle Valo1-1/+2
My patch 24fc32b3 ("ath6kl: add ath6kl_bmi_write_hi32()") caused a regression in ath6kl_upload_board_file() and the board_address variable was not properly initialised in some cases: ath6kl/init.c:1068:6: warning: ‘board_address’ may be used uninitialized in this function Most likely this broke ar6004 support but I can't test that right now. Signed-off-by: Kalle Valo <[email protected]>
2012-03-12iwlwifi: Add bool mvm_ucode to iwl_fwDavid Spinadel2-1/+10
mvm_ucode is true when mvm TLVs arive. Signed-off-by: David Spinadel <[email protected]> Signed-off-by: Wey-Yi Guy <[email protected]> Signed-off-by: John W. Linville <[email protected]>
2012-03-12iwlwifi: change struct iwl_fwDavid Spinadel7-141/+139
Change iwl_fw struct to hold an array of fw_img instead of three separated instances. Change fw_img to hold an array of fw_desc instead of two separate descriptors for instructions and data. Change load_given_ucode, load_section, verification functions etc. to support this structure. Signed-off-by: David Spinadel <[email protected]> Signed-off-by: Wey-Yi Guy <[email protected]> Signed-off-by: John W. Linville <[email protected]>
2012-03-12iwlwifi: Add TLVs and fields for 16.0 uCodeDavid Spinadel4-16/+108
New TLVs for ucode sections that are not known as instruction or data. New TLVs for phy-configuration and default calibrations. Add default calib and phy config fields to iwl_fw. Signed-off-by: David Spinadel <[email protected]> Signed-off-by: Wey-Yi Guy <[email protected]> Signed-off-by: John W. Linville <[email protected]>
2012-03-12iwlwifi: more modularity in fw images and sectionsDavid Spinadel3-77/+207
Changed iwl_firmware_pieces structure to support an array of separate images, and an array of sections for each image. In fw_sec and fw_desc structures, added a field for offset from the HW address, to support 16.0 uCode that provides an offset instead of any other data about the section. This field is filled with default values when parsing instruction or data section. Signed-off-by: David Spinadel <[email protected]> Signed-off-by: Wey-Yi Guy <[email protected]> Signed-off-by: John W. Linville <[email protected]>
2012-03-12iwlwifi: explicitly track whether INIT uCode was runDavid Spinadel3-5/+6
Remove IWL_UCODE_NONE from enum iwl_ucode_type which, by being the default value in 0-initialized memory, implicitly allowed us to track whether any uCode had ever been loaded successfully (which would have been the INIT uCode) and instead explicitly track whether or not INIT uCode has been run. Signed-off-by: David Spinadel <[email protected]> Signed-off-by: Wey-Yi Guy <[email protected]> Signed-off-by: John W. Linville <[email protected]>
2012-03-12iwlwifi: avoid some operations if no uCode loadedDavid Spinadel7-20/+48
Printing the SRAM and similar testmode operations could be triggered when no uCode is loaded; prevent those invalid operations by tracking whether uCode is loaded. Signed-off-by: David Spinadel <[email protected]> Signed-off-by: Wey-Yi Guy <[email protected]> Signed-off-by: John W. Linville <[email protected]>
2012-03-12iwlwifi: move wait_command_queue from shared to transMeenakshi Venkataraman8-10/+11
This wait queue really belongs to the transport layer, as it is used for sending synchronous commands to the HW. However, only op_mode knows about errors and exceptional conditions, so make this queue accessible by the op_mode. Signed-off-by: Meenakshi Venkataraman <[email protected]> Signed-off-by: Wey-Yi Guy <[email protected]> Signed-off-by: John W. Linville <[email protected]>
2012-03-12iwlwifi: convert bad state message into warningJohannes Berg1-14/+14
Looking at logs, I see that we did get the bad state message a few times for some reason, but it doesn't indicate why or where it came from, so make it a warning in order to identify it. Signed-off-by: Johannes Berg <[email protected]> Signed-off-by: Wey-Yi Guy <[email protected]> Signed-off-by: John W. Linville <[email protected]>
2012-03-12iwlwifi: abstract out missing SEQ_RX_FRAME workaroundJohannes Berg5-18/+39
Mohammed Shafi ran into [1] the SEQ_RX_FRAME workaround warning with a statistics notification, this means we can't just remove it as we'd hoped. Abstract it out so that the higher layer can configure this as a kind of "filter" in the transport. [1] http://mid.gmane.org/CAD2nsn1_DzbRHuSbS_1rFNzuux_9pW1-pABEasQ01_y7-ndO5w@mail.gmail.com Reported-by: Mohammed Shafi <[email protected]> Signed-off-by: Johannes Berg <[email protected]> Signed-off-by: Wey-Yi Guy <[email protected]> Signed-off-by: John W. Linville <[email protected]>
2012-03-12iwlwifi: remove TX hex debugJohannes Berg1-2/+0
Tracing is much better for this, so remove the hex printk debug for the TX command. Signed-off-by: Johannes Berg <[email protected]> Signed-off-by: Wey-Yi Guy <[email protected]> Signed-off-by: John W. Linville <[email protected]>
2012-03-12ath9k: fix going to full-sleep on PS idleFelix Fietkau1-3/+5
The check for PS_WAIT_FOR_TX_ACK was inverted, the hardware should only go to full sleep if no tx is pending. Reported-by: Sujith Manoharan <[email protected]> Signed-off-by: Felix Fietkau <[email protected]> Cc: [email protected] Signed-off-by: John W. Linville <[email protected]>
2012-03-12ath9k: Fix mactime from being clobbered in rx_statusAshok Nagarajan1-2/+2
mactime was being overwritten by the function ath9k_rx_skb_preprocess. Fixed by memsetting rx_status in ath_rx_tasklet. Signed-off-by: Ashok Nagarajan <[email protected]> Signed-off-by: Javier Cardona <[email protected]> Signed-off-by: John W. Linville <[email protected]>