iwlwifi cards are all able to support Extended Key ID as long as
mac80211 stops A-MPDU aggregation when replacing the unicast key.
Enable Extended Key ID support and tell mac80211 that it has to tear
down any running Tx aggregation sessions during rekey when using
Extended Key ID.
With the merge of the A-MPDU handling patch
https://patchwork.kernel.org/patch/10931861/ we probably should simplify
the API for Extended Key ID and not merge the patch as it is:
1) We can drop EXT_KEY_ID_NATIVE from mac80211 and let the drivers set
NL80211_EXT_FEATURE_EXT_KEY_ID instead of mac80211.
Without the COMPAT support the naming is off and the flag is simply
pointless. Assuming we want to pick up the COMPAT Extended Key ID we
still can just define a new flag, e.g.
SINGLE_STA_UNICAST_KEY_OFFLOAD_ONLY to tell mac80211 it can only
have one unicast key active in the HW per STA.
2) Mac80211 would then enable Extended Key ID for all drivers using SW
crypto and just also set NO_AMPDU_KEYBORDER_SUPPORT when the driver
supports A-MPDU
3) we then could undo (revert?) cfe7007a9b4c ("mac80211_hwsim: Extended
Key ID support") and let the more generic code in mac80211 handle it
If you agree I'll prepare and test a small patch series for that.
And we better only merge a iteration of this patch here once we got the
API updated.
Alexander