ath10k-firmware: Add kmod-ath10k-ct-smallbuffers to depends
[openwrt/openwrt.git] / package / firmware / ath10k-firmware / Makefile
index f1d86236f9fb035fbed1a48201fb70f894b64869..5a6c18a4e848dc28145cbccf47692dba6bd0c539 100644 (file)
@@ -8,9 +8,9 @@
 include $(TOPDIR)/rules.mk
 
 PKG_NAME:=ath10k-firmware
 include $(TOPDIR)/rules.mk
 
 PKG_NAME:=ath10k-firmware
-PKG_SOURCE_DATE:=2017-12-20
-PKG_SOURCE_VERSION:=35d8642f452827b955470de4ac997ffe906a6f17
-PKG_MIRROR_HASH:=594133cea1b49672d0a47ca55fdd9390af83b514b37e864e3674d7ab5d7dd72a
+PKG_SOURCE_DATE:=2019-10-03
+PKG_SOURCE_VERSION:=d622d160e9f552ead68d9ae81b715422892dc2ef
+PKG_MIRROR_HASH:=9d56a9942b7be7effdeed6d0688a9bdcfae76a2921a630714c3e2d8390ea8934
 PKG_RELEASE:=1
 
 PKG_SOURCE_PROTO:=git
 PKG_RELEASE:=1
 
 PKG_SOURCE_PROTO:=git
@@ -50,6 +50,7 @@ $(Package/ath10k-firmware-default)
 endef
 
 CT_FIRMWARE_FILE = $(1)-$($(1)_FIRMWARE_FILE_CT)
 endef
 
 CT_FIRMWARE_FILE = $(1)-$($(1)_FIRMWARE_FILE_CT)
+CT_FIRMWARE_FILE_HTT = $(1)-$($(1)_FIRMWARE_FILE_CT_HTT)
 
 define Download/ct-firmware
   URL:=https://www.candelatech.com/downloads/$(2)
 
 define Download/ct-firmware
   URL:=https://www.candelatech.com/downloads/$(2)
@@ -57,41 +58,102 @@ define Download/ct-firmware
   URL_FILE:=$($(1)_FIRMWARE_FILE_CT)
 endef
 
   URL_FILE:=$($(1)_FIRMWARE_FILE_CT)
 endef
 
-QCA988X_FIRMWARE_FILE_CT:=firmware-2-ct-full-community-19.bin.lede
+define Download/ct-firmware-htt
+  URL:=https://www.candelatech.com/downloads/$(2)
+  FILE:=$(call CT_FIRMWARE_FILE_HTT,$(1))
+  URL_FILE:=$($(1)_FIRMWARE_FILE_CT_HTT)
+endef
+
+QCA988X_FIRMWARE_FILE_CT:=firmware-2-ct-full-community-22.bin.lede.013
 define Download/ath10k-firmware-qca988x-ct
   $(call Download/ct-firmware,QCA988X,)
 define Download/ath10k-firmware-qca988x-ct
   $(call Download/ct-firmware,QCA988X,)
-  HASH:=bff98f028062dae9fc638c7596aec3c79bf9eddaff65cfacba067f6d72f217cd
+  HASH:=19db86003509dedb8ace339c183813ca637d65af24d00666411d1590efe33e13
 endef
 $(eval $(call Download,ath10k-firmware-qca988x-ct))
 
 endef
 $(eval $(call Download,ath10k-firmware-qca988x-ct))
 
-QCA9887_FIRMWARE_FILE_CT:=firmware-2-ct-full-community-19.bin.lede
+QCA988X_FIRMWARE_FILE_CT_HTT:=firmware-2-ct-full-htt-mgt-community-22.bin.lede.013
+define Download/ath10k-firmware-qca988x-ct-htt
+  $(call Download/ct-firmware-htt,QCA988X,)
+  HASH:=454e67dab545e720369a07be2fee16de008c76db4ab3119e7760bf9f7504c066
+endef
+$(eval $(call Download,ath10k-firmware-qca988x-ct-htt))
+
+
+QCA9887_FIRMWARE_FILE_CT:=firmware-2-ct-full-community-22.bin.lede.013
 define Download/ath10k-firmware-qca9887-ct
   $(call Download/ct-firmware,QCA9887,ath10k-9887)
 define Download/ath10k-firmware-qca9887-ct
   $(call Download/ct-firmware,QCA9887,ath10k-9887)
-  HASH:=95dc106f98672bd9c7d3fe6881ed79ab079cb49b0a995650991b1beaff2b0101
+  HASH:=b3c738328427e124701a5735d65cde0f60e4172ae5bc23b00e5b16df7995dbd4
 endef
 $(eval $(call Download,ath10k-firmware-qca9887-ct))
 
 endef
 $(eval $(call Download,ath10k-firmware-qca9887-ct))
 
-QCA99X0_FIRMWARE_FILE_CT:=firmware-5-ct-full-community-9.bin-lede.004
+QCA9887_FIRMWARE_FILE_CT_HTT:=firmware-2-ct-full-htt-mgt-community-22.bin.lede.013
+define Download/ath10k-firmware-qca9887-ct-htt
+  $(call Download/ct-firmware-htt,QCA9887,ath10k-9887)
+  HASH:=4432ccee23133bbaa4a5552e50a1e7e889b257362603e05530e751b67c29b7b5
+endef
+$(eval $(call Download,ath10k-firmware-qca9887-ct-htt))
+
+
+QCA99X0_FIRMWARE_FILE_CT:=firmware-5-ct-full-community-12.bin-lede.013
 define Download/ath10k-firmware-qca99x0-ct
 define Download/ath10k-firmware-qca99x0-ct
