qwx: fall back to world channels if the regulatory event fails
If the first regulatory channel list event cannot be processed, qwx
attaches with an empty channel list and cannot scan. Populate the
ath11k world channel set in that case. Unlike qwz, keep channels an
earlier event configured, and leave ieee80211_channel_init() to
qwx_init() as before.
From qwz 6f139a5bd.
OK stsp@
qwx: parse the regulatory ext channel list event
Replace the stub with the 2 GHz/5 GHz part of ath11k's parser. 6 GHz
rules, including any the firmware appends to the 5 GHz list, are
ignored. Firmware only sends this event if the host advertises
WMI_CFG_HOST_SERVICE_FLAG_REG_CC_EXT, which qwx does not do yet.
From qwz 901b347bb.
OK stsp@
sys/qwz: include RX padding in length checks
The shared RX handler strips the descriptor and L3 padding before
setting the packet length. Include both in the bound, matching the
WBM null-queue path.
OK: stsp@
sys/qwz: retain active key task arguments
Remove active key operations from the pending queue before waiting
for firmware, retaining their node reference and a local key copy.
Recheck association state after waits before updating key state or
marking the port valid.
OK: stsp@