mac80211: backport from trunk r46760

This commit is contained in:
Matthias Schiffer 2015-09-01 19:55:43 +02:00
parent 280ea8d9ba
commit 91b3c1d371
4 changed files with 20526 additions and 43 deletions

File diff suppressed because it is too large Load Diff

View File

@ -8,7 +8,7 @@ not only wpad-mesh. Fix this by applying the same workaround as in
ustream-ssl. ustream-ssl.
diff --git a/package/network/services/hostapd/Makefile b/package/network/services/hostapd/Makefile diff --git a/package/network/services/hostapd/Makefile b/package/network/services/hostapd/Makefile
index 3dff7b4..d86bb43 100644 index c16cb11..c39b6b4 100644
--- a/package/network/services/hostapd/Makefile --- a/package/network/services/hostapd/Makefile
+++ b/package/network/services/hostapd/Makefile +++ b/package/network/services/hostapd/Makefile
@@ -177,7 +177,7 @@ endef @@ -177,7 +177,7 @@ endef

View File

@ -3,10 +3,10 @@ Date: Tue, 10 Mar 2015 13:17:14 +0100
Subject: ath10k: add Candelatech community firmware as an additional choice Subject: ath10k: add Candelatech community firmware as an additional choice
diff --git a/package/kernel/mac80211/Makefile b/package/kernel/mac80211/Makefile diff --git a/package/kernel/mac80211/Makefile b/package/kernel/mac80211/Makefile
index a1eedce..1c0aebe 100644 index 04dfd3b..5d77ebf 100644
--- a/package/kernel/mac80211/Makefile --- a/package/kernel/mac80211/Makefile
+++ b/package/kernel/mac80211/Makefile +++ b/package/kernel/mac80211/Makefile
@@ -604,6 +604,14 @@ This module adds support for wireless adapters based on @@ -603,6 +603,14 @@ This module adds support for wireless adapters based on
Atheros USB AR9271 and AR7010 family of chipsets. Atheros USB AR9271 and AR7010 family of chipsets.
endef endef
@ -21,10 +21,10 @@ index a1eedce..1c0aebe 100644
define KernelPackage/ath10k define KernelPackage/ath10k
$(call KernelPackage/mac80211/Default) $(call KernelPackage/mac80211/Default)
TITLE:=Atheros 802.11ac wireless cards support TITLE:=Atheros 802.11ac wireless cards support
@@ -624,21 +632,37 @@ endef @@ -622,6 +630,17 @@ endef
define KernelPackage/ath10k/config define KernelPackage/ath10k/config
if PACKAGE_kmod-ath10k if PACKAGE_kmod-ath10k
+ choice + choice
+ prompt "ath10k firmware flavour" + prompt "ath10k firmware flavour"
+ default ATH10K_AP_FW + default ATH10K_AP_FW
@ -36,60 +36,39 @@ index a1eedce..1c0aebe 100644
+ help + help
+ Use the ath10k firmware optimized for access point operation. + Use the ath10k firmware optimized for access point operation.
+ Supports only AP mode, will crash in IBSS (ad-hoc) mode. + Supports only AP mode, will crash in IBSS (ad-hoc) mode.
+
config ATH10K_STA_FW config ATH10K_API2_FW
bool "Firmware optimized for STA operation" bool "Firmware optimized for AP operation (v10.1 / API v2)"
- default n @@ -630,6 +649,13 @@ define KernelPackage/ath10k/config
help Use the ath10k firmware from the 10.1 SDK using API v2 optimized
Use the ath10k firmware optimized for wireless client instead for access point operation if the default firmware keeps crashing.
- of access point operation.
+ of access point operation. Might be unstable in AP mode.
+
+ config ATH10K_CT_COMMUNITY_FW + config ATH10K_CT_COMMUNITY_FW
+ bool "Firmware by Candela Technologies (community version)" + bool "Firmware by Candela Technologies (community version)"
+ help + help
+ Supports both AP and IBSS (ad-hoc) mode. Doesn't support + Supports both AP and IBSS (ad-hoc) mode. Doesn't support
+ encryption when using multiple VIFs. + encryption when using multiple VIFs.
+
config ATH10K_API2_FW
bool "Firmware optimized for AP operation (v10.1 / API v2)"
- default n
- depends on !ATH10K_STA_FW
help
Use the ath10k firmware from the 10.1 SDK using API v2 optimized
for access point operation if the default firmware keeps crashing.
+ endchoice + endchoice
endif endif
endef endef
@@ -1866,18 +1890,25 @@ define KernelPackage/ath10k/install @@ -1885,11 +1911,17 @@ ifeq ($(CONFIG_ATH10K_API2_FW),y)
$(INSTALL_DATA) \
$(PKG_BUILD_DIR)/$(PKG_ATH10K_LINUX_FIRMWARE_SUBDIR)/ath10k/QCA988X/hw2.0/board.bin \
$(1)/lib/firmware/ath10k/QCA988X/hw2.0/
+ifeq ($(CONFIG_ATH10K_AP_FW),y)
+ $(INSTALL_DATA) \
+ $(PKG_BUILD_DIR)/$(PKG_ATH10K_LINUX_FIRMWARE_SUBDIR)/10.2.4/firmware-4.bin_10.2.4.45 \
+ $(1)/lib/firmware/ath10k/QCA988X/hw2.0/firmware-4.bin
+endif
ifeq ($(CONFIG_ATH10K_STA_FW),y)
$(INSTALL_DATA) \
$(PKG_BUILD_DIR)/$(PKG_ATH10K_LINUX_FIRMWARE_SUBDIR)/main/firmware-2.bin_999.999.0.636 \
$(1)/lib/firmware/ath10k/QCA988X/hw2.0/firmware-2.bin
-else ifeq ($(CONFIG_ATH10K_API2_FW),y)
+endif
+ifeq ($(CONFIG_ATH10K_API2_FW),y)
$(INSTALL_DATA) \ $(INSTALL_DATA) \
$(PKG_BUILD_DIR)/$(PKG_ATH10K_LINUX_FIRMWARE_SUBDIR)/10.1/firmware-2.bin_10.1.467.2-1 \ $(PKG_BUILD_DIR)/$(PKG_ATH10K_LINUX_FIRMWARE_SUBDIR)/10.1/firmware-2.bin_10.1.467.2-1 \
$(1)/lib/firmware/ath10k/QCA988X/hw2.0/firmware-2.bin $(1)/lib/firmware/ath10k/QCA988X/hw2.0/firmware-2.bin
-else -else
+endif +endif
+ifeq ($(CONFIG_ATH10K_CT_COMMUNITY_FW),y) +ifeq ($(CONFIG_ATH10K_AP_FW),y)
$(INSTALL_DATA) \ $(INSTALL_DATA) \
- $(PKG_BUILD_DIR)/$(PKG_ATH10K_LINUX_FIRMWARE_SUBDIR)/10.2.4/firmware-4.bin_10.2.4.45 \ $(PKG_BUILD_DIR)/$(PKG_ATH10K_LINUX_FIRMWARE_SUBDIR)/10.2.4/untested/firmware-5.bin_10.2.4.70-2 \
- $(1)/lib/firmware/ath10k/QCA988X/hw2.0/firmware-4.bin $(1)/lib/firmware/ath10k/QCA988X/hw2.0/firmware-5.bin
endif
+ifeq ($(CONFIG_ATH10K_CT_COMMUNITY_FW),y)
+ $(INSTALL_DATA) \
+ $(DL_DIR)/$(ATH10K_CT_COMMUNITY_FW) \ + $(DL_DIR)/$(ATH10K_CT_COMMUNITY_FW) \
+ $(1)/lib/firmware/ath10k/QCA988X/hw2.0/firmware-2.bin + $(1)/lib/firmware/ath10k/QCA988X/hw2.0/firmware-2.bin
endif +endif
endef endef
define KernelPackage/mt7601u/install