-  $(call Download/ct-firmware,QCA99X0,ath10k-10-4)
-  HASH:=993c29fd64bb2a59b86d34f58601a1a48b83b541750bc511f78cc17152829b4d
+  $(call Download/ct-firmware,QCA99X0,ath10k-10-4b)
+  HASH:=6fa74a3fc87cba97dbc4a7213b760f8d997cd9c5f11900d47d387b23764cf20a
 endef
 $(eval $(call Download,ath10k-firmware-qca99x0-ct))
 
 endef
 $(eval $(call Download,ath10k-firmware-qca99x0-ct))
 
-QCA9984_FIRMWARE_FILE_CT:=firmware-5-ct-full-community-9.bin-lede.004
+QCA99X0_FIRMWARE_FILE_CT_HTT:=firmware-5-ct-full-htt-mgt-community-12.bin-lede.013
+define Download/ath10k-firmware-qca99x0-ct-htt
+  $(call Download/ct-firmware-htt,QCA99X0,ath10k-10-4b)
+  HASH:=68e92820c51270eba4f68b24654c4a9408902b2600762b70204f4cb5419bb714
+endef
+$(eval $(call Download,ath10k-firmware-qca99x0-ct-htt))
+
+
+QCA9984_FIRMWARE_FILE_CT:=firmware-5-ct-full-community-12.bin-lede.013
 define Download/ath10k-firmware-qca9984-ct
 define Download/ath10k-firmware-qca9984-ct
-  $(call Download/ct-firmware,QCA9984,ath10k-9984-10-4)
-  HASH:=d997eed9a8bc6809c01d367759ba8545c10e3be93ea1f33d6d753127ef0f7c5e
+  $(call Download/ct-firmware,QCA9984,ath10k-9984-10-4b)
+  HASH:=08aeb883bd2d9258e8f1907cca8a0d2eda1c559a66e228dadffd6798f6877c7d
 endef
 $(eval $(call Download,ath10k-firmware-qca9984-ct))
 
 endef
 $(eval $(call Download,ath10k-firmware-qca9984-ct))
 
-QCA9888_FIRMWARE_FILE_CT:=firmware-5-ct-full-community-9.bin-lede.004
+QCA9984_FIRMWARE_FILE_CT_HTT:=firmware-5-ct-full-htt-mgt-community-12.bin-lede.013
+define Download/ath10k-firmware-qca9984-ct-htt
+  $(call Download/ct-firmware-htt,QCA9984,ath10k-9984-10-4b)
+  HASH:=38ed59a2b3c66c10926706a21ae2d3aeaf83e589f19345a8f48d6520522e4fde
+endef
+$(eval $(call Download,ath10k-firmware-qca9984-ct-htt))
+
+
+QCA4019_FIRMWARE_FILE_CT:=firmware-5-ct-full-community-12.bin-lede.013
+define Download/ath10k-firmware-qca4019-ct
+  $(call Download/ct-firmware,QCA4019,ath10k-4019-10-4b)
+  HASH:=feca75fe89af9a3e998047f85ff3428676f4d574b770d51773bb419d0dd98e5a
+endef
+$(eval $(call Download,ath10k-firmware-qca4019-ct))
+
+QCA4019_FIRMWARE_FILE_CT_HTT:=firmware-5-ct-full-htt-mgt-community-12.bin-lede.013
+define Download/ath10k-firmware-qca4019-ct-htt
+  $(call Download/ct-firmware-htt,QCA4019,ath10k-4019-10-4b)
+  HASH:=6a4977689343f43edd934823512f031fd1a026e872004343b9952077f9607cb0
+endef
+$(eval $(call Download,ath10k-firmware-qca4019-ct-htt))
+
+
+QCA9888_FIRMWARE_FILE_CT:=firmware-5-ct-full-community-12.bin-lede.013
 define Download/ath10k-firmware-qca9888-ct
 define Download/ath10k-firmware-qca9888-ct
-  $(call Download/ct-firmware,QCA9888,ath10k-9888-10-4)
-  HASH:=bbaa71bc7dcaa264c5875e86639f174908fed09fbace975e325959d42f3754ff
+  $(call Download/ct-firmware,QCA9888,ath10k-9888-10-4b)
+  HASH:=d6a59c17bfbec1abc8498762d9f00b2449cab352feb8bef8b621771168376dbf
 endef
 $(eval $(call Download,ath10k-firmware-qca9888-ct))
 
 endef
 $(eval $(call Download,ath10k-firmware-qca9888-ct))
 
+QCA9888_FIRMWARE_FILE_CT_HTT:=firmware-5-ct-full-htt-mgt-community-12.bin-lede.013
+define Download/ath10k-firmware-qca9888-ct-htt
+  $(call Download/ct-firmware-htt,QCA9888,ath10k-9888-10-4b)
+  HASH:=fe242c0d56494975d7a1aeb6969d90cc21cb133fba99040d4da7a25fdb90d92c
+endef
+$(eval $(call Download,ath10k-firmware-qca9888-ct-htt))
+
+
 define Package/ath10k-firmware-qca99x0
 $(Package/ath10k-firmware-default)
   TITLE:=ath10k firmware for QCA99x0 devices
 define Package/ath10k-firmware-qca99x0
 $(Package/ath10k-firmware-default)
   TITLE:=ath10k firmware for QCA99x0 devices
