]> git.baikalelectronics.ru Git - kernel.git/commit
iwlwifi: mvm: don't feed the hardware RFKILL into iwlmei
authorEmmanuel Grumbach <emmanuel.grumbach@intel.com>
Fri, 28 Jan 2022 12:30:56 +0000 (14:30 +0200)
committerKalle Valo <kvalo@kernel.org>
Thu, 3 Feb 2022 08:24:50 +0000 (10:24 +0200)
commitd00ec9ab92bbbc745eaa5f215550f07cf0f122d3
treeb737d8fc6f4b2042033d818ae82aeba3df8876cb
parent4ad7a296ebd2c2d199372c314b6b4a2174b955b6
iwlwifi: mvm: don't feed the hardware RFKILL into iwlmei

iwlmei can trigger a hardware RFKILL when the CSME firmware
does not want the host to touch the device.
But then, iwlmvm reports RFKILL which makes cfg80211 update
iwlmvm about RFKILL. iwlmvm then thinks there is a change in
the _software_ rfkill and it calls rfkill_blocked() to fetch
the RFKILL state. This returns that RFKILL is blocked (because
of iwlmei) and iwlmvm tells iwlmei that _software_ RFKILL is
asserted.

This is a bug of course.
Fix this by checking explicitly the software RFKILL state and
not the overall RFKILL state.

Fixes: c0aa1f8c4c1e ("iwlwifi: mvm: read the rfkill state and feed it to iwlmei")
Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
Fixes: c0aa1f8c4c1e ("iwlwifi: mvm: read the rfkill state and feed it to iwlmei")
Signed-off-by: Luca Coelho <luciano.coelho@intel.com>
Signed-off-by: Kalle Valo <kvalo@kernel.org>
Link: https://lore.kernel.org/r/iwlwifi.20220128142706.f293861a3f92.I9553d27df1de6fd5756a43ea5f8b89d06fa1a6f2@changeid
drivers/net/wireless/intel/iwlwifi/mvm/mvm.h