Skip to content

Fix AX HE capability advertisement#1060

Open
DurkaEbanaya wants to merge 1 commit into
OpenIntelWireless:masterfrom
DurkaEbanaya:fix-ax-he-capabilities
Open

Fix AX HE capability advertisement#1060
DurkaEbanaya wants to merge 1 commit into
OpenIntelWireless:masterfrom
DurkaEbanaya:fix-ax-he-capabilities

Conversation

@DurkaEbanaya

Copy link
Copy Markdown

PR Body

Summary

This PR fixes AX/HE capability advertisement for Intel iwx devices and hardens HE IE handling.

Main changes:

  • Enable IEEE80211_F_HEON when setting up iwx HE rates/capabilities.
  • Advertise HE 5 GHz channel width support for 40/80 MHz and 160 MHz in phy_cap_info[0].
  • When selecting 11AX media mode, keep HT and VHT enabled together with HE so the association request advertises normal HT/VHT/HE capabilities instead of HE only.
  • Fix HE rate table values used for 11AX status/rate reporting and add 11AX handling in ItlNetworkUserClient.
  • Fix HE Capabilities IE length handling when PPE Threshold is absent.
  • Avoid HE Capabilities PPE parsing overread and add a short-length guard for HE Operation parsing.
  • Avoid copying beyond the local PPE threshold initializer.

Why

On a 160 MHz-capable AX setup, the driver built an HE Capabilities IE but did not advertise the 5 GHz HE channel width bits in phy_cap_info[0].

In testing, that caused reverse/downlink throughput around ~130 Mbit/s, with RX PHY reporting VHT at only 20 MHz. After advertising the correct HE 5 GHz width capabilities and keeping the normal VHT+HE association path, the same setup negotiated stable wide-channel operation.

This PR intentionally does not force HE-only association or remove VHT capabilities. The client advertises its VHT and HE capabilities and leaves the final VHT/HE downlink decision to the AP/firmware.

Testing

Built successfully:

xcodebuild -project itlwm.xcodeproj -scheme itlwm -configuration Debug build
LAN iperf3 tests after reboot:

iperf3 -c 192.168.1.42 -R -t 60 -O 5: 568 Mbit/s, 6 retransmits
iperf3 -c 192.168.1.42 -t 60 -O 5: 471 Mbit/s
iperf3 -c 192.168.1.42 -R -P 4 -t 60 -O 5: 647 Mbit/s aggregate
iperf3 -c 192.168.1.42 -P 4 -t 60 -O 5: 474 Mbit/s aggregate, 0 retransmits
Compared with the pre-fix behavior, reverse/downlink throughput improved from ~130 Mbit/s to stable wide-channel performance, without forcing HE-only operation.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Development

Successfully merging this pull request may close these issues.

1 participant