Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

ipq40xx: switch QCA4019 firmware to -ct #2541

Merged
merged 1 commit into from
Jun 5, 2022

Conversation

blocktrron
Copy link
Member

Use the candelatech firmware for the QCA4019 WiSoC.

The Qualcomm firmware used for this specific chip in OpenWrt in 22.03
is experiencing heavily degraded performance due to excessive
retransmits when using A-MSDU. Disabling VHT modes or switching to the
candelatech firmware circumvents this issue.

Signed-off-by: David Bauer [email protected]

@github-actions github-actions bot added the 3. topic: hardware Topic: Hardware Support label Jun 2, 2022
@neocturne
Copy link
Member

Should we also switch to the ct kernel module? Maybe it would be a good idea to keep the default driver and module for all ath10k variants where ct supports 11s?

@blocktrron
Copy link
Member Author

@NeoRaider Verified mesh working for QCA9884 and QCA9886.

Regarding switching to -ct kernel-module: For sake of upstream consistency, I'd say this might be a good idea. The rationale for keeping the non-ct flavor was the lacking mesh-feature back in the day (which is only the case on Wave-1 nowadays).

@T-X
Copy link
Contributor

T-X commented Jun 3, 2022

For ath9k/minstrel there are known issues that they become exceedingly aggressive when a neighbor vanishes without dissociation. Especially when there is data without congestion control from the network stack which keeps on pushing. In that case Minstrel goes down to 1 MBit/s, uses many retries and even uses CTS/RTS.

@blocktrron just out ouf curiousity, if ath10k firmware's internal rate control might do something similar to Minstrel-HT, did you have lingering neighbors in "iw dev wlanX station dump" with a high inactive timer? Or did you also see these many retries with only active neighbors/clients, too?

'-ath10k-firmware-qca4019',
'ath10k-firmware-qca4019-ct',
'-ath10k-firmware-qca9888',
'ath10k-firmware-qca9888-ct',
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think we should just drop these variables altogether where they don't change anything.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thought the same, but i won't rule out we need to change it in the future, so I would keep them.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hmm, or keep the variable, but make it an empty list? That would also give us the smallbuffers configuration where OpenWrt defaults to it.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Empty list sounds like a good compromise.

@blocktrron
Copy link
Member Author

@T-X we see this already with 1 station associated and only in case the link is established with an 802.11ac device.

The effect is very noticeable, throughput reduces from ~60 Mbit/s to less than 1 Mbit/s in a 1 clients single VAP scenario.

I still have the pcaps in case you are interested. To me this looks like the rate control does not correctly drive down the rate (3x retransmitted with the same rate).

Use the candelatech firmware for the QCA Wave-2 firmware.

The Qualcomm firmware used for the IPQ401x chip in OpenWrt in 22.03
is experiencing heavily degraded performance due to excessive
retransmits when using A-MSDU. Disabling VHT modes or switching to the
candelatech firmware circumvents this issue.

Apply the same to other Wave-2 platforms in order to keep consistency
with upstream.

Wave-1 chips do not support mesh modes with the -ct firmware, so keep
using the QCA firmware in their case.

Signed-off-by: David Bauer <[email protected]>
@blocktrron blocktrron merged commit 15ef885 into freifunk-gluon:master Jun 5, 2022
ecsv added a commit to FreifunkVogtland/gluon that referenced this pull request Jan 12, 2023
It seems like the Aruba devices have problems with the eLNA control and the
the official firmware. But many other devices have packet loss with the ct
firmware.

This reverts commit 15ef885.
@rotanid
Copy link
Member

rotanid commented Feb 25, 2023

there are issues with that change, see #2692

AiyionPrime added a commit to AiyionPrime/gluon that referenced this pull request Feb 25, 2023
This is a temporary measure that fixes freifunk-gluon#2692.

This reverts commit 15ef885.
neocturne added a commit that referenced this pull request Feb 26, 2023
Revert "ipq40xx: switch Wave2 firmware to -ct (#2541)"
AiyionPrime added a commit to AiyionPrime/gluon that referenced this pull request Feb 26, 2023
This is a temporary measure that fixes freifunk-gluon#2692.

This reverts commit 15ef885.

(cherry picked from commit 22c47df)
rotanid added a commit that referenced this pull request Feb 26, 2023
[Backport v2022.1.x] Revert "ipq40xx: switch Wave2 firmware to -ct (#2541)"
herbetom added a commit to herbetom/gluon that referenced this pull request Mar 19, 2023
…funk-gluon#2541)""

This partially reverts commit 22c47df.

Devices in ath79-generic like the TP-Link EAP225-Outdoor v1 are really
unstable with the non -ct Wave2 firmware and regulary crash with 100% memory
consumption when only a handful devices are connected.
JayBraker pushed a commit to JayBraker/gluon that referenced this pull request Apr 12, 2023
Use the candelatech firmware for the QCA Wave-2 firmware.

The Qualcomm firmware used for the IPQ401x chip in OpenWrt in 22.03
is experiencing heavily degraded performance due to excessive
retransmits when using A-MSDU. Disabling VHT modes or switching to the
candelatech firmware circumvents this issue.

Apply the same to other Wave-2 platforms in order to keep consistency
with upstream.

Wave-1 chips do not support mesh modes with the -ct firmware, so keep
using the QCA firmware in their case.

Signed-off-by: David Bauer <[email protected]>
JayBraker pushed a commit to JayBraker/gluon that referenced this pull request Apr 12, 2023
This is a temporary measure that fixes freifunk-gluon#2692.

This reverts commit 15ef885.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
3. topic: hardware Topic: Hardware Support
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants