openwrt/staging/blogic.git
12 years agopacket: dont drop packet but consume it
Eric Dumazet [Thu, 19 Apr 2012 02:24:42 +0000 (02:24 +0000)]
packet: dont drop packet but consume it

When we need to clone skb, we dont drop a packet.
Call consume_skb() to not confuse dropwatch.

Signed-off-by: Eric Dumazet <edumazet@google.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
12 years agoipv6: tcp: dont drop packet but consume it
Eric Dumazet [Thu, 19 Apr 2012 02:24:36 +0000 (02:24 +0000)]
ipv6: tcp: dont drop packet but consume it

When we need to clone skb, we dont drop a packet.
Call consume_skb() to not confuse dropwatch.

Signed-off-by: Eric Dumazet <edumazet@google.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
12 years agonetlink: dont drop packet but consume it
Eric Dumazet [Thu, 19 Apr 2012 02:24:28 +0000 (02:24 +0000)]
netlink: dont drop packet but consume it

When we need to clone skb, we dont drop a packet.
Call consume_skb() to not confuse dropwatch.

Signed-off-by: Eric Dumazet <edumazet@google.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
12 years agoip6_tunnel: dont drop packet but consume it
Eric Dumazet [Thu, 19 Apr 2012 02:24:17 +0000 (02:24 +0000)]
ip6_tunnel: dont drop packet but consume it

When we need to reallocate skb, we dont drop a packet.
Call consume_skb() to not confuse dropwatch.

Signed-off-by: Eric Dumazet <edumazet@google.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
12 years agonet: fix compile error of leaking kmemleak.h header
Shan Wei [Wed, 18 Apr 2012 18:05:46 +0000 (18:05 +0000)]
net: fix compile error of leaking kmemleak.h header

net/core/sysctl_net_core.c: In function ‘sysctl_core_init’:
net/core/sysctl_net_core.c:259: error: implicit declaration of function ‘kmemleak_not_leak’

with same error in net/ipv4/route.c

Signed-off-by: Shan Wei <davidshan@tencent.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
12 years agoatl1c: restore max-read-request-size in Device Conrol Register
Huang, Xiong [Tue, 17 Apr 2012 19:32:36 +0000 (19:32 +0000)]
atl1c: restore max-read-request-size in Device Conrol Register

in some platforms, we found the max-read-request-size in Device Control
Register is set to 0 by (BIOS?) during bootup, this will cause the
performance(throughput) very bad.
Restore it to a min-value.
register definition of REG_DEVICE_CTRL is removed, using kernel API to
access it as it's a standard pcie register.

Signed-off-by: xiong <xiong@qca.qualcomm.com>
Tested-by: Liu David <dwliu@qca.qualcomm.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
12 years agoatl1c: using fixed TXQ configuration for l2cb and l1c
Huang, Xiong [Tue, 17 Apr 2012 19:32:35 +0000 (19:32 +0000)]
atl1c: using fixed TXQ configuration for l2cb and l1c

using fixed TXQ config for l2cb and l1c regardless dmar_block
to make tx-DMA more stable.
register REG_TXQ_CTRL is refined as well.

Signed-off-by: xiong <xiong@qca.qualcomm.com>
Tested-by: Liu David <dwliu@qca.qualcomm.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
12 years agoatl1c: remove dmaw_block
Huang, Xiong [Tue, 17 Apr 2012 19:32:34 +0000 (19:32 +0000)]
atl1c: remove dmaw_block

dmaw_block is never used in the driver, remove it.

Signed-off-by: xiong <xiong@qca.qualcomm.com>
Tested-by: Liu David <dwliu@qca.qualcomm.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
12 years agoatl1c: correct wrong definition of REG_DMA_CTRL
Huang, Xiong [Tue, 17 Apr 2012 19:32:33 +0000 (19:32 +0000)]
atl1c: correct wrong definition of REG_DMA_CTRL

some fields of REG_DMA_CTRL(15C0) are wrong, replace with the newest one.
haredware uses fixed dma-write-block size, remove dmaw_block related code
in function atl1c_configure_dma.

Signed-off-by: xiong <xiong@qca.qualcomm.com>
Tested-by: Liu David <dwliu@qca.qualcomm.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
12 years agoatl1c: wrong register used to stop TXQ
Huang, Xiong [Tue, 17 Apr 2012 19:32:32 +0000 (19:32 +0000)]
atl1c: wrong register used to stop TXQ

function atl1c_stop_mac uses wrong register of REG_TWSI_CTRL
to stop mac, replace it with REG_TXQ_CTRL.

Signed-off-by: xiong <xiong@qca.qualcomm.com>
Tested-by: Liu David <dwliu@qca.qualcomm.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
12 years agoatl1c: remove code related to rxq 1/2/3
Huang, Xiong [Tue, 17 Apr 2012 19:32:31 +0000 (19:32 +0000)]
atl1c: remove code related to rxq 1/2/3

remove code related to rxq 1/2/3 since multi-q not support.
refine REG_RXQ_CTRL definition as well.

Signed-off-by: xiong <xiong@qca.qualcomm.com>
Tested-by: Liu David <dwliu@qca.qualcomm.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
12 years agoatl1c: split 2 32bit registers of TPD to 4 16bit registers
Huang, Xiong [Tue, 17 Apr 2012 19:32:30 +0000 (19:32 +0000)]
atl1c: split 2 32bit registers of TPD to 4 16bit registers

TPD producer/consumer index is 16bit wide.
16bit read/write reduce the dependency of the 2 tpd rings (hi and lo)
rename reg(157C/1580) to keep name coninsistency.

Signed-off-by: xiong <xiong@qca.qualcomm.com>
Tested-by: Liu David <dwliu@qca.qualcomm.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
12 years agoatl1c: remove SMB/CMB DMA related code
Huang, Xiong [Tue, 17 Apr 2012 19:32:29 +0000 (19:32 +0000)]
atl1c: remove SMB/CMB DMA related code

l1c & later chips don't support DMA for SMB.
CMB is removed from hardware.
reg(15C8) is used to trig interrupt by tpd threshold.

Signed-off-by: xiong <xiong@qca.qualcomm.com>
Tested-by: Liu David <dwliu@qca.qualcomm.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
12 years agoatl1c: remove VPD register
Huang, Xiong [Tue, 17 Apr 2012 19:32:28 +0000 (19:32 +0000)]
atl1c: remove VPD register

