ath10k: increase bmi timeout to fix OTP on qca99xx boards and add bmi identification...
[openwrt/openwrt.git] / package / kernel / mac80211 / patches / 327-ath10k-increase-BMI-timeout.patch
diff --git a/package/kernel/mac80211/patches/327-ath10k-increase-BMI-timeout.patch b/package/kernel/mac80211/patches/327-ath10k-increase-BMI-timeout.patch
new file mode 100644 (file)
index 0000000..c9f493b
--- /dev/null
@@ -0,0 +1,31 @@
+From: Ben Greear <greearb@candelatech.com>
+Date: Wed, 31 May 2017 14:21:19 +0300
+Subject: [PATCH] ath10k: increase BMI timeout
+
+When testing a 9888 chipset NIC, I notice it often takes
+almost 2 seconds, and then many times OTP fails, probably due
+to the two-second timeout.
+
+[ 2269.841842] ath10k_pci 0000:05:00.0: bmi cmd took: 1984 jiffies (HZ: 1000), rv: 0
+[ 2273.608185] ath10k_pci 0000:05:00.0: bmi cmd took: 1986 jiffies (HZ: 1000), rv: 0
+[ 2277.294732] ath10k_pci 0000:05:00.0: bmi cmd took: 1989 jiffies (HZ: 1000), rv: 0
+
+So, increase the BMI timeout to 3 seconds.
+
+Signed-off-by: Ben Greear <greearb@candelatech.com>
+Signed-off-by: Kalle Valo <kvalo@qca.qualcomm.com>
+---
+
+--- a/drivers/net/wireless/ath/ath10k/bmi.h
++++ b/drivers/net/wireless/ath/ath10k/bmi.h
+@@ -187,8 +187,8 @@ struct bmi_target_info {
+       u32 type;
+ };
+-/* in msec */
+-#define BMI_COMMUNICATION_TIMEOUT_HZ (2 * HZ)
++/* in jiffies */
++#define BMI_COMMUNICATION_TIMEOUT_HZ (3 * HZ)
+ #define BMI_CE_NUM_TO_TARG 0
+ #define BMI_CE_NUM_TO_HOST 1