openwrt/staging/blogic.git
10 years agoMerge tag 'mac80211-next-for-john-2014-11-04' of git://git.kernel.org/pub/scm/linux...
John W. Linville [Tue, 4 Nov 2014 21:18:12 +0000 (16:18 -0500)]
Merge tag 'mac80211-next-for-john-2014-11-04' of git://git./linux/kernel/git/jberg/mac80211-next

Johannes Berg <johannes@sipsolutions.net> says:

"This relatively large batch of changes is comprised of the
following:
 * large mac80211-hwsim changes from Ben, Jukka and a bit myself
 * OCB/WAVE/11p support from Rostislav on behalf of the Czech Technical
   University in Prague and Volkswagen Group Research
 * minstrel VHT work from Karl
 * more CSA work from Luca
 * WMM admission control support in mac80211 (myself)
 * various smaller fixes, spelling corrections, and minor API additions"

Conflicts:
drivers/net/wireless/ath/wil6210/cfg80211.c

Signed-off-by: John W. Linville <linville@tuxdriver.com>
10 years agomac80211: replace restart_complete() with reconfig_complete()
Eliad Peller [Tue, 4 Nov 2014 09:43:54 +0000 (11:43 +0200)]
mac80211: replace restart_complete() with reconfig_complete()

Drivers might want to know also when mac80211 has
completed reconfiguring after resume (e.g. in order
to know when frames can be passed to mac80211).

Rename restart_complete() to a more-generic reconfig_complete(),
and add a new enum to indicate the reconfiguration type.

Update the current users with the new prototype.

Signed-off-by: Eliad Peller <eliadx.peller@intel.com>
Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
10 years agomac80211: increase U-APSD max service period length
Andrei Otcheretianski [Tue, 4 Nov 2014 09:33:04 +0000 (11:33 +0200)]
mac80211: increase U-APSD max service period length

Deliver up to 128 frames during service period instead of 8 if
unlimited is specified by the client during association.
8 was just an arbitrary value; so is 128 since unlimited can
be any number.

However for large traffic bursts, increasing this value looks
reasonable. Also, it seems that a few certification tests
expect more frames to be delivered during SP.

Signed-off-by: Andrei Otcheretianski <andrei.otcheretianski@intel.com>
Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
10 years agomac80211: handle RIC data element in reassociation request
Johannes Berg [Mon, 27 Oct 2014 11:03:19 +0000 (12:03 +0100)]
mac80211: handle RIC data element in reassociation request

When the RIC data element (RDE) is included in the IEs coming
from userspace for an association request, its handling is
currently broken as any IEs that are contained within it would
be split off from it and inserted again after all the IEs that
mac80211 generates (e.g. HT, VHT.)

To fix this, treat the RIC element specially, and stop after
it only when we find something that doesn't actually belong to
it. This assumes userspace is actually correctly building it,
directly after the fast BSS transition IE and before all the
others like extended capabilities.

This leaves as a potential problem the case where userspace is
building the following IEs:

[RDE] [vendor resource description] [vendor non-resource IE]

In this case, we'd erroneously consider all three IEs to be
part of the RIC data together, and not split them between the
two vendor IEs. Unfortunately, it isn't easily possible to
distinguish vendor IEs, so this isn't easy to fix. Luckily,
this case is rare as normally wpa_supplicant will include an
extended capabilities IE in the IEs, and that certainly will
break the two vendor IEs apart correctly.

Reviewed-by: Eliad Peller <eliad@wizery.com>
Reviewed-by: Beni Lev <beni.lev@intel.com>
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
10 years agomac80211: 802.11p OCB mode support
Rostislav Lisovy [Mon, 3 Nov 2014 09:33:19 +0000 (10:33 +0100)]
mac80211: 802.11p OCB mode support

This patch adds 802.11p OCB (Outside the Context of a BSS) mode
support.

When communicating in OCB mode a mandatory wildcard BSSID
(48 '1' bits) is used.

The EDCA parameters handling function was changed to support
802.11p specific values.

The insertion of a newly discovered STAs is done in the similar way
as in the IBSS mode -- through the deferred insertion.

The OCB mode uses a periodic 'housekeeping task' for expiration of
disconnected STAs (in the similar manner as in the MESH mode).

New Kconfig option for verbose OCB debugging outputs is added.

Signed-off-by: Rostislav Lisovy <rostislav.lisovy@fel.cvut.cz>
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
10 years agocfg80211: 802.11p OCB mode handling
Rostislav Lisovy [Mon, 3 Nov 2014 09:33:18 +0000 (10:33 +0100)]
cfg80211: 802.11p OCB mode handling

This patch adds new iface type (NL80211_IFTYPE_OCB) representing
the OCB (Outside the Context of a BSS) mode.
When establishing a connection to the network a cfg80211_join_ocb
function is called (particular nl80211_command is added as well).
A mandatory parameters during the ocb_join operation are 'center
frequency' and 'channel width (5/10 MHz)'.

Changes done in mac80211 are minimal possible required to avoid
many warnings (warning: enumeration value 'NL80211_IFTYPE_OCB'
not handled in switch) during compilation. Full functionality
(where needed) is added in the following patch.

Signed-off-by: Rostislav Lisovy <rostislav.lisovy@fel.cvut.cz>
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
10 years agomac80211: add support for driver tx power reporting
Felix Fietkau [Sat, 25 Oct 2014 22:32:53 +0000 (00:32 +0200)]
mac80211: add support for driver tx power reporting

The configured tx power is often limited by hardware capabilities,
channel settings, antenna configuration, etc.

Signed-off-by: Felix Fietkau <nbd@openwrt.org>
[fix tracing compilation]
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
10 years agoieee80211: add "max length of AMPDU" enum for VHT
Eran Harary [Mon, 3 Nov 2014 18:06:47 +0000 (20:06 +0200)]
ieee80211: add "max length of AMPDU" enum for VHT

Maximum length of AMPDU that an STA can receive in VHT.
length = 2 ^ (13 + max_ampdu_length_exp) - 1.

Signed-off-by: Eran Harary <eran.harary@intel.com>
Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
10 years agomwifiex: add cfg80211 dump_survey handler
Xinming Hu [Fri, 31 Oct 2014 10:38:27 +0000 (16:08 +0530)]
mwifiex: add cfg80211 dump_survey handler

This patch add cfg80211 dump_survey handler for mwifiex.
This handler will be called to report channel statistics
to cfg80211.

This in turn adds ACS support for mwifiex AP.

Signed-off-by: Xinming Hu <huxm@marvell.com>
Signed-off-by: Avinash Patil <patila@marvell.com>
Signed-off-by: Cathy Luo <cluo@marvell.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
10 years agomwifiex: channel statistics support for mwifiex
Avinash Patil [Fri, 31 Oct 2014 10:38:26 +0000 (16:08 +0530)]
mwifiex: channel statistics support for mwifiex

This patch adds support to record channel statistics during
scan. With extended scan, scan results are returned as events from
FW while channel statistics are part of scan command response.
We store these channel statistics in adapter.

Signed-off-by: Avinash Patil <patila@marvell.com>
Signed-off-by: Xinmin Hu <huxm@marvell.com>
Signed-off-by: Cathy Luo <cluo@marvell.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
10 years agoMerge branch 'for-upstream' of git://git.kernel.org/pub/scm/linux/kernel/git/bluetoot...
John W. Linville [Fri, 31 Oct 2014 20:05:31 +0000 (16:05 -0400)]
Merge branch 'for-upstream' of git://git./linux/kernel/git/bluetooth/bluetooth-next

10 years agoBluetooth: HCI H5 peer reset detection
Loic Poulain [Wed, 8 Oct 2014 14:54:28 +0000 (16:54 +0200)]
Bluetooth: HCI H5 peer reset detection

H5 Specification says:
If a SYNC message is received while in the Active State, it is
assumed that the peer device has reset. The local device should
therefore perform a full reset of the upper stack, and start Link
Establishment again at the Uninitialized State. Upon entering the
Active State, the first packet sent shall have its SEQ and ACK
numbers set to zero.

This patch resets the HCI H5 driver data/state to unitialized and
reports an HCI hardware error event to notify the upper stack that
HCI synchronization has been lost. H5 will be re-synchronized and
upper stack should generate an HCI Reset command.

Signed-off-by: Loic Poulain <loic.poulain@intel.com>
Signed-off-by: Johan Hedberg <johan.hedberg@intel.com>
10 years agocfg80211: avoid using default in interface type switch
Johannes Berg [Fri, 31 Oct 2014 13:16:12 +0000 (14:16 +0100)]
cfg80211: avoid using default in interface type switch

Most code avoids having a default case in interface type switch
statements already, to make it easier to find places that need
to be extended. Change the code in the __cfg80211_leave() and
nl80211_key_allowed() functions to not have a default case.

Signed-off-by: Johannes Berg <johannes.berg@intel.com>
10 years agomac80211-hwsim: Provide multicast event for HWSIM_CMD_DEL_RADIO
Jukka Rissanen [Fri, 31 Oct 2014 12:48:48 +0000 (14:48 +0200)]
mac80211-hwsim: Provide multicast event for HWSIM_CMD_DEL_RADIO

When deleting old radio via HWSIM_CMD_DEL_RADIO then listeners on the
multicast group "config" are informed.

Signed-off-by: Jukka Rissanen <jukka.rissanen@linux.intel.com>
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
10 years agomac80211-hwsim: Provide multicast event for HWSIM_CMD_NEW_RADIO
Jukka Rissanen [Fri, 31 Oct 2014 12:48:47 +0000 (14:48 +0200)]
mac80211-hwsim: Provide multicast event for HWSIM_CMD_NEW_RADIO

When adding new radio via HWSIM_CMD_NEW_RADIO then listeners on the
multicast group "config" are informed.

While at it, refactor the configuration parameters to be able to
pass them directly and have fewer function arguments.

Signed-off-by: Jukka Rissanen <jukka.rissanen@linux.intel.com>
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
10 years agomac80211-hwsim: add missing policy entries
Johannes Berg [Fri, 31 Oct 2014 08:25:43 +0000 (09:25 +0100)]
mac80211-hwsim: add missing policy entries

A few recent additions to the netlink attributes neglected
to add policy entries, fix that now.

Reported-by: Jukka Rissanen <jukka.rissanen@linux.intel.com>
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
10 years agomac80211: fix spelling errors
Stephen Hemminger [Thu, 30 Oct 2014 05:55:58 +0000 (22:55 -0700)]
mac80211: fix spelling errors

Use codespell to find spelling errors.

Signed-off-by: Stephen Hemminger <stephen@networkplumber.org>
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
10 years agortlwifi: rtl8821ae: Remove extra semicolons
Larry Finger [Thu, 30 Oct 2014 04:17:12 +0000 (23:17 -0500)]
rtlwifi: rtl8821ae: Remove extra semicolons

The kbuild test robot reports that there are extra semicolons in this
driver. All of them are caused by using "};" rather than "}" at the
end of a switch statement. This patch does not change any functionality.

Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net>
Cc: Murilo Opsfelder Araujo <mopsfelder@gmail.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
10 years agobrcmsmac: expose 802.11 core statistics in debugfs
Arend van Spriel [Wed, 29 Oct 2014 15:02:51 +0000 (16:02 +0100)]
brcmsmac: expose 802.11 core statistics in debugfs

The 802.11 statistics obtained from the device can be retrieved
dumping the 'macstat' file in debugfs folder.

Reviewed-by: Hante Meuleman <meuleman@broadcom.com>
Reviewed-by: Pieter-Paul Giesberts <pieterpg@broadcom.com>
Signed-off-by: Arend van Spriel <arend@broadcom.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
10 years agobrcmsmac: fix statistic counter update function
Arend van Spriel [Wed, 29 Oct 2014 15:02:50 +0000 (16:02 +0100)]
brcmsmac: fix statistic counter update function

The 802.11 core statistics are retrieved from the core registers
but not stored. So the debug code was never triggered to give a
warning message on tx underruns or rx overflows. This patch fixes
this and assures the statistics are stored in the snapshot.

Reviewed-by: Hante Meuleman <meuleman@broadcom.com>
Reviewed-by: Pieter-Paul Giesberts <pieterpg@broadcom.com>
Signed-off-by: Arend van Spriel <arend@broadcom.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
10 years agocarl9170: Convert byte_rev_table uses to bitrev8
Joe Perches [Tue, 28 Oct 2014 21:18:58 +0000 (14:18 -0700)]
carl9170: Convert byte_rev_table uses to bitrev8

Use the inline function instead of directly indexing the array.

This allows some architectures with hardware instructions
for bit reversals to eliminate the array.

Signed-off-by: Joe Perches <joe@perches.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
10 years agowil6210: Add support for large packets
Vladimir Kondratiev [Tue, 28 Oct 2014 14:51:27 +0000 (16:51 +0200)]
wil6210: Add support for large packets

It is possible to configure driver using mtu_max module parameter
by setting it to value in range of 68..7920 inclusive.
This is sub-optimal performance-wise in case packet is larger than 1 page.
mtu_max default value is 2228.

Signed-off-by: Vladimir Kondratiev <qca_vkondrat@qca.qualcomm.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
10 years agowil6210: improve dmesg for fw error handling
Vladimir Kondratiev [Tue, 28 Oct 2014 14:50:09 +0000 (16:50 +0200)]
wil6210: improve dmesg for fw error handling

In case of FW error, make it clear (in dmesg) what branch is taken
in the error recovery code.

Signed-off-by: Vladimir Kondratiev <qca_vkondrat@qca.qualcomm.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
10 years agowil6210: prevent double disconnect command issuing
Vladimir Kondratiev [Tue, 28 Oct 2014 14:50:08 +0000 (16:50 +0200)]
wil6210: prevent double disconnect command issuing

Disconnect flow may be invoked either from upper layer request,
or from event reported by the firmware.

In case of firmware event, driver need to release resources for the station but
not send another disconnect WMI command.