VPD register is only used for L1(devid=PCI_DEVICE_ID_ATTANSIC_L1) to
access external NV-memory.
l1c & later chip doesn't use it any more.
PHY 0/1 registers occupy the last 2 slots of the dump table.

Signed-off-by: xiong <xiong@qca.qualcomm.com>
Tested-by: Liu David <dwliu@qca.qualcomm.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
12 years agoatl1c: remove HDS register
Huang, Xiong [Tue, 17 Apr 2012 19:32:27 +0000 (19:32 +0000)]
atl1c: remove HDS register

remove HDS register as it doesn't exist in hardware.

Signed-off-by: xiong <xiong@qca.qualcomm.com>
Tested-by: Liu David <dwliu@qca.qualcomm.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
12 years agoatl1c: remove multiple-RX-Q code
Huang, Xiong [Tue, 17 Apr 2012 19:32:26 +0000 (19:32 +0000)]
atl1c: remove multiple-RX-Q code

the multiple-RX-Q in hardware doesn't work,
all related register definition & code are removed.

Signed-off-by: xiong <xiong@qca.qualcomm.com>
Tested-by: Liu David <dwliu@qca.qualcomm.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
12 years agoatl1c: update author contact info & company/driver desciption
Huang, Xiong [Tue, 17 Apr 2012 19:32:25 +0000 (19:32 +0000)]
atl1c: update author contact info & company/driver desciption

replace unavailable email of the author since he left with a mail-list.
update company info as well, Atheros was acquired by Qualcomm.
insert "100" to driver description since it support 100M controller.

Signed-off-by: xiong <xiong@qca.qualcomm.com>
Tested-by: Liu David <dwliu@qca.qualcomm.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
12 years agoMerge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wirel...
John W. Linville [Wed, 18 Apr 2012 18:17:13 +0000 (14:17 -0400)]
Merge branch 'master' of git://git./linux/kernel/git/linville/wireless-next into for-davem

Conflicts:
drivers/net/wireless/iwlwifi/iwl-testmode.c
include/net/nfc/nfc.h
net/nfc/netlink.c
net/wireless/nl80211.c

12 years agoMerge tag 'batman-adv-for-davem' of git://git.open-mesh.org/linux-merge
David S. Miller [Wed, 18 Apr 2012 17:21:59 +0000 (13:21 -0400)]
Merge tag 'batman-adv-for-davem' of git://git.open-mesh.org/linux-merge

Included changes:
* remove duplicated line in comment
* add htons() invocation for tt_crc as suggested by Al Viro
* OriGinator Message seqno initial value is now random
* some cleanups and fixes

12 years agobatman-adv: skip the window protection test when the originator has no neighbours
Antonio Quartulli [Sun, 26 Feb 2012 14:39:42 +0000 (15:39 +0100)]
batman-adv: skip the window protection test when the originator has no neighbours

When we receive an OGM from from a node for the first time, the last_real_seqno
field of the orig_node structure has not been initialised yet. The value of this
field is used to compute the current ogm-seqno window and therefore the
protection mechanism will probably drop the packet due to an out-of-window error.
To avoid this situation this patch adds a check to skip the window protection
mechanism if no neighbour nodes have already been added. When the first
neighbour node is added, the last_real_seqno field is initialised too.

Reported-by: Marek Lindner <lindner_marek@yahoo.de>
Signed-off-by: Antonio Quartulli <ordex@autistici.org>
12 years agobatman-adv: print OGM seq numbers as unsigned int
Antonio Quartulli [Sun, 26 Feb 2012 14:39:41 +0000 (15:39 +0100)]
batman-adv: print OGM seq numbers as unsigned int

OGM sequence numbers are declared as uint32_t and so they have to printed
using %u instead of %d in order to avoid wrong representations.

Signed-off-by: Antonio Quartulli <ordex@autistici.org>
12 years agobatman-adv: use ETH_HLEN instead of sizeof(struct ethhdr)
Antonio Quartulli [Sat, 18 Feb 2012 10:27:34 +0000 (11:27 +0100)]
batman-adv: use ETH_HLEN instead of sizeof(struct ethhdr)

Instead of using sizeof(struct ethhdr) it is strongly recommended to use the
kernel macro ETH_HLEN. This patch substitute each occurrence of the former
expressione with the latter one.

Signed-off-by: Antonio Quartulli <ordex@autistici.org>
12 years agobatman-adv: mark existing ogm variables as batman iv
Marek Lindner [Tue, 7 Feb 2012 09:20:51 +0000 (17:20 +0800)]
batman-adv: mark existing ogm variables as batman iv

The coming protocol changes also will have a part called "OGM". That
makes it necessary to introduce a distinction in the code base.

Signed-off-by: Marek Lindner <lindner_marek@yahoo.de>
Signed-off-by: Antonio Quartulli <ordex@autistici.org>
12 years agobatman-adv: rename BATMAN_OGM_LEN to BATMAN_OGM_HLEN
Marek Lindner [Tue, 7 Feb 2012 09:20:50 +0000 (17:20 +0800)]
batman-adv: rename BATMAN_OGM_LEN to BATMAN_OGM_HLEN

Using BATMAN_OGM_LEN leaves one with the impression that this is
the full packet size which is not the case. Therefore the variable
is renamed.

Signed-off-by: Marek Lindner <lindner_marek@yahoo.de>
Signed-off-by: Antonio Quartulli <ordex@autistici.org>
12 years agobatman-adv: refactoring API: find generalized name for bat_ogm_init_primary callback
Marek Lindner [Tue, 7 Feb 2012 09:20:49 +0000 (17:20 +0800)]
batman-adv: refactoring API: find generalized name for bat_ogm_init_primary callback

Signed-off-by: Marek Lindner <lindner_marek@yahoo.de>
Signed-off-by: Antonio Quartulli <ordex@autistici.org>
12 years agobatman-adv: handle routing code initialization properly
Marek Lindner [Tue, 7 Feb 2012 09:20:48 +0000 (17:20 +0800)]
batman-adv: handle routing code initialization properly

Signed-off-by: Marek Lindner <lindner_marek@yahoo.de>
Signed-off-by: Antonio Quartulli <ordex@autistici.org>
12 years agobatman-adv: add iface_disable() callback to routing API
Marek Lindner [Tue, 7 Feb 2012 09:20:47 +0000 (17:20 +0800)]
batman-adv: add iface_disable() callback to routing API

