Commit Graph

369 Commits (055ba75f9233cb672b40826db0f22f01ecb9e3ef)

Author SHA1 Message Date
Felix Fietkau 31e5ed4152 ath9k: switch to using mac80211 intermediate software queues
Provides a nice latency reduction under load, due to mac80211's fq_codel
support.

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2016-07-11 10:16:49 +02:00
Felix Fietkau 916aebb300 ath10k: fix a compiler warning
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2016-07-09 19:42:26 +02:00
Felix Fietkau 73dd59546b ath10k: fix #if vs #ifdef in led trigger patch
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2016-07-09 19:42:22 +02:00
Rafał Miłecki c729fe0269 mac80211: backport brcmfmac changes from 2016-07-08
To work correctly hostapd requires wireless driver to allow interfaces
removal. It was working with brcmfmac only partially. Firmware for
BCM43602 got some special hack (feature?) that allowed removing all
interfaces by disabling mbss mode. It wasn't working with BCM4366
firmware and remaining interfaces were preventing hostapd from starting
again.

Those patches add support for "interface_remove" firmware method which
works with BCM4366 firmware and they make it finally possible to use
BCM4366 & brcmfmac & multiple interfaces.

Signed-off-by: Rafał Miłecki <zajec5@gmail.com>
2016-07-08 18:21:04 +02:00
Rafał Miłecki 8d95b665e8 mac80211: backport brcmfmac changes from 2016-06-29
Signed-off-by: Rafał Miłecki <zajec5@gmail.com>
2016-07-06 10:34:19 +02:00
Felix Fietkau 92d856f50a ath9k: add beacon related stability fixes
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2016-07-05 10:45:17 +02:00
Felix Fietkau f226d5879e mac80211: move include statements for skb_get_hash_perturb() to prevent issues with newer kernels
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2016-07-03 18:13:11 +02:00
Felix Fietkau b174832159 mac80211: backport skb_get_hash_perturb() for 4.1 and older
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2016-07-03 17:56:53 +02:00
Martin Blumenstingl 70afc0bdd1 kernel: mac80211: set the parent of the ath9k gpio_chip
This allows gpiolib to re-use ath9k's devicetree node as GPIO
controller.
Example:

ath9k: ath9k@0 {
	#gpio-cells = <2>;
	gpio-controller;
}

Now the ath9k node can be used just like any other GPIO controller:
	gpios = <&ath9k 1 GPIO_ACTIVE_HIGH>;

Signed-off-by: Martin Blumenstingl <martin.blumenstingl@googlemail.com>
2016-07-02 19:34:50 +02:00
Martin Blumenstingl 7b7ea91e24 kernel: mac80211: enable the gpio controller for all ath9k devices
This enables ath9k's built-in GPIO controller for all chip versions
(instead of an explicit whitelist). This also allows us to get rid of
some duplicate code between hw.c and gpio.c because hw.c already
determines the number of GPIOs.

Signed-off-by: Martin Blumenstingl <martin.blumenstingl@googlemail.com>
2016-07-02 19:34:50 +02:00
Martin Blumenstingl 3ce71eaedd kernel: mac80211: fold the AR9280 GPIO patch into the ath9k GPIO patch
This folds 550-ath9k_add_ar9280_gpio_chip.patch into
548-ath9k_enable_gpio_chip.patch because the former patch only extends
code which is introduced in the latter.

