]> git.proxmox.com Git - mirror_ubuntu-eoan-kernel.git/commitdiff
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)
committerKhalid Elmously <khalid.elmously@canonical.com>
Fri, 18 Oct 2019 08:26:03 +0000 (04:26 -0400)
BugLink: https://bugs.launchpad.net/bugs/1848046
commit fddbfeece9c7882cc47754c7da460fe427e3e85b upstream.

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>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: Paolo Pisati <paolo.pisati@canonical.com>
Signed-off-by: Kleber Sacilotto de Souza <kleber.souza@canonical.com>
drivers/net/wireless/intel/iwlwifi/mvm/fw.c

index 5de54d1559dda8e2fb62bf659b24abf9339e56cf..8b0b464a1f213b326146ce38ac1637b5a7e31adf 100644 (file)
@@ -887,11 +887,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;
 }