summaryrefslogtreecommitdiff |
diff options
author | Kernel Build Daemon <kbuild@suse.de> | 2019-01-14 21:38:43 +0100 |
---|---|---|
committer | Kernel Build Daemon <kbuild@suse.de> | 2019-01-14 21:38:43 +0100 |
commit | 34aaefb40b6e456f41072706174ba255da59c3b1 (patch) | |
tree | 547166c79ea6a7e00eb029b301a27e495890d554 | |
parent | 30dd0ebf4264657043060342582929fa2e0fbd42 (diff) | |
parent | c32270b6e92aaebc565a77ccb310c76d93af9842 (diff) |
Merge branch 'users/tiwai/SLE15/for-next' into SLE15
-rw-r--r-- | patches.suse/ath10k-QCA9377-firmware-limit.patch | 40 | ||||
-rw-r--r-- | series.conf | 1 |
2 files changed, 41 insertions, 0 deletions
diff --git a/patches.suse/ath10k-QCA9377-firmware-limit.patch b/patches.suse/ath10k-QCA9377-firmware-limit.patch new file mode 100644 index 0000000000..5633067c2f --- /dev/null +++ b/patches.suse/ath10k-QCA9377-firmware-limit.patch @@ -0,0 +1,40 @@ +From: Takashi Iwai <tiwai@suse.de> +Subject: Limit max FW API version for QCA9377 +Patch-mainline: Never, SLE15-SP0 only (not for SP1!) +References: bsc#1121714, bsc#1121715 + +QCA9377 got a new firmware API 6 from upstream, but this is broken for +SLE15 / Leap 15.0 ath10k driver code. As a workaround, introduce the +API version limit per board model, and define for QCA9377 and QCA6174. + +Signed-off-by: Takashi Iwai <tiwai@suse.de> + +--- + drivers/net/wireless/ath/ath10k/core.c | 11 ++++++++++- + 1 file changed, 10 insertions(+), 1 deletion(-) + +--- a/drivers/net/wireless/ath/ath10k/core.c ++++ b/drivers/net/wireless/ath/ath10k/core.c +@@ -1411,12 +1411,21 @@ static void ath10k_core_get_fw_name(stru + static int ath10k_core_fetch_firmware_files(struct ath10k *ar) + { + int ret, i; ++ int api_max; + char fw_name[100]; + + /* calibration file is optional, don't check for any errors */ + ath10k_fetch_cal_file(ar); + +- for (i = ATH10K_FW_API_MAX; i >= ATH10K_FW_API_MIN; i--) { ++ api_max = ATH10K_FW_API_MAX; ++ /* XXX: SLE15/Leap-15.0 version of ath10k doesn't work with the latest ++ * FW API for some chips. ++ */ ++ if (ar->hw_params.dev_id == QCA9377_1_0_DEVICE_ID || ++ ar->hw_params.dev_id == QCA6174_2_1_DEVICE_ID) ++ api_max = 5; ++ ++ for (i = api_max; i >= ATH10K_FW_API_MIN; i--) { + ar->fw_api = i; + ath10k_dbg(ar, ATH10K_DBG_BOOT, "trying fw api %d\n", + ar->fw_api); diff --git a/series.conf b/series.conf index d863c63580..7d47bdb234 100644 --- a/series.conf +++ b/series.conf @@ -20102,6 +20102,7 @@ patches.kabi/libertas-kabi-fix.patch patches.kabi/ath9k-msi-kabi-workaround.patch patches.kabi/ath10k-wmi-kabi-fix.patch + patches.suse/ath10k-QCA9377-firmware-limit.patch ######################################################## # ISDN |