@@ -104,6 +166,15 @@ $(Package/ath10k-firmware-default)
   TITLE:=ath10k CT 10.1 firmware for QCA988x devices
   SECTION:=firmware
   CATEGORY:=Firmware
   TITLE:=ath10k CT 10.1 firmware for QCA988x devices
   SECTION:=firmware
   CATEGORY:=Firmware
+  PROVIDES:=ath10k-firmware-qca988x
+endef
+define Package/ath10k-firmware-qca988x-ct-htt
+$(Package/ath10k-firmware-default)
+  TITLE:=ath10k CT 10.1 htt-mgt fw for QCA988x
+  SECTION:=firmware
+  CATEGORY:=Firmware
+  PROVIDES:=ath10k-firmware-qca988x
+  DEPENDS:=+!PACKAGE_kmod-ath10k-ct-smallbuffers:kmod-ath10k-ct
 endef
 
 define Package/ath10k-firmware-qca9887-ct
 endef
 
 define Package/ath10k-firmware-qca9887-ct
@@ -111,6 +182,15 @@ $(Package/ath10k-firmware-default)
   TITLE:=ath10k CT 10.1 firmware for QCA9887 devices
   SECTION:=firmware
   CATEGORY:=Firmware
   TITLE:=ath10k CT 10.1 firmware for QCA9887 devices
   SECTION:=firmware
   CATEGORY:=Firmware
+  PROVIDES:=ath10k-firmware-qca9887
+endef
+define Package/ath10k-firmware-qca9887-ct-htt
+$(Package/ath10k-firmware-default)
+  TITLE:=ath10k CT 10.1 htt-mgt fw for QCA9887
+  SECTION:=firmware
+  CATEGORY:=Firmware
+  PROVIDES:=ath10k-firmware-qca9887
+  DEPENDS:=+!PACKAGE_kmod-ath10k-ct-smallbuffers:kmod-ath10k-ct
 endef
 
 define Package/ath10k-firmware-qca988x-ct/description
 endef
 
 define Package/ath10k-firmware-qca988x-ct/description
@@ -121,6 +201,14 @@ This firmware will NOT be used unless the standard ath10k-firmware-qca988x
 is un-selected since the driver will try to load firmware-5.bin before
 firmware-2.bin
 endef
 is un-selected since the driver will try to load firmware-5.bin before
 firmware-2.bin
 endef
+define Package/ath10k-firmware-qca988x-ct-htt/description
+Alternative ath10k firmware for QCA988X from Candela Technologies.
+Uses normal HTT TX data path for management frames, which improves
+stability in busy networks and fixes .11r authentication.
+Enables IBSS and other features.  See:
+http://www.candelatech.com/ath10k-10.1.php
+This firmware selects and requires the ath10k-ct driver.
+endef
 
 define Package/ath10k-firmware-qca9887-ct/description
 Alternative ath10k firmware for QCA9887 from Candela Technologies.
 
 define Package/ath10k-firmware-qca9887-ct/description
 Alternative ath10k firmware for QCA9887 from Candela Technologies.
@@ -129,6 +217,14 @@ http://www.candelatech.com/ath10k-10.1.php
 This firmware conflicts with the standard 9887 firmware, so select only
 one.
 endef
 This firmware conflicts with the standard 9887 firmware, so select only
 one.
 endef
+define Package/ath10k-firmware-qca9887-ct-htt/description
+Alternative ath10k firmware for QCA9887 from Candela Technologies.
+Uses normal HTT TX data path for management frames, which improves
+stability in busy networks and fixes .11r authentication.
+Enables IBSS and other features.  See:
+http://www.candelatech.com/ath10k-10.1.php
+This firmware selects and requires the ath10k-ct driver.
+endef
 
 define Package/ath10k-firmware-qca99x0-ct/description
 Alternative ath10k firmware for QCA99x0 from Candela Technologies.
 
 define Package/ath10k-firmware-qca99x0-ct/description
 Alternative ath10k firmware for QCA99x0 from Candela Technologies.
@@ -137,6 +233,14 @@ http://www.candelatech.com/ath10k-10.4.php
 This firmware conflicts with the standard 99x0 firmware, so select only
 one.
 endef
 This firmware conflicts with the standard 99x0 firmware, so select only
 one.
 endef
+define Package/ath10k-firmware-qca99x0-ct-htt/description
+Alternative ath10k firmware for QCA99x0 from Candela Technologies.
+Uses normal HTT TX data path for management frames, which improves
+stability in busy networks and may be required for .11r authentication.
+Enables IBSS and other features.  See:
+http://www.candelatech.com/ath10k-10.4.php
+This firmware selects and requires the ath10k-ct driver.
+endef
 
 define Package/ath10k-firmware-qca9984-ct/description
 Alternative ath10k firmware for QCA9984 from Candela Technologies.
 
 define Package/ath10k-firmware-qca9984-ct/description
 Alternative ath10k firmware for QCA9984 from Candela Technologies.
@@ -145,6 +249,28 @@ http://www.candelatech.com/ath10k-10.4.php
 This firmware conflicts with the standard 9984 firmware, so select only
 one.
 endef
 This firmware conflicts with the standard 9984 firmware, so select only
 one.
 endef
