diff options
Diffstat (limited to 'package')
-rw-r--r-- | package/boot/uboot-envtools/files/mvebu | 5 | ||||
-rw-r--r-- | package/kernel/mwlwifi/Makefile | 7 | ||||
-rw-r--r-- | package/network/services/hostapd/patches/700-160mhz_interop_workaround.patch | 48 |
3 files changed, 56 insertions, 4 deletions
diff --git a/package/boot/uboot-envtools/files/mvebu b/package/boot/uboot-envtools/files/mvebu index 2362bc3ee3..28eeefda92 100644 --- a/package/boot/uboot-envtools/files/mvebu +++ b/package/boot/uboot-envtools/files/mvebu @@ -1,6 +1,6 @@ #!/bin/sh # -# Copyright (C) 2014-2015 OpenWrt.org +# Copyright (C) 2014-2016 OpenWrt.org # [ -e /etc/config/ubootenv ] && exit 0 @@ -17,6 +17,9 @@ case "$board" in armada-385-linksys-caiman|armada-385-linksys-cobra|armada-385-linksys-shelby) ubootenv_add_uci_config "/dev/mtd1" "0x0" "0x20000" "0x40000" ;; +armada-385-linksys-rango) + ubootenv_add_uci_config "/dev/mtd1" "0x0" "0x20000" "0x20000" + ;; armada-xp-linksys-mamba) ubootenv_add_uci_config "/dev/mtd1" "0x0" "0x40000" "0x20000" ;; diff --git a/package/kernel/mwlwifi/Makefile b/package/kernel/mwlwifi/Makefile index f59943d296..12034ec4e8 100644 --- a/package/kernel/mwlwifi/Makefile +++ b/package/kernel/mwlwifi/Makefile @@ -8,8 +8,8 @@ include $(TOPDIR)/rules.mk PKG_NAME:=mwlwifi -PKG_VERSION:=10.3.0.18-20160804 -PKG_RELEASE=1 +PKG_VERSION:=10.3.2.0-20161013 +PKG_RELEASE=2 PKG_LICENSE:=ISC PKG_LICENSE_FILES:= @@ -17,7 +17,7 @@ PKG_LICENSE_FILES:= PKG_SOURCE_URL:=https://github.com/kaloz/mwlwifi PKG_SOURCE_PROTO:=git PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_VERSION) -PKG_SOURCE_VERSION:=d48847cc83954930fdcd98818bbf33e75707b8e1 +PKG_SOURCE_VERSION:=41db55d3872cad94763a5fa0c5f028fa1ab66f58 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION)-$(PKG_SOURCE_VERSION).tar.xz PKG_MAINTAINER:=Imre Kaloz <kaloz@openwrt.org> @@ -56,6 +56,7 @@ define KernelPackage/mwlwifi/install $(INSTALL_DIR) $(1)/lib/firmware/mwlwifi $(CP) $(PKG_BUILD_DIR)/bin/firmware/88W8864.bin $(1)/lib/firmware/mwlwifi/ $(CP) $(PKG_BUILD_DIR)/bin/firmware/88W8897.bin $(1)/lib/firmware/mwlwifi/ + $(CP) $(PKG_BUILD_DIR)/bin/firmware/88W8964.bin $(1)/lib/firmware/mwlwifi/ $(CP) $(PKG_BUILD_DIR)/bin/firmware/Marvell_license.txt $(1)/lib/firmware/mwlwifi/ endef diff --git a/package/network/services/hostapd/patches/700-160mhz_interop_workaround.patch b/package/network/services/hostapd/patches/700-160mhz_interop_workaround.patch new file mode 100644 index 0000000000..75ece9b6cc --- /dev/null +++ b/package/network/services/hostapd/patches/700-160mhz_interop_workaround.patch @@ -0,0 +1,48 @@ +VHT: Add an interoperability workaround for 80+80 and 160 MHz channels + +Number of deployed 80 MHz capable VHT stations that do not support 80+80 +and 160 MHz bandwidths seem to misbehave when trying to connect to an AP +that advertises 80+80 or 160 MHz channel bandwidth in the VHT Operation +element. To avoid such issues with deployed devices, modify the design +based on newly proposed IEEE 802.11 standard changes. + +This allows poorly implemented VHT 80 MHz stations to connect with the +AP in 80 MHz mode. 80+80 and 160 MHz capable stations need to support +the new workaround mechanism to allow full bandwidth to be used. +However, there are more or less no impacted station with 80+80/160 +capability deployed. + +Signed-off-by: Jouni Malinen <jouni@qca.qualcomm.com> + +diff --git a/src/ap/ieee802_11_vht.c b/src/ap/ieee802_11_vht.c +index 3236016..e923094 100644 +--- a/src/ap/ieee802_11_vht.c ++++ b/src/ap/ieee802_11_vht.c +@@ -82,6 +82,27 @@ u8 * hostapd_eid_vht_operation(struct hostapd_data *hapd, u8 *eid) + + oper->vht_op_info_chwidth = hapd->iconf->vht_oper_chwidth; + ++ if (hapd->iconf->vht_oper_chwidth == 2) { ++ /* ++ * Convert 160 MHz channel width to new style as interop ++ * workaround. ++ */ ++ oper->vht_op_info_chwidth = 1; ++ oper->vht_op_info_chan_center_freq_seg1_idx = ++ oper->vht_op_info_chan_center_freq_seg0_idx; ++ if (hapd->iconf->channel < ++ hapd->iconf->vht_oper_centr_freq_seg0_idx) ++ oper->vht_op_info_chan_center_freq_seg0_idx -= 8; ++ else ++ oper->vht_op_info_chan_center_freq_seg0_idx += 8; ++ } else if (hapd->iconf->vht_oper_chwidth == 3) { ++ /* ++ * Convert 80+80 MHz channel width to new style as interop ++ * workaround. ++ */ ++ oper->vht_op_info_chwidth = 1; ++ } ++ + /* VHT Basic MCS set comes from hw */ + /* Hard code 1 stream, MCS0-7 is a min Basic VHT MCS rates */ + oper->vht_basic_mcs_set = host_to_le16(0xfffc); |