aboutsummaryrefslogtreecommitdiffstats
path: root/package/kernel/mac80211
Commit message (Collapse)AuthorAgeFilesLines
* mac80211: merge a number of minstrel/minstrel_ht performance and memory ↵Felix Fietkau2016-12-199-0/+822
| | | | | | usage improvements Signed-off-by: Felix Fietkau <nbd@nbd.name>
* treewide: clean up download hashesFelix Fietkau2016-12-161-14/+14
| | | | | | Replace *MD5SUM with *HASH, replace MD5 hashes with SHA256 Signed-off-by: Felix Fietkau <nbd@nbd.name>
* ath10k: fix a soft-lockup on firmware restartFelix Fietkau2016-12-142-2/+51
| | | | Signed-off-by: Felix Fietkau <nbd@nbd.name>
* ath10k: fix a bug on sending null-func framesFelix Fietkau2016-12-141-0/+42
| | | | Signed-off-by: Felix Fietkau <nbd@nbd.name>
* ath10k: fix DMA allocation issuesFelix Fietkau2016-12-132-0/+108
| | | | Signed-off-by: Felix Fietkau <nbd@nbd.name>
* mac80211: refresh all patchesFelix Fietkau2016-12-1310-42/+39
| | | | Signed-off-by: Felix Fietkau <nbd@nbd.name>
* ath9k: add a RCU related bugfixFelix Fietkau2016-12-131-0/+65
| | | | Signed-off-by: Felix Fietkau <nbd@nbd.name>
* kernel: mac80211: disable ath9k bands via device treeMartin Blumenstingl2016-11-291-0/+32
| | | | | | | | | | | | | These properties allow overriding the settings from the EEPROM which indicate whether a band is enabled or not. Setting this property is only needed when the RF circuit does not support the 2.4GHz or 5GHz band while it is enabled nevertheless in the EEPROM. These patches will be replaced with a future upstream version which will introduces an ieee80211 device tree property to disable bands. Signed-off-by: Martin Blumenstingl <martin.blumenstingl@googlemail.com>
* kernel: mac80211: add pending ath9k EEPROM swapping patchesMartin Blumenstingl2016-11-297-0/+1730
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | There are two types of swapping the EEPROM data in the ath9k driver. Before this series one type of swapping could not be used without the other. The first type of swapping looks at the "magic bytes" at the start of the EEPROM data and performs swab16 on the EEPROM contents if needed. The second type of swapping is EEPROM format specific and swaps specific fields within the EEPROM itself (swab16, swab32 - depends on the EEPROM format). With this series the second part now looks at the EEPMISC register inside the EEPROM, which uses a bit to indicate if the EEPROM data is Big Endian (this is also done by the FreeBSD kernel). This has a nice advantage: currently there are some out-of-tree hacks (in OpenWrt and LEDE) where the EEPROM has a Big Endian header on a Big Endian system (= no swab16 is performed) but the EEPROM itself indicates that it's data is Little Endian. Until now the out-of-tree code simply did a swab16 before passing the data to ath9k, so ath9k first did the swab16 - this also enabled the format specific swapping. These out-of-tree hacks are still working with the new logic, but it is recommended to remove them. This implementation is based on a discussion with Arnd Bergmann who raised concerns about the robustness and portability of the swapping logic in the original OF support patch review, see [0]. After a second round of patches (= v1 of this series) neither Arnd Bergmann nor I were really happy with the complexity of the EEPROM swapping logic. Based on a discussion (see [1] and [2]) we decided that ath9k should use a defined format (specifying the endianness of the data - I went with __le16 and __le32) when accessing the EEPROM fields. A benefit of this is that we enable the EEPMISC based swapping logic by default, just like the FreeBSD driver, see [3]. On the devices which I have tested (see below) ath9k now works without having to specify the "endian_check" field in ath9k_platform_data (or a similar logic which could provide this via devicetree) as ath9k now detects the endianness automatically. Only EEPROMs which are mangled by some out-of-tree code still need the endian_check flag (or one can simply remove that mangling from the out-of-tree code). [0] http://www.spinics.net/lists/linux-wireless/msg152634.html [1] https://marc.info/?l=linux-wireless&m=147250597503174&w=2 [2] https://marc.info/?l=linux-wireless&m=147254388611344&w=2 [3] https://github.com/freebsd/freebsd/blob/50719b56d9ce8d7d4beb53b16e9edb2e9a4a7a18/sys/dev/ath/ath_hal/ah_eeprom_9287.c#L351 Signed-off-by: Martin Blumenstingl <martin.blumenstingl@googlemail.com>
* kernel: mac80211: backport ath9k device tree support patchesMartin Blumenstingl2016-11-293-0/+194
| | | | | | | | | | | | | These patches add support for configuring ath9k based devices via devicetree. This was tested on PCI(e) based devices. This should work for AHB based devices as well (adding more AHB specific properties may still be needed) as soon as the ath79 platform is ready to populate the ath9k wmac via devicetree. This patchset was accepted upstream, more information can be found on the linux-wireless list: https://www.spinics.net/lists/linux-wireless/msg155474.html Signed-off-by: Martin Blumenstingl <martin.blumenstingl@googlemail.com>
* mac80211: Make wlcore platform-independentAlexey Brodkin2016-11-161-1/+1
| | | | | | | | | | | | | | | | | TI wl18xx and wl12xx are Wi-Fi/Bluetooth combo modules that could be found on different existing boards. But it is possible to get those modules as a separate component and use with existing boards as well as new boards equipped with either module may appear so we remove dependency on OMAP instead we add dependency on MMC because this Wi-Fi module uses SDIO interface. Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com> Cc: Jo-Philipp Wich <jo@mein.io> Cc: Felix Fietkau <nbd@nbd.name> Cc: Imre Kaloz <kaloz@openwrt.org> Reviewed-by: Florian Fainelli <f.fainelli@gmail.com>
* ath9k: add support for the HSR tuner of the Ubiquiti UAP Outdoor+Matthias Schiffer2016-11-152-0/+424
| | | | | | | | Without setting the HSR to the selected channel, the WLAN of the UAP Outdoor+ will exhibit high packet loss in RX. Based-on-patch-by: Stefan Rompf <stefan@loplof.de> Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
* ath9k: fix ath9k_hw_gpio_get() to return 0 or 1 on successMatthias Schiffer2016-11-151-0/+29
| | | | Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
* mac80211: rt2x00: add support for mac addr from device treeMathias Kresin2016-11-0911-90/+197
| | | | | | | Backport upstream accepted patch which allows to override the EEPROM mac address with one from device tree. Signed-off-by: Mathias Kresin <dev@kresin.me>
* mac80211: rt2x00: fold patchesMathias Kresin2016-11-092-47/+17
| | | | | | | | The patch 615-rt2x00-fix_20mhz_clk.patch fixes code introduced by 611-rt2x00-rf_vals-rt3352-xtal20.patch and makes the the platform data property clk_is_20mhz obsolete. Signed-off-by: Mathias Kresin <dev@kresin.me>
* mac80211: rt2x00: add mtd-eeprom swab functionMathias Kresin2016-11-081-5/+9
| | | | | | | | Most of the lantiq devices with ralink wifi have the EEPROM stored in big endian byte order in flash, but the driver expects the EEPROM to be in little endian. Signed-off-by: Mathias Kresin <dev@kresin.me>
* mac80211: rt2x00: remove eeprom filename dependency from mtd-eepromMathias Kresin2016-11-081-12/+15
| | | | | | | | | | | | | | | | | | | The ralink,mtd-eeprom device tree property doesn't require the ralink,eeprom property to work. Rework the error handling and user notification as well. Do not log an error if the mtd-eeprom parameter isn't used. It could be intentional and should not scare the user. Check if the number of bytes read from the mtd devices matches the requested number of bytes. In case of an mtd read error, give a hint to the user which partition was tried to read from. In case everything is fine, notify the user as well. Signed-off-by: Mathias Kresin <dev@kresin.me>
* mac80211: rt2x00: improve eeprom_file property handlingMathias Kresin2016-11-082-17/+11
| | | | | | | | | | | | | | | | Call the rt2x00lib_get_eeprom_file_name only once and from the function where the EEPROM filename is required. Error only out if an EEPROM file is mandatory. Use the REQUIRE_EEPROM_FILE bit to determine if it is mandatory. Do not set the REQUIRE_EEPROM_FILE bit while requesting an EEPROM file. It should be (and is) set before requesting an EEPROM file. Do not redirect users to upstream while using a function of a custom patch. Signed-off-by: Mathias Kresin <dev@kresin.me>
* Revert "mwl8k: remove synchronous device init hack"Felix Fietkau2016-11-041-0/+20
| | | | | | | This reverts commit cb037d1842d93b37457c896a8949e135ed6e0065. See 6aa07b82027f for more information Signed-off-by: Felix Fietkau <nbd@nbd.name>
* Revert "mac80211: remove ath10k delayed initialization hack"Felix Fietkau2016-11-041-0/+33
| | | | | | | | | This reverts commit efd9dec3195c603289ebb552f8650da9dd869828. ath10k can take a long time to probe, long enough for netifd to fail to initialize already configured wireless devices Signed-off-by: Felix Fietkau <nbd@nbd.name>
* mac80211: fix A-MSDU tx aggregation (FS#174)Felix Fietkau2016-11-041-0/+34
| | | | Signed-off-by: Felix Fietkau <nbd@nbd.name>
* mac80211: minor cleanupFelix Fietkau2016-11-041-0/+29
| | | | Signed-off-by: Felix Fietkau <nbd@nbd.name>
* mac80211: fix a tx A-MPDU aggregation issueFelix Fietkau2016-11-041-0/+30
| | | | Signed-off-by: Felix Fietkau <nbd@nbd.name>
* mac80211: replace the previous fix with a revert of the faulty upstream commitFelix Fietkau2016-11-031-5/+6
| | | | | | This avoids potential breakage in rt2x00usb Signed-off-by: Felix Fietkau <nbd@nbd.name>
* mwl8k: remove synchronous device init hackFelix Fietkau2016-11-031-20/+0
| | | | Signed-off-by: Felix Fietkau <nbd@nbd.name>
* mac80211: remove ath10k delayed initialization hackMathias Kresin2016-11-031-33/+0
| | | | | | | | | LEDE no longer requires all PHYs to be initialized to create the configuration files during bootup. This patch removes the now obsolete ath10k patch. Signed-off-by: Mathias Kresin <dev@kresin.me> Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
* base-files, mac80211, broadcom-wl: wifi detection and configurationChristian Lamparter2016-11-032-0/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Currently, the wifi detection script is executed as part of the (early) boot process. Pluggable wifi USB devices, which are inserted at a later time are not automatically detected and therefore they don't show up in LuCI. A user has to deal with wifi detection manually, or restart the router. However, the current "sleep 1" window - which the boot process waits for wifi devices to "settle down" - is too short to detect wifi devices for some routers anyway. For example, this can happen with USB WLAN devices on the WNDR4700. This is because the usb controller needs to load its firmware from UBI and initialize, before it can operate. The issue can be seen on a BT HomeHub 5A as well as soon as the caldata are on an ubi volume. This is because the ath9k card has to be initialized by owl-loader first. Which has to wait for the firmware extraction script to retrieve the pci initialization values inside the caldata. This patch moves the wifi configuration to hotplug scripts. For mac80211, the wifi configuration will now automatically run any time a "ieee80211" device is added. Likewise broadcom-wl's script checks for new "net" devices which have the "wl$NUMBER" moniker. Issues with spawning multiple interface configuration - in case the detection script is run concurrently - have been resolved by using a named section for the initial configuration. Concurrent configuration scripts will now simply overwrite the same existing configuration. A workaround which preserves the "sleep 1" window for just the first boot has been added. This allows the existing brcm47xx boot and mvebu uci-default scripts to correctly setup the initial mac addresses and regulatory domain. And finally, the patch renames the "wifi detect" into "wifi config". As the script no longer produces any output that has to be redirected or appended to the configuration file. Thanks to Martin Blumenstingl for helping with the implementation and testing of the patch. Acked-by: Jo-Philipp Wich <jo@mein.io> Signed-off-by: Mathias Kresin <dev@kresin.me> Signed-off-by: Christian Lamparter <chunkeey@gmail.com> Signed-off-by: Felix Fietkau <nbd@nbd.name>
* base-files, mac80211, broadcom-wl: use uci to populate wireless configChristian Lamparter2016-11-031-22/+21
| | | | | | | | | | | | | | | | | | | | Previously, wifi detect simply dumped its generated wireless configuration to STDOUT. A second step was needed to append the configuration to /etc/config/wireless (or create it, if it didn't exist). With this patch, The wifi detection script will now use uci to update the wireless configuration directly. This patch also makes the initially created wifi-iface a named section ('default_radio$X' for mac80211 and 'default_wl$X' for broadcom). With this change, uci will not print the cfgHASH to STDOUT (which would now corrupt the wireless configuration). It will also prevent adding duplicated wifi interface configurations, if the wifi configuration is run concurrently. Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
* mac80211: fix regdomain change issues with CONFIG_ATH_USER_REGDFelix Fietkau2016-11-032-21/+38
| | | | Signed-off-by: Felix Fietkau <nbd@nbd.name>
* mac80211: fix a minor issue in the header padding patchFelix Fietkau2016-11-031-0/+9
| | | | Signed-off-by: Felix Fietkau <nbd@nbd.name>
* mac80211: fix AP powersave issues introduced in the last wireless-testing ↵Felix Fietkau2016-11-031-0/+27
| | | | | | update (FS#241) Signed-off-by: Felix Fietkau <nbd@nbd.name>
* mac80211: backport some upstream a-msdu tx fixesFelix Fietkau2016-10-172-0/+128
| | | | Signed-off-by: Felix Fietkau <nbd@nbd.name>
* mac80211: fix build error in ath10k with hwmon enabledFelix Fietkau2016-10-171-0/+37
| | | | Signed-off-by: Felix Fietkau <nbd@nbd.name>
* mac80211: update to wireless-testing 2016-10-08Felix Fietkau2016-10-13216-8597/+977
| | | | Signed-off-by: Felix Fietkau <nbd@nbd.name>
* mac80211: update rtl8xxxu patchesÁlvaro Fernández Rojas2016-10-0863-98/+616
| | | | | | | Adds the latest patches from Jes Sorensen for rtl8xxxu, which improve rtl8732bu, rtl8192eu and rtl8188eu support. Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
* ath9k: remove patch causing stability issues with powersave devices (FS#176)Felix Fietkau2016-09-306-45/+8
| | | | Signed-off-by: Felix Fietkau <nbd@nbd.name>
* mac80211: fix rfkill dependencyJohn Crispin2016-09-291-1/+3
| | | | Signed-off-by: John Crispin <john@phrozen.org>
* mac80211: use upstream patches for rtl8xxxuÁlvaro Fernández Rojas2016-09-29108-455/+488
| | | | | | Also improves rtl8188eu support. Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
* mac80211: backport brcmfmac changes from 2016-09-27Rafał Miłecki2016-09-273-1/+97
| | | | | | | | This fixes bug that could cause WARNING on every add_key/del_key call. It also replaces WARNING with a simple message. They may still occur e.g. on station going out of range and A-MPDU stall in the firmware. Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
* mac80211: backport brcmfmac changes from 2016-09-26Rafał Miłecki2016-09-2726-2/+1316
| | | | | | | All these patches are in wireless-drirvers-next. There is support for hidden SSID, few new devices and many fixes. Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
* mac80211: fix crash in mac80211_hwsimFelix Fietkau2016-09-261-0/+11
| | | | Signed-off-by: Felix Fietkau <nbd@nbd.name>
* rtl8xxxu: add support for rtl8188euÁlvaro Fernández Rojas2016-09-15105-0/+6333
| | | | | | | Patches by Jes Sorensen: https://git.kernel.org/cgit/linux/kernel/git/jes/linux.git/ Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
* mac80211: stop brcmfmac from selecting all SDIO firmwaresÁlvaro Fernández Rojas2016-09-151-2/+1
| | | | | | | | | Now that we have firmwares separated and brcm2708 being the only target that actually selects SDIO support, avoid selecting all firmwares by default. sunxi should select the proper firmwares once SDIO support is enabled and tested. Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
* linux-firmware: separate packages for Broadcom FullMAC SDIO firmwaresÁlvaro Fernández Rojas2016-09-151-1/+2
| | | | | | | | | | | | Using few packages will allow saving some space by decreasing rootfs size. Moreover there are more firmware files that may require packaging and even more to come later. This can especially useful now, with per device rootfs. Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
* mac80211: stop brcmfmac from selecting all PCIe firmwaresRafał Miłecki2016-09-141-1/+0
| | | | | | | | | Now we have firmwares separated and bcm53xx selecting required ones make use of it to actually save that rootfs space. Other targets using brcmfmac (brcm2708 and sunxi) use SDIO interface and firmware so they don't won't be affected. Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
* linux-firmware: separate packages for Broadcom FullMAC PCIe firmwaresRafał Miłecki2016-09-131-1/+1
| | | | | | | | | | | | | Using few packages will allow saving some space by decreasing rootfs size. Dropping 43602a1 firmware saves 316 580 B. Dropping 4366b1 saves 468 188 B. Moreover there are more firmware files that may require packaging and even more to come later (e.g. 4366c0). This can especially useful now, with per device rootfs. Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
* mac80211: fix tx issue with CCMP PN generated in hardwareFelix Fietkau2016-09-121-1/+1
| | | | Signed-off-by: Felix Fietkau <nbd@nbd.name>
* mac80211: remove the fq-disable hack, now that reordering is fixedFelix Fietkau2016-09-081-15/+0
| | | | Signed-off-by: Felix Fietkau <nbd@nbd.name>
* mac80211: fix packet loss on fq reorderingFelix Fietkau2016-09-083-110/+481
| | | | Signed-off-by: Felix Fietkau <nbd@nbd.name>
* mac80211: backport new register bitfield macrosFelix Fietkau2016-09-051-0/+145
| | | | Signed-off-by: Felix Fietkau <nbd@nbd.name>