summaryrefslogtreecommitdiff
path: root/libre-testing/linux-libre-cros/0013-Revert-iwlwifi-mvm-fix-scan-config-command-size.patch
diff options
context:
space:
mode:
Diffstat (limited to 'libre-testing/linux-libre-cros/0013-Revert-iwlwifi-mvm-fix-scan-config-command-size.patch')
-rw-r--r--libre-testing/linux-libre-cros/0013-Revert-iwlwifi-mvm-fix-scan-config-command-size.patch48
1 files changed, 48 insertions, 0 deletions
diff --git a/libre-testing/linux-libre-cros/0013-Revert-iwlwifi-mvm-fix-scan-config-command-size.patch b/libre-testing/linux-libre-cros/0013-Revert-iwlwifi-mvm-fix-scan-config-command-size.patch
new file mode 100644
index 000000000..7e7306c5b
--- /dev/null
+++ b/libre-testing/linux-libre-cros/0013-Revert-iwlwifi-mvm-fix-scan-config-command-size.patch
@@ -0,0 +1,48 @@
+From bb8bf48f4e9ab555fe824358d8d01da52f7d8255 Mon Sep 17 00:00:00 2001
+From: Mehmet Akif Tasova <makiftasova@gmail.com>
+Date: Mon, 30 Dec 2019 15:48:16 +0200
+Subject: [PATCH 13/14] Revert "iwlwifi: mvm: fix scan config command size"
+
+Since v5.4-rc1 was released, iwlwifi started throwing errors when scan
+commands were sent to the firmware with certain devices (depending on
+the OTP burned in the device, which contains the list of available
+channels). For instance:
+
+iwlwifi 0000:00:14.3: FW error in SYNC CMD SCAN_CFG_CMD
+
+This bug was reported in the ArchLinux bug tracker:
+https://bugs.archlinux.org/task/64703
+
+And also in a specific case in bugzilla, when the lar_disabled option
+was set: https://bugzilla.kernel.org/show_bug.cgi?id=205193
+
+Revert the commit that introduced this error, by using the number of
+channels from the OTP instead of the number of channels that is
+specified in the FW TLV that tells us how many channels it supports.
+
+This reverts commit 06eb547c4ae4382e70d556ba213d13c95ca1801b.
+
+Cc: stable@vger.kernel.org # v5.4+
+Signed-off-by: Mehmet Akif Tasova <makiftasova@gmail.com>
+[ Luca: reworded the commit message a bit. ]
+Signed-off-by: Luca Coelho <luciano.coelho@intel.com>
+---
+ drivers/net/wireless/intel/iwlwifi/mvm/scan.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/drivers/net/wireless/intel/iwlwifi/mvm/scan.c b/drivers/net/wireless/intel/iwlwifi/mvm/scan.c
+index fcafa22ec6ce..8aa567d7912c 100644
+--- a/drivers/net/wireless/intel/iwlwifi/mvm/scan.c
++++ b/drivers/net/wireless/intel/iwlwifi/mvm/scan.c
+@@ -1220,7 +1220,7 @@ static int iwl_mvm_legacy_config_scan(struct iwl_mvm *mvm)
+ cmd_size = sizeof(struct iwl_scan_config_v2);
+ else
+ cmd_size = sizeof(struct iwl_scan_config_v1);
+- cmd_size += num_channels;
++ cmd_size += mvm->fw->ucode_capa.n_scan_channels;
+
+ cfg = kzalloc(cmd_size, GFP_KERNEL);
+ if (!cfg)
+--
+2.25.0
+