In case of upper layer request, WMI_DISCONNECT_STA_CMDID command need to
be issued for the firmware to perform disconnect on the MAC layer. Eventually,
event is expected to confirm MAC disconnect, but it is better to not wait for
firmware event and release station resources immediately. FW may fail to
report disconnect for various reasons, so one could not rely on event always reported.

Introduce parameter to distinguish 2 cases above to prevent double WMI command
issuing.

Signed-off-by: Vladimir Kondratiev <qca_vkondrat@qca.qualcomm.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
10 years agowil6210: reset flow updates
Vladimir Kondratiev [Tue, 28 Oct 2014 14:50:07 +0000 (16:50 +0200)]
wil6210: reset flow updates

As communicated with the firmware & hardware teams

Signed-off-by: Vladimir Kondratiev <qca_vkondrat@qca.qualcomm.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
10 years agowil6210: do not attempt FW recovery if interface is down
Vladimir Kondratiev [Tue, 28 Oct 2014 14:50:06 +0000 (16:50 +0200)]
wil6210: do not attempt FW recovery if interface is down

When interface is down, recovery flow should not be attempted.
Next ndo_open() will trigger target reset, that is FW recovery.

Doing recovery while interface is down cause internal "up", leaving
internal driver state in conflict with network stack. Then, when network
stack will call ndo_open(), kernel oops will be triggered.

Signed-off-by: Vladimir Kondratiev <qca_vkondrat@qca.qualcomm.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
10 years agobrcmfmac: (clean) Move sdio related function.
Hante Meuleman [Tue, 28 Oct 2014 13:56:19 +0000 (14:56 +0100)]
brcmfmac: (clean) Move sdio related function.

prec_enq is a sdio specific function. Move it to sdio.c.

Reviewed-by: Arend Van Spriel <arend@broadcom.com>
Reviewed-by: Pieter-Paul Giesberts <pieterpg@broadcom.com>
Signed-off-by: Hante Meuleman <meuleman@broadcom.com>
Signed-off-by: Arend van Spriel <arend@broadcom.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
10 years agobrcmfmac: (clean) Rename sdio related files.
Hante Meuleman [Tue, 28 Oct 2014 13:56:18 +0000 (14:56 +0100)]
brcmfmac: (clean) Rename sdio related files.

Rename sdio_host.h to sdio.h and dhd_sdio.c to sdio.c.

Reviewed-by: Arend Van Spriel <arend@broadcom.com>
Reviewed-by: Pieter-Paul Giesberts <pieterpg@broadcom.com>
Signed-off-by: Hante Meuleman <meuleman@broadcom.com>
Signed-off-by: Arend van Spriel <arend@broadcom.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
10 years agobrcmfmac: (clean) Rename sdio related files.
Hante Meuleman [Tue, 28 Oct 2014 13:56:17 +0000 (14:56 +0100)]
brcmfmac: (clean) Rename sdio related files.

Rename sdio_host.h to sdio.h and dhd_sdio.c to sdio.c.

Reviewed-by: Arend Van Spriel <arend@broadcom.com>
Reviewed-by: Pieter-Paul Giesberts <pieterpg@broadcom.com>
Signed-off-by: Hante Meuleman <meuleman@broadcom.com>
Signed-off-by: Arend van Spriel <arend@broadcom.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
10 years agobrcmfmac: (clean) Rename files wl_cfg80211 to cfg80211
Hante Meuleman [Tue, 28 Oct 2014 13:56:16 +0000 (14:56 +0100)]
brcmfmac: (clean) Rename files wl_cfg80211 to cfg80211

Reviewed-by: Arend Van Spriel <arend@broadcom.com>
Reviewed-by: Pieter-Paul Giesberts <pieterpg@broadcom.com>
Signed-off-by: Hante Meuleman <meuleman@broadcom.com>
Signed-off-by: Arend van Spriel <arend@broadcom.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
10 years agobrcmfmac: (clean) Rename dhd_common.c in common.c
Hante Meuleman [Tue, 28 Oct 2014 13:56:15 +0000 (14:56 +0100)]
brcmfmac: (clean) Rename dhd_common.c in common.c

Reviewed-by: Arend Van Spriel <arend@broadcom.com>
Reviewed-by: Pieter-Paul Giesberts <pieterpg@broadcom.com>
Signed-off-by: Hante Meuleman <meuleman@broadcom.com>
Signed-off-by: Arend van Spriel <arend@broadcom.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
10 years agobrcmfmac: (clean) Rename dhd_bus.h in bus.h
Hante Meuleman [Tue, 28 Oct 2014 13:56:14 +0000 (14:56 +0100)]
brcmfmac: (clean) Rename dhd_bus.h in bus.h

Reviewed-by: Arend Van Spriel <arend@broadcom.com>
Reviewed-by: Pieter-Paul Giesberts <pieterpg@broadcom.com>
Signed-off-by: Hante Meuleman <meuleman@broadcom.com>
Signed-off-by: Arend van Spriel <arend@broadcom.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
10 years agobrcmfmac: (clean) Rename files dhd_dbg to debug
Hante Meuleman [Tue, 28 Oct 2014 13:56:13 +0000 (14:56 +0100)]
brcmfmac: (clean) Rename files dhd_dbg to debug

Reviewed-by: Arend Van Spriel <arend@broadcom.com>
Reviewed-by: Pieter-Paul Giesberts <pieterpg@broadcom.com>
Signed-off-by: Hante Meuleman <meuleman@broadcom.com>
Signed-off-by: Arend van Spriel <arend@broadcom.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
10 years agobrcmfmac: (clean) Move tracepoint related function.
Hante Meuleman [Tue, 28 Oct 2014 13:56:12 +0000 (14:56 +0100)]
brcmfmac: (clean) Move tracepoint related function.

__brcmf_err is a tracepoint specific function. Move it to
tracepoint.c.

Reviewed-by: Arend Van Spriel <arend@broadcom.com>
Reviewed-by: Pieter-Paul Giesberts <pieterpg@broadcom.com>
Signed-off-by: Hante Meuleman <meuleman@broadcom.com>
Signed-off-by: Arend van Spriel <arend@broadcom.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
10 years agobrcmfmac: (clean) Remove packet filter configuration.
Hante Meuleman [Tue, 28 Oct 2014 13:56:11 +0000 (14:56 +0100)]
brcmfmac: (clean) Remove packet filter configuration.

Packet filters got configured but never used.

Reviewed-by: Franky Lin <frankyl@broadcom.com>
Reviewed-by: Arend Van Spriel <arend@broadcom.com>
Reviewed-by: Pieter-Paul Giesberts <pieterpg@broadcom.com>
Signed-off-by: Hante Meuleman <meuleman@broadcom.com>
Signed-off-by: Arend van Spriel <arend@broadcom.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
10 years agobrcmfmac: (clean) Remove usb_rdl.h as it is not needed.
Hante Meuleman [Tue, 28 Oct 2014 13:56:10 +0000 (14:56 +0100)]
brcmfmac: (clean) Remove usb_rdl.h as it is not needed.

