Christian Lamparter [Sat, 6 Oct 2012 17:02:57 +0000 (19:02 +0200)]
carl9170 firmware: remove inline attributes
The compiler is smart enough to decide whenever
these functions can be inlined or not.
Signed-off-by: Christian Lamparter <chunkeey@googlemail.com>
Christian Lamparter [Thu, 20 Sep 2012 16:49:12 +0000 (18:49 +0200)]
carl9170 toolchain: update to gcc-4.7.2
Signed-off-by: Christian Lamparter <chunkeey@googlemail.com>
Christian Lamparter [Thu, 13 Sep 2012 23:53:32 +0000 (01:53 +0200)]
carl9170 firmware tools: update .gitignore
- eeprom_fix is no more
- ignore fwprepare binary
Signed-off-by: Christian Lamparter <chunkeey@googlemail.com>
Cody Schafer [Fri, 13 Jul 2012 18:27:12 +0000 (11:27 -0700)]
kconfig: allow long lines in config file
For some config options (CONFIG_EXTRA_FIRMWARE, for example), the length
of a config file line can exceed the 1024 byte buffer.
Switch from fgets to compat_getline to fix. compat_getline is an
internally implimented getline work-alike for portability purposes.
Signed-off-by: Cody Schafer <cody@linux.vnet.ibm.com>
Signed-off-by: Michal Marek <mmarek@suse.cz>
Signed-off-by: Christian Lamparter <chunkeey@googlemail.com>
Paul Gortmaker [Thu, 12 Apr 2012 23:46:34 +0000 (19:46 -0400)]
kconfig: delete last traces of __enabled_ from autoconf.h
We've now fixed IS_ENABLED() and friends to not require any special
"__enabled_" prefixed versions of the normal Kconfig options, so delete
the last traces of them being generated.
Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Signed-off-by: Christian Lamparter <chunkeey@googlemail.com>
Paul Gortmaker [Thu, 12 Apr 2012 23:46:33 +0000 (19:46 -0400)]
Revert "kconfig: fix __enabled_ macros definition for invisible and un-selected symbols"
Dumping two lines into autoconf.h for all existing Kconfig options
results in a giant file (~16k lines) we have to process each time we
compile something. We've weaned IS_ENABLED() and similar off of
requiring the __enabled_ definitions so now we can revert the change
which caused all the extra lines.
Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Signed-off-by: Christian Lamparter <chunkeey@googlemail.com>
Christian Lamparter [Thu, 13 Sep 2012 23:32:41 +0000 (01:32 +0200)]
carl9170 firmware: extract tx and rx code from wlan.c into separate files
Signed-off-by: Christian Lamparter <chunkeey@googlemail.com>
Christian Lamparter [Thu, 13 Sep 2012 23:08:49 +0000 (01:08 +0200)]
carl9170 firmware: remove CONFIG_CARL9170FW_CAB_QUEUE
The software supported cab queue is now a standard
feature and will always be available.
Signed-off-by: Christian Lamparter <chunkeey@googlemail.com>
Christian Lamparter [Thu, 13 Sep 2012 22:55:58 +0000 (00:55 +0200)]
carl9170 firmware: move cmd.c into hostif.c
The command handler is part of the host
application interface too, so it will fit
there nicely.
Signed-off-by: Christian Lamparter <chunkeey@googlemail.com>
Christian Lamparter [Thu, 13 Sep 2012 22:49:25 +0000 (00:49 +0200)]
carl9170 firmware: refactor timer functions
Thanks to LTO, the timer routines can be moved into
a proper context without added overhead at runtime.
Signed-off-by: Christian Lamparter <chunkeey@googlemail.com>
Christian Lamparter [Sun, 19 Aug 2012 19:16:54 +0000 (21:16 +0200)]
carl9170: remove eeprom_fix utility
The carl9170 driver in the kernel doesn't
have the capability anymore. Hence, this
tool is no longer needed.
Signed-off-by: Christian Lamparter <chunkeey@googlemail.com>
Christian Lamparter [Sun, 19 Aug 2012 18:30:59 +0000 (20:30 +0200)]
carl9170: link time optimization build
Enabling LTO will hopefully lead to smaller
firmware binaries and maybe even slightly
better performance.
Signed-off-by: Christian Lamparter <chunkeey@googlemail.com>
Christian Lamparter [Sat, 21 Jul 2012 14:01:11 +0000 (16:01 +0200)]
carl9170 toolchain: update toolchain disk space requirements
Signed-off-by: Christian Lamparter <chunkeey@googlemail.com>
Eric W. Biederman [Mon, 7 May 2012 12:37:45 +0000 (05:37 -0700)]
kbuild: all{no,yes,mod,def,rand}config only read files when instructed to.
Prevent subtle surprises to both people working on the kconfig code
and people using make allnoconfig allyesconfig allmoconfig and
randconfig by only attempting to read a config file if
KCONFIG_ALLCONFIG is set.
Common sense suggests attempting to read the extra config files does
not make sense unless requested. The documentation says the code
won't attempt to read the extra config files unless requested.
Current usage does not appear to include people depending on the code
reading the config files without the variable being set So do the
simple thing and stop reading config files when passed
all{no,yes,mod,def,rand}config unless KCONFIG_ALLCONFIG environment
variable is set.
Signed-off-by: Eric W. Biederman <ebiederm@xmission.com>
Reported-by: Stephen Rothwell <sfr@canb.auug.org.au>
Signed-off-by: Michal Marek <mmarek@suse.cz>
Signed-off-by: Christian Lamparter <chunkeey@googlemail.com>
Eric W. Biederman [Thu, 26 Apr 2012 08:51:32 +0000 (01:51 -0700)]
kconfig: Add error handling to KCONFIG_ALLCONFIG
- Only try to read the file specified if KCONFIG_ALL_CONFIG is set to
something other than the empty string or "1".
- Don't use stat to check the name passed to conf_read_simple so that
zconf_fopen can find the file in the current directory or in SRCTREE
removing a extremely source of confusing failure, where KCONFIG_ALL_CONFIG
was not interpreted with respect to the directory make was called in.
- If conf_read_simple fails complain clearly and stop processing.
Allowing the simple debugging of typos.
- Clearly document the behavior so it is clear to users which
values are treated as flags and which values are treated as
filenames.
Signed-off-by: Eric W. Biederman <ebiederm@xmission.com>
Signed-off-by: Michal Marek <mmarek@suse.cz>
Signed-off-by: Christian Lamparter <chunkeey@googlemail.com>
Christian Lamparter [Sat, 21 Jul 2012 13:48:23 +0000 (15:48 +0200)]
carl9170: remove carlu
The userspace utility will be become a separate project.
Signed-off-by: Christian Lamparter <chunkeey@googlemail.com>
Vladimir Kondratiev [Mon, 2 Jul 2012 06:32:35 +0000 (09:32 +0300)]
wireless: 60g protocol constants
Provide various constants as defined by the 802.11ad:
frame types, IE's, capability bits, action categories
Introduce GCMP cipher, mandatory by 802.11ad
Signed-off-by: Vladimir Kondratiev <qca_vkondrat@qca.qualcomm.com>
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Signed-off-by: Christian Lamparter <chunkeey@googlemail.com>
Mahesh Palivela [Fri, 22 Jun 2012 07:27:46 +0000 (07:27 +0000)]
wireless: add VHT (802.11ac) definitions
Add the VHT definitions to be used by drivers supporting it.
Signed-off-by: Mahesh Palivela <maheshp@posedge.com>
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Signed-off-by: Christian Lamparter <chunkeey@googlemail.com>
Avinash Patil [Thu, 21 Jun 2012 00:59:01 +0000 (17:59 -0700)]
ieee80211: more OUI type definitions for WLAN_OUI_MICROSOFT
WMM and WPS
Signed-off-by: Avinash Patil <patila@marvell.com>
Signed-off-by: Bing Zhao <bzhao@marvell.com>
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Signed-off-by: Christian Lamparter <chunkeey@googlemail.com>
Chun-Yeow Yeoh [Wed, 13 Jun 2012 18:06:07 +0000 (02:06 +0800)]
mac80211: implement the proactive PREQ generation
Generate the proactive PREQ element as defined in
Sec. 13.10.9.3 (Case C) of IEEE Std. 802.11-2012
based on the selection of dot11MeshHWMPRootMode as follow:
dot11MeshHWMPRootMode (2) is proactivePREQnoPREP
dot11MeshHWMPRootMode (3) is proactivePREQwithPREP
The proactive PREQ is generated based on the interval
defined by dot11MeshHWMProotInterval.
With this change, proactive RANN element is now generated
if the dot11MeshHWMPRootMode is set to (4) instead of (1).
Signed-off-by: Chun-Yeow Yeoh <yeohchunyeow@gmail.com>
[line-break commit log]
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Signed-off-by: Christian Lamparter <chunkeey@googlemail.com>
Avinash Patil [Tue, 12 Jun 2012 01:14:16 +0000 (18:14 -0700)]
ieee80211: definitions for Microsoft Vendor OUI and WPA OUI type
Reference: http://standards.ieee.org/develop/regauth/oui/oui.txt
Signed-off-by: Avinash Patil <patila@marvell.com>
Signed-off-by: Bing Zhao <bzhao@marvell.com>
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Signed-off-by: Christian Lamparter <chunkeey@googlemail.com>
Chun-Yeow Yeoh [Mon, 11 Jun 2012 03:59:36 +0000 (11:59 +0800)]
{nl,cfg,mac}80211: fix the coding style related to mesh parameters
fix the coding style related to mesh parameters, especially the indentation,
as pointed out by Johannes Berg.
Signed-off-by: Chun-Yeow Yeoh <yeohchunyeow@gmail.com>
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Signed-off-by: Christian Lamparter <chunkeey@googlemail.com>
Christian Lamparter [Thu, 19 Jul 2012 18:11:21 +0000 (20:11 +0200)]
carl9170 cmake: config requires at least cmake 2.8.4
"it needs at least 2.8.4 due to use of CMAKE_CURRENT_LIST_DIR."
Spotted-by: Ben Hutchings <ben@decadent.org.uk>
Signed-off-by: Christian Lamparter <chunkeey@googlemail.com>
Christian Lamparter [Sat, 7 Jul 2012 15:29:35 +0000 (17:29 +0200)]
carl9170 firmware: update version to 1.9.6
Signed-off-by: Christian Lamparter <chunkeey@googlemail.com>
Christian Lamparter [Sat, 7 Jul 2012 15:24:53 +0000 (17:24 +0200)]
carl9170 firmware: add automatic BA filter
BA are normally filtered to conserve bandwidth and
cpu cycles. However, if the application has sent a
BAR, the firmware has to escalate the BA accouting.
Hence, for a brief period, the firmware has to let
all BA temporarily pass through the filter.
Signed-off-by: Christian Lamparter <chunkeey@googlemail.com>
Christian Lamparter [Sat, 7 Jul 2012 14:53:16 +0000 (16:53 +0200)]
carl9170 firmware: set NO ACK bit in BA control
This is similar to what the original firmware does.
Signed-off-by: Christian Lamparter <chunkeey@googlemail.com>
Christian Lamparter [Sat, 7 Jul 2012 14:43:55 +0000 (16:43 +0200)]
Revert "carl9170 firmware: add workaround for carl vs. mac BAR problem"
This reverts commit
c5ade0a37dc2650ec206cce64dcaea32d2bd86be.
The issue has been fixed in the driver.
Signed-off-by: Christian Lamparter <chunkeey@googlemail.com>
Christian Lamparter [Sat, 7 Jul 2012 00:07:43 +0000 (02:07 +0200)]
carl9170 firmware: add workaround for carl vs. mac BAR problem
It looks like the AR9170 MAC seems to be incapable of
matching BA to xmitted BARs. This is a problem because
when mac80211 tries to recover it sends out BARs which
can't be matched to a BA and so it goes on. Of course
having lots of stale BARs around causes mayhem in the
receiver buffer at the HT peer on the other end because
it's constantly flushing the reorder buffer.
Note: This is hopefully just a temporary fix, but until
there's a better method, it will provide at least some
relief.
Signed-off-by: Christian Lamparter <chunkeey@googlemail.com>
Christian Lamparter [Sun, 1 Jul 2012 00:14:04 +0000 (02:14 +0200)]
carl9170 firmware: add note about BAR tx status issues
The workaround will be implemented in the driver as the
firmware can't efficiently deal with BA responses.
Signed-off-by: Christian Lamparter <chunkeey@googlemail.com>
Christian Lamparter [Sat, 30 Jun 2012 23:51:08 +0000 (01:51 +0200)]
carl9170 firmware: fix BAR -> BA handling
1. fix a regression which was introduced by accident by:
carl9170 firmware: initial WoWLAN support
The BlockACK should not be a NULLFUNC
2. remove superfluous control | 1.
No idea, why the original firmware had that set.
Signed-off-by: Christian Lamparter <chunkeey@googlemail.com>
Christian Lamparter [Thu, 14 Jun 2012 18:27:49 +0000 (20:27 +0200)]
carl9170 toolchain: update to gcc-4.7.1
Note:
There are no more gcc-core packages.
<http://gcc.gnu.org/ml/gcc-patches/2011-05/msg01525.html>
Signed-off-by: Christian Lamparter <chunkeey@googlemail.com>
Javier Cardona [Thu, 12 Apr 2012 21:32:20 +0000 (14:32 -0700)]
mac80211: Set the correct values for hwmp (1) and airtimeLinkMetric (1)
Per sections 8.4.2.100.2 and 8.4.2.100.3 of Std 802.11-2012
Reported-by: Shinichi Hotori <hotorinn@gmail.com>
Signed-off-by: Javier Cardona <javier@cozybit.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
Signed-off-by: Christian Lamparter <chunkeey@googlemail.com>
Javier Cardona [Sat, 31 Mar 2012 18:31:32 +0000 (11:31 -0700)]
mac80211: Implement mesh synchronization framework
This patch adds MBSS extensible synchronization framework (Sec.
13.13.2 of IEEE Std. 802.11-2012).
The framework is implemented via an ops table which defines the
following functions:
rx_bcn_presp() - this is called every time a mesh beacon is
received.
adjust_tbtt() - this is called immediately before a beacon is about
to be transmitted.
The default neighbor offset synchronization defined in the standard is
implemented. We also provide template functions for vendor specific
methods.
When neighbor offset synchronization is active (which is the default)
mesh neighbors in the same MBSS will track timing offsets to each other
and compensate clock drift.
In our tests we observed that this mesh synchronization implementation
successfully corrected drifts between stations of ~2PPM while
introducing a jitter of ~20us.
It is also possible to test this framework on mac80211_hwsim simulated
phys to see how it behaves under different topologies, over poor links,
etc.
Signed-off-by: Marco Porsch <marco.porsch@s2005.tu-chemnitz.de>
Signed-off-by: Pavel Zubarev <pavel.zubarev@gmail.com>
Signed-off-by: Javier Cardona <javier@cozybit.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
Signed-off-by: Christian Lamparter <chunkeey@googlemail.com>
Chun-Yeow Yeoh [Mon, 19 Mar 2012 13:38:46 +0000 (21:38 +0800)]
mac80211: fix the sparse warnings on endian handling in RANN propagation
The HWMP sequence number of received RANN element is compared to decide whether to be
propagated. The sequence number is required to covert from 32bit little endian data into
CPUs endianness for comparison. The same applies to the RANN metric.
Signed-off-by: Chun-Yeow Yeoh <yeohchunyeow@gmail.com>
Signed-off-by: Javier Cardona <javier@cozybit.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
Signed-off-by: Christian Lamparter <chunkeey@googlemail.com>
Johannes Berg [Thu, 15 Mar 2012 18:45:16 +0000 (19:45 +0100)]
wireless: rename ht_info to ht_operation
Since some of the HT code pre-dates 802.11n-2009
some names are wrong. The one that bothers me most
is that "HT operation" is called "HT information"
in our code and that causes confusion.
Rename "HT information" to "HT operation" and also
the control_chan field to primary_chan to match
the name used in the spec.
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Acked-by: Bing Zhao <bzhao@marvell.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
Signed-off-by: Christian Lamparter <chunkeey@googlemail.com>
Paul Gortmaker [Thu, 12 Apr 2012 23:46:34 +0000 (19:46 -0400)]
kconfig: delete last traces of __enabled_ from autoconf.h
We've now fixed IS_ENABLED() and friends to not require any special
"__enabled_" prefixed versions of the normal Kconfig options, so delete
the last traces of them being generated.
Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Paul Gortmaker [Thu, 12 Apr 2012 23:46:33 +0000 (19:46 -0400)]
Revert "kconfig: fix __enabled_ macros definition for invisible and un-selected symbols"
This reverts commit
953742c8fe8ac45be453fee959d7be40cd89f920.
Dumping two lines into autoconf.h for all existing Kconfig options
results in a giant file (~16k lines) we have to process each time we
compile something. We've weaned IS_ENABLED() and similar off of
requiring the __enabled_ definitions so now we can revert the change
which caused all the extra lines.
Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Signed-off-by: Christian Lamparter <chunkeey@googlemail.com>
Arnaud Lacombe [Mon, 23 Jan 2012 22:29:05 +0000 (17:29 -0500)]
kconfig: fix new choices being skipped upon config update
Running `oldconfig' after any of the following configuration change:
either trivial addition, such as:
config A
bool "A"
choice
prompt "Choice ?"
depends on A
config CHOICE_B
bool "Choice B"
config CHOICE_C
bool "Choice C"
endchoice
or more tricky change:
OLD KCONFIG | NEW KCONFIG
|
| config A
| bool "A"
|
choice | choice
prompt "Choice ?" | prompt "Choice ?"
|
config CHOICE_C | config CHOICE_C
bool "Choice C" | bool "Choice C"
|
config CHOICE_D | config CHOICE_D
bool "Choice D" | bool "Choice D"
endchoice |
| config CHOICE_E
| bool "Choice E"
| depends on A
| endchoice
will not cause the choice to be considered as NEW, and thus not be
asked. The cause of this behavior is that choice's novelty are computed
statically right after the saved configuration has been read. At this
point, the new dependency's value is still unknown and asserted to be
`no'. Moreover, no update to this decision is made afterward.
Correct this by dynamically evaluating a choice's novelty, and removing the
static evaluation.
Reported-and-tested-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
Signed-off-by: Arnaud Lacombe <lacombar@gmail.com>
Signed-off-by: Michal Marek <mmarek@suse.cz>
Signed-off-by: Christian Lamparter <chunkeey@googlemail.com>
Arnaud Lacombe [Wed, 23 Nov 2011 18:05:53 +0000 (13:05 -0500)]
kbuild: Fix compiler warning with assertion when calling 'fwrite'
Reinhard Tartler discovered a corner case of calling xfwrite() where the
length of the string is zero.
Arnaud Lacombe suggested to use assertion for the corner case, as
fwrite(3) is currently used:
1) in comment printers. Empty comment are not allowed.
2) in a callback passed to expr_print(), where the string printed is
either NULL OR non-empty.
3) in the lexer, auto-generated, and unused.
I feel using assertion is a good solution:
1) It cleanly takes care of the above-mentioned corner case.
2) It can be easily disabled by defining NDEBUG.
3) It asserts xfwrite() is simply a wrapper for fwrite().
Reported-by: Reinhard Tartler <Reinhard.Tartler@informatik.uni-erlangen.de>
Signed-off-by: Arnaud Lacombe <lacombar@gmail.com>
Signed-off-by: Jean Sacren <sakiwit@gmail.com>
Signed-off-by: Michal Marek <mmarek@suse.cz>
Signed-off-by: Christian Lamparter <chunkeey@googlemail.com>
Peter Foley [Sat, 22 Oct 2011 14:48:49 +0000 (10:48 -0400)]
kconfig: use xfwrite wrapper function to silence warnings
Use the xfwrite wrapper function defined in lkc.h to check the return value of
fwrite and silence these warnings.
HOSTCC scripts/kconfig/zconf.tab.o
config/zconf.tab.c: In function 'header_print_comment':
config/confdata.c:551:10: warning: ignoring return value of 'fwrite', declared with attribute warn_unused_result
config/zconf.tab.c: In function 'kconfig_print_comment':
config/confdata.c:467:10: warning: ignoring return value of 'fwrite', declared with attribute warn_unused_result
Signed-off-by: Peter Foley <pefoley2@verizon.net>
Signed-off-by: Michal Marek <mmarek@suse.cz>
Signed-off-by: Christian Lamparter <chunkeey@googlemail.com>
Christian Lamparter [Sat, 31 Mar 2012 22:36:22 +0000 (00:36 +0200)]
carl9170 firmware: remove BAR->BA clutter
No need for a dynamic rate adjustment for this special
case of outgoing BAs. The original firmware didn't care
much for them either.
Signed-off-by: Christian Lamparter <chunkeey@googlemail.com>
Christian Lamparter [Sat, 31 Mar 2012 22:04:35 +0000 (00:04 +0200)]
carl9170 firmware: fix BAR->BA delivery
Previously, if the HT peer sended "just" enough BARs so
ba_head_idx warps around and the ba_head_idx == ba_tail_idx
condition will be true, the already queued BAs would be
lost.
Signed-off-by: Christian Lamparter <chunkeey@googlemail.com>
Christian Lamparter [Wed, 14 Mar 2012 20:20:36 +0000 (21:20 +0100)]
carl9170 firmware: update version to 1.9.5
Signed-off-by: Christian Lamparter <chunkeey@googlemail.com>
Christian Lamparter [Wed, 14 Mar 2012 19:57:11 +0000 (20:57 +0100)]
carl9170 firwmare: toolchain gcc 4.6.3
Signed-off-by: Christian Lamparter <chunkeey@googlemail.com>
Christian Lamparter [Thu, 29 Dec 2011 02:18:19 +0000 (03:18 +0100)]
carl9170 firmware: toolchain newlib 1.20.0
Signed-off-by: Christian Lamparter <chunkeey@googlemail.com>
Christian Lamparter [Tue, 27 Dec 2011 18:17:51 +0000 (19:17 +0100)]
carl9170 firmware: minor wlan cleanup
* replace hdr->seq_ctrl voodoo with use ieee80211_is_first_frag
* add comment about consume_retry
Signed-off-by: Christian Lamparter <chunkeey@googlemail.com>
Helmut Schaa [Thu, 8 Dec 2011 12:11:54 +0000 (13:11 +0100)]
ieee80211: Introduce ieee80211_is_first_frag
Signed-off-by: Helmut Schaa <helmut.schaa@googlemail.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
Signed-off-by: Christian Lamparter <chunkeey@googlemail.com>
Johannes Berg [Tue, 6 Dec 2011 09:39:40 +0000 (10:39 +0100)]
mac80211: accept public action frames with mismatched BSSID
Arik's patch "mac80211: allow action frames with unknown
BSSID in GO mode" allowed any action frames in P2P mode
to go through, but only to cooked monitor interfaces as
the IEEE80211_RX_RA_MATCH was still cleared. As a result
my no-monitor patches broke invitation responses.
Instead of allowing any action frames in P2P GO mode to
go through with a wrong BSSID like that patch did, allow
all public action frames. They will never be processed
by mac80211, but can be reported via nl80211 then.
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
Signed-off-by: Christian Lamparter <chunkeey@googlemail.com>
Christian Lamparter [Fri, 23 Dec 2011 19:40:49 +0000 (20:40 +0100)]
carl9170 firmware: remove debug tx/rx paths crud
Signed-off-by: Christian Lamparter <chunkeey@googlemail.com>
Christian Lamparter [Fri, 23 Dec 2011 19:35:18 +0000 (20:35 +0100)]
carl9170 firmware: double check if unlinked desc matches head desc
Signed-off-by: Christian Lamparter <chunkeey@googlemail.com>
Christian Lamparter [Fri, 23 Dec 2011 17:15:01 +0000 (18:15 +0100)]
carl9170 firmware: get rid of nested wlan_tx calls
Signed-off-by: Christian Lamparter <chunkeey@googlemail.com>
Christian Lamparter [Fri, 23 Dec 2011 00:22:28 +0000 (01:22 +0100)]
carl9170 firmware: fix terminator assert
While calculating the number of assigned
terminator descriptors is easy enough for
an human at "compile" time, gcc isn't that
clever. Therefore the check has to run at
runtime.
Signed-off-by: Christian Lamparter <chunkeey@googlemail.com>
Christian Lamparter [Fri, 23 Dec 2011 00:17:17 +0000 (01:17 +0100)]
carl9170 firmware: add init_queue helper function
Signed-off-by: Christian Lamparter <chunkeey@googlemail.com>
Christian Lamparter [Fri, 23 Dec 2011 00:12:53 +0000 (01:12 +0100)]
carl9170 firmware: remove gcc workaround
this workaround is no longer necessary, gcc
now compiles the code without any spurious
complains.
Signed-off-by: Christian Lamparter <chunkeey@googlemail.com>
Christian Lamparter [Sat, 3 Dec 2011 09:46:19 +0000 (10:46 +0100)]
carl9170 firmware: fix firmware build script
Signed-off-by: Christian Lamparter <chunkeey@googlemail.com>
Christian Lamparter [Tue, 29 Nov 2011 16:13:39 +0000 (17:13 +0100)]
carl9170 firmware: trivial checkpatch fixes
Signed-off-by: Christian Lamparter <chunkeey@googlemail.com>
Christian Lamparter [Thu, 24 Nov 2011 00:32:38 +0000 (01:32 +0100)]
carl9170 firmware: optimize get_async
Signed-off-by: Christian Lamparter <chunkeey@googlemail.com>
Christian Lamparter [Wed, 23 Nov 2011 23:41:28 +0000 (00:41 +0100)]
carl9170 firmware: fix minute errors
* typos in comments
* inline static vs. static inline
* line too long
Signed-off-by: Christian Lamparter <chunkeey@googlemail.com>
Christian Lamparter [Wed, 23 Nov 2011 23:30:41 +0000 (00:30 +0100)]
carl9170 firmware: enable CONFIG_CARL9170FW_USB_INIT_FIRMWARE by default
Signed-off-by: Christian Lamparter <chunkeey@googlemail.com>
Christian Lamparter [Wed, 23 Nov 2011 21:07:04 +0000 (22:07 +0100)]
carl9170 firmware: add __be{16,32,64} typedefs
Signed-off-by: Christian Lamparter <chunkeey@googlemail.com>
Thomas Pedersen [Fri, 4 Nov 2011 04:11:11 +0000 (21:11 -0700)]
mac80211: QoS multicast frames have No Ack policy
Previously QoS multicast frames had the Normal Acknowledgment QoS
control bits set. This would cause broadcast frames to be discarded by
peers with which we have a BA session, since their sequence number would
fall outside the allowed range. Set No Ack QoS control bits on multicast
QoS frames and filter these in de-aggregation code.
Signed-off-by: Thomas Pedersen <thomas@cozybit.com>
v2: Use proper QoS Ack Policy ctl field mask (Christian)
v3: Clean up conditional (Johannes)
Signed-off-by: John W. Linville <linville@tuxdriver.com>
Signed-off-by: Christian Lamparter <chunkeey@googlemail.com>
Jouni Malinen [Wed, 2 Nov 2011 21:34:56 +0000 (23:34 +0200)]
ieee80211: Define cipher suite selector for WPI-SMS4
This value is used for WPI-SMS4 in ISO/IEC JTC 1 N 9880.
Signed-off-by: Jouni Malinen <jouni@qca.qualcomm.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
Signed-off-by: Christian Lamparter <chunkeey@googlemail.com>
Christian Lamparter [Fri, 14 Oct 2011 22:14:49 +0000 (00:14 +0200)]
mac80211: handle HT PHY BSS membership selector value correctly
802.11n-2009 extends the supported rates element with a
magic value which can be used to prevent legacy stations
from joining the BSS.
However, this magic value is not a rate like the others
and the magic can simply be ignored/skipped at this late
stage.
Signed-off-by: Christian Lamparter <chunkeey@googlemail.com>---
Signed-off-by: John W. Linville <linville@tuxdriver.com>
Signed-off-by: Christian Lamparter <chunkeey@googlemail.com>
Arik Nemtsov [Wed, 28 Sep 2011 11:12:52 +0000 (14:12 +0300)]
mac80211: handle TDLS high-level commands and frames
Register and implement the TDLS cfg80211 callback functions.
Internally prepare and send TDLS management frames. We incorporate
local STA capabilities and supported rates with extra IEs given by
usermode. The resulting packet is either encapsulated in a data frame,
or assembled as an action frame. It is transmitted either directly or
through the AP, as mandated by the TDLS specification.
Declare support for the TDLS external setup wiphy capability. This
tells usermode to handle link setup and discovery on its own, and use the
kernel driver for sending TDLS mgmt packets.
Signed-off-by: Arik Nemtsov <arik@wizery.com>
Cc: Kalyan C Gaddam <chakkal@iit.edu>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
Signed-off-by: Christian Lamparter <chunkeey@googlemail.com>
Eliad Peller [Thu, 15 Sep 2011 08:53:01 +0000 (11:53 +0300)]
cfg80211: add cfg80211_find_vendor_ie() function
Add function to find vendor-specific ie (along with
vendor-specific ie struct definition and P2P OUI values)
Signed-off-by: Eliad Peller <eliad@wizery.com>
Reviewed-by: Johannes Berg <johannes@sipsolutions.net>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
Signed-off-by: Christian Lamparter <chunkeey@googlemail.com>
Javier Cardona [Thu, 8 Sep 2011 00:49:53 +0000 (17:49 -0700)]
mac80211: Mesh data frames must have the QoS header
Per sec 7.1.3.5 of draft 12.0 of 802.11s, mesh frames indicate the
presence of the mesh control header in their QoS header.
Signed-off-by: Javier Cardona <javier@cozybit.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
Signed-off-by: Christian Lamparter <chunkeey@googlemail.com>
Javier Cardona [Tue, 9 Aug 2011 23:45:08 +0000 (16:45 -0700)]
mac80211: mesh gate implementation
In this implementation, a mesh gate is a root node with a certain bit
set in its RANN flags. The mpath to this root node is marked as a path
to a gate, and added to our list of known gates for this if_mesh. Once a
path discovery process fails, we forward the unresolved frames to a
known gate. Thanks to Luis Rodriguez for refactoring and bug fix help.
Signed-off-by: Javier Cardona <javier@cozybit.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
Signed-off-by: Christian Lamparter <chunkeey@googlemail.com>
Thomas Pedersen [Fri, 12 Aug 2011 02:35:15 +0000 (19:35 -0700)]
mac80211: update mesh path selection frame format
Make mesh path selection frames Mesh Action category, remove outdated
Mesh Path Selection category and defines, use updated reason codes, add
mesh_action_is_path_sel for readability, and update/correct path
selection IEs.
Signed-off-by: Thomas Pedersen <thomas@cozybit.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
Signed-off-by: Christian Lamparter <chunkeey@googlemail.com>
Thomas Pedersen [Fri, 12 Aug 2011 02:35:14 +0000 (19:35 -0700)]
ieee80211: add mesh action codes
Signed-off-by: Thomas Pedersen <thomas@cozybit.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
Signed-off-by: Christian Lamparter <chunkeey@googlemail.com>
Thomas Pedersen [Sat, 13 Aug 2011 03:01:00 +0000 (20:01 -0700)]
mac80211: update mesh peering frame format
This patch updates the mesh peering frames to the format specified in
the recently ratified 802.11s standard. Several changes took place to
make this happen:
- Change RX path to handle new self-protected frames
- Add new Peering management IE
- Remove old Peer Link IE
- Remove old plink_action field in ieee80211_mgmt header
These changes by themselves would either break peering, or work by
coincidence, so squash them all into this patch.
Signed-off-by: Thomas Pedersen <thomas@cozybit.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
Signed-off-by: Christian Lamparter <chunkeey@googlemail.com>
Thomas Pedersen [Fri, 12 Aug 2011 02:35:11 +0000 (19:35 -0700)]
ieee80211: introduce Self Protected Action codes
802.11s introduces a new action frame category, add action codes as well
as an entry in ieee80211_mgmt.
Signed-off-by: Thomas Pedersen <thomas@cozybit.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
Signed-off-by: Christian Lamparter <chunkeey@googlemail.com>
Helmut Schaa [Thu, 11 Aug 2011 14:17:41 +0000 (16:17 +0200)]
wireless: Introduce defines for BAR TID_INFO & MULTI_TID fields
While at it also fix the indention of the other IEEE80211_BAR_CTRL_ defines.
Signed-off-by: Helmut Schaa <helmut.schaa@googlemail.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
Signed-off-by: Christian Lamparter <chunkeey@googlemail.com>
Arnaud Lacombe [Tue, 16 Aug 2011 05:20:20 +0000 (01:20 -0400)]
config: fix __enabled_ macros definition for invisible and un-selected symbols
__enabled_<sym-name> are only generated on visible or selected entries, do not
reflect the purpose of its introduction.
Fix this by always generating these entries for named symbol.
Reported-by: Rabin Vincent <rabin@rab.in>
Signed-off-by: Arnaud Lacombe <lacombar@gmail.com>
Signed-off-by: Christian Lamparter <chunkeey@googlemail.com>
Arnaud Lacombe [Thu, 4 Aug 2011 01:52:07 +0000 (21:52 -0400)]
config: factor code in menu_get_ext_help()
Cc: Srinivas Kandagatla <srinivas.kandagatla@st.com>
Signed-off-by: Arnaud Lacombe <lacombar@gmail.com>
Signed-off-by: Michal Marek <mmarek@suse.cz>
Signed-off-by: Christian Lamparter <chunkeey@googlemail.com>
Srinivas Kandagatla [Tue, 2 Aug 2011 17:49:52 +0000 (18:49 +0100)]
config: Fix help text not displayed in choice option.
Help text under choice menu is never displayed because it does not have
symbol name associated with it, however many kconfigs have help text
under choice, assuming that it will be displayed when user selects help.
for example in Kconfig if we have:
choice
prompt "Choice"
---help---
HELP TEXT ...
config A
bool "A"
config B
bool "B"
endchoice
Without this patch "HELP TEXT" is not displayed when user selects help
option when "Choice" is highlighted from menuconfig or xconfig or
gconfig.
This patch changes the logic in menu_get_ext_help to display help for
cases which dont have symbol names like choice.
Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@st.com>
Reviewed-by: Stuart Menefy <stuart.menefy@st.com>
Reviewed-by: Arnaud Lacombe <lacombar@gmail.com>
Cc: stable@kernel.org
Signed-off-by: Michal Marek <mmarek@suse.cz>
Signed-off-by: Christian Lamparter <chunkeey@googlemail.com>
Christian Lamparter [Mon, 21 Nov 2011 19:18:47 +0000 (20:18 +0100)]
carl9170 firmware: remove wol #ifdef leftovers
Thanks to the aggressive cflags, the compiler will
optimize the check away if wol is not enabled.
Signed-off-by: Christian Lamparter <chunkeey@googlemail.com>
Christian Lamparter [Mon, 21 Nov 2011 19:13:20 +0000 (20:13 +0100)]
carl9170 firmware: toolchain binutils 2.22
Signed-off-by: Christian Lamparter <chunkeey@googlemail.com>
Christian Lamparter [Mon, 21 Nov 2011 18:42:17 +0000 (19:42 +0100)]
carl9170 firmware: refactoring wlan_tx_ampdu
Signed-off-by: Christian Lamparter <chunkeey@googlemail.com>
Christian Lamparter [Mon, 21 Nov 2011 15:54:40 +0000 (16:54 +0100)]
carl9170 firmware: move wowlan routines into separate files
Signed-off-by: Christian Lamparter <chunkeey@googlemail.com>
Christian Lamparter [Thu, 27 Oct 2011 13:41:32 +0000 (15:41 +0200)]
carl9170 firwmare: toolchain gcc 4.6.2
Signed-off-by: Christian Lamparter <chunkeey@googlemail.com>
Christian Lamparter [Wed, 17 Aug 2011 11:24:10 +0000 (13:24 +0200)]
config: import latest kconfig
commit
2a11c8ea20bf850b3a2c60db8c2e7497d28aba99
Subject: "kconfig: Introduce IS_ENABLED(), IS_BUILTIN() and IS_MODULE()"
Signed-off-by: Christian Lamparter <chunkeey@googlemail.com>
Christian Lamparter [Wed, 17 Aug 2011 11:15:06 +0000 (13:15 +0200)]
carl9170 firmware: add missing out-of-bound check in WoWLAN code
src/wlan.c: In function ‘wlan_rx_wol_probe_ssid’:
src/wlan.c:830:30: error: variable ‘end’ set but not used
Signed-off-by: Christian Lamparter <chunkeey@googlemail.com>
Christian Lamparter [Mon, 15 Aug 2011 16:58:52 +0000 (18:58 +0200)]
carl9170 firmware: checkpatch/style fixes
Signed-off-by: Christian Lamparter <chunkeey@googlemail.com>
Kalle Valo [Sun, 17 Jul 2011 09:13:56 +0000 (12:13 +0300)]
ieee80211: add few wmm tspec values
These are needed by ath6kl for parsing tspec status from an IE.
Signed-off-by: Kalle Valo <kvalo@qca.qualcomm.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
Signed-off-by: Christian Lamparter <chunkeey@googlemail.com>
Johannes Berg [Wed, 22 Jun 2011 08:06:59 +0000 (08:06 +0000)]
wireless: unify QoS control field definitions
Move all that mac80211 has into the generic
ieee80211.h header file and use them. At the
same time move them from mask+shift to just
bits and rename them for consistent names.
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Signed-off-by: Christian Lamparter <chunkeey@googlemail.com>
Eliad Peller [Sun, 29 May 2011 12:53:20 +0000 (12:53 +0000)]
cfg80211: don't drop p2p probe responses
Commit
0a35d36 ("cfg80211: Use capability info to detect mesh beacons")
assumed that probe response with both ESS and IBSS bits cleared
means that the frame was sent by a mesh sta.
However, these capabilities are also being used in the p2p_find phase,
and the mesh-validation broke it.
Rename the WLAN_CAPABILITY_IS_MBSS macro, and verify that mesh ies
exist before assuming this frame was sent by a mesh sta.
Signed-off-by: Eliad Peller <eliad@wizery.com>
Signed-off-by: Christian Lamparter <chunkeey@googlemail.com>
Pavel Roskin [Fri, 15 Jul 2011 23:00:49 +0000 (23:00 +0000)]
carl9170 firmware: install firmware without execute permissions
Signed-off-by: Pavel Roskin <proski@gnu.org>
Signed-off-by: Christian Lamparter <chunkeey@googlemail.com>
Christian Lamparter [Fri, 15 Jul 2011 14:33:39 +0000 (16:33 +0200)]
carl9170 firmware: add BCN_HT1 and BCN_HT2 definitions
Signed-off-by: Christian Lamparter <chunkeey@googlemail.com>
Ignacy Gawedzki [Thu, 14 Jul 2011 13:03:11 +0000 (15:03 +0200)]
carl9170 firmware: correct use of memset
I noticed something that may be a bug in wlan.c, in
wlan_wol_connection_monitor():
memset(nullf, 0, sizeof(nullf));
Should be:
memset(nullf, 0, sizeof(*nullf));
Signed-off-by: Christian Lamparter <chunkeey@googlemail.com>
Christian Lamparter [Sun, 10 Jul 2011 16:48:05 +0000 (18:48 +0200)]
carl9170 firmware: shared register file update
Signed-off-by: Christian Lamparter <chunkeey@googlemail.com>
Christian Lamparter [Sun, 10 Jul 2011 16:45:59 +0000 (18:45 +0200)]
carl9170 firmware: fix use of uninitialized value
Signed-off-by: Christian Lamparter <chunkeey@googlemail.com>
Christian Lamparter [Fri, 1 Jul 2011 21:31:26 +0000 (23:31 +0200)]
carl9170 firmware: improve site survey data
Luis' automatic channel selection needs tx_time in
order to work. Trouble is, the documentation does
not mention such a counter, so a software solution
is needed.
Signed-off-by: Christian Lamparter <chunkeey@googlemail.com>
Christian Lamparter [Fri, 1 Jul 2011 12:18:09 +0000 (14:18 +0200)]
carl9170 firmware: drop timer1
Signed-off-by: Christian Lamparter <chunkeey@googlemail.com>
Christian Lamparter [Thu, 30 Jun 2011 23:18:34 +0000 (01:18 +0200)]
carl9170 firmware: report device tallies
- channel active counter
- main channel clear counter
- ext channel clear counter
- rx total counter
- rx overrun counter
Signed-off-by: Christian Lamparter <chunkeey@googlemail.com>
Christian Lamparter [Thu, 30 Jun 2011 17:49:09 +0000 (19:49 +0200)]
carl9170 firmware: update version to 1.9.4
Signed-off-by: Christian Lamparter <chunkeey@googlemail.com>
Christian Lamparter [Thu, 30 Jun 2011 17:40:17 +0000 (19:40 +0200)]
carl9170 firmware: use udivsi3 to divide integers
Signed-off-by: Christian Lamparter <chunkeey@googlemail.com>
Christian Lamparter [Thu, 30 Jun 2011 17:29:03 +0000 (19:29 +0200)]
carl9170 firmware: remove noisy debug messages
Signed-off-by: Christian Lamparter <chunkeey@googlemail.com>
Christian Lamparter [Thu, 30 Jun 2011 17:25:53 +0000 (19:25 +0200)]
carl9170 firmware: enable 5GHZ PSM
The issue with 5GHZ PSM has been identified and fixed in
the previous commit (carl9170 firmware: fix time accouting).
Introduce a new feature flag, so the driver can check
for it.
Signed-off-by: Christian Lamparter <chunkeey@googlemail.com>
Christian Lamparter [Thu, 30 Jun 2011 17:21:05 +0000 (19:21 +0200)]
carl9170 firmware: fix time accouting
This patch tries to partially fix the old issue with
the inaccurate clocks.
Note: It also adds a Timer1, which goes off every msec
on the clock.
Signed-off-by: Christian Lamparter <chunkeey@googlemail.com>
Christian Lamparter [Thu, 30 Jun 2011 00:27:29 +0000 (02:27 +0200)]
carl9170 firmware: fix clock_set parameter mixup
Signed-off-by: Christian Lamparter <chunkeey@googlemail.com>