+define Package/ath10k-firmware-qca9984-ct-htt/description
+Alternative ath10k firmware for QCA9984 from Candela Technologies.
+Uses normal HTT TX data path for management frames, which improves
+stability in busy networks and may be required for .11r authentication.
+Enables IBSS and other features.  See:
+http://www.candelatech.com/ath10k-10.4.php
+This firmware selects and requires the ath10k-ct driver.
+endef
+
+define Package/ath10k-firmware-qca4019-ct/description
+Alternative ath10k firmware for IPQ4019 radio from Candela Technologies.
+Enables IBSS and other features.  Works with standard or ath10k-ct driver.
+See:  http://www.candelatech.com/ath10k-10.4.php
+endef
+define Package/ath10k-firmware-qca4019-ct-htt/description
+Alternative ath10k firmware for IPQ4019 radio from Candela Technologies.
+Uses normal HTT TX data path for management frames, which improves
+stability in busy networks and may be required for .11r authentication.
+Enables IBSS and other features.
+See:  http://www.candelatech.com/ath10k-10.4.php
+This firmware selects and requires the ath10k-ct driver.
+endef
 
 define Package/ath10k-firmware-qca9888-ct/description
 Alternative ath10k firmware for QCA9886 and QCA9888 from Candela Technologies.
 
 define Package/ath10k-firmware-qca9888-ct/description
 Alternative ath10k firmware for QCA9886 and QCA9888 from Candela Technologies.
@@ -153,6 +279,15 @@ http://www.candelatech.com/ath10k-10.4.php
 This firmware conflicts with the standard 9886 and 9888 firmware, so select only
 one.
 endef
 This firmware conflicts with the standard 9886 and 9888 firmware, so select only
 one.
 endef
+define Package/ath10k-firmware-qca9888-ct-htt/description
+Alternative ath10k firmware for QCA9886 and QCA9888 from Candela Technologies.
+Uses normal HTT TX data path for management frames, which improves
+stability in busy networks and may be required for .11r authentication.
+Enables IBSS and other features.  See:
+http://www.candelatech.com/ath10k-10.4.php
+This firmware selects and requires the ath10k-ct driver.
+endef
+
 
 define Package/ath10k-firmware-qca99x0/description
 Standard ath10k firmware for QCA99x0 from QCA
 
 define Package/ath10k-firmware-qca99x0/description
 Standard ath10k firmware for QCA99x0 from QCA
@@ -162,25 +297,70 @@ endef
 
 define Package/ath10k-firmware-qca99x0-ct
 $(Package/ath10k-firmware-default)
 
 define Package/ath10k-firmware-qca99x0-ct
 $(Package/ath10k-firmware-default)
-  TITLE:=ath10k CT 10.4.3 firmware for QCA99x0 devices
+  TITLE:=ath10k CT 10.4 firmware for QCA99x0 devices
   SECTION:=firmware
   CATEGORY:=Firmware
   SECTION:=firmware
   CATEGORY:=Firmware
+  PROVIDES:=ath10k-firmware-qca99x0
+endef
+define Package/ath10k-firmware-qca99x0-ct-htt
+$(Package/ath10k-firmware-default)
+  TITLE:=ath10k CT 10.4 htt-mgt fw for QCA99x0
+  SECTION:=firmware
+  CATEGORY:=Firmware
+  PROVIDES:=ath10k-firmware-qca99x0
+  DEPENDS:=+!PACKAGE_kmod-ath10k-ct-smallbuffers:kmod-ath10k-ct
 endef
 
 define Package/ath10k-firmware-qca9984-ct
 $(Package/ath10k-firmware-default)
 endef
 
 define Package/ath10k-firmware-qca9984-ct
 $(Package/ath10k-firmware-default)
-  TITLE:=ath10k CT 10.4.3 firmware for QCA9984 devices
+  TITLE:=ath10k CT 10.4 firmware for QCA9984 devices
+  SECTION:=firmware
+  CATEGORY:=Firmware
+  PROVIDES:=ath10k-firmware-qca9984
+endef
+define Package/ath10k-firmware-qca9984-ct-htt
+$(Package/ath10k-firmware-default)
+  TITLE:=ath10k CT 10.4 htt-mgt fw for QCA9984
+  SECTION:=firmware
+  CATEGORY:=Firmware
+  PROVIDES:=ath10k-firmware-qca9984
+  DEPENDS:=+!PACKAGE_kmod-ath10k-ct-smallbuffers:kmod-ath10k-ct
+endef
+
+define Package/ath10k-firmware-qca4019-ct
+$(Package/ath10k-firmware-default)
+  TITLE:=ath10k CT 10.4 firmware for QCA4018/9
+  SECTION:=firmware
+  CATEGORY:=Firmware
+  PROVIDES:=ath10k-firmware-qca4019
+endef
+define Package/ath10k-firmware-qca4019-ct-htt
+$(Package/ath10k-firmware-default)
+  TITLE:=ath10k CT 10.4 htt-mgt for QCA4018/9
   SECTION:=firmware
   CATEGORY:=Firmware
   SECTION:=firmware
   CATEGORY:=Firmware
+  PROVIDES:=ath10k-firmware-qca4019
+  DEPENDS:=+!PACKAGE_kmod-ath10k-ct-smallbuffers:kmod-ath10k-ct
 endef
 
 define Package/ath10k-firmware-qca9888-ct
 $(Package/ath10k-firmware-default)
 endef
 
 define Package/ath10k-firmware-qca9888-ct
 $(Package/ath10k-firmware-default)
-  TITLE:=ath10k CT 10.4.3 firmware for QCA9886 and QCA9888 devices
+  TITLE:=ath10k CT 10.4 fw for QCA9886/8 devices
+  SECTION:=firmware
+  CATEGORY:=Firmware
+  PROVIDES:=ath10k-firmware-qca9888
+endef
+define Package/ath10k-firmware-qca9888-ct-htt
+$(Package/ath10k-firmware-default)
+  TITLE:=ath10k CT 10.4 htt-mgt fw for QCA9886/8
   SECTION:=firmware
   CATEGORY:=Firmware
   SECTION:=firmware
   CATEGORY:=Firmware