Signed-off-by: Marek Lindner <lindner_marek@yahoo.de>
Signed-off-by: Antonio Quartulli <ordex@autistici.org>
12 years agobatman-adv: randomize initial seqno to avoid collision
Marek Lindner [Tue, 7 Feb 2012 09:20:46 +0000 (17:20 +0800)]
batman-adv: randomize initial seqno to avoid collision

Signed-off-by: Marek Lindner <lindner_marek@yahoo.de>
Signed-off-by: Antonio Quartulli <ordex@autistici.org>
12 years agobatman-adv: refactoring API: find generalized name for bat_ogm_init callback
Marek Lindner [Tue, 7 Feb 2012 09:20:45 +0000 (17:20 +0800)]
batman-adv: refactoring API: find generalized name for bat_ogm_init callback

Signed-off-by: Marek Lindner <lindner_marek@yahoo.de>
Signed-off-by: Antonio Quartulli <ordex@autistici.org>
12 years agobatman-adv: move ogm initialization into the proper function
Marek Lindner [Tue, 7 Feb 2012 09:19:58 +0000 (17:19 +0800)]
batman-adv: move ogm initialization into the proper function

Signed-off-by: Marek Lindner <lindner_marek@yahoo.de>
Signed-off-by: Antonio Quartulli <ordex@autistici.org>
12 years agobatman-adv: remove duplicated line in comment
Antonio Quartulli [Wed, 18 Apr 2012 07:47:57 +0000 (09:47 +0200)]
batman-adv: remove duplicated line in comment

Remove an accidentally added duplicated line in a function comment

Signed-off-by: Antonio Quartulli <ordex@autistici.org>
12 years agobatman-adv: convert the tt_crc to network order
Antonio Quartulli [Sat, 14 Apr 2012 11:15:27 +0000 (13:15 +0200)]
batman-adv: convert the tt_crc to network order

Before sending out a TT_Request packet we must convert the tt_crc field value
to network order (since it is 16bits long).

Reported-by: Al Viro <viro@ZenIV.linux.org.uk>
Signed-off-by: Antonio Quartulli <ordex@autistici.org>
12 years agonet/core:Remove memleak reports by kmemleak_not_leak.
majianpeng [Mon, 16 Apr 2012 19:58:28 +0000 (19:58 +0000)]
net/core:Remove memleak reports by kmemleak_not_leak.

Signed-off-by: majianpeng <majianpeng@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
12 years agonet/ipv4:Remove two memleak reports by kmemleak_not_leak.
majianpeng [Mon, 16 Apr 2012 19:33:31 +0000 (19:33 +0000)]
net/ipv4:Remove two memleak reports by kmemleak_not_leak.

Signed-off-by: majianpeng <majianpeng@gmail.com>
Acked-by: Eric Dumazet <eric.dumazet@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
12 years agonet: filter: remove unused cpu_off in sparc JIT
Eric Dumazet [Tue, 17 Apr 2012 16:51:19 +0000 (16:51 +0000)]
net: filter: remove unused cpu_off in sparc JIT

Signed-off-by: Eric Dumazet <eric.dumazet@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
12 years agodmfe: enforce consistent timing delay.
françois romieu [Tue, 17 Apr 2012 11:11:40 +0000 (11:11 +0000)]
dmfe: enforce consistent timing delay.

The driver does not always use the same timing for what looks like
the same operations.

- DCR0
  Use the same udelay everywhere for reset. Upper bound is 100 us.
- DCR9
  Use 5us delay for srom clock. 1us delay for phy_write_1bit (writes
  PHY_DATA_[01]) are not changed as they stay withing a 2,5MHz MDIO
  clock range.

Signed-off-by: Francois Romieu <romieu@fr.zoreil.com>
Reviewed-by: Grant Grundler <grundler@parisc-linux.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
12 years agonet: filter: Fix some more small issues in sparc JIT.
David S. Miller [Tue, 17 Apr 2012 20:38:16 +0000 (16:38 -0400)]
net: filter: Fix some more small issues in sparc JIT.

Fix mixed space and tabs.

Put bpf_jit_load_*[] externs into bpf_jit.h

"while(0)" --> "while (0)"
"COND (X)" --> "COND(X)"
Document branch offset calculations, and bpf_error's return
sequence.

Document the reason we need to emit three nops between the
%y register write and the divide instruction.

Remove erroneous trailing semicolons from emit_read_y() and
emit_write_y().

Based upon feedback from Sam Ravnborg.

Signed-off-by: David S. Miller <davem@davemloft.net>
12 years agonet: filter: Fix some minor issues in sparc JIT.
David S. Miller [Tue, 17 Apr 2012 20:08:29 +0000 (16:08 -0400)]
net: filter: Fix some minor issues in sparc JIT.

Correct conventions comments.  %o4 and %o5 were swapped,
%g3 was not documented.

Use r_TMP instead of r_SKB_DATA + r_OFF where possible in
assembler stubs.

Correct discussion of %o4 and %o5 in one of bpf_jit_compile()'s
comments.

Based upon feedback from Richard Mortimer.

Signed-off-by: David S. Miller <davem@davemloft.net>
12 years agomwifiex: corrections in timestamp related code
Amitkumar Karwar [Tue, 17 Apr 2012 04:36:52 +0000 (21:36 -0700)]
mwifiex: corrections in timestamp related code

We get two timing related fields for each bss from firmware in scan
results.
1) timestamp - Actual timestamp information in probe response/beacon
2) network_tsf - firmware's TSF value at the time the beacon or probe
response was received.
Both are needed while associating by firmware.

The patch takes care of following things.
1) We should pass "timestamp" to cfg80211_inform_bss(), but currently
"network_tsf" is being provided. This error is corrected here.
2) Rename "network_tsf" to "fw_tsf"
3) Make use of u64 variable instead of an array of u8/u32 to save
parsed "timestamp" information.
4) Use timestamp provided to stack in scan results using
cfg80211_inform_bss() while associating. (bss->tsf)
5) Allocate space to save fw_tsf in "priv" of cfg80211_bss
and retrieve it while associating.

Signed-off-by: Amitkumar Karwar <akarwar@marvell.com>
Signed-off-by: Bing Zhao <bzhao@marvell.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
12 years agomwifiex: code cleanup in BSS handling
Amitkumar Karwar [Tue, 17 Apr 2012 04:36:51 +0000 (21:36 -0700)]
mwifiex: code cleanup in BSS handling

Rearrange some code to save extra parameters to the functions.