Reviewed-by: Arend Van Spriel <arend@broadcom.com>
Reviewed-by: Franky (Zhenhui) Lin <frankyl@broadcom.com>
Reviewed-by: Pieter-Paul Giesberts <pieterpg@broadcom.com>
Reviewed-by: Daniel (Deognyoun) Kim <dekim@broadcom.com>
Signed-off-by: Hante Meuleman <meuleman@broadcom.com>
Signed-off-by: Arend van Spriel <arend@broadcom.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
10 years agobrcmfmac: do not use firmware error code in driver
Arend van Spriel [Tue, 28 Oct 2014 13:56:09 +0000 (14:56 +0100)]
brcmfmac: do not use firmware error code in driver

Passing the firmware error codes up the driver may be mapped to
linux error numbers which may impact proper fault analysis. So
better pass up a generic failure code, ie. -EBADE and only show
firmware error code in FIL debug message.

Reviewed-by: Franky (Zhenhui) Lin <frankyl@broadcom.com>
Reviewed-by: Hante Meuleman <meuleman@broadcom.com>
Reviewed-by: Daniel (Deognyoun) Kim <dekim@broadcom.com>
Reviewed-by: Pieter-Paul Giesberts <pieterpg@broadcom.com>
Signed-off-by: Arend van Spriel <arend@broadcom.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
10 years agobrcmfmac: remove unused defintion
Arend van Spriel [Tue, 28 Oct 2014 13:56:08 +0000 (14:56 +0100)]
brcmfmac: remove unused defintion

The define EBRCMF_UNSUPPORTED is not used in the source file so this
patch removes it.

Reviewed-by: Franky (Zhenhui) Lin <frankyl@broadcom.com>
Reviewed-by: Hante Meuleman <meuleman@broadcom.com>
Reviewed-by: Daniel (Deognyoun) Kim <dekim@broadcom.com>
Reviewed-by: Pieter-Paul Giesberts <pieterpg@broadcom.com>
Signed-off-by: Arend van Spriel <arend@broadcom.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
10 years agobrcmfmac: show firmware error as string in debug message
Arend van Spriel [Tue, 28 Oct 2014 13:56:07 +0000 (14:56 +0100)]
brcmfmac: show firmware error as string in debug message

Showing the firmware error allows to quickly give a clue what
went wrong and directly look in the firmware code that gave us
back the error.

Reviewed-by: Franky (Zhenhui) Lin <frankyl@broadcom.com>
Reviewed-by: Hante Meuleman <meuleman@broadcom.com>
Reviewed-by: Daniel (Deognyoun) Kim <dekim@broadcom.com>
Reviewed-by: Pieter-Paul Giesberts <pieterpg@broadcom.com>
Signed-off-by: Arend van Spriel <arend@broadcom.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
10 years agobrcmfmac: Add wowl patterns support.
Hante Meuleman [Tue, 28 Oct 2014 13:56:06 +0000 (14:56 +0100)]
brcmfmac: Add wowl patterns support.

Reviewed-by: Arend Van Spriel <arend@broadcom.com>
Reviewed-by: Franky (Zhenhui) Lin <frankyl@broadcom.com>
Reviewed-by: Pieter-Paul Giesberts <pieterpg@broadcom.com>
Reviewed-by: Daniel (Deognyoun) Kim <dekim@broadcom.com>
Signed-off-by: Hante Meuleman <meuleman@broadcom.com>
Signed-off-by: Arend van Spriel <arend@broadcom.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
10 years agobrcmfmac: Add wowl support for SDIO devices.
Hante Meuleman [Tue, 28 Oct 2014 13:56:05 +0000 (14:56 +0100)]
brcmfmac: Add wowl support for SDIO devices.

This patch adds wowl support for SDIO bus devices. This feature
requires FW which has support for wowl built in.

Reviewed-by: Arend Van Spriel <arend@broadcom.com>
Reviewed-by: Franky (Zhenhui) Lin <frankyl@broadcom.com>
Reviewed-by: Pieter-Paul Giesberts <pieterpg@broadcom.com>
Signed-off-by: Hante Meuleman <meuleman@broadcom.com>
Signed-off-by: Arend van Spriel <arend@broadcom.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
10 years agobrcmfmac: Add wowl support for USB devices.
Hante Meuleman [Tue, 28 Oct 2014 13:56:04 +0000 (14:56 +0100)]
brcmfmac: Add wowl support for USB devices.

This patch adds wowl support for USB bus devices. This feature
requires FW which has support for wowl built in.

Reviewed-by: Arend Van Spriel <arend@broadcom.com>
Reviewed-by: Franky (Zhenhui) Lin <frankyl@broadcom.com>
Reviewed-by: Pieter-Paul Giesberts <pieterpg@broadcom.com>
Reviewed-by: Daniel (Deognyoun) Kim <dekim@broadcom.com>
Signed-off-by: Hante Meuleman <meuleman@broadcom.com>
Signed-off-by: Arend van Spriel <arend@broadcom.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
10 years agoath9k: set pulse_rssi threshold to 15
Lorenzo Bianconi [Tue, 28 Oct 2014 11:37:16 +0000 (12:37 +0100)]
ath9k: set pulse_rssi threshold to 15

Reduce pulse_rssi threshold to 15 in order to improve radar pattern detection
probability on ext channel

Signed-off-by: Lorenzo Bianconi <lorenzo.bianconi83@gmail.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
10 years agoMerge tag 'iwlwifi-next-for-john-2014-10-29' of git://git.kernel.org/pub/scm/linux...
John W. Linville [Thu, 30 Oct 2014 19:22:06 +0000 (15:22 -0400)]
Merge tag 'iwlwifi-next-for-john-2014-10-29' of git://git./linux/kernel/git/iwlwifi/iwlwifi-next

Emmanuel Grumbach <egrumbach@gmail.com> says:

"The big new thing here is netdetect which allows the
firmware to wake up the platform when a specific network
is detected. Along with that I have fixes for d3 operation.
The usual amount of rate scaling stuff - we now support STBC.
The other commit that stands out is Johannes's work on
devcoredump. He basically starts to use the standard
infrastructure he built."

Signed-off-by: John W. Linville <linville@tuxdriver.com>
10 years agoBluetooth: Clear LE white list when resetting controller
Marcel Holtmann [Wed, 29 Oct 2014 22:37:53 +0000 (23:37 +0100)]
Bluetooth: Clear LE white list when resetting controller

The internal representation of the LE white list needs to be cleared
when receiving a successful HCI_Reset command. A reset of the controller
is expected to start with an empty LE white list.

When the LE white list is not cleared on controller reset, the passive
background scanning might skip programming the remote devices. Only
changes to the LE white list are programmed when passive background
is started.

Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
Signed-off-by: Johan Hedberg <johan.hedberg@intel.com>
Cc: stable@vger.kernel.org # 3.17.x
10 years agoBluetooth: 6lowpan: use after free in disconnect_devices()
Dan Carpenter [Wed, 29 Oct 2014 16:10:57 +0000 (19:10 +0300)]
Bluetooth: 6lowpan: use after free in disconnect_devices()

This was accidentally changed from list_for_each_entry_safe() to
list_for_each_entry() so now it has a use after free bug.  I've changed
it back.

Fixes: 90305829635d ('Bluetooth: 6lowpan: Converting rwlocks to use RCU')
Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>
Acked-by: Jukka Rissanen <jukka.rissanen@linux.intel.com>
Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
10 years agomac802154: add basic support for monitor
Alexander Aring [Wed, 29 Oct 2014 20:34:44 +0000 (21:34 +0100)]
mac802154: add basic support for monitor

This patch adds basic support for monitor mode. Also change the open
call that we set the transceiver mac setting on an interface up. Futher
patches will add a better handling while interface up an interface.

Signed-off-by: Alexander Aring <alex.aring@gmail.com>
Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
10 years agoat86rf230: deliver with checksum
Alexander Aring [Wed, 29 Oct 2014 20:34:43 +0000 (21:34 +0100)]
at86rf230: deliver with checksum

This patch indicates that the at86rf230 driver deliver with checksum
instead drop the crc before delivering.

Signed-off-by: Alexander Aring <alex.aring@gmail.com>
Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
10 years agomac802154: rx: add error handling after skb_clone
Alexander Aring [Wed, 29 Oct 2014 20:34:42 +0000 (21:34 +0100)]
mac802154: rx: add error handling after skb_clone

This patch adds error handling after skb_clone and deliver only if
skb_clone was successful.

Signed-off-by: Alexander Aring <alex.aring@gmail.com>
Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
10 years agomac802154: rx: monitor receive cleanup
Alexander Aring [Wed, 29 Oct 2014 20:34:41 +0000 (21:34 +0100)]
mac802154: rx: monitor receive cleanup

This patch replace the !netif_running(sdata->dev) instead we doing a
!ieee802154_sdata_running(sdata). Also move this in two separate if
branches to compare with mac80211 code.

Signed-off-by: Alexander Aring <alex.aring@gmail.com>
Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
10 years agomac802154: rx: add rx stats incrementation
Alexander Aring [Wed, 29 Oct 2014 20:34:40 +0000 (21:34 +0100)]
mac802154: rx: add rx stats incrementation

This patch adds rx stats incrementation when the monitor interface
recevied a frame.

Signed-off-by: Alexander Aring <alex.aring@gmail.com>
Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
10 years agomac802154: rx: use netif_receive_skb
Alexander Aring [Wed, 29 Oct 2014 20:34:39 +0000 (21:34 +0100)]
mac802154: rx: use netif_receive_skb

This patch removes netif_rx_ni call. Instead we call netif_receive_skb,
we can do that since commit c5c47e67bcd24638a059b1b5e9ec18c95f8634ca
("mac802154: rx: use tasklet instead workqueue").

Signed-off-by: Alexander Aring <alex.aring@gmail.com>
Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
10 years agomac802154: rx: remove override pkt_type set to PACKET_HOST
Alexander Aring [Wed, 29 Oct 2014 20:34:38 +0000 (21:34 +0100)]
mac802154: rx: remove override pkt_type set to PACKET_HOST

This patch removes pkt_type set to PACKET_HOST while monitor receiving.
This should be PACKET_OTHERHOST on monitor mode which already set
before.

Signed-off-by: Alexander Aring <alex.aring@gmail.com>
Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
10 years agomac802154: rx: add software checksum filtering check
Alexander Aring [Wed, 29 Oct 2014 20:34:37 +0000 (21:34 +0100)]
mac802154: rx: add software checksum filtering check

This patch adds a new hardware flag which indicate that the transceiver
doesn't support check for bad checksum via hardware. Also add a handling of
this while receive.

Signed-off-by: Alexander Aring <alex.aring@gmail.com>
Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
10 years agomac802154: rx: simplify crc receive handling
Alexander Aring [Wed, 29 Oct 2014 20:34:36 +0000 (21:34 +0100)]
mac802154: rx: simplify crc receive handling

This patch change the actual crc handling while receive. Currently the
IEEE802154_HW_RX_OMIT_CKSUM flag is used to filter a frame with a bad crc.
This patch changes the behaviour of IEEE802154_HW_RX_OMIT_CKSUM to add a
crc while receiving for the monitor interface. After monitor receiving
we remove the crc for frame parsing. This affect the driver layer
because all drivers sets IEEE802154_HW_RX_OMIT_CKSUM and deliver without
checksum.

Signed-off-by: Alexander Aring <alex.aring@gmail.com>
Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
10 years agomac802154: rx: remove unnecessary parameter
Alexander Aring [Wed, 29 Oct 2014 20:34:35 +0000 (21:34 +0100)]
mac802154: rx: remove unnecessary parameter

This patch removes a not used parameter in ieee802154_deliver_skb.

Signed-off-by: Alexander Aring <alex.aring@gmail.com>
Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
10 years agomac802154: separate omit tx/rx flags
Alexander Aring [Wed, 29 Oct 2014 20:34:34 +0000 (21:34 +0100)]
mac802154: separate omit tx/rx flags

This patch splits the IEEE802154_HW_OMIT_CKSUM hardware flag into
IEEE802154_HW_TX_OMIT_CKSUM and IEEE802154_HW_RX_OMIT_CKSUM. This is
useful to deliver the received crc from the driver layer to the monitor
interface. At the moment we can't do that without change the xmit
handling.

The received checksum should be visible in monitor mode only.

Signed-off-by: Alexander Aring <alex.aring@gmail.com>
Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
10 years agoat86rf230: add support for promiscuous mode
Alexander Aring [Wed, 29 Oct 2014 20:34:33 +0000 (21:34 +0100)]
at86rf230: add support for promiscuous mode

This patch adds support for promiscuous mode setting for the at86rf230
driver.

Signed-off-by: Alexander Aring <alex.aring@gmail.com>
Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
10 years agomac802154: add support for promiscuous mode
Alexander Aring [Wed, 29 Oct 2014 20:34:32 +0000 (21:34 +0100)]
mac802154: add support for promiscuous mode

This patch adds a new driver operation to bring the transceiver into
promiscuous mode.

Signed-off-by: Alexander Aring <alex.aring@gmail.com>
Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
10 years agomac802154: add hardware address filter flag
Alexander Aring [Wed, 29 Oct 2014 20:34:31 +0000 (21:34 +0100)]
mac802154: add hardware address filter flag

Overdue introduction for address filtering hardware flag. Furthermore we
will check and set address filtering on interface up. This patch
prepares that we can check if an transceiver supports address filtering
option. Currently all mainline driver supports hardware address filtering.

Signed-off-by: Alexander Aring <alex.aring@gmail.com>
Cc: Alan Ott <alan@signal11.us>
Cc: Varka Bhadram <varkabhadram@gmail.com>
Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
10 years agomac802154: add IEEE802154_HW_ARET hw flag
Alexander Aring [Wed, 29 Oct 2014 20:34:30 +0000 (21:34 +0100)]
mac802154: add IEEE802154_HW_ARET hw flag

This patch adds a new IEEE802154_HW_ARET hardware flag for indicating
that the transceiver supports ARET handling. Also remove the
IEEE802154_HW_FRAME_RETRIES from IEEE802154_HW_CSMA flag. Frame retries
handling is part of ARET.

