[PATCH 19.07 7/8] ath10k-ct-firmware: add htt-mgt variants
Baptiste Jonglez
baptiste at bitsofnetworks.org
Thu Sep 3 13:14:18 EDT 2020
Adrian pointed out a possible issue with these backpots: combining patches
5/8 and 7/8 basically mean that a different firmware variant will be
distributed in "ath10k-firmware-*-ct-htt" packages.
Currently in 19.07 the ath10k-firmware-*-ct-htt packages bundle this
firmware variant: firmware-{2,5}-ct-full-htt-mgt-community
With patch 5/8 and 7/8, the same ath10k-firmware-*-ct-htt packages would
instead bundle this firmware variant: firmware-{2,5}-ct-htt-mgt-community
The description of this new firmware variant is copied below:
The non-full one (hence forth 'diet') compiles out a lot of firmware
features that ath10k does not use. This saves a lot of resources and
lets one configure more stations/vdevs/etc using fwcfg.
These HTT firmwares are not used in default openwrt images, but they could
be used downstream: it does not seem wise to distribute a different
firmware variant under the same package name.
I will send a v2 fixing this.
On 25-08-20, Baptiste Jonglez wrote:
> From: Álvaro Fernández Rojas <noltari at gmail.com>
>
> For wave-2, there is now a new variant: htt-mgt-community (vs the old
> full-htt-mgt-community).
>
> The non-full one (hence forth 'diet') compiles out a lot of firmware features
> that ath10k does not use. This saves a lot of resources and lets one
> configure more stations/vdevs/etc using fwcfg.
>
> Signed-off-by: Álvaro Fernández Rojas <noltari at gmail.com>
> (cherry picked from commit a882bfce052e78bd344dcbd36efb32acf1340d7a)
> ---
> package/firmware/ath10k-ct-firmware/Makefile | 155 ++++++++++++++++++-
> 1 file changed, 154 insertions(+), 1 deletion(-)
>
> diff --git a/package/firmware/ath10k-ct-firmware/Makefile b/package/firmware/ath10k-ct-firmware/Makefile
> index 6a35e9c75c..18370b7d85 100644
> --- a/package/firmware/ath10k-ct-firmware/Makefile
> +++ b/package/firmware/ath10k-ct-firmware/Makefile
> @@ -2,7 +2,7 @@ include $(TOPDIR)/rules.mk
>
> PKG_NAME:=ath10k-ct-firmware
> PKG_VERSION:=2020-04-24
> -PKG_RELEASE:=1
> +PKG_RELEASE:=2
>
> include $(INCLUDE_DIR)/package.mk
>
> @@ -75,6 +75,7 @@ $(eval $(call Download,qca9888-board2))
>
> CT_FIRMWARE_FILE = $(1)-$($(1)_FIRMWARE_FILE_CT)
> CT_FIRMWARE_FILE_FULL_HTT = $(1)-$($(1)_FIRMWARE_FILE_CT_FULL_HTT)
> +CT_FIRMWARE_FILE_HTT = $(1)-$($(1)_FIRMWARE_FILE_CT_HTT)
>
> define Download/ct-firmware
> URL:=https://www.candelatech.com/downloads/$(2)
> @@ -88,6 +89,12 @@ define Download/ct-firmware-full-htt
> URL_FILE:=$($(1)_FIRMWARE_FILE_CT_FULL_HTT)
> endef
>
> +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.018
> define Download/ath10k-firmware-qca988x-ct
> $(call Download/ct-firmware,QCA988X,)
> @@ -132,6 +139,13 @@ define Download/ath10k-firmware-qca99x0-ct-full-htt
> endef
> $(eval $(call Download,ath10k-firmware-qca99x0-ct-full-htt))
>
> +QCA99X0_FIRMWARE_FILE_CT_HTT:=firmware-5-ct-htt-mgt-community-12.bin-lede.018
> +define Download/ath10k-firmware-qca99x0-ct-htt
> + $(call Download/ct-firmware-htt,QCA99X0,ath10k-10-4b)
> + HASH:=4d4f74afca487d452f244cd48304cf9710d8941eb97a6346a949ed6b6877d657
> +endef
> +$(eval $(call Download,ath10k-firmware-qca99x0-ct-htt))
> +
>
> QCA9984_FIRMWARE_FILE_CT:=firmware-5-ct-full-community-12.bin-lede.018
> define Download/ath10k-firmware-qca9984-ct
> @@ -147,6 +161,13 @@ define Download/ath10k-firmware-qca9984-ct-full-htt
> endef
> $(eval $(call Download,ath10k-firmware-qca9984-ct-full-htt))
>
> +QCA9984_FIRMWARE_FILE_CT_HTT:=firmware-5-ct-htt-mgt-community-12.bin-lede.018
> +define Download/ath10k-firmware-qca9984-ct-htt
> + $(call Download/ct-firmware-htt,QCA9984,ath10k-9984-10-4b)
> + HASH:=ee593fb5724d75c372de02ac7894e1630ee9f909fcb2e2bbf17aadef67cb9d43
> +endef
> +$(eval $(call Download,ath10k-firmware-qca9984-ct-htt))
> +
>
> QCA4019_FIRMWARE_FILE_CT:=firmware-5-ct-full-community-12.bin-lede.018
> define Download/ath10k-firmware-qca4019-ct
> @@ -162,6 +183,13 @@ define Download/ath10k-firmware-qca4019-ct-full-htt
> endef
> $(eval $(call Download,ath10k-firmware-qca4019-ct-full-htt))
>
> +QCA4019_FIRMWARE_FILE_CT_HTT:=firmware-5-ct-htt-mgt-community-12.bin-lede.018
> +define Download/ath10k-firmware-qca4019-ct-htt
> + $(call Download/ct-firmware-htt,QCA4019,ath10k-4019-10-4b)
> + HASH:=51fe06f66365771647d16039cca8b541de3d642c45271977a4cfd433c2c5d45b
> +endef
> +$(eval $(call Download,ath10k-firmware-qca4019-ct-htt))
> +
>
> QCA9888_FIRMWARE_FILE_CT:=firmware-5-ct-full-community-12.bin-lede.018
> define Download/ath10k-firmware-qca9888-ct
> @@ -177,6 +205,13 @@ define Download/ath10k-firmware-qca9888-ct-full-htt
> endef
> $(eval $(call Download,ath10k-firmware-qca9888-ct-full-htt))
>
> +QCA9888_FIRMWARE_FILE_CT_HTT:=firmware-5-ct-htt-mgt-community-12.bin-lede.018
> +define Download/ath10k-firmware-qca9888-ct-htt
> + $(call Download/ct-firmware-htt,QCA9888,ath10k-9888-10-4b)
> + HASH:=6c692141155f5bb74c0117553d5d48ff2aaba73bd4d5e90a5044a5e2ec0faab0
> +endef
> +$(eval $(call Download,ath10k-firmware-qca9888-ct-htt))
> +
>
> define Package/ath10k-ct-firmware-default
> SECTION:=firmware
> @@ -232,6 +267,14 @@ $(Package/ath10k-ct-firmware-default)
> PROVIDES:=ath10k-firmware-qca99x0
> DEPENDS:=+!PACKAGE_kmod-ath10k-ct-smallbuffers:kmod-ath10k-ct
> 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-ct-firmware-default)
> @@ -248,6 +291,14 @@ $(Package/ath10k-ct-firmware-default)
> PROVIDES:=ath10k-firmware-qca9984
> DEPENDS:=+!PACKAGE_kmod-ath10k-ct-smallbuffers:kmod-ath10k-ct
> 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-ct-firmware-default)
> @@ -264,6 +315,14 @@ $(Package/ath10k-ct-firmware-default)
> PROVIDES:=ath10k-firmware-qca4019
> DEPENDS:=+!PACKAGE_kmod-ath10k-ct-smallbuffers:kmod-ath10k-ct
> 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
> + PROVIDES:=ath10k-firmware-qca4019
> + DEPENDS:=+!PACKAGE_kmod-ath10k-ct-smallbuffers:kmod-ath10k-ct
> +endef
>
> define Package/ath10k-firmware-qca9888-ct
> $(Package/ath10k-ct-firmware-default)
> @@ -280,6 +339,14 @@ $(Package/ath10k-ct-firmware-default)
> PROVIDES:=ath10k-firmware-qca9888
> DEPENDS:=+!PACKAGE_kmod-ath10k-ct-smallbuffers:kmod-ath10k-ct
> 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
> + PROVIDES:=ath10k-firmware-qca9888
> + DEPENDS:=+!PACKAGE_kmod-ath10k-ct-smallbuffers:kmod-ath10k-ct
> +endef
>
>
> define Package/ath10k-firmware-qca9887-ct/description
> @@ -330,6 +397,16 @@ 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-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.
> +This firmware lacks a lot of features that ath10k does not use, saving
> +a lot of resources.
> +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.
> @@ -346,6 +423,16 @@ 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-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.
> +This firmware lacks a lot of features that ath10k does not use, saving
> +a lot of resources.
> +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.
> @@ -360,6 +447,16 @@ 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-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.
> +This firmware lacks a lot of features that ath10k does not use, saving
> +a lot of resources.
> +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.
> @@ -376,6 +473,16 @@ 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-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.
> +This firmware lacks a lot of features that ath10k does not use, saving
> +a lot of resources.
> +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 Build/Compile
> @@ -445,6 +552,18 @@ define Package/ath10k-firmware-qca99x0-ct-full-htt/install
> $(DL_DIR)/$(call CT_FIRMWARE_FILE_FULL_HTT,QCA99X0) \
> $(1)/lib/firmware/ath10k/QCA99X0/hw2.0/ct-firmware-5.bin
> endef
> +define Package/ath10k-firmware-qca99x0-ct-htt/install
> + $(INSTALL_DIR) $(1)/lib/firmware/ath10k/QCA99X0/hw2.0
> + $(INSTALL_DATA) \
> + $(DL_DIR)/$(QCA99X0_BOARD2_FILE) \
> + $(1)/lib/firmware/ath10k/QCA99X0/hw2.0/board-2.bin
> + $(INSTALL_DATA) \
> + $(DL_DIR)/$(QCA99X0_BOARD_FILE) \
> + $(1)/lib/firmware/ath10k/QCA99X0/hw2.0/board.bin
> + $(INSTALL_DATA) \
> + $(DL_DIR)/$(call CT_FIRMWARE_FILE_HTT,QCA99X0) \
> + $(1)/lib/firmware/ath10k/QCA99X0/hw2.0/ct-firmware-5.bin
> +endef
>
> define Package/ath10k-firmware-qca9984-ct/install
> $(INSTALL_DIR) $(1)/lib/firmware/ath10k/QCA9984/hw1.0
> @@ -464,6 +583,15 @@ define Package/ath10k-firmware-qca9984-ct-full-htt/install
> $(DL_DIR)/$(call CT_FIRMWARE_FILE_FULL_HTT,QCA9984) \
> $(1)/lib/firmware/ath10k/QCA9984/hw1.0/ct-firmware-5.bin
> endef
> +define Package/ath10k-firmware-qca9984-ct-htt/install
> + $(INSTALL_DIR) $(1)/lib/firmware/ath10k/QCA9984/hw1.0
> + $(INSTALL_DATA) \
> + $(DL_DIR)/$(QCA9984_BOARD2_FILE) \
> + $(1)/lib/firmware/ath10k/QCA9984/hw1.0/board-2.bin
> + $(INSTALL_DATA) \
> + $(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
> @@ -483,6 +611,15 @@ define Package/ath10k-firmware-qca4019-ct-full-htt/install
> $(DL_DIR)/$(call CT_FIRMWARE_FILE_FULL_HTT,QCA4019) \
> $(1)/lib/firmware/ath10k/QCA4019/hw1.0/ct-firmware-5.bin
> endef
> +define Package/ath10k-firmware-qca4019-ct-htt/install
> + $(INSTALL_DIR) $(1)/lib/firmware/ath10k/QCA4019/hw1.0
> + $(INSTALL_DATA) \
> + $(DL_DIR)/$(QCA4019_BOARD2_FILE) \
> + $(1)/lib/firmware/ath10k/QCA4019/hw1.0/board-2.bin
> + $(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
> $(INSTALL_DIR) $(1)/lib/firmware/ath10k/QCA9888/hw2.0
> @@ -508,6 +645,18 @@ define Package/ath10k-firmware-qca9888-ct-full-htt/install
> $(DL_DIR)/$(call CT_FIRMWARE_FILE_FULL_HTT,QCA9888) \
> $(1)/lib/firmware/ath10k/QCA9888/hw2.0/ct-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) \
> + $(DL_DIR)/$(QCA9888_BOARD2_FILE) \
> + $(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-ct))
> @@ -516,9 +665,13 @@ $(eval $(call BuildPackage,ath10k-firmware-qca988x-ct))
> $(eval $(call BuildPackage,ath10k-firmware-qca988x-ct-full-htt))
> $(eval $(call BuildPackage,ath10k-firmware-qca99x0-ct))
> $(eval $(call BuildPackage,ath10k-firmware-qca99x0-ct-full-htt))
> +$(eval $(call BuildPackage,ath10k-firmware-qca99x0-ct-htt))
> $(eval $(call BuildPackage,ath10k-firmware-qca9984-ct))
> $(eval $(call BuildPackage,ath10k-firmware-qca9984-ct-full-htt))
> +$(eval $(call BuildPackage,ath10k-firmware-qca9984-ct-htt))
> $(eval $(call BuildPackage,ath10k-firmware-qca4019-ct))
> $(eval $(call BuildPackage,ath10k-firmware-qca4019-ct-full-htt))
> +$(eval $(call BuildPackage,ath10k-firmware-qca4019-ct-htt))
> $(eval $(call BuildPackage,ath10k-firmware-qca9888-ct))
> $(eval $(call BuildPackage,ath10k-firmware-qca9888-ct-full-htt))
> +$(eval $(call BuildPackage,ath10k-firmware-qca9888-ct-htt))
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 833 bytes
Desc: not available
URL: <http://lists.openwrt.org/pipermail/openwrt-devel/attachments/20200903/5b29c51a/attachment.sig>
More information about the openwrt-devel
mailing list