Signed-off-by: Amitkumar Karwar <akarwar@marvell.com>
Signed-off-by: Bing Zhao <bzhao@marvell.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
12 years agolibertas USB: convert to asynchronous firmware loading
Daniel Drake [Mon, 16 Apr 2012 22:53:55 +0000 (23:53 +0100)]
libertas USB: convert to asynchronous firmware loading

Signed-off-by: Daniel Drake <dsd@laptop.org>
Acked-by: Dan Williams <dcbw@redhat.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
12 years agolibertas SDIO: convert to asynchronous firmware loading
Daniel Drake [Mon, 16 Apr 2012 22:53:43 +0000 (23:53 +0100)]
libertas SDIO: convert to asynchronous firmware loading

Signed-off-by: Daniel Drake <dsd@laptop.org>
Acked-by: Dan Williams <dcbw@redhat.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
12 years agolibertas: add asynchronous firmware loading capability
Daniel Drake [Mon, 16 Apr 2012 22:53:26 +0000 (23:53 +0100)]
libertas: add asynchronous firmware loading capability

As described at
http://article.gmane.org/gmane.linux.kernel.wireless.general/86084
libertas is taking a long time to load because it loads firmware
during module loading.

Add a new API for interface drivers to load their firmware
asynchronously. The same semantics of the firmware table are followed
like before.

Interface drivers will be converted in follow-up patches, then we can
remove the old, synchronous firmware loading function.

Signed-off-by: Daniel Drake <dsd@laptop.org>
Acked-by: Dan Williams <dcbw@redhat.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
12 years agolibertas: harden-up exit paths
Daniel Drake [Mon, 16 Apr 2012 22:53:02 +0000 (23:53 +0100)]
libertas: harden-up exit paths

These simple sanity check avoids extra complexity in error paths when
moving to asynchronous firmware loading (which means the device may fail to
init some time after its creation).

Signed-off-by: Daniel Drake <dsd@laptop.org>
Acked-by: Dan Williams <dcbw@redhat.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
12 years agolibertas: Firmware loading simplifications
Daniel Drake [Mon, 16 Apr 2012 22:52:42 +0000 (23:52 +0100)]
libertas: Firmware loading simplifications

Remove the ability to pass module parameters with firmware filenames
for USB and SDIO interfaces.

Remove the ability to pass custom "user" filenames to lbs_get_firmware().