Signed-off-by: Alexander Aring <alex.aring@gmail.com>
Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
10 years agomac802154: remove tab after define
Alexander Aring [Wed, 29 Oct 2014 20:34:29 +0000 (21:34 +0100)]
mac802154: remove tab after define

This patch removes tabs after define in hardware flags declarations.

Signed-off-by: Alexander Aring <alex.aring@gmail.com>
Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
10 years agomac802154: main: remove unnecessary include
Alexander Aring [Wed, 29 Oct 2014 20:34:28 +0000 (21:34 +0100)]
mac802154: main: remove unnecessary include

This patch removes an unnecessary include of driver-ops header file.

Signed-off-by: Alexander Aring <alex.aring@gmail.com>
Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
10 years agomac80211-hwsim: remove spurious newline
Johannes Berg [Wed, 29 Oct 2014 17:43:39 +0000 (18:43 +0100)]
mac80211-hwsim: remove spurious newline

This newline shouldn't be there, remove it.

Signed-off-by: Johannes Berg <johannes.berg@intel.com>
10 years agomac80211-hwsim: support SGI-20
Ben Greear [Fri, 24 Oct 2014 18:12:08 +0000 (11:12 -0700)]
mac80211-hwsim: support SGI-20

This lets hostapd start if you have SGI-20 configured
as one of your HT capabilities.

Signed-off-by: Ben Greear <greearb@candelatech.com>
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
10 years agocfg80211: fix integer signedness in chandef_primary_freqs()
Johannes Berg [Wed, 29 Oct 2014 16:05:39 +0000 (17:05 +0100)]
cfg80211: fix integer signedness in chandef_primary_freqs()

The helper function can't ever create negative values, so use
u32 pointers as the function arguments as the caller does.

Signed-off-by: Johannes Berg <johannes.berg@intel.com>
10 years agocfg80211: fix set but not used warning in nl80211_channel_switch()
Fabian Frederick [Sat, 25 Oct 2014 15:57:35 +0000 (17:57 +0200)]
cfg80211: fix set but not used warning in nl80211_channel_switch()

radar_detect_width is unused since commit 97dc94f1d933
("cfg80211: remove channel_switch combination check")

Signed-off-by: Fabian Frederick <fabf@skynet.be>
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
10 years agomac80211-hwsim: add frequency attribute to netlink pkts
Ben Greear [Mon, 27 Oct 2014 22:04:46 +0000 (15:04 -0700)]
mac80211-hwsim: add frequency attribute to netlink pkts

Add frequency attribute when sending to user-space over
netlink socket.  The frequency is currently ignored when
receiving from user-space.

Signed-off-by: Ben Greear <greearb@candelatech.com>
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
10 years agoMAINTAINERS: add cc2520 driver maintainer
Varka Bhadram [Wed, 29 Oct 2014 10:45:22 +0000 (16:15 +0530)]
MAINTAINERS: add cc2520 driver maintainer

This patch adds maintainer for cc2520 radio driver

Signed-off-by: Varka Bhadram <varkab@cdac.in>
Acked-by: Alexander Aring <alex.aring@gmail.com>
Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
10 years agomac80211-hwsim: Rename CREATE and DESTROY radio to NEW and DEL radio
Jukka Rissanen [Mon, 27 Oct 2014 10:44:46 +0000 (12:44 +0200)]
mac80211-hwsim: Rename CREATE and DESTROY radio to NEW and DEL radio

Using the name HWSIM_CMD_NEW_RADIO and HWSIM_CMD_DEL_RADIO is more
fitting on how other pieces of the wireless system work.

Signed-off-by: Jukka Rissanen <jukka.rissanen@linux.intel.com>
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
10 years agoBluetooth: Wrong style spin lock used
Jukka Rissanen [Wed, 29 Oct 2014 08:16:00 +0000 (10:16 +0200)]
Bluetooth: Wrong style spin lock used

Use spin_lock_bh() as the code is called from softirq in networking subsystem.
This is needed to prevent deadlocks when 6lowpan link is in use.

Signed-off-by: Jukka Rissanen <jukka.rissanen@linux.intel.com>
Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
10 years agoiwlwifi: mvm: unref SCAN ref on scan completion
Eliad Peller [Sun, 22 Jun 2014 11:44:44 +0000 (14:44 +0300)]
iwlwifi: mvm: unref SCAN ref on scan completion

The scan reference wasn't released in case of offloaded scan,
causing the refcount to go wrong and prevent the device
from going into d0i3.

Signed-off-by: Eliad Peller <eliadx.peller@intel.com>
Reviewed-by: Johannes Berg <johannes.berg@intel.com>
Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
10 years agoiwlwifi: mvm: rs: add Tx STBC support
Eyal Shapira [Thu, 23 Oct 2014 10:58:38 +0000 (13:58 +0300)]
iwlwifi: mvm: rs: add Tx STBC support

STBC is enabled on HT/VHT SISO rates in case we don't care
about power consumption and it won't hurt BT.
This is done only in case the peer and our chip support STBC
of course.
While at it fixed a bug which was causing bw and ldpc
flags to be set incorrectly in the rate scale table in case
we are switching to a legacy Tx column. This had no real impact.

Signed-off-by: Eyal Shapira <eyalx.shapira@intel.com>
Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
10 years agoiwlwifi: mvm: fix scan condition iterator
David Spinadel [Sun, 26 Oct 2014 13:53:27 +0000 (15:53 +0200)]
iwlwifi: mvm: fix scan condition iterator

Scan condition iterator assumes that an interface is associated if
phy_ctxt is assigned, but this isn't the sutuation in P2P device.
OTOH P2P device is never associated so we can simply ignore it.

Signed-off-by: David Spinadel <david.spinadel@intel.com>
Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
10 years agoiwlwifi: mvm: port to devcoredump framework
Johannes Berg [Thu, 9 Oct 2014 15:01:36 +0000 (17:01 +0200)]
iwlwifi: mvm: port to devcoredump framework

iwlwifi features a debug mechanism that allows to dump
binary data which is helpful to debug the firmware.
Until now, this data was made available for the userspace
through debugfs. For this exact purpose, devcoredump was
created. Move to the new infrastructure.

Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
10 years agoiwlwifi: enable STBC support for 8000 chips
Eyal Shapira [Thu, 23 Oct 2014 12:30:47 +0000 (15:30 +0300)]
iwlwifi: enable STBC support for 8000 chips

These chips support STBC in both Tx and Rx.
Given that we've added STBC Tx support enable it.

Signed-off-by: Eyal Shapira <eyalx.shapira@intel.com>
Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
10 years agoiwlwifi: dvm: Fix probable mask then right shift defect
Joe Perches [Mon, 27 Oct 2014 05:25:03 +0000 (22:25 -0700)]
iwlwifi: dvm: Fix probable mask then right shift defect

Precedence of & and >> is not the same and is not left to right.
shift has higher precedence and should be done after the mask.

Add parentheses around the mask.

Signed-off-by: Joe Perches <joe@perches.com>
Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
10 years agoiwlwifi: mvm: remove unnecessary includes in tt.c
Luciano Coelho [Fri, 10 Oct 2014 07:03:02 +0000 (10:03 +0300)]
iwlwifi: mvm: remove unnecessary includes in tt.c

We used to need to include some headers in order to read the registers
and do all the calculations by ourselves, but this is not done anymore
(i.e. we let the firmware do this for us), so we don't need to include
those headers anymore.

Signed-off-by: Luciano Coelho <luciano.coelho@intel.com>
Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
10 years agoiwlwifi: mvm: flush queues without mutex held
Johannes Berg [Fri, 10 Oct 2014 06:59:27 +0000 (08:59 +0200)]
iwlwifi: mvm: flush queues without mutex held

For WMM-AC we may have to be changing QoS parameters while the
queues are being flushed. This is not relevant in the "drop"
case, but matters when we wait for the device to finish the
transmissions.

To allow this, do the actual waiting without holding the mutex.

Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
10 years agoiwlwifi: mvm: improve MCS rate warning
Johannes Berg [Wed, 8 Oct 2014 07:57:29 +0000 (09:57 +0200)]
iwlwifi: mvm: improve MCS rate warning

The warning gives no information about the frame, and presents
the flags so that one might think they're the frame. Clarify
and add more information.

Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
10 years agoiwlwifi: mvm: BT Coex - make the multiprio lut a constant
Emmanuel Grumbach [Sun, 19 Oct 2014 11:18:14 +0000 (14:18 +0300)]
iwlwifi: mvm: BT Coex - make the multiprio lut a constant

This makes it easier to tune the values during the testing.

Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
10 years agoiwlwifi: mvm: remove mvm argument from get_queues_mask
Arik Nemtsov [Sun, 21 Sep 2014 16:00:42 +0000 (19:00 +0300)]
iwlwifi: mvm: remove mvm argument from get_queues_mask

It is unused and won't be available in some future invocations of the
function.

Signed-off-by: Arik Nemtsov <arikx.nemtsov@intel.com>
Reviewed-by: Johannes Berg <johannes.berg@intel.com>
Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
10 years agoiwlwifi: mvm: add MVM_FW_BCAST_FILTER_PASS_ALL option
Max Stepanov [Wed, 15 Oct 2014 08:27:16 +0000 (11:27 +0300)]
iwlwifi: mvm: add MVM_FW_BCAST_FILTER_PASS_ALL option

The MVM_FW_BCAST_FILTER_PASS_ALL option defined in iwl-dbg-cfg.ini
configuration file allows to enable/disable FW broadcast filtering.

If MVM_FW_BCAST_FILTER_PASS_ALL is not defined in iwl-dbg-cfg.ini or
its value is 0, the mvm broadcast filtering is enabled.

Setting MVM_FW_BCAST_FILTER_PASS_ALL=1 in iwl-dbg-cfg.ini blocks sending
of BCAST_FILTER_CMD to FW.

Signed-off-by: Max Stepanov <Max.Stepanov@intel.com>
Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
10 years agoiwlwifi: mvm: BT Coex - move BT_ANTENNA_COUPLING_THRESHOLD to constants
Emmanuel Grumbach [Tue, 7 Oct 2014 11:44:18 +0000 (14:44 +0300)]
iwlwifi: mvm: BT Coex - move BT_ANTENNA_COUPLING_THRESHOLD to constants

This is were it really needs to be.

Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
10 years agoiwlwifi: always run the secured flow for family 8000
Eran Harary [Mon, 29 Sep 2014 06:27:56 +0000 (08:27 +0200)]
iwlwifi: always run the secured flow for family 8000

In the new format the "CSS section" has the same TLV type
as the "mem section". So we need to run the secured flow
for all the 8000 products.

Signed-off-by: Eran Harary <eran.harary@intel.com>
Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
10 years agoiwlwifi: pcie: fix recovery from ARC reset in WoWLAN
Emmanuel Grumbach [Sun, 12 Oct 2014 10:23:40 +0000 (13:23 +0300)]
iwlwifi: pcie: fix recovery from ARC reset in WoWLAN

When the ARC is reset when we exit from Sx in case we had
WoWLAN running, we can't access the prph before we reset
the NIC.

Reviewed-by: Johannes Berg <johannes.berg@intel.com>
Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
10 years agoiwlwifi: pcie: warn if extern fw_debug buffer failed
Emmanuel Grumbach [Thu, 18 Sep 2014 12:44:04 +0000 (15:44 +0300)]
iwlwifi: pcie: warn if extern fw_debug buffer failed

Otherwise we have no way to know that the buffer hasn't been
allocated.

Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
10 years agoiwlwifi: allow to restrict Tx aggregation size per-device
Gregory Greenman [Tue, 2 Sep 2014 14:04:58 +0000 (16:04 +0200)]
iwlwifi: allow to restrict Tx aggregation size per-device

A few slave bus devices show better performance when we
reduce the size of the Tx A-MPDU.

Signed-off-by: Gregory Greenman <gregory.greenman@intel.com>
Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
10 years agoiwlwifi: mvm: change the iwl_mvm_d3_iface_iterator into a generic function
Luciano Coelho [Thu, 2 Oct 2014 12:38:04 +0000 (15:38 +0300)]
iwlwifi: mvm: change the iwl_mvm_d3_iface_iterator into a generic function

Getting the BSS station vif is something that may be needed by other
parts of the code.  So, instead of having an iterator specifically for
d3, change it into a generic one in utils.c.  Additionally, add a
iwl_mvm_get_bss_vif() function to make it easier to retrieving it.

Signed-off-by: Luciano Coelho <luciano.coelho@intel.com>
Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
10 years agoiwlwifi: mvm: add debugfs entry to configure netdetect SSIDs
Luciano Coelho [Wed, 24 Sep 2014 05:29:11 +0000 (08:29 +0300)]
iwlwifi: mvm: add debugfs entry to configure netdetect SSIDs

Before we get all the chain (ie. mac80211, cfg80211, nl80211 and
userspace) changed to support net-detect, we can use this debugfs
entry for easy testing and as a proof of concept.

Signed-off-by: Luciano Coelho <luciano.coelho@intel.com>
Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
10 years agoiwlwifi: mvm: spin off a function to start scan offload
Luciano Coelho [Wed, 1 Oct 2014 10:22:40 +0000 (13:22 +0300)]
iwlwifi: mvm: spin off a function to start scan offload

The net-detect feature will require a scan offload to be started in
the same way it is done now for scheduled scan.  Spin a new function
off of the sched_scan_start op code for reuse.  Additionally,
restructure the function a bit for more readability.

Signed-off-by: Luciano Coelho <luciano.coelho@intel.com>
Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
10 years agoiwlwifi: mvm: move the check if associated outside of the iterator for wowlan
Luciano Coelho [Mon, 22 Sep 2014 10:01:59 +0000 (13:01 +0300)]
iwlwifi: mvm: move the check if associated outside of the iterator for wowlan

Instead of checking if we are associated when suspending with wowlan
enabled in the interface iterator, allow it to return an unassociated
vif and move the check to the main suspend function.  This will be
needed by netdetect, since it should also work when we are not
associated but the vif is active.

Signed-off-by: Luciano Coelho <luciano.coelho@intel.com>
Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
10 years agoiwlwifi: mvm: split wowlan handling out of the main suspend function
Luciano Coelho [Mon, 22 Sep 2014 07:59:53 +0000 (10:59 +0300)]
iwlwifi: mvm: split wowlan handling out of the main suspend function

Take the WoWLAN handling code out of the main suspend function,
dividing it into three parts: get_config (which is used before the
firmware is switched), switch_to_d3 (which handles the rebooting of
the hardware with the D3 firmware) and config (which configures the D3
firmware for WoWLAN operation).  This is necessary to prepare for the
net-detect implementation, which will use only the switch_to_d3 part
of this flow.

Signed-off-by: Luciano Coelho <luciano.coelho@intel.com>
Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
10 years agoiwlwifi: mvm: hold the rtnl when resuming from a d3 test
Luciano Coelho [Mon, 22 Sep 2014 10:22:51 +0000 (13:22 +0300)]
iwlwifi: mvm: hold the rtnl when resuming from a d3 test

We use ieee80211_iter_keys() which requires the rtnl to be held.  If
we don't lock the rtnl, like we do when we suspend during a d3 test,
we get the following splat:

 RTNL: assertion failed at net/mac80211/key.c (566)
 CPU: 1 PID: 26529 Comm: cat Tainted: G        W  O 3.10.29-dev #1
 Hardware name: Dell Inc. Latitude E6430/0CPWYR, BIOS A09 12/13/2012
  e7b15008 e7b15008 e68adc1c c168aa62 e68adc54 f91f20b6 f923700c f9236fd8
  00000236 00000000 ece23874 00000000 f94941e0 00000000 e43b8e48 e7b15008
  00000000 e8b69e78 e68adcc0 f9493ab9 e68adc68 00000000 e43b8e48 e7b15008
 Call Trace:
  [<c168aa62>] dump_stack+0x16/0x18
  [<f91f20b6>] ieee80211_iter_keys+0x166/0x170 [mac80211]
  [<f94941e0>] ? iwl_mvm_query_wakeup_reasons+0x5f0/0x5f0 [iwlmvm]
  [<f9493ab9>] iwl_mvm_setup_connection_keep.isra.5+0x99/0x1d0 [iwlmvm]
  [<f9165e28>] ? cfg80211_report_wowlan_wakeup+0x308/0x510 [cfg80211]
  [<f9493fe5>] iwl_mvm_query_wakeup_reasons+0x3f5/0x5f0 [iwlmvm]
  [<c116125a>] ? init_object+0x3a/0x70
  [<f8a5b8ee>] ? iwl_trans_pcie_d3_resume+0x1be/0x3a0 [iwlwifi]
  [<f94956da>] __iwl_mvm_resume+0x14a/0x180 [iwlmvm]
  [<f9495736>] iwl_mvm_d3_test_release+0x26/0xc0 [iwlmvm]
  [<c117a64d>] __fput+0xad/0x210
  [<c117a7bd>] ____fput+0xd/0x10
  [<c10601a1>] task_work_run+0x81/0xb0
  [<c1040fa5>] do_exit+0x255/0xac0
  [<c104e511>] ? dequeue_signal+0x31/0x1a0
  [<c1041888>] do_group_exit+0x38/0xa0
  [<c10a6cfb>] ? trace_hardirqs_on+0xb/0x10
  [<c1051c31>] get_signal_to_deliver+0x1e1/0x8e0
  [<c104bd52>] ? try_to_del_timer_sync+0x42/0x60
  [<c104bd70>] ? try_to_del_timer_sync+0x60/0x60
  [<c168dc82>] ? schedule_timeout+0x102/0x2a0
  [<c10011ba>] do_signal+0x3a/0x8e0
  [<c104b190>] ? __internal_add_timer+0xb0/0xb0
  [<c168de7a>] ? schedule_timeout_interruptible+0x1a/0x20
  [<c104ce39>] ? msleep_interruptible+0x39/0x40
  [<f94939a9>] ? iwl_mvm_d3_test_read+0x49/0x70 [iwlmvm]
  [<c11797fc>] ? vfs_read+0x8c/0x160
  [<c11243af>] ? SyS_fadvise64_64+0x15f/0x2b0
  [<f9493960>] ? iwl_mvm_wowlan_program_keys+0x4a0/0x4a0 [iwlmvm]
  [<c1179a57>] ? SyS_read+0x57/0xa0
  [<c1001acf>] do_notify_resume+0x6f/0xa0
  [<c1692500>] work_notifysig+0x29/0x31

Fix this by hold the rtnl lock when calling __iwl_mvm_resume() in the
d3 test wake up path.

Signed-off-by: Luciano Coelho <luciano.coelho@intel.com>
Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
10 years agoiwlwifi: mvm: remove unneeded NULL pointer check
Emmanuel Grumbach [Sun, 21 Sep 2014 10:29:48 +0000 (13:29 +0300)]
iwlwifi: mvm: remove unneeded NULL pointer check

mac80211 will never call rate_control_tx_status with a NULL
pointer for sta. Remove the superfluous check. This check
misled smatch.

Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
10 years agoiwlwifi: rs: option to easily disable Tx MIMO
Eyal Shapira [Wed, 17 Sep 2014 10:56:29 +0000 (13:56 +0300)]
iwlwifi: rs: option to easily disable Tx MIMO

The current TLC isn't optimized for low latency and some devices
have issues with MIMO. This kind of combo creates latency issues.
Allow to temporarily disable MIMO for tests in order to solve
the latency issues without the added complexity of MIMO.

Signed-off-by: Eyal Shapira <eyalx.shapira@intel.com>
Signed-off-by: Arik Nemtsov <arikx.nemtsov@intel.com>
Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
10 years agoMerge remote-tracking branch 'iwlwifi-fixes/master' into iwlwifi-next
Emmanuel Grumbach [Wed, 29 Oct 2014 10:48:37 +0000 (12:48 +0200)]
Merge remote-tracking branch 'iwlwifi-fixes/master' into iwlwifi-next

10 years agoieee802154: introduce sysfs file
Alexander Aring [Tue, 28 Oct 2014 17:21:32 +0000 (18:21 +0100)]
ieee802154: introduce sysfs file

This patch moves the sysfs handling in a own file. This is like wireless
sysfs file handling.

Signed-off-by: Alexander Aring <alex.aring@gmail.com>
Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
10 years agomac802154: cleanup open count handling
Alexander Aring [Tue, 28 Oct 2014 17:21:31 +0000 (18:21 +0100)]
mac802154: cleanup open count handling

This patch cleanups the open_count variable increment in open and close
calls of netdev.

Signed-off-by: Alexander Aring <alex.aring@gmail.com>
Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
10 years agomac802154: move mac_params functions into mac_cmd
Alexander Aring [Tue, 28 Oct 2014 17:21:30 +0000 (18:21 +0100)]
mac802154: move mac_params functions into mac_cmd

These functions can be static in mac_cmd file.

Signed-off-by: Alexander Aring <alex.aring@gmail.com>
Signed-off-by: Marcel Holtmann <marcel@holtmann.org>