+  PROVIDES:=ath10k-firmware-qca9888
+  DEPENDS:=+!PACKAGE_kmod-ath10k-ct-smallbuffers:kmod-ath10k-ct
 endef
 
 endef
 
+
+
 define Package/ath10k-firmware-qca9984
 $(Package/ath10k-firmware-default)
   TITLE:=ath10k firmware for QCA9984 devices
 define Package/ath10k-firmware-qca9984
 $(Package/ath10k-firmware-default)
   TITLE:=ath10k firmware for QCA9984 devices
@@ -223,14 +403,14 @@ define Package/ath10k-firmware-qca4019/install
                $(PKG_BUILD_DIR)/QCA4019/hw1.0/board-2.bin \
                $(1)/lib/firmware/ath10k/QCA4019/hw1.0/
        $(INSTALL_DATA) \
                $(PKG_BUILD_DIR)/QCA4019/hw1.0/board-2.bin \
                $(1)/lib/firmware/ath10k/QCA4019/hw1.0/
        $(INSTALL_DATA) \
-               $(PKG_BUILD_DIR)/QCA4019/hw1.0/3.4/firmware-5.bin_10.4-3.4-00104 \
+               $(PKG_BUILD_DIR)/QCA4019/hw1.0/3.5.3/firmware-5.bin_10.4-3.5.3-00057 \
                $(1)/lib/firmware/ath10k/QCA4019/hw1.0/firmware-5.bin
 endef
 
 define Package/ath10k-firmware-qca9887/install
        $(INSTALL_DIR) $(1)/lib/firmware/ath10k/QCA9887/hw1.0
        $(INSTALL_DATA) \
                $(1)/lib/firmware/ath10k/QCA4019/hw1.0/firmware-5.bin
 endef
 
 define Package/ath10k-firmware-qca9887/install
        $(INSTALL_DIR) $(1)/lib/firmware/ath10k/QCA9887/hw1.0
        $(INSTALL_DATA) \
-               $(PKG_BUILD_DIR)/QCA9887/hw1.0/10.2.4-1.0/firmware-5.bin_10.2.4-1.0-00029 \
+               $(PKG_BUILD_DIR)/QCA9887/hw1.0/10.2.4-1.0/firmware-5.bin_10.2.4-1.0-00047 \
                $(1)/lib/firmware/ath10k/QCA9887/hw1.0/firmware-5.bin
        $(INSTALL_DATA) \
                $(PKG_BUILD_DIR)/QCA9887/hw1.0/board.bin \
                $(1)/lib/firmware/ath10k/QCA9887/hw1.0/firmware-5.bin
        $(INSTALL_DATA) \
                $(PKG_BUILD_DIR)/QCA9887/hw1.0/board.bin \
@@ -243,7 +423,7 @@ define Package/ath10k-firmware-qca9888/install
                $(PKG_BUILD_DIR)/QCA9888/hw2.0/board-2.bin \
                $(1)/lib/firmware/ath10k/QCA9888/hw2.0/board-2.bin
        $(INSTALL_DATA) \
                $(PKG_BUILD_DIR)/QCA9888/hw2.0/board-2.bin \
                $(1)/lib/firmware/ath10k/QCA9888/hw2.0/board-2.bin
        $(INSTALL_DATA) \
-               $(PKG_BUILD_DIR)/QCA9888/hw2.0/3.4/firmware-5.bin_10.4-3.4-00104 \
+               $(PKG_BUILD_DIR)/QCA9888/hw2.0/3.5.3/firmware-5.bin_10.4-3.5.3-00053 \
                $(1)/lib/firmware/ath10k/QCA9888/hw2.0/firmware-5.bin
 endef
 
                $(1)/lib/firmware/ath10k/QCA9888/hw2.0/firmware-5.bin
 endef
 
@@ -253,10 +433,53 @@ define Package/ath10k-firmware-qca988x/install
                $(PKG_BUILD_DIR)/QCA988X/hw2.0/board.bin \
                $(1)/lib/firmware/ath10k/QCA988X/hw2.0/
        $(INSTALL_DATA) \
                $(PKG_BUILD_DIR)/QCA988X/hw2.0/board.bin \
                $(1)/lib/firmware/ath10k/QCA988X/hw2.0/
        $(INSTALL_DATA) \
-               $(PKG_BUILD_DIR)/QCA988X/hw2.0/10.2.4-1.0/firmware-5.bin_10.2.4-1.0-00029 \
+               $(PKG_BUILD_DIR)/QCA988X/hw2.0/10.2.4-1.0/firmware-5.bin_10.2.4-1.0-00047 \
                $(1)/lib/firmware/ath10k/QCA988X/hw2.0/firmware-5.bin
 endef
 
                $(1)/lib/firmware/ath10k/QCA988X/hw2.0/firmware-5.bin
 endef
 
