Ath10k firmware versions for the QCA988X

Instead of reviving this dead thread, I am going to pose the same question here but with some context/further research.

OpenWrt currently contains two different flavors of ath10k firmware. The "classic" and the "CandelaTech" version.

The classic has two different "branches":

  1. 10.2.4-1
  2. 10.2.4.70

There is no changelog between the two apart from a recommendation in the Kalle's repository to choose 10.2.4-1 as per the recommendations of QCA's firmware team: https://github.com/kvalo/ath10k-firmware/commit/6912a8c57f13cdcde019219fc096da2c7cf453f1

However, there is a changelog for the .70 branch here, it seems to be used by ChromiumOS: https://chromium.googlesource.com/chromiumos/overlays/chromiumos-overlay/+log/master/net-wireless/ath10k-firmware

According to this, the .70 branch adds "adds support for management frames over normal
packet transport (presumably host-target-transport/HTT)interface instead of over the WMI management interface".

The CT also has two different versions:

  1. 10.1
  2. 10.1-HTT

The CT version gets updates with a proper changelog and can support IBSS. However, it is based on an older firmware. Apparently they had a 10.2.4 version but it was found to be full buggy, thus they opted to backport features to 10.1 instead.

My questions are:

  1. Besides asking the brick wall that is CAF/QCA, would anyone happen to know what makes the 10.2.4-1 branch better than the 10.2.4.70 branch in the classic firmware (besides HTT)?
  2. How can we confirm if 10.2.4.70 is really using HTT for management frames like the 10.1-HTT CT version?
  3. Why does CT use 10.1 instead of 10.2.4? I can't seem to find any reason why other than "there are bugs".
  4. Can the QCA988X (i.e. Wave 1) qualcomm chipsets support:

As this commit is relatively easy to backport to mac80211-5.4, but there seems to be no configuration knobs or anything to enable it.

As for my findings from testing the various different firmwares, I experience better throughput and responsiveness on ath10k classic using version 10.2.4.70.70 as compared to latest 10.2.4-1-0047 or ath10k-ct(-htt)-v017. In addition, I am using the classic driver with https://github.com/openwrt/openwrt/commit/1e27befe63ff4c69f110c7310316f4af75ee63e9#diff-d87df7e70af64eb54b7d1901c6d1ddfd reverted.

On top of SQM, I experience latencies from fast.com tests at 24ms loaded and 20 ms unloaded.

2 Likes

Hi!
Sorry to revive this old thread but why are there no answer to this?
candela website lists firmware 10.1 as latest version for QCA988X.
Its older version wise but it was last updated in Jan 2021.

10.2.4 is newer version wise but was last updated in 2019.

Also 10.1 uses API 2 and 10.2 uses API 5?

// edit
I double checked and it seems like OpenWRT is also on 10.1
But
firmware-2-ct-full-htt-mgt-community-22.bin.lede.022
is dated 2020
with hash
990d9cbf79dd81f141257a289f89808bd7726406c9ed845a7e49e5167002ffde

While the firmware-2-ct-full-htt-mgt-community.bin from
https://www.candelatech.com/downloads/ath10k-fw-beta/
is dated 2021 with hash
C4CD14ED3A9085E6742A4767CA4A593D0FC7E2975D6BCB5062288320F859A7AC