Remove the ability to reprogram internal device memory with a different
firmware from the USB driver (we don't know of any users), and simplify
the OLPC firmware loading quirk to simply placing the OLPC firmware
at the top of the list (we don't know of any users other than OLPC).

Move lbs_get_firmware() into its own file.

These simplifications should have no real-life effect but make the
upcoming transition to asynchronous firmware loading considerably less
painful.

Signed-off-by: Daniel Drake <dsd@laptop.org>
Acked-by: Dan Williams <dcbw@redhat.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
12 years agort2x00: Don't let mac80211 send a BAR when an AMPDU subframe fails
Andreas Hartmann [Mon, 16 Apr 2012 22:25:28 +0000 (00:25 +0200)]
rt2x00: Don't let mac80211 send a BAR when an AMPDU subframe fails

There are connection stalls or very poor throughputs with rt2800
hardware using 802.11n in AP mode since patch "mac80211: retry sending
failed BAR frames later instead of tearing down aggr"[1][2].

Since rt2800 hardware is not able to correctly report the tx status of
BAR frames, this patch removes as workaround the existing error handling
on AP side, which lets mac80211 send a BAR when an AMPDU subframe fails.

As a result, most wifi clients (aside from Intel STAs on Windows)
instead will timeout now the reorder buffer and request the lost frame
again.

The correct solution would be, to tear down BA session on AP side.

This patch was born on the basis of "[RFT] rt2x00: Tear down BA
session on QoS frame failure"[3].

Thanks to Helmut Schaa for his support!

[1] http://thread.gmane.org/gmane.linux.kernel.wireless.general/83297/focus=83304
[2] http://git.kernel.org/?p=linux/kernel/git/linville/wireless-testing.git;a=commit;h=f0425beda4d404a6e751439b562100b902ba9c98
[3] http://thread.gmane.org/gmane.linux.drivers.rt2x00.user/569

Signed-off-by: Andreas Hartmann <andihartmann@01019freenet.de>
Acked-by: Helmut Schaa <helmut.schaa@googlemail.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
12 years agoath9k: use ath9k_hw_fbin2freq instead of FBIN2FREQ
Gabor Juhos [Mon, 16 Apr 2012 20:46:32 +0000 (22:46 +0200)]
ath9k: use ath9k_hw_fbin2freq instead of FBIN2FREQ

The FBIN2FREQ macro and the ath9k_hw_fbin2freq function
does the same thing. Remove the macro, and use the inline
function instead.

Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
12 years agoath9k: move ath9k_hw_fbin2freq function to eeprom.h
Gabor Juhos [Mon, 16 Apr 2012 20:46:31 +0000 (22:46 +0200)]
ath9k: move ath9k_hw_fbin2freq function to eeprom.h

Both eeprom.c and ar9003_eeprom.c has an indentical
'ath9k_hw_fbin2freq' function. Move the function to
a common place and remove the duplicates.

Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
12 years agoath9k: remove unused PWRINC_*_TO_*_CHAIN defines
Gabor Juhos [Mon, 16 Apr 2012 20:22:50 +0000 (22:22 +0200)]
ath9k: remove unused PWRINC_*_TO_*_CHAIN defines

Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
12 years agoath9k: merge power correction constants
Gabor Juhos [Mon, 16 Apr 2012 20:22:49 +0000 (22:22 +0200)]
ath9k: merge power correction constants

The existing constants are used for reduction/increase
tx power level on devices with 2x2 and 3x3 chainmask.

Both reduction and increase must use the same value, so
it makes no sense to use separate constants for them.

Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
12 years agodrivers/net/wireless/libertas/if_usb.c: add missing debugging code
Julia Lawall [Mon, 16 Apr 2012 15:44:00 +0000 (17:44 +0200)]
drivers/net/wireless/libertas/if_usb.c: add missing debugging code

Add a corresponding leave call on error failure.

Signed-off-by: Julia Lawall <Julia.Lawall@lip6.fr>
Acked-by: Dan Williams <dcbw@redhat.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
12 years agor8169: support the new RTL8411 chip.
Hayes Wang [Fri, 30 Mar 2012 06:48:06 +0000 (14:48 +0800)]
r8169: support the new RTL8411 chip.

Compared with previous chipsets, it needs no special action trough the
jumbo{enable/disable} helpers to operate with jumbo frames.

Signed-off-by: Hayes Wang <hayeswang@realtek.com>
Acked-by: Francois Romieu <romieu@fr.zoreil.com>
12 years agor8169: adjust some functions of 8111f
Hayes Wang [Fri, 30 Mar 2012 06:33:03 +0000 (14:33 +0800)]
r8169: adjust some functions of 8111f

Put some settings of 8111f into one function which may be reused.

Signed-off-by: Hayes Wang <hayeswang@realtek.com>
12 years agor8169: support the new RTL8402 chip.
Hayes Wang [Fri, 30 Mar 2012 06:33:02 +0000 (14:33 +0800)]
r8169: support the new RTL8402 chip.

Signed-off-by: Hayes Wang <hayeswang@realtek.com>
12 years agor8169: add device specific CSI access helpers.
Hayes Wang [Fri, 30 Mar 2012 06:33:01 +0000 (14:33 +0800)]
r8169: add device specific CSI access helpers.

New chipsets need it.

Signed-off-by: Hayes Wang <hayeswang@realtek.com>
12 years agor8169: modify pll power function
Hayes Wang [Fri, 30 Mar 2012 06:33:00 +0000 (14:33 +0800)]
r8169: modify pll power function

Adjust r810x_pll_power_down, r810x_pll_power_up, and r8168_pll_power_up.
Always power up device during rtl_open. For r810x, turn off more power
when the WOL is disabled.

Signed-off-by: Hayes Wang <hayeswang@realtek.com>
12 years agor8169: 8168c and later require bit 0x20 to be set in Config2 for PME signaling.
Francois Romieu [Tue, 17 Apr 2012 09:12:01 +0000 (11:12 +0200)]
r8169: 8168c and later require bit 0x20 to be set in Config2 for PME signaling.

The new 84xx stopped flying below the radars.

Signed-off-by: Francois Romieu <romieu@fr.zoreil.com>
Cc: Hayes Wang <hayeswang@realtek.com>
12 years agor8169: Config1 is read-only on 8168c and later.
Francois Romieu [Tue, 17 Apr 2012 09:10:11 +0000 (11:10 +0200)]
r8169: Config1 is read-only on 8168c and later.

Suggested by Hayes.

Signed-off-by: Francois Romieu <romieu@fr.zoreil.com>
Cc: Hayes Wang <hayeswang@realtek.com>
12 years agohippi: fix printk format in rrunner.c
Randy Dunlap [Mon, 16 Apr 2012 15:01:33 +0000 (15:01 +0000)]
hippi: fix printk format in rrunner.c

Fix printk format warning (from i386 build):

drivers/net/hippi/rrunner.c:146:9: warning: format '%08llx' expects type 'long long unsigned int', but argument 3 has type 'resource_size_t'

Signed-off-by: Randy Dunlap <rdunlap@xenotime.net>
Cc: Jes Sorensen <jes@trained-monkey.org>
Cc: linux-hippi@sunsite.dk
Signed-off-by: David S. Miller <davem@davemloft.net>
12 years agoMerge branch 'master' of git://gitorious.org/linux-can/linux-can-next
David S. Miller [Tue, 17 Apr 2012 03:47:37 +0000 (23:47 -0400)]
Merge branch 'master' of git://gitorious.org/linux-can/linux-can-next

12 years agonet: filter: Just In Time compiler for sparc
David S. Miller [Mon, 16 Apr 2012 03:06:27 +0000 (20:06 -0700)]
net: filter: Just In Time compiler for sparc

Signed-off-by: David S. Miller <davem@davemloft.net>
12 years agoiwlwifi: remove get_cmd_string
Johannes Berg [Mon, 26 Mar 2012 15:23:39 +0000 (08:23 -0700)]
iwlwifi: remove get_cmd_string

The command strings are needed through the layers for
debug and error messages, but can differ with opmode.
As a result, we need to give the command names to the
transport layer as configuration.

Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Signed-off-by: Wey-Yi Guy <wey-yi.w.guy@intel.com>
12 years agoiwlwifi: optimize struct iwl_cmd_meta layout
Johannes Berg [Mon, 16 Apr 2012 21:48:08 +0000 (14:48 -0700)]
iwlwifi: optimize struct iwl_cmd_meta layout

Having a u32 before a potential 64-bit value is
not very efficient, move it last.

Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Signed-off-by: Wey-Yi Guy <wey-yi.w.guy@intel.com>
12 years agoiwlwifi: expose static methods for MVM use
David Spinadel [Mon, 16 Apr 2012 21:43:30 +0000 (14:43 -0700)]
iwlwifi: expose static methods for MVM use

To support hybrid state of MVM op_mode, most of the functioanallity
will be done using DVM functions.

When MVM will have independant live, the declarations will be removed
and the functions will be static back.

Signed-off-by: David Spinadel <david.spinadel@intel.com>
Signed-off-by: Wey-Yi Guy <wey-yi.w.guy@intel.com>
12 years agoiwlwifi: phy db channel to tx power channel group
David Spinadel [Thu, 15 Mar 2012 09:22:31 +0000 (11:22 +0200)]
iwlwifi: phy db channel to tx power channel group

Implement mapping of channel to TX power channel group,
for sending channel specific data before add context.

Signed-off-by: David Spinadel <david.spinadel@intel.com>
Signed-off-by: Wey-Yi Guy <wey-yi.w.guy@intel.com>
12 years agoiwlwifi: Disabling calibrations variable
Dor Shaish [Mon, 26 Mar 2012 15:20:55 +0000 (08:20 -0700)]
iwlwifi: Disabling calibrations variable

Add a variable for disabling specific calibrations.
Merged old variables for calibrations disabling.

Signed-off-by: Dor Shaish <dor.shaish@intel.com>
Signed-off-by: Wey-Yi Guy <wey-yi.w.guy@intel.com>
12 years agoiwlwifi: remove uneeded include from iwl-pci.c
Emmanuel Grumbach [Tue, 20 Mar 2012 12:50:09 +0000 (14:50 +0200)]
iwlwifi: remove uneeded include from iwl-pci.c

Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
Signed-off-by: Wey-Yi Guy <wey-yi.w.guy@intel.com>
12 years agoiwlwifi: remove double verification of ucode sections
David Spinadel [Tue, 13 Mar 2012 12:46:38 +0000 (14:46 +0200)]
iwlwifi: remove double verification of ucode sections

Signed-off-by: David Spinadel <david.spinadel@intel.com>
Signed-off-by: Wey-Yi Guy <wey-yi.w.guy@intel.com>
12 years agoiwlwifi: set size of ucode section
David Spinadel [Tue, 13 Mar 2012 12:32:48 +0000 (14:32 +0200)]
iwlwifi: set size of ucode section

Set size of firmware section in mvm bundle format.

Signed-off-by: David Spinadel <david.spinadel@intel.com>
Signed-off-by: Wey-Yi Guy <wey-yi.w.guy@intel.com>
12 years agoiwlwifi: remove iwl_tx_queue declaration
Johannes Berg [Fri, 23 Mar 2012 15:37:30 +0000 (08:37 -0700)]
iwlwifi: remove iwl_tx_queue declaration

The declaration isn't needed as the struct is only
used in code that includes the right header file.

Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Signed-off-by: Wey-Yi Guy <wey-yi.w.guy@intel.com>
12 years agoiwlwifi: move status definitions from iwl-shared
Don Fry [Fri, 23 Mar 2012 15:34:31 +0000 (08:34 -0700)]
iwlwifi: move status definitions from iwl-shared

The code has been changed, move the definitions to the proper file
being used by the code.

Signed-off-by: Don Fry <donald.h.fry@intel.com>
Signed-off-by: Wey-Yi Guy <wey-yi.w.guy@intel.com>
12 years agoiwlwifi: added HBUS_TARG_TEST_REG
Amit Beka [Sun, 19 Feb 2012 09:07:46 +0000 (11:07 +0200)]
iwlwifi: added HBUS_TARG_TEST_REG

This register is used to enable some debug mechanisms.

Signed-off-by: Amit Beka <amit.beka@intel.com>
Signed-off-by: Wey-Yi Guy <wey-yi.w.guy@intel.com>
12 years agoiwlwifi: move HCMD_ACTIVE to trans
Don Fry [Tue, 20 Mar 2012 23:36:54 +0000 (16:36 -0700)]
iwlwifi: move HCMD_ACTIVE to trans

The HCMD_ACTIVE bit is only used in trans.

Signed-off-by: Don Fry <donald.h.fry@intel.com>
Signed-off-by: Wey-Yi Guy <wey-yi.w.guy@intel.com>
12 years agoiwlwifi: complete STATUS_READY refactoring
Don Fry [Tue, 20 Mar 2012 17:33:34 +0000 (10:33 -0700)]
iwlwifi: complete STATUS_READY refactoring

When WiMax takes over the RF, inform the op_mode.

Signed-off-by: Don Fry <donald.h.fry@intel.com>
Signed-off-by: Wey-Yi Guy <wey-yi.w.guy@intel.com>
12 years agoiwlwifi: remove antenna from mod params struct
Johannes Berg [Fri, 9 Mar 2012 08:42:52 +0000 (09:42 +0100)]
iwlwifi: remove antenna from mod params struct

It doesn't even exist as a module parameter,
so just remove the item from the struct.

Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Signed-off-by: Wey-Yi Guy <wey-yi.w.guy@intel.com>
12 years agoiwlwifi: remove uCode alternatives mechanism
Johannes Berg [Fri, 9 Mar 2012 08:16:35 +0000 (09:16 +0100)]
iwlwifi: remove uCode alternatives mechanism

We've never released firmware using the alternatives
mechanism and our build process makes that difficult
anyway. This means that in every file we have ever
built (except maybe by hand for testing) the listed
alternative was 0. Make the alternative field in the
TLVs part of the TLV number (thus expanding that to
32 bits); this gives us more TLV numbers (not really
needed) and more importantly protects against rogue
firmware files that actually do use the alternatives
mechanism -- those will now be rejected since they
don't contain any valid TLVs.

Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Signed-off-by: Wey-Yi Guy <wey-yi.w.guy@intel.com>
12 years agoiwlwifi: remove no_sleep_autoadjust
Johannes Berg [Fri, 9 Mar 2012 07:58:46 +0000 (08:58 +0100)]
iwlwifi: remove no_sleep_autoadjust

My original idea with this was to adjust the sleep
pattern of the uCode based on the maximum network
latency userspace asked for. Due to nobody wanting
to test it, this logic was disabled by default. It
seems the time has come to remove it, since it's
not only always disabled but there also don't seem
to be any applications that actually request a max
network latency.

Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Signed-off-by: Wey-Yi Guy <wey-yi.w.guy@intel.com>
12 years agonet/can: use module_pci_driver
Axel Lin [Sat, 14 Apr 2012 04:38:43 +0000 (12:38 +0800)]
net/can: use module_pci_driver

This patch converts the drivers in drivers/net/can/* to use
module_pci_driver() macro which makes the code smaller and a bit simpler.

Signed-off-by: Axel Lin <axel.lin@gmail.com>
Cc: Wolfgang Grandegger <wg@grandegger.com>
Cc: Marc Kleine-Budde <mkl@pengutronix.de>
Cc: "David S. Miller" <davem@davemloft.net>
Cc: linux-can@vger.kernel.org
Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
12 years agocan: fix sparse warning for cgw_list
Daniel Baluta [Sun, 25 Mar 2012 23:05:50 +0000 (02:05 +0300)]
can: fix sparse warning for cgw_list

Make cgw_list static to remove the following sparse warning:
net/can/gw.c:69:1: warning: symbol 'cgw_list' was not declared.
Should it be static?

Signed-off-by: Daniel Baluta <dbaluta@ixiacom.com>
Acked-by: Oliver Hartkopp <socketcan@hartkopp.net>
Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
12 years agowireless: rt2x00: rt2800pci add more RT539x ids
Xose Vazquez Perez [Sat, 14 Apr 2012 21:33:21 +0000 (23:33 +0200)]
wireless: rt2x00: rt2800pci add more RT539x ids

RT539x devices:
(0x1814, 0x5362)
(0x1814, 0x5392)

Taken from ralink driver 2011_0406_RT5390_RT5392_Linux_STA_V2.5.0.3_DPO

Signed-off-by: Xose Vazquez Perez <xose.vazquez@gmail.com>
Acked-by: Gertjan van Wingerde <gwingerde@gmail.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
12 years agowireless: rt2x00: rt{2500,73}usb.c put back duplicate id
Xose Vazquez Perez [Sat, 14 Apr 2012 21:00:01 +0000 (23:00 +0200)]
wireless: rt2x00: rt{2500,73}usb.c put back duplicate id

put back 0x050d,0x7050 to rt73usb, same usb_id for two chips:

K7SF5D7050A ver 2xxx is rt2500
K7SF5D7050B ver 3xxx is rt73

<http://en-us-support.belkin.com/app/answers/detail/a_id/297/kw/K7SF5D7050>

Signed-off-by: Xose Vazquez Perez <xose.vazquez@gmail.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
12 years agoath9k: simplify ath9k_hw_get_scaled_power function
Gabor Juhos [Sat, 14 Apr 2012 20:01:59 +0000 (22:01 +0200)]
ath9k: simplify ath9k_hw_get_scaled_power function

Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
12 years agoath9k: introduce ath9k_hw_get_scaled_power helper
Gabor Juhos [Sat, 14 Apr 2012 20:01:58 +0000 (22:01 +0200)]
ath9k: introduce ath9k_hw_get_scaled_power helper

The computation of the scaled power value in
various eeprom files uses identical code. Move
that code into a helper function and use that
instead of code duplication.

Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
12 years agoath9k: use consistent value for REDUCE_SCALED_POWER_BY_THREE_CHAIN
Gabor Juhos [Sat, 14 Apr 2012 20:01:57 +0000 (22:01 +0200)]
ath9k: use consistent value for REDUCE_SCALED_POWER_BY_THREE_CHAIN

The REDUCE_SCALED_POWER_BY_THREE_CHAIN symbol is
defined in different eeprom files, and the value
varies between the different files.

In eeprom_def.c and in ar9003_eeprom.c the value
of the symbol is 9, however the comments in these
files indicates the value should be 10*log10(3)*2
which is 9.54242509439325. Replace the the value
to 10 in these files.

Also add comments to eeprom_9287.c.

Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
12 years agoath9k: use ath9k_hw_update_regulatory_maxpower in ath9k_hw_def_set_txpower
Gabor Juhos [Sat, 14 Apr 2012 18:35:19 +0000 (20:35 +0200)]
ath9k: use ath9k_hw_update_regulatory_maxpower in ath9k_hw_def_set_txpower

We have a helper function for updating the max_power_level
value. Use that and remove the duplicated code.

Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
12 years agonet/wireless: use module_pci_driver
Axel Lin [Sat, 14 Apr 2012 02:38:36 +0000 (10:38 +0800)]
net/wireless: use module_pci_driver

This patch converts the drivers in drivers/net/wireless/* to use
module_pci_driver() macro which makes the code smaller and a bit simpler.

Signed-off-by: Axel Lin <axel.lin@gmail.com>
Cc: "John W. Linville" <linville@tuxdriver.com>
Cc: Jiri Slaby <jirislaby@gmail.com>
Cc: Nick Kossifidis <mickflemm@gmail.com>
Cc: "Luis R. Rodriguez" <mcgrof@qca.qualcomm.com>
Cc: Simon Kelley <simon@thekelleys.org.uk>
Cc: Jouni Malinen <j@w1.fi>
Cc: Lennert Buytenhek <buytenh@wantstofly.org>
Cc: Christian Lamparter <chunkeey@googlemail.com>
Cc: Ivo van Doorn <IvDoorn@gmail.com>
Cc: Larry Finger <Larry.Finger@lwfinger.net>
Cc: linux-wireless@vger.kernel.org
Acked-by: Lennert Buytenhek <buytenh@wantstofly.org>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
12 years agomac80211: add function retrieve average rssi
Wey-Yi Guy [Fri, 13 Apr 2012 19:02:57 +0000 (12:02 -0700)]
mac80211: add function retrieve average rssi

Add utility function to provide the average rssi per vif

Signed-off-by: Wey-Yi Guy <wey-yi.w.guy@intel.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
12 years agortlwifi: rtl8192ce: Remove false positives for kmemleak
Larry Finger [Fri, 13 Apr 2012 18:57:43 +0000 (13:57 -0500)]
rtlwifi: rtl8192ce: Remove false positives for kmemleak

When rtl8192ce is in operation, kmemleak indicates a number of leaks, yet
when the driver is removed all are gone. These false positives happen
in two locations:

unreferenced object 0xffff880041124000 (size 9536):
  comm "work_for_cpu", pid 9295, jiffies 4295037203 (age 20596.320s)
  hex dump (first 32 bytes):
    33 00 00 01 01 6d 00 00 00 00 b1 0e 21 0b 00 00  3....m......!...
    01 01 6d 00 00 00 00 8b 20 c0 e9 00 00 01 01 6d  ..m..... ......m
  backtrace:
    [<ffffffff8137a1b1>] kmemleak_alloc+0x21/0x50
    [<ffffffff8138d01f>] kmalloc_large_node+0x9a/0xa6
    [<ffffffff811335a5>] __kmalloc_node_track_caller+0x175/0x3b0
    [<ffffffff812ddfe3>] __alloc_skb+0x73/0x230
    [<ffffffff812de1b8>] dev_alloc_skb+0x18/0x30
    [<ffffffffa091a3b7>] rtl_pci_probe+0x10e0/0x17d2 [rtlwifi]
-- snip --
unreferenced object 0xffff8800b4d3f600 (size 256):
  comm "kworker/u:2", pid 13221, jiffies 4297830173 (age 9424.568s)
  hex dump (first 32 bytes):
    1c d6 45 b1 00 88 ff ff 1c d6 45 b1 00 88 ff ff  ..E.......E.....
    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
  backtrace:
    [<ffffffff8137a1b1>] kmemleak_alloc+0x21/0x50
    [<ffffffff81130f43>] kmem_cache_alloc_node+0x153/0x270
    [<ffffffff812ddfb6>] __alloc_skb+0x46/0x230
    [<ffffffff812de1b8>] dev_alloc_skb+0x18/0x30
    [<ffffffffa093264a>] rtl92c_set_fw_rsvdpagepkt+0x22a/0x5c0 [rtl8192c_common]
-- snip --

Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
12 years agoath5k: add PCI id
Yoshinori Sato [Fri, 13 Apr 2012 15:32:32 +0000 (00:32 +0900)]
ath5k: add PCI id

This device works fine of ath5k.

Details bellow
05:00.0 0200: 168c:ff1b (rev 01)
05:00.0 Ethernet controller: Atheros Communications Inc. Device ff1b (rev 01)
Flags: bus master, fast devsel, latency 0, IRQ 19
Memory at febf0000 (64-bit, non-prefetchable) [size=64K]
Capabilities: <access denied>
Kernel driver in use: ath5k

ath5k 0000:05:00.0: PCI INT A -> GSI 19 (level, low) -> IRQ 19
ath5k 0000:05:00.0: setting latency timer to 64
ath5k 0000:05:00.0: registered as 'phy0'
ath: EEPROM regdomain: 0x67
ath: EEPROM indicates we should expect a direct regpair map
ath: Country alpha2 being used: 00
ath: Regpair used: 0x67
ieee80211 phy0: Selected rate control algorithm 'minstrel_ht'
ath5k phy0: Atheros AR2425 chip found (MAC: 0xe2, PHY: 0x70)

Signed-off-by: Yoshinori Sato <ysato@users.sourceforge.jp>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
12 years agoath9k: fix beacon descriptor
Rajkumar Manoharan [Fri, 13 Apr 2012 11:14:22 +0000 (16:44 +0530)]
ath9k: fix beacon descriptor

The tx interrupt for beacon queue is configured only for edma chips.
As the edma chip does not support per descriptor interrupt, no need to
set INTREQ for every beacon descriptor. And also clear ps filter for
beacon frame.

Signed-off-by: Rajkumar Manoharan <rmanohar@qca.qualcomm.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
12 years agoath9k: skip beaconing when reset work is pending
Rajkumar Manoharan [Fri, 13 Apr 2012 11:14:21 +0000 (16:44 +0530)]
ath9k: skip beaconing when reset work is pending

Whenever the reset work is queued up, do not generate beacon. And also
clear the beacon miss count once the beacon stuck was observed.

Signed-off-by: Rajkumar Manoharan <rmanohar@qca.qualcomm.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
12 years agoath9k: reset noiseimmunity level to default
Rajkumar Manoharan [Fri, 13 Apr 2012 11:14:20 +0000 (16:44 +0530)]
ath9k: reset noiseimmunity level to default

After the chip reset, the noise immunity levels are restored with
history values. If the immunity levels are lower than the defaults,
lets start with the optimal values.

Signed-off-by: Rajkumar Manoharan <rmanohar@qca.qualcomm.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
12 years agocfg80211: increse bss expire time
Rajkumar Manoharan [Fri, 13 Apr 2012 11:08:40 +0000 (16:38 +0530)]
cfg80211: increse bss expire time

The background scan completion takes more time when the station is
having heavy uplink traffic. The scan state machine decides to fall
back to home channel on every off-channel visit when there are pending
frames in tx queue. bgscan completion took ~30sec on dual band US
regulatory card.

scan period = (20 active channels * probe timeout) +
              (12 passive channels * passive probe timeout) +
              (32 * timeout on home channel) +
              (32 * flush timeout)

Signed-off-by: Rajkumar Manoharan <rmanohar@qca.qualcomm.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
12 years agoath9k: fix ibss beacon next tbtt
Rajkumar Manoharan [Fri, 13 Apr 2012 07:46:34 +0000 (13:16 +0530)]
ath9k: fix ibss beacon next tbtt

Sync-up ibss beacon timer with the beacon frame's timestamp. When the
node acts as joiner, it has to sync with the received beacon timestamp
instead of reading tsf from hw. As the hw tsf wont wont be update till
bssid is configured. This patch programs hw tsf with the received beacon
timestamp if beacon timers are yet to be configured.

Signed-off-by: Rajkumar Manoharan <rmanohar@qca.qualcomm.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
12 years agoath9k: fix ibss fair beacon distribution for AR9462
Rajkumar Manoharan [Fri, 13 Apr 2012 07:46:33 +0000 (13:16 +0530)]
ath9k: fix ibss fair beacon distribution for AR9462

Update AR9462 initval to fix unbalance beacon distribution
in Ad-Hoc network.

Signed-off-by: Rajkumar Manoharan <rmanohar@qca.qualcomm.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
12 years agotcp: restore formatting of macros for tcp_skb_cb sacked field
Neal Cardwell [Mon, 16 Apr 2012 07:08:06 +0000 (07:08 +0000)]
tcp: restore formatting of macros for tcp_skb_cb sacked field

Commit b82d1bb4 inadvertendly placed unrelated new code between
TCPCB_EVER_RETRANS and TCPCB_RETRANS and the other macros that refer
to the sacked field in the struct tcp_skb_cb (probably because there
was a misleading empty line there). This commit fixes up the
formatting so that all macros related to the sacked field are adjacent
again.

Signed-off-by: Neal Cardwell <ncardwell@google.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
12 years agoatl1: remove unused member from atl1_adapter structure
Tony Zelenoff [Sun, 15 Apr 2012 21:27:29 +0000 (21:27 +0000)]
atl1: remove unused member from atl1_adapter structure

Signed-off-by: Tony Zelenoff <antonz@parallels.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
12 years agohostap: GFP_ATOMIC/GFP_KERNEL cleanup
Matt Renzelmann [Thu, 12 Apr 2012 22:42:43 +0000 (17:42 -0500)]
hostap: GFP_ATOMIC/GFP_KERNEL cleanup

The driver is allocating memory during initialization with GFP_ATOMIC
even though GFP_KERNEL is sufficient.  This patch fixes it.

Signed-off-by: Matt Renzelmann <mjr@cs.wisc.edu>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
12 years agomac80211: Take into account TSF adjustment latency in Toffset setpoint
Javier Cardona [Thu, 12 Apr 2012 21:32:23 +0000 (14:32 -0700)]
mac80211: Take into account TSF adjustment latency in Toffset setpoint

When testing mesh synchronization we observed a global TSF slowdown that
was dependent on the number of synchronized mesh stations.  This seems
to be caused by the TSF adjustment (read/write) latency.

Adding a small margin to the Toffset setpoint solved the problem.

Signed-off-by: Shinichi Hotori <hotorinn@gmail.com>
Signed-off-by: Yu Niiro <yu.niiro@gmail.com>
Signed-off-by: Javier Cardona <javier@cozybit.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
12 years agomac80211: Choose a new toffset setpoint if a big tsf jump is detected.
Javier Cardona [Thu, 12 Apr 2012 21:32:22 +0000 (14:32 -0700)]
mac80211: Choose a new toffset setpoint if a big tsf jump is detected.

Signed-off-by: Javier Cardona <javier@cozybit.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>