ath10k: Support installing CT firmware for QCA9984 NICs.
authorBen Greear <greearb@candelatech.com>
Thu, 21 Jul 2016 23:52:42 +0000 (16:52 -0700)
committerFelix Fietkau <nbd@nbd.name>
Sat, 23 Jul 2016 10:28:48 +0000 (12:28 +0200)
This firmware has been lightly tested on non LEDE system
to date, and will be undergoing further testing and development.
Allow users to easily install this on their LEDE system as
they prefer.

Signed-off-by: Ben Greear <greearb@candelatech.com>
package/firmware/ath10k-firmware/Makefile

index 4210772955d30005fd9c827399459d4735357f4e..e2cf92eebaf355e9a3af6ca4e5b34bb3688df6c4 100644 (file)
@@ -40,6 +40,7 @@ endef
 QCA988X_FIRMWARE_FILE:=firmware-5.bin_10.2.4.97-1
 QCA988X_FIRMWARE_FILE_CT:=firmware-2-ct-full-community-16.1.bin-lede
 QCA99X0_FIRMWARE_FILE_CT:=firmware-5-ct-full-community-7.bin-lede.001
+QCA9984_FIRMWARE_FILE_CT:=firmware-5-ct-full-community-7.bin-lede.001
 
 define Download/ath10k-firmware-qca988x
   URL:=https://www.codeaurora.org/cgit/quic/qsdk/oss/firmware/ath10k-firmware/plain/10.2.4/
@@ -62,6 +63,13 @@ define Download/ath10k-firmware-qca99x0-ct
 endef
 $(eval $(call Download,ath10k-firmware-qca99x0-ct))
 
+define Download/ath10k-firmware-qca9984-ct
+  URL:=https://www.candelatech.com/downloads/ath10k-9984-10-4/
+  FILE:=$(QCA9984_FIRMWARE_FILE_CT)
+  MD5SUM:=747cc1394f15aef97b5ea15e4c208e58
+endef
+$(eval $(call Download,ath10k-firmware-qca9984-ct))
+
 define Package/ath10k-firmware-qca99x0
 $(Package/ath10k-firmware-default)
   TITLE:=ath10k firmware for QCA99x0 devices
@@ -89,6 +97,14 @@ This firmware conflicts with the standard 99x0 firmware, so select only
 one.
 endef
 
+define Package/ath10k-firmware-qca9984-ct/description
+Alternative ath10k firmware for QCA9984 from Candela Technologies.
+Enables IBSS and other features.  See:
+http://www.candelatech.com/ath10k-10.4-9984.php
+This firmware conflicts with the standard 9984 firmware, so select only
+one.
+endef
+
 define Package/ath10k-firmware-qca99x0/description
 Standard ath10k firmware for QCA99x0 from QCA
 This firmware conflicts with the CT 99x0 firmware, so select only
@@ -100,6 +116,11 @@ $(Package/ath10k-firmware-default)
   TITLE:=ath10k CT 10.4.3 firmware for QCA99x0 devices
 endef
 
+define Package/ath10k-firmware-qca9984-ct
+$(Package/ath10k-firmware-default)
+  TITLE:=ath10k CT 10.4.3 firmware for QCA9984 devices
+endef
+
 define Package/ath10k-firmware-qca9984
 $(Package/ath10k-firmware-default)
   TITLE:=ath10k firmware for QCA9984 devices
@@ -189,6 +210,19 @@ define Package/ath10k-firmware-qca9984/install
                $(1)/lib/firmware/ath10k/QCA9984/hw1.0/firmware-5.bin
 endef
 
+define Package/ath10k-firmware-qca9984-ct/install
+       $(INSTALL_DIR) $(1)/lib/firmware/ath10k/QCA9984/hw1.0
+       ln -s \
+               ../../cal-pci-0000:01:00.0.bin \
+               $(1)/lib/firmware/ath10k/QCA9984/hw1.0/board.bin
+       $(INSTALL_DATA) \
+               $(PKG_BUILD_DIR)/QCA9984/hw1.0/board-2.bin \
+               $(1)/lib/firmware/ath10k/QCA9984/hw1.0/board-2.bin
+       $(INSTALL_DATA) \
+               $(DL_DIR)/$(QCA9984_FIRMWARE_FILE_CT) \
+               $(1)/lib/firmware/ath10k/QCA9984/hw1.0/firmware-5.bin
+endef
+
 $(eval $(call BuildPackage,ath10k-firmware-qca988x))
 $(eval $(call BuildPackage,ath10k-firmware-qca99x0))
 $(eval $(call BuildPackage,ath10k-firmware-qca6174))
@@ -196,3 +230,4 @@ $(eval $(call BuildPackage,ath10k-firmware-qca9984))
 
 $(eval $(call BuildPackage,ath10k-firmware-qca988x-ct))
 $(eval $(call BuildPackage,ath10k-firmware-qca99x0-ct))
+$(eval $(call BuildPackage,ath10k-firmware-qca9984-ct))