+define Package/ath10k-firmware-qca6174/install
+       $(INSTALL_DIR) $(1)/lib/firmware/ath10k/QCA6174/hw2.1
+       $(INSTALL_DATA) \
+               $(PKG_BUILD_DIR)/QCA6174/hw2.1/board-2.bin \
+               $(1)/lib/firmware/ath10k/QCA6174/hw2.1/
+       $(INSTALL_DATA) \
+               $(PKG_BUILD_DIR)/QCA6174/hw2.1/firmware-5.bin_SW_RM.1.1.1-00157-QCARMSWPZ-1 \
+               $(1)/lib/firmware/ath10k/QCA6174/hw2.1/firmware-5.bin
+       $(INSTALL_DIR) $(1)/lib/firmware/ath10k/QCA6174/hw3.0
+       $(INSTALL_DATA) \
+               $(PKG_BUILD_DIR)/QCA6174/hw3.0/board-2.bin \
+               $(1)/lib/firmware/ath10k/QCA6174/hw3.0/
+       $(INSTALL_DATA) \
+               $(PKG_BUILD_DIR)/QCA6174/hw3.0/4.4.1.c1/firmware-6.bin_RM.4.4.1.c1-00042-QCARMSWP-1 \
+               $(1)/lib/firmware/ath10k/QCA6174/hw3.0/firmware-6.bin
+endef
+
+define Package/ath10k-firmware-qca99x0/install
+       $(INSTALL_DIR) $(1)/lib/firmware/ath10k/QCA99X0/hw2.0
+       $(INSTALL_DATA) \
+               $(DL_DIR)/$(QCA99X0_BOARD_FILE) \
+               $(1)/lib/firmware/ath10k/QCA99X0/hw2.0/board-2.bin
+       $(INSTALL_DATA) \
+               $(PKG_BUILD_DIR)/QCA99X0/hw2.0/boardData_AR900B_CUS239_5G_v2_001.bin \
+               $(1)/lib/firmware/ath10k/QCA99X0/hw2.0/board.bin
+       $(INSTALL_DATA) \
+               $(PKG_BUILD_DIR)/QCA99X0/hw2.0/firmware-5.bin_10.4.1.00030-1 \
+               $(1)/lib/firmware/ath10k/QCA99X0/hw2.0/firmware-5.bin
+endef
+
+define Package/ath10k-firmware-qca9984/install
+       $(INSTALL_DIR) $(1)/lib/firmware/ath10k/QCA9984/hw1.0
+       $(INSTALL_DATA) \
+               $(PKG_BUILD_DIR)/QCA9984/hw1.0/board-2.bin \
+               $(1)/lib/firmware/ath10k/QCA9984/hw1.0/board-2.bin
+       $(INSTALL_DATA) \
+               $(PKG_BUILD_DIR)/QCA9984/hw1.0/3.5.3/firmware-5.bin_10.4-3.5.3-00053 \
+               $(1)/lib/firmware/ath10k/QCA9984/hw1.0/firmware-5.bin
+endef
+
+
+# CT related firmware
+
 define Package/ath10k-firmware-qca9887-ct/install
        $(INSTALL_DIR) $(1)/lib/firmware/ath10k/QCA9887/hw1.0
        $(INSTALL_DATA) \
 define Package/ath10k-firmware-qca9887-ct/install
        $(INSTALL_DIR) $(1)/lib/firmware/ath10k/QCA9887/hw1.0
        $(INSTALL_DATA) \
@@ -266,6 +489,15 @@ define Package/ath10k-firmware-qca9887-ct/install
                $(PKG_BUILD_DIR)/QCA9887/hw1.0/board.bin \
                $(1)/lib/firmware/ath10k/QCA9887/hw1.0/board.bin
 endef
                $(PKG_BUILD_DIR)/QCA9887/hw1.0/board.bin \
                $(1)/lib/firmware/ath10k/QCA9887/hw1.0/board.bin
 endef
+define Package/ath10k-firmware-qca9887-ct-htt/install
+       $(INSTALL_DIR) $(1)/lib/firmware/ath10k/QCA9887/hw1.0
+       $(INSTALL_DATA) \
+               $(DL_DIR)/$(call CT_FIRMWARE_FILE_HTT,QCA9887) \
+               $(1)/lib/firmware/ath10k/QCA9887/hw1.0/ct-firmware-2.bin
+       $(INSTALL_DATA) \
+               $(PKG_BUILD_DIR)/QCA9887/hw1.0/board.bin \
+               $(1)/lib/firmware/ath10k/QCA9887/hw1.0/board.bin
+endef
 
 define Package/ath10k-firmware-qca988x-ct/install
        $(INSTALL_DIR) $(1)/lib/firmware/ath10k/QCA988X/hw2.0
 
 define Package/ath10k-firmware-qca988x-ct/install
        $(INSTALL_DIR) $(1)/lib/firmware/ath10k/QCA988X/hw2.0
@@ -276,13 +508,17 @@ define Package/ath10k-firmware-qca988x-ct/install
                $(DL_DIR)/$(call CT_FIRMWARE_FILE,QCA988X) \
                $(1)/lib/firmware/ath10k/QCA988X/hw2.0/firmware-2.bin
 endef
                $(DL_DIR)/$(call CT_FIRMWARE_FILE,QCA988X) \
                $(1)/lib/firmware/ath10k/QCA988X/hw2.0/firmware-2.bin
 endef
-
-define Package/ath10k-firmware-qca6174/install
-       $(INSTALL_DIR) $(1)/lib/firmware/ath10k
-       $(CP) $(PKG_BUILD_DIR)/QCA6174 $(1)/lib/firmware/ath10k/
+define Package/ath10k-firmware-qca988x-ct-htt/install
+       $(INSTALL_DIR) $(1)/lib/firmware/ath10k/QCA988X/hw2.0
+       $(INSTALL_DATA) \
+               $(PKG_BUILD_DIR)/QCA988X/hw2.0/board.bin \
+               $(1)/lib/firmware/ath10k/QCA988X/hw2.0/
+       $(INSTALL_DATA) \
+               $(DL_DIR)/$(call CT_FIRMWARE_FILE_HTT,QCA988X) \
+               $(1)/lib/firmware/ath10k/QCA988X/hw2.0/ct-firmware-2.bin
 endef
 
 endef
 
