diff mbox

[OpenWrt-Devel,v3,5/7] mac80211: make ath10k firmware v2 selectable

Message ID 1436273936-6908-6-git-send-email-guenther.kelleter@devolo.de
State Superseded
Headers show

Commit Message

Günther Kelleter July 7, 2015, 12:58 p.m. UTC
Added option for old firmware version (10.1 API v2). It seems that recent
firmware versions are constantly crashing (at least on a QCA9880-BR4A-R) and
this provides the option to select an older version instead.

Signed-off-by: Günther Kelleter <guenther.kelleter@devolo.de>
---
 package/kernel/mac80211/Makefile | 19 +++++++++++++++++++
 1 file changed, 19 insertions(+)

Comments

John Crispin July 9, 2015, 6:37 a.m. UTC | #1
Hi,

dont know at10k very well so pardon my uneducated question...

how does at10k know/choose which of the 2 to use ?

	John

On 07/07/2015 14:58, Günther Kelleter wrote:
> Added option for old firmware version (10.1 API v2). It seems that recent
> firmware versions are constantly crashing (at least on a QCA9880-BR4A-R) and
> this provides the option to select an older version instead.
> 
> Signed-off-by: Günther Kelleter <guenther.kelleter@devolo.de>
> ---
>  package/kernel/mac80211/Makefile | 19 +++++++++++++++++++
>  1 file changed, 19 insertions(+)
> 
> diff --git a/package/kernel/mac80211/Makefile b/package/kernel/mac80211/Makefile
> index 7f698f0..cc98fb7 100644
> --- a/package/kernel/mac80211/Makefile
> +++ b/package/kernel/mac80211/Makefile
> @@ -620,6 +620,19 @@ Atheros IEEE 802.11ac family of chipsets. For now only
>  PCI is supported.
>  endef
>  
> +define KernelPackage/ath10k/config
> +  if PACKAGE_kmod-ath10k
> +
> +	config ATH10K_API2_FW
> +		bool "Firmware optimized for AP operation (v10.1 / API v2)"
> +		default n
> +		help
> +		  Use the ath10k firmware from the 10.1 SDK using API v2 optimized
> +		  for access point operation if the default firmware keeps crashing.
> +
> +  endif
> +endef
> +
>  define KernelPackage/carl9170
>    $(call KernelPackage/mac80211/Default)
>    TITLE:=Driver for Atheros AR9170 USB sticks
> @@ -1844,9 +1857,15 @@ define KernelPackage/ath10k/install
>  	$(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_API2_FW),y)
> +	$(INSTALL_DATA) \
> +		$(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
> +else
>  	$(INSTALL_DATA) \
>  		$(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-5.bin
> +endif
>  endef
>  
>  define KernelPackage/mwl8k/install
>
Günther Kelleter July 9, 2015, 1:42 p.m. UTC | #2
Hi

> -----Original Message-----

> From: openwrt-devel [mailto:openwrt-devel-bounces@lists.openwrt.org] On Behalf

> Of John Crispin

> Sent: Thursday, July 09, 2015 8:38 AM

> To: openwrt-devel@lists.openwrt.org

> Subject: Re: [OpenWrt-Devel] [PATCH v3 5/7] mac80211: make ath10k firmware v2

> selectable

> 

> Hi,

> 

> dont know at10k very well so pardon my uneducated question...

> 

> how does at10k know/choose which of the 2 to use ?


Driver tries all possible fw-version files it knows in sequence until the only one that's installed could be loaded.

Günther

> 

> 	John

> 

> On 07/07/2015 14:58, Günther Kelleter wrote:

> > Added option for old firmware version (10.1 API v2). It seems that

> > recent firmware versions are constantly crashing (at least on a

> > QCA9880-BR4A-R) and this provides the option to select an older version

> instead.

> >

> > Signed-off-by: Günther Kelleter <guenther.kelleter@devolo.de>

> > ---

> >  package/kernel/mac80211/Makefile | 19 +++++++++++++++++++

> >  1 file changed, 19 insertions(+)

> >

> > diff --git a/package/kernel/mac80211/Makefile

> > b/package/kernel/mac80211/Makefile

> > index 7f698f0..cc98fb7 100644

> > --- a/package/kernel/mac80211/Makefile

> > +++ b/package/kernel/mac80211/Makefile

> > @@ -620,6 +620,19 @@ Atheros IEEE 802.11ac family of chipsets. For now

> > only  PCI is supported.

> >  endef

> >

> > +define KernelPackage/ath10k/config

> > +  if PACKAGE_kmod-ath10k

> > +

> > +	config ATH10K_API2_FW

> > +		bool "Firmware optimized for AP operation (v10.1 / API v2)"

> > +		default n

> > +		help

> > +		  Use the ath10k firmware from the 10.1 SDK using API v2

> optimized

> > +		  for access point operation if the default firmware keeps

> crashing.

> > +

> > +  endif

> > +endef

> > +

> >  define KernelPackage/carl9170

> >    $(call KernelPackage/mac80211/Default)

> >    TITLE:=Driver for Atheros AR9170 USB sticks @@ -1844,9 +1857,15 @@

> > define KernelPackage/ath10k/install

> >  	$(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_API2_FW),y)

> > +	$(INSTALL_DATA) \

> > +

> 	$(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

> > +else

> >  	$(INSTALL_DATA) \

> >

> 	$(PKG_BUILD_DIR)/$(PKG_ATH10K_LINUX_FIRMWARE_SUBDIR)/10.2.4/untested/fir

> mware-5.bin_10.2.4.70-2 \

> >  		$(1)/lib/firmware/ath10k/QCA988X/hw2.0/firmware-5.bin

> > +endif

> >  endef

> >

> >  define KernelPackage/mwl8k/install

> >

> _______________________________________________

> openwrt-devel mailing list

> openwrt-devel@lists.openwrt.org

> https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel
diff mbox

Patch

diff --git a/package/kernel/mac80211/Makefile b/package/kernel/mac80211/Makefile
index 7f698f0..cc98fb7 100644
--- a/package/kernel/mac80211/Makefile
+++ b/package/kernel/mac80211/Makefile
@@ -620,6 +620,19 @@  Atheros IEEE 802.11ac family of chipsets. For now only
 PCI is supported.
 endef
 
+define KernelPackage/ath10k/config
+  if PACKAGE_kmod-ath10k
+
+	config ATH10K_API2_FW
+		bool "Firmware optimized for AP operation (v10.1 / API v2)"
+		default n
+		help
+		  Use the ath10k firmware from the 10.1 SDK using API v2 optimized
+		  for access point operation if the default firmware keeps crashing.
+
+  endif
+endef
+
 define KernelPackage/carl9170
   $(call KernelPackage/mac80211/Default)
   TITLE:=Driver for Atheros AR9170 USB sticks
@@ -1844,9 +1857,15 @@  define KernelPackage/ath10k/install
 	$(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_API2_FW),y)
+	$(INSTALL_DATA) \
+		$(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
+else
 	$(INSTALL_DATA) \
 		$(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-5.bin
+endif
 endef
 
 define KernelPackage/mwl8k/install