iwlwifi: fw: don't send GEO_TX_POWER_LIMIT command to FW version 36
authorLuca Coelho <luciano.coelho@intel.com>
Tue, 24 Sep 2019 10:30:57 +0000 (13:30 +0300)
committerKalle Valo <kvalo@codeaurora.org>
Tue, 24 Sep 2019 14:46:51 +0000 (17:46 +0300)
The intention was to have the GEO_TX_POWER_LIMIT command in FW version
36 as well, but not all 8000 family got this feature enabled.  The
8000 family is the only one using version 36, so skip this version
entirely.  If we try to send this command to the firmwares that do not
support it, we get a BAD_COMMAND response from the firmware.

This fixes https://bugzilla.kernel.org/show_bug.cgi?id=204151.

Cc: stable@vger.kernel.org # 4.19+
Signed-off-by: Luca Coelho <luciano.coelho@intel.com>
Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
drivers/net/wireless/intel/iwlwifi/mvm/fw.c

index 014eca6596e2180d1ee6b38e010e33e157360ebe..32a5e4e5461ff0a37e5282dff8285db42254ea64 100644 (file)
@@ -889,11 +889,13 @@ static bool iwl_mvm_sar_geo_support(struct iwl_mvm *mvm)
         * firmware versions.  Unfortunately, we don't have a TLV API
         * flag to rely on, so rely on the major version which is in
         * the first byte of ucode_ver.  This was implemented
-        * initially on version 38 and then backported to 36, 29 and
-        * 17.
+        * initially on version 38 and then backported to29 and 17.
+        * The intention was to have it in 36 as well, but not all
+        * 8000 family got this feature enabled.  The 8000 family is
+        * the only one using version 36, so skip this version
+        * entirely.
         */
        return IWL_UCODE_SERIAL(mvm->fw->ucode_ver) >= 38 ||
-              IWL_UCODE_SERIAL(mvm->fw->ucode_ver) == 36 ||
               IWL_UCODE_SERIAL(mvm->fw->ucode_ver) == 29 ||
               IWL_UCODE_SERIAL(mvm->fw->ucode_ver) == 17;
 }