-define Package/ath10k-firmware-qca99x0/install
+define Package/ath10k-firmware-qca99x0-ct/install
        $(INSTALL_DIR) $(1)/lib/firmware/ath10k/QCA99X0/hw2.0
        $(INSTALL_DATA) \
                $(DL_DIR)/$(QCA99X0_BOARD_FILE) \
        $(INSTALL_DIR) $(1)/lib/firmware/ath10k/QCA99X0/hw2.0
        $(INSTALL_DATA) \
                $(DL_DIR)/$(QCA99X0_BOARD_FILE) \
@@ -291,11 +527,10 @@ define Package/ath10k-firmware-qca99x0/install
                $(PKG_BUILD_DIR)/QCA99X0/hw2.0/boardData_AR900B_CUS239_5G_v2_001.bin \
                $(1)/lib/firmware/ath10k/QCA99X0/hw2.0/board.bin
        $(INSTALL_DATA) \
                $(PKG_BUILD_DIR)/QCA99X0/hw2.0/boardData_AR900B_CUS239_5G_v2_001.bin \
                $(1)/lib/firmware/ath10k/QCA99X0/hw2.0/board.bin
        $(INSTALL_DATA) \
-               $(PKG_BUILD_DIR)/QCA99X0/hw2.0/firmware-5.bin_10.4.1.00030-1 \
+               $(DL_DIR)/$(call CT_FIRMWARE_FILE,QCA99X0) \
                $(1)/lib/firmware/ath10k/QCA99X0/hw2.0/firmware-5.bin
 endef
                $(1)/lib/firmware/ath10k/QCA99X0/hw2.0/firmware-5.bin
 endef
-
-define Package/ath10k-firmware-qca99x0-ct/install
+define Package/ath10k-firmware-qca99x0-ct-htt/install
        $(INSTALL_DIR) $(1)/lib/firmware/ath10k/QCA99X0/hw2.0
        $(INSTALL_DATA) \
                $(DL_DIR)/$(QCA99X0_BOARD_FILE) \
        $(INSTALL_DIR) $(1)/lib/firmware/ath10k/QCA99X0/hw2.0
        $(INSTALL_DATA) \
                $(DL_DIR)/$(QCA99X0_BOARD_FILE) \
@@ -304,28 +539,46 @@ define Package/ath10k-firmware-qca99x0-ct/install
                $(PKG_BUILD_DIR)/QCA99X0/hw2.0/boardData_AR900B_CUS239_5G_v2_001.bin \
                $(1)/lib/firmware/ath10k/QCA99X0/hw2.0/board.bin
        $(INSTALL_DATA) \
                $(PKG_BUILD_DIR)/QCA99X0/hw2.0/boardData_AR900B_CUS239_5G_v2_001.bin \
                $(1)/lib/firmware/ath10k/QCA99X0/hw2.0/board.bin
        $(INSTALL_DATA) \
-               $(DL_DIR)/$(call CT_FIRMWARE_FILE,QCA99X0) \
-               $(1)/lib/firmware/ath10k/QCA99X0/hw2.0/firmware-5.bin
+               $(DL_DIR)/$(call CT_FIRMWARE_FILE_HTT,QCA99X0) \
+               $(1)/lib/firmware/ath10k/QCA99X0/hw2.0/ct-firmware-5.bin
 endef
 
 endef
 
-define Package/ath10k-firmware-qca9984/install
+define Package/ath10k-firmware-qca9984-ct/install
        $(INSTALL_DIR) $(1)/lib/firmware/ath10k/QCA9984/hw1.0
        $(INSTALL_DATA) \
                $(PKG_BUILD_DIR)/QCA9984/hw1.0/board-2.bin \
                $(1)/lib/firmware/ath10k/QCA9984/hw1.0/board-2.bin
        $(INSTALL_DATA) \
        $(INSTALL_DIR) $(1)/lib/firmware/ath10k/QCA9984/hw1.0
        $(INSTALL_DATA) \
                $(PKG_BUILD_DIR)/QCA9984/hw1.0/board-2.bin \
                $(1)/lib/firmware/ath10k/QCA9984/hw1.0/board-2.bin
        $(INSTALL_DATA) \
-               $(PKG_BUILD_DIR)/QCA9984/hw1.0/3.4/firmware-5.bin_10.4-3.4-00104 \
+               $(DL_DIR)/$(call CT_FIRMWARE_FILE,QCA9984) \
                $(1)/lib/firmware/ath10k/QCA9984/hw1.0/firmware-5.bin
 endef
                $(1)/lib/firmware/ath10k/QCA9984/hw1.0/firmware-5.bin
 endef
-
-define Package/ath10k-firmware-qca9984-ct/install
+define Package/ath10k-firmware-qca9984-ct-htt/install
        $(INSTALL_DIR) $(1)/lib/firmware/ath10k/QCA9984/hw1.0
        $(INSTALL_DATA) \
                $(PKG_BUILD_DIR)/QCA9984/hw1.0/board-2.bin \
                $(1)/lib/firmware/ath10k/QCA9984/hw1.0/board-2.bin
        $(INSTALL_DATA) \
        $(INSTALL_DIR) $(1)/lib/firmware/ath10k/QCA9984/hw1.0
        $(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)/$(call CT_FIRMWARE_FILE,QCA9984) \
-               $(1)/lib/firmware/ath10k/QCA9984/hw1.0/firmware-5.bin
+               $(DL_DIR)/$(call CT_FIRMWARE_FILE_HTT,QCA9984) \
+               $(1)/lib/firmware/ath10k/QCA9984/hw1.0/ct-firmware-5.bin
+endef
+
+define Package/ath10k-firmware-qca4019-ct/install
+       $(INSTALL_DIR) $(1)/lib/firmware/ath10k/QCA4019/hw1.0
+       $(INSTALL_DATA) \
+               $(PKG_BUILD_DIR)/QCA4019/hw1.0/board-2.bin \
+               $(1)/lib/firmware/ath10k/QCA4019/hw1.0/
+       $(INSTALL_DATA) \
+               $(DL_DIR)/$(call CT_FIRMWARE_FILE,QCA4019) \
+               $(1)/lib/firmware/ath10k/QCA4019/hw1.0/firmware-5.bin
+endef
+define Package/ath10k-firmware-qca4019-ct-htt/install
+       $(INSTALL_DIR) $(1)/lib/firmware/ath10k/QCA4019/hw1.0
+       $(INSTALL_DATA) \
+               $(PKG_BUILD_DIR)/QCA4019/hw1.0/board-2.bin \
+               $(1)/lib/firmware/ath10k/QCA4019/hw1.0/
+       $(INSTALL_DATA) \
+               $(DL_DIR)/$(call CT_FIRMWARE_FILE_HTT,QCA4019) \
+               $(1)/lib/firmware/ath10k/QCA4019/hw1.0/ct-firmware-5.bin
 endef
 
 define Package/ath10k-firmware-qca9888-ct/install
 endef
 
 define Package/ath10k-firmware-qca9888-ct/install
@@ -340,17 +593,36 @@ define Package/ath10k-firmware-qca9888-ct/install
                $(DL_DIR)/$(call CT_FIRMWARE_FILE,QCA9888) \
                $(1)/lib/firmware/ath10k/QCA9888/hw2.0/firmware-5.bin
 endef
                $(DL_DIR)/$(call CT_FIRMWARE_FILE,QCA9888) \
                $(1)/lib/firmware/ath10k/QCA9888/hw2.0/firmware-5.bin
 endef
+define Package/ath10k-firmware-qca9888-ct-htt/install
+       $(INSTALL_DIR) $(1)/lib/firmware/ath10k/QCA9888/hw2.0
+       ln -s \
+               ../../cal-pci-0000:01:00.0.bin \
+               $(1)/lib/firmware/ath10k/QCA9888/hw2.0/board.bin
+       $(INSTALL_DATA) \
+               $(PKG_BUILD_DIR)/QCA9888/hw2.0/board-2.bin \
+               $(1)/lib/firmware/ath10k/QCA9888/hw2.0/board-2.bin
+       $(INSTALL_DATA) \
+               $(DL_DIR)/$(call CT_FIRMWARE_FILE_HTT,QCA9888) \
+               $(1)/lib/firmware/ath10k/QCA9888/hw2.0/ct-firmware-5.bin
+endef
 
 $(eval $(call BuildPackage,ath10k-firmware-qca9887))
 
 $(eval $(call BuildPackage,ath10k-firmware-qca9887))
-$(eval $(call BuildPackage,ath10k-firmware-qca9888))
+#$(eval $(call BuildPackage,ath10k-firmware-qca9888))
 $(eval $(call BuildPackage,ath10k-firmware-qca988x))
 $(eval $(call BuildPackage,ath10k-firmware-qca988x))
-$(eval $(call BuildPackage,ath10k-firmware-qca99x0))
-$(eval $(call BuildPackage,ath10k-firmware-qca6174))
-$(eval $(call BuildPackage,ath10k-firmware-qca9984))
-$(eval $(call BuildPackage,ath10k-firmware-qca4019))
+#$(eval $(call BuildPackage,ath10k-firmware-qca99x0))
+#$(eval $(call BuildPackage,ath10k-firmware-qca6174))
+#$(eval $(call BuildPackage,ath10k-firmware-qca9984))
+#$(eval $(call BuildPackage,ath10k-firmware-qca4019))
 
 $(eval $(call BuildPackage,ath10k-firmware-qca9887-ct))
 
 $(eval $(call BuildPackage,ath10k-firmware-qca9887-ct))
+$(eval $(call BuildPackage,ath10k-firmware-qca9887-ct-htt))
 $(eval $(call BuildPackage,ath10k-firmware-qca988x-ct))
 $(eval $(call BuildPackage,ath10k-firmware-qca988x-ct))
+$(eval $(call BuildPackage,ath10k-firmware-qca988x-ct-htt))
 $(eval $(call BuildPackage,ath10k-firmware-qca99x0-ct))
 $(eval $(call BuildPackage,ath10k-firmware-qca99x0-ct))
+$(eval $(call BuildPackage,ath10k-firmware-qca99x0-ct-htt))
 $(eval $(call BuildPackage,ath10k-firmware-qca9984-ct))
 $(eval $(call BuildPackage,ath10k-firmware-qca9984-ct))
+$(eval $(call BuildPackage,ath10k-firmware-qca9984-ct-htt))
+$(eval $(call BuildPackage,ath10k-firmware-qca4019-ct))
+$(eval $(call BuildPackage,ath10k-firmware-qca4019-ct-htt))
 $(eval $(call BuildPackage,ath10k-firmware-qca9888-ct))
 $(eval $(call BuildPackage,ath10k-firmware-qca9888-ct))
+$(eval $(call BuildPackage,ath10k-firmware-qca9888-ct-htt))