- 15 12月, 2010 6 次提交
-
-
由 Juuso Oikarinen 提交于
With the current single-queue implementation traffic priorization is not working correctly - when using multiple BE streams and one, say VI stream, the VI stream will share bandwidth almost equally with the BE streams. To fix the issue, implement per AC queues, which are emptied in priority order to the firmware. To keep it relatively simple, maintain a global buffer count and global queue stop/wake instead of per-AC. With these changes, priorization appears to work just fine. Signed-off-by: NJuuso Oikarinen <juuso.oikarinen@nokia.com> Signed-off-by: NLuciano Coelho <luciano.coelho@nokia.com>
-
由 Eliad Peller 提交于
Currently, the debug level is set in compilation time (by the DEBUG_LEVEL const). This method has the advantage of compiling only the relevant messages, while optimizing out the unused ones. In order to allow runtime control over the debug_level, while optimizing out messages when debug messages are not needed, we combine some methods: 1. use dynamic_debug (pr_debug) rather then printk. 2. add debug_level module param in order to set debug level during insmod. 3. add debug_level sysfs file in order to allow dynamic control over the debug level. Since patches for pr_debug_hex_dump() implementation haven't been applied yet, we are still temporarly using print_hex_dump(). Signed-off-by: NEliad Peller <eliad@wizery.com> Signed-off-by: NLuciano Coelho <luciano.coelho@nokia.com>
-
由 Guy Eilam 提交于
Inclusion of a WPS IE in probe requests caused a problem in the driver due to the maximum size of the probe request template and the max_scan_ie_len values at initialization. Increased the size of probe request template to the maximum size allowed by the firmware. Struct wl12xx_probe_req_template, which was only used for calculating the max size of the probe request template, is no longer used and needed. max_scan_ie_len is used for validating the size of additional IEs in scan requests. Initialized the max_scan_ie_len field to the maximum size of the probe request template minus the ieee80211 header size. Signed-off-by: NGuy Eilam <guy@wizery.com> Signed-off-by: NLuciano Coelho <luciano.coelho@nokia.com>
-
由 Eliad Peller 提交于
The auto-arp feature of wl12xx allows the firmware to automatically response to arp requests asking for its ip. in order to use it, we configure the arp response template and enable the corresponding bit in wl1271_acx_arp_filter (along with passing its ip) Signed-off-by: NEliad Peller <eliad@wizery.com> Signed-off-by: NLuciano Coelho <luciano.coelho@nokia.com>
-
由 Roger Quadros 提交于
This module enables individually generating RX and TX traffic over the SDIO bus on which the WL1271 chipset is connected. This is required to perform RF interference testing. The module takes 2 module parameters 'rx' and 'tx'. To generate RX traffic: modprobe wl1271_sdio_test rx=1 To generate TX traffic: modprobe wl1271_sdio_test tx=1 To generate both RX & TX traffic, set both rx and tx to 1. You can change the testing configuration at runtime by changing the rx & tx values at /sys/modules/wl1271_sdio_test/ To stop testing simply unload the module. Signed-off-by: NRoger Quadros <roger.quadros@nokia.com> Reviewed-by: NCarlos Chinea <carlos.chinea@nokia.com> Signed-off-by: NLuciano Coelho <luciano.coelho@nokia.com>
-
由 Luciano Coelho 提交于
Disabling the 11a channels when not supported in the reg_notify function was not working as it should, because when the driver is initiailizing (and registering itself with mac80211), it would get the reg notification too early. At that point the driver wouldn't have received the NVS yet, so it wouldn't know whether 11a was supported. To fix this, we disable 11a channels when we read the NVS instead. Also, it is easier (and still safe) to set n_channels to zero instead of setting the disabled flag on every 11a channel. Signed-off-by: NLuciano Coelho <luciano.coelho@nokia.com>
-
- 02 12月, 2010 5 次提交
-
-
由 Juuso Oikarinen 提交于
Because we don't support them at this stage. Signed-off-by: NJuuso Oikarinen <juuso.oikarinen@nokia.com> Signed-off-by: NLuciano Coelho <luciano.coelho@nokia.com>
-
由 Roger Quadros 提交于
For the SDIO testing module we need to load the firmware but not boot it. wl1271_load_firmware() is meant to do just the firmware loading part. We also export some functions so they are usable in the testing module. Signed-off-by: NRoger Quadros <roger.quadros@nokia.com> Signed-off-by: NLuciano Coelho <luciano.coelho@nokia.com>
-
由 Luciano Coelho 提交于
If we try to reset the debugfs statistics when debugfs is not configured in the kernel, we're memset an illegal pointer, because it has never been allocated. So check whether we have debugfs enabled by looking into the wl->rootdir before trying to reset the fw_stats struct. Reported-by: NJoerie de Gram <j.de.gram@gmail.com> Signed-off-by: NLuciano Coelho <luciano.coelho@nokia.com>
-
由 Eliad Peller 提交于
Use per-device debugfs path, so multiple devices won't collide. in order to use wl->hw->wiphy->debugfsdir, we have to move the debugfs creation from wl1271_debugfs_init() to wl1271_register_hw(). Reported-by: NJohannes Berg <johannes@sipsolutions.net> Signed-off-by: NEliad Peller <eliad@wizery.com> Signed-off-by: NLuciano Coelho <luciano.coelho@nokia.com>
-
由 Eliad Peller 提交于
Documentation/filesystems/debugfs.txt: """ Once upon a time, debugfs users were required to remember the dentry pointer for every debugfs file they created so that all files could be cleaned up. We live in more civilized times now, though, and debugfs users can call: void debugfs_remove_recursive(struct dentry *dentry); """ Signed-off-by: NEliad Peller <eliad@wizery.com> Signed-off-by: NLuciano Coelho <luciano.coelho@nokia.com>
-
- 26 11月, 2010 2 次提交
-
-
由 Juuso Oikarinen 提交于
The probe-request template used in the hardware connection monitoring feature thus far has been an empty one, without the SSID IE and without supported rate IEs. This causes problems with some AP's. Additionally, after connected scans, the template for connection maintenance would remain to be the one last used for scanning - potentially incorrect. Fix these by getting a pre-filled directed probe-request template for the associated-to AP from mac80211. Signed-off-by: NJuuso Oikarinen <juuso.oikarinen@nokia.com> Signed-off-by: NLuciano Coelho <luciano.coelho@nokia.com>
-
由 Luciano Coelho 提交于
Instead of simply not scanning for the 11a channels when not supported by the hardware, disable the channels in reg_notify. This centralizes the decision on whether to scan 5GHz channel in one place and allows userspace to know exactly which channels are in use. Based on Juuso Oikarinen's idea. Cc: Juuso Oikarinen <juuso.oikarinen@nokia.com> Signed-off-by: NLuciano Coelho <luciano.coelho@nokia.com> Reviewed-by: NJuuso Oikarinen <juuso.oikarinen@nokia.com>
-
- 23 11月, 2010 1 次提交
-
-
由 Juuso Oikarinen 提交于
It is possible that the op_remove_interface function is invoked exactly at the same time has hw recovery is started. In this case it is possible for the interface to be already removed in the op_remove_interface call, which currently leads to a kernel warning and a subsequent kernel crash. Fix this by ignoring the op_remove_interface call if the interface is already down at that point. Signed-off-by: NJuuso Oikarinen <juuso.oikarinen@nokia.com> Tested-by: NTuomas Katila <ext-tuomas.2.katila@nokia.com> Signed-off-by: NLuciano Coelho <luciano.coelho@nokia.com>
-
- 22 11月, 2010 6 次提交
-
-
由 Juuso Oikarinen 提交于
On the disassociation event from the mac80211, the wl12xx driver does not clear the chipset configuration related to the AP - i.e. it does not perform a DISCONNECT and then a JOIN with zero SSID and dummy BSSID. Also, it does not unset the BSSID filter. Often this is not a problem, as the above is performed upon entering idle state. But if a scenario arises where a new association is attempted without cycling through idle state, the new association will fail. Fix this by resetting the firmware state on disassociation. Signed-off-by: NJuuso Oikarinen <juuso.oikarinen@nokia.com> Reviewed-by: NLuciano Coelho <luciano.coelho@nokia.com> Signed-off-by: NLuciano Coelho <luciano.coelho@nokia.com>
-
由 Arik Nemtsov 提交于
Indicate to mac80211 we support HW fragmentation. Support updates of the fragmentation threshold via the set_frag_threshold callback. Signed-off-by: NArik Nemtsov <arik@wizery.com> Signed-off-by: NLuciano Coelho <luciano.coelho@nokia.com>
-
由 Juuso Oikarinen 提交于
This reverts commit fa21c7a9. The reverted patch caused more harm than benefit. Signed-off-by: NJuuso Oikarinen <juuso.oikarinen@nokia.com> Reviewed-by: NLuciano Coelho <luciano.coelho@nokia.com> Tested-by: NTuomas Katila <ext-tuomas.2.katila@nokia.com> Signed-off-by: NLuciano Coelho <luciano.coelho@nokia.com>
-
由 Juuso Oikarinen 提交于
The wl1271 does not support radar detection. Hence, prevent ad-hoc and active scanning on frequencies requiring DFS. Signed-off-by: NJuuso Oikarinen <juuso.oikarinen@nokia.com> Tested-by: NTuomas Katila <ext-tuomas.2.katila@nokia.com> Reviewed-by: NLuciano Coelho <luciano.coelho@nokia.com> Signed-off-by: NLuciano Coelho <luciano.coelho@nokia.com>
-
由 Gery Kahn 提交于
The cleanup unused code for calibration procedures. Signed-off-by: NGery Kahn <geryk@ti.com> Reviewed-by: NLuciano Coelho <luciano.coelho@nokia.com> Signed-off-by: NLuciano Coelho <luciano.coelho@nokia.com>
-
由 Shahar Levi 提交于
All files name prefix removed due to the fact that wl12xx driver supports wl1271 and wl1273. Also the definition in Kconfig and header files changed respectively. Signed-off-by: NShahar Levi <shahar_levi@ti.com> Signed-off-by: NLuciano Coelho <luciano.coelho@nokia.com>
-
- 19 11月, 2010 8 次提交
-
-
由 Rafał Miłecki 提交于
This hacks leads to incorrect SPROM parsing for me and reading for example MAC as: 00:00:00:54:00:00. Michael G. who introduced this confirmed it is not needed anymore. Signed-off-by: NRafał Miłecki <zajec5@gmail.com> Tested-by: NMichael Gerdau <mgd@qata.de> Signed-off-by: NJohn W. Linville <linville@tuxdriver.com>
-
由 Felix Fietkau 提交于
Embedded boards do not have compressed EEPROM data, they use the struct ar9003_eeprom layout, with little endian fields, so copying the raw data to the eeprom buffer is enough. Signed-off-by: NFelix Fietkau <nbd@openwrt.org> Signed-off-by: NJohn W. Linville <linville@tuxdriver.com>
-
由 Felix Fietkau 提交于
Some embedded boards store platform data for connected PCIe AR92xx chips in the system flash instead of a separate EEPROM chip. Signed-off-by: NGabor Juhos <juhosg@openwrt.org> Signed-off-by: NFelix Fietkau <nbd@openwrt.org> Signed-off-by: NJohn W. Linville <linville@tuxdriver.com>
-
由 John W. Linville 提交于
CC [M] drivers/net/wireless/rndis_wlan.o drivers/net/wireless/rndis_wlan.c: In function ‘rndis_wlan_craft_connected_bss’: drivers/net/wireless/rndis_wlan.c:2542:2: warning: ‘ret’ may be used uninitialized in this function Signed-off-by: NJohn W. Linville <linville@tuxdriver.com> Acked-by: NJussi Kivilinna <jussi.kivilinna@mbnet.fi>
-
由 John W. Linville 提交于
CC [M] drivers/net/wireless/iwmc3200wifi/commands.o drivers/net/wireless/iwmc3200wifi/commands.c: In function ‘iwm_scan_ssids’: drivers/net/wireless/iwmc3200wifi/commands.c:911:15: warning: operation on ‘iwm->scan_id’ may be undefined Signed-off-by: NJohn W. Linville <linville@tuxdriver.com>
-
由 Bruno Randolf 提交于
Extend nl80211 to report an exponential weighted moving average (EWMA) of the signal value. Since the signal value usually fluctuates between different packets, an average can be more useful than the value of the last packet. This uses the recently added generic EWMA library function. Signed-off-by: NBruno Randolf <br1@einfach.org> Signed-off-by: NJohn W. Linville <linville@tuxdriver.com>
-
由 Bruno Randolf 提交于
Remove ath5k's private moving average implementation in favour of the generic library version. Signed-off-by: NBruno Randolf <br1@einfach.org> Signed-off-by: NJohn W. Linville <linville@tuxdriver.com>
-
由 Bruno Randolf 提交于
This adds generic functions for calculating Exponentially Weighted Moving Averages (EWMA). This implementation makes use of a structure which keeps the EWMA parameters and a scaled up internal representation to reduce rounding errors. The original idea for this implementation came from the rt2x00 driver (rt2x00link.c). I would like to use it in several places in the mac80211 and ath5k code and I hope it can be useful in many other places in the kernel code. Signed-off-by: NBruno Randolf <br1@einfach.org> Reviewed-by: NKOSAKI Motohiro <kosaki.motohiro@jp.fujitsu.com> Signed-off-by: NJohn W. Linville <linville@tuxdriver.com>
-
- 18 11月, 2010 12 次提交
-
-
由 Johannes Berg 提交于
The code to handle powersaving stations has a race: when the powersave flag is lifted from a station, we could transmit a packet that is being processed for TX at the same time right away, even if there are other frames queued for it. This would cause frame reordering. To fix this, lift the flag only under the appropriate lock that blocks TX. Additionally, the code to allow drivers to block a station while frames for it are on the HW queue is never re-enabled the station, so traffic would get stuck indefinitely. Fix this by clearing the flag for this appropriately. Finally, as an optimisation, don't do anything if the driver unblocks an already unblocked station. Signed-off-by: NJohannes Berg <johannes.berg@intel.com> Signed-off-by: NJohn W. Linville <linville@tuxdriver.com>
-
由 Johannes Berg 提交于
In many places we've just hardcoded the AC numbers -- which is a relic from the original mac80211 (d80211). Add constants for them so we know what we're talking about. Signed-off-by: NJohannes Berg <johannes.berg@intel.com> Signed-off-by: NJohn W. Linville <linville@tuxdriver.com>
-
由 Felix Fietkau 提交于
Some of the new AR9003 cards do not come with an external EEPROM chip anymore. Calibration data on these cards is stored in the OTP ROM on the chip. This patch adds support for reading this data, and also adds support for different EEPROM chip sizes (512 bytes instead of 1K). Signed-off-by: NFelix Fietkau <nbd@openwrt.org> Signed-off-by: NJohn W. Linville <linville@tuxdriver.com>
-
由 Felix Fietkau 提交于
Since the pointers after the rates in the tx info cannot be used anymore after frames have been queued, this area can be used to store information that was previously stored in the ath_buf. With these changes, we can delay the ath_buf assignment in the aggregation code until aggregates are formed. That will not only make it possible to simplify DMA descriptor setup to do less rewriting of uncached memory, but will also make it easier to move aggregation out of the core of the ath9k tx path. Signed-off-by: NFelix Fietkau <nbd@openwrt.org> Signed-off-by: NJohn W. Linville <linville@tuxdriver.com>
-
由 Felix Fietkau 提交于
- remove the BUF_HT flag, and instead check for IEEE80211_TX_CTL_AMPDU before calling ath_tx_send_ampdu. - remove a few unused variables - calculate frame length before adding the frame padding - merge the misnamed ath_tx_start_dma function into ath_tx_start - remove an unused argument for assign_aggr_tid_seqno Signed-off-by: NFelix Fietkau <nbd@openwrt.org> Signed-off-by: NJohn W. Linville <linville@tuxdriver.com>
-
由 Felix Fietkau 提交于
This makes further tx path cleanups easier Signed-off-by: NFelix Fietkau <nbd@openwrt.org> Signed-off-by: NJohn W. Linville <linville@tuxdriver.com>
-
由 Felix Fietkau 提交于
Merge initial processing for the CAB queue and regular tx. Also move ath_tx_cabq() to beacon.c and make it static. Signed-off-by: NFelix Fietkau <nbd@openwrt.org> Signed-off-by: NJohn W. Linville <linville@tuxdriver.com>
-
由 Felix Fietkau 提交于
Signed-off-by: NFelix Fietkau <nbd@openwrt.org> Signed-off-by: NJohn W. Linville <linville@tuxdriver.com>
-
由 Felix Fietkau 提交于
Signed-off-by: NFelix Fietkau <nbd@openwrt.org> Signed-off-by: NJohn W. Linville <linville@tuxdriver.com>
-
由 Felix Fietkau 提交于
Signed-off-by: NFelix Fietkau <nbd@openwrt.org> Signed-off-by: NJohn W. Linville <linville@tuxdriver.com>
-
由 Felix Fietkau 提交于
Signed-off-by: NFelix Fietkau <nbd@openwrt.org> Signed-off-by: NJohn W. Linville <linville@tuxdriver.com>
-
由 Felix Fietkau 提交于
Signed-off-by: NFelix Fietkau <nbd@openwrt.org> Signed-off-by: NJohn W. Linville <linville@tuxdriver.com>
-