Signed-off-by: Martin Blumenstingl <martin.blumenstingl@googlemail.com>
2016-07-02 19:34:50 +02:00
Mathias Kresin cbfeb7796e mac80211: refresh patches
Signed-off-by: Mathias Kresin <dev@kresin.me>
Signed-off-by: Martin Blumenstingl <martin.blumenstingl@googlemail.com>
2016-07-02 19:34:50 +02:00
Felix Fietkau 76d09dcb01 ath10k: fix tx performance regression on older chipsets
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2016-07-02 19:34:50 +02:00
Felix Fietkau d002aee42c mac80211: enable STBC and LDPC for VHT rates
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2016-07-02 19:34:50 +02:00
Felix Fietkau 67a7daa938 mac80211: update to wireless-testing 2016-06-20
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2016-07-02 19:34:50 +02:00
Jo-Philipp Wich 1e03998e2b mac80211: fix skb size calculation in 4addr mode (FS#24)
The PDU length of incoming LLC frames is set to the total skb payload size
in __ieee80211_data_to_8023() of net/wireless/util.c which incorrectly
includes the length of the IEEE 802.11 header.

The resulting LLC frame header has a too large PDU length, causing the
llc_fixup_skb() function of net/llc/llc_input.c to reject the incoming
skb, effectively breaking STP.

Solve the problem by properly substracting the IEEE 802.11 frame header size
from the PDU length, allowing the LLC processor to pick up the incoming
control messages.

Special thanks to Gerry Rozema for tracking down the regression and proposing
a suitable patch.

Fixes FS#24.

References:
https://bugs.lede-project.org/index.php?do=details&task_id=24

Reported-by: Gerry Rozema <gerryr@rozeware.com>
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2016-06-28 22:43:22 +02:00
Felix Fietkau 4bab4dee84 ath10k: merge some more pending upstream fixes
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2016-06-17 14:12:44 +02:00
Adrian Panella c354591d1b mac80211: ath10k fix otp check patch
Fix patch to match new updated package version

Signed-off-by: Adrian Panella <ianchi74@outlook.com>
2016-06-13 22:51:41 +02:00
Felix Fietkau df7af9317b ath10k: merge some pending stability fixes
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2016-06-11 09:51:23 +02:00
Felix Fietkau 7eeb254cc4 treewide: replace nbd@openwrt.org with nbd@nbd.name
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2016-06-07 08:58:42 +02:00
Ash Benz 867c0cb237 kernel/mac80211: skip ath10k OTP check if caldata found
Signed-off-by: Ash Benz <ash.benz@bk.ru>
2016-05-27 15:50:17 +02:00
Rafał Miłecki cdff540623 mac80211: brcmfmac: return -ENFILE if interface exists
This makes brcmfmac compatible with mac80211 which uses dev_alloc_name
(and so returns -ENFILE on error).

Signed-off-by: Rafał Miłecki <zajec5@gmail.com>
2016-05-30 08:25:44 +02:00
Felix Fietkau 24270e9493 mac80211: fix unaligned accesses in the tx path
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2016-05-19 17:55:54 +02:00
Helmut Schaa 21b04c623e ath9k: Fix TX99 support
The patch 300-ath9k-force-rx_clear-when-disabling-rx.patch broke TX99 support
in ath9k. Fix the patch by only applying rx_clear if TX99 mode is not used.

Signed-off-by: Helmut Schaa <helmut.schaa@googlemail.com>
2016-05-18 15:00:02 +02:00
Felix Fietkau 34b05087f7 mac80211: fix a module build/dependency issue that was breaking lib80211
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2016-05-16 10:52:24 +02:00
Felix Fietkau df93d53a4b mac80211: update to wireless-testing 2016-05-12
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2016-05-15 20:55:39 +02:00
John Crispin 1a1bb3aaff mac80211: ath9k: add GPIO support for AR9280 chip
Enable access to GPIO on Atheros wireless chip AR9280.
Support for 9280 is added to existing 9285/9287 subsystem
because these 3 chips differ only in number of GPIO pins.

Signed-off-by: Michal Cieslakiewicz <michal.cieslakiewicz@wp.pl>

SVN-Revision: 49251
2016-04-26 11:44:07 +00:00
Rafał Miłecki f4edfc69a3 mac80211: add brcmfmac regression ("NULL pointer dereference") fix
Signed-off-by: Rafał Miłecki <zajec5@gmail.com>

SVN-Revision: 49222
2016-04-25 15:32:20 +00:00
Rafał Miłecki 894aed060e mac80211: update brcmfmac including missing boardrev workaround
Signed-off-by: Rafał Miłecki <zajec5@gmail.com>

SVN-Revision: 49174
2016-04-16 08:48:43 +00:00
John Crispin 553c1b793f brcmfmac: Add Raspberry Pi 3 support
- Enable SDIO support on brcmfmac.
- Disable power managment for brcm2708 target.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
Reviewed-by: Rafał Miłecki <zajec5@gmail.com>

SVN-Revision: 49023
2016-03-16 09:26:42 +00:00
Rafał Miłecki f5317ed5d2 mac80211: backport brcmfmac patchset with driver setting concept
This prepares brcmfmac for better country handling and fixes BCM4360
support which was always failing with:
[   13.249195] brcmfmac: brcmf_pcie_download_fw_nvram: FW failed to initialize

Signed-off-by: Rafał Miłecki <zajec5@gmail.com>

SVN-Revision: 48959
2016-03-07 22:37:09 +00:00
Felix Fietkau 2cfd943fe9 mac80211: rework gpio chip/button support to build on platforms without CONFIG_GPIOLIB
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 48938
2016-03-07 09:20:22 +00:00
Felix Fietkau 6bece706ec mac80211: ath9k: enable GPIO buttons
Enable platform-defined GPIO button support for ath9k device.
Key poller is activated for attached platform buttons.
Requires ath9k GPIO chip access.

Signed-off-by: Michal Cieslakiewicz <michal.cieslakiewicz@wp.pl>

SVN-Revision: 48921
2016-03-05 09:45:03 +00:00
Felix Fietkau 4f8f5a2332 mac80211: improve rate control performance
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 48897
2016-03-03 22:29:00 +00:00
Felix Fietkau 806b68fc77 mac80211: add a number of pending fixes
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 48883
2016-03-02 14:56:48 +00:00
Felix Fietkau cafc41ab01 mac80211: refresh patch
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 48882
2016-03-02 14:56:43 +00:00
Felix Fietkau 5158e74cbb mac80211: ath9k: enable access to GPIO
Enable access to GPIO chip and its pins for Atheros AR92xx
wireless devices. For now AR9285 and AR9287 are supported.

Signed-off-by: Michal Cieslakiewicz <michal.cieslakiewicz@wp.pl>
Acked-by: Hartmut Knaack <knaack.h@gmx.de>

SVN-Revision: 48881
2016-03-02 13:22:51 +00:00
Felix Fietkau 9e74c3af07 mac80211: ath9k: set default state for platform LEDs
Support default state for platform LEDs connected to ath9k device.
Now LEDs are correctly set on or off at ath9k module initialization.

Signed-off-by: Michal Cieslakiewicz <michal.cieslakiewicz@wp.pl>
Acked-by: Hartmut Knaack <knaack.h@gmx.de>

SVN-Revision: 48880
2016-03-02 13:22:46 +00:00
Felix Fietkau a8c15c0204 mac80211: ath9k: enable platform WLAN LED name
Enable platform-supplied WLAN LED name for ath9k device.

Signed-off-by: Michal Cieslakiewicz <michal.cieslakiewicz@wp.pl>
Acked-by: Hartmut Knaack <knaack.h@gmx.de>

SVN-Revision: 48879
2016-03-02 13:22:40 +00:00
Rafał Miłecki 53814290e7 mac80211: backport brcmfmac fix for primary channel in 80 MHz mode
Signed-off-by: Rafał Miłecki <zajec5@gmail.com>

SVN-Revision: 48782
2016-02-25 20:24:47 +00:00
Rafał Miłecki b24accd72d mac80211: backport brcmfmac fix for sdio sg table alloc crash
Signed-off-by: Rafał Miłecki <zajec5@gmail.com>

SVN-Revision: 48781
2016-02-25 20:24:38 +00:00
Felix Fietkau 3064f16863 mac80211: fix an RTS/CTS issue in minstrel_ht
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 48759
2016-02-25 09:24:13 +00:00
Felix Fietkau 2f7dcdec58 mac80211: sync a-msdu tx patch with the latest upstream submission
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 48758
2016-02-25 09:24:09 +00:00
Felix Fietkau b9e910d658 mac80211: set default aggregation timeout to 0 to improve stability
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 48744
2016-02-18 18:55:46 +00:00
Felix Fietkau 42fc062d47 mac80211: update A-MSDU tx support to the latest version
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 48743
2016-02-18 18:55:35 +00:00
Felix Fietkau 6cfc7db8a2 mac80211: fix a crash in monitor mode injection
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 48719
2016-02-14 12:26:49 +00:00
Felix Fietkau 533147beb2 mac80211: improve a-msdu rx performance by avoiding unnecessary data copying
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 48673
2016-02-08 13:38:11 +00:00
Felix Fietkau 446d06edac mac80211: fix a memory leak in a-msdu rx
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 48672
2016-02-08 13:38:03 +00:00
Felix Fietkau 21e716dbec mac80211: update A-MSDU tx patch to the latest version
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 48671
2016-02-08 13:37:55 +00:00
Felix Fietkau f3761eaacc mac80211: refresh patch
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 48670
2016-02-08 13:37:47 +00:00