drivers/net/wireless/intel/iwlwifi/mvm/mac80211.c | 4 ++-- drivers/net/wireless/intel/iwlwifi/mvm/mvm.h | 11 +++++++++++ 2 files changed, 13 insertions(+), 2 deletions(-)
From a9fa945246619b35e1e1302aa05f9106d7207dc7 Mon Sep 17 00:00:00 2001 From: Jonathan Brown <jonny@borderelliptic.com> Date: Sun, 22 Mar 2026 17:09:24 -0400 Subject: [RFC PATCH 0/1] wifi: iwlmvm: introduce iwl_mvm_has_gcmp_support() helper Jonathan Brown (1): wifi: iwlmvm: introduce iwl_mvm_has_gcmp_support() helper drivers/net/wireless/intel/iwlwifi/mvm/mac80211.c | 4 ++-- drivers/net/wireless/intel/iwlwifi/mvm/mvm.h | 11 +++++++++++ 2 files changed, 13 insertions(+), 2 deletions(-) --- This patch introduces a named capability helper for GCMP cipher support in the iwlmvm driver. Background ---------- During review of cipher suite registration in iwl_mvm_mac_setup_register() (mac80211.c), GCMP-128, GCMP-256, BIP-GMAC-128, and BIP-GMAC-256 registration is gated on iwl_mvm_has_new_rx_api(). That function tests for IWL_UCODE_TLV_CAPA_MULTI_QUEUE_RX_SUPPORT (capability bit 68). The relationship between multi-queue RX support and GCMP hardware offload is architectural: GCMP requires per-MSDU PN checking, which depends on the extended descriptor format introduced with the MQ RX path. On current hardware this coupling is correct. Problem ------- Using iwl_mvm_has_new_rx_api() to gate GCMP registration conflates two distinct capabilities under one function name. A reader of mac80211.c has no indication from the call site that the condition is GCMP-specific. If future hardware supports GCMP offload without the full MQ RX path, cipher registration would be silently denied with no obvious point of correction. This patch ---------- Introduces iwl_mvm_has_gcmp_support() as a named wrapper around iwl_mvm_has_new_rx_api() and uses it at both cipher registration sites in iwl_mvm_mac_setup_register(). No behaviour change is intended or introduced for any current hardware. The wrapper allows the underlying condition to be updated independently of the MQ RX check if future hardware warrants it. Testing ------- The patch was compiled against the wireless-next tree using Ubuntu 6.17.0-19-generic kernel headers. Compilation of mac80211.c succeeded past both modified sites (lines 449 and 470) before failing at an unrelated kzalloc_flex() call at line 4351 -- a symbol present in wireless-next but absent from the installed headers. The patch changes themselves compiled without error or warning. Full module build requires a matching kernel build tree. A complete compile-tested version can be provided if the approach is accepted. The patch passes scripts/checkpatch.pl --strict with zero errors, warnings, or checks. RFC rationale ------------- First submission from this contributor. Submitting as RFC to invite feedback on the abstraction approach before requesting merge. base-commit: 9ac76f3d0bb2940db3a9684d596b9c8f301ef315 -- 2.43.0
© 2016 - 2026 Red Hat, Inc.