diff options
Diffstat (limited to 'package/kernel/mac80211/patches/329-ath10k-add-BMI-parameters-to-fix-calibration-from-DT.patch')
-rw-r--r-- | package/kernel/mac80211/patches/329-ath10k-add-BMI-parameters-to-fix-calibration-from-DT.patch | 80 |
1 files changed, 0 insertions, 80 deletions
diff --git a/package/kernel/mac80211/patches/329-ath10k-add-BMI-parameters-to-fix-calibration-from-DT.patch b/package/kernel/mac80211/patches/329-ath10k-add-BMI-parameters-to-fix-calibration-from-DT.patch deleted file mode 100644 index 3fcf505e15..0000000000 --- a/package/kernel/mac80211/patches/329-ath10k-add-BMI-parameters-to-fix-calibration-from-DT.patch +++ /dev/null @@ -1,80 +0,0 @@ -From: Anilkumar Kolli <akolli@qti.qualcomm.com> -Date: Wed, 31 May 2017 14:21:27 +0300 -Subject: [PATCH] ath10k: add BMI parameters to fix calibration from - DT/pre-cal - -QCA99X0, QCA9888, QCA9984 supports calibration data in -either OTP or DT/pre-cal file. Current ath10k supports -Calibration data from OTP only. - -If caldata is loaded from DT/pre-cal file, fetching board id -and applying calibration parameters like tx power gets failed. - -error log: -[ 15.733663] ath10k_pci 0000:01:00.0: failed to fetch board file: -2 -[ 15.741474] ath10k_pci 0000:01:00.0: could not probe fw (-2) - -This patch adds calibration data support from DT/pre-cal -file. Below parameters are used to get board id and -applying calibration parameters from cal data. - - EEPROM[OTP] FLASH[DT/pre-cal file] -Cal param 0x700 0x10000 -Board id 0x10 0x8000 - -Tested on QCA9888 with pre-cal file. - -Signed-off-by: Anilkumar Kolli <akolli@qti.qualcomm.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 -@@ -83,6 +83,8 @@ enum bmi_cmd_id { - #define BMI_NVRAM_SEG_NAME_SZ 16 - - #define BMI_PARAM_GET_EEPROM_BOARD_ID 0x10 -+#define BMI_PARAM_GET_FLASH_BOARD_ID 0x8000 -+#define BMI_PARAM_FLASH_SECTION_ALL 0x10000 - - #define ATH10K_BMI_BOARD_ID_FROM_OTP_MASK 0x7c00 - #define ATH10K_BMI_BOARD_ID_FROM_OTP_LSB 10 ---- a/drivers/net/wireless/ath/ath10k/core.c -+++ b/drivers/net/wireless/ath/ath10k/core.c -@@ -657,7 +657,7 @@ static int ath10k_core_get_board_id_from - { - u32 result, address; - u8 board_id, chip_id; -- int ret; -+ int ret, bmi_board_id_param; - - address = ar->hw_params.patch_load_addr; - -@@ -681,8 +681,13 @@ static int ath10k_core_get_board_id_from - return ret; - } - -- ret = ath10k_bmi_execute(ar, address, BMI_PARAM_GET_EEPROM_BOARD_ID, -- &result); -+ if (ar->cal_mode == ATH10K_PRE_CAL_MODE_DT || -+ ar->cal_mode == ATH10K_PRE_CAL_MODE_FILE) -+ bmi_board_id_param = BMI_PARAM_GET_FLASH_BOARD_ID; -+ else -+ bmi_board_id_param = BMI_PARAM_GET_EEPROM_BOARD_ID; -+ -+ ret = ath10k_bmi_execute(ar, address, bmi_board_id_param, &result); - if (ret) { - ath10k_err(ar, "could not execute otp for board id check: %d\n", - ret); -@@ -810,6 +815,11 @@ static int ath10k_download_and_run_otp(s - return ret; - } - -+ /* As of now pre-cal is valid for 10_4 variants */ -+ if (ar->cal_mode == ATH10K_PRE_CAL_MODE_DT || -+ ar->cal_mode == ATH10K_PRE_CAL_MODE_FILE) -+ bmi_otp_exe_param = BMI_PARAM_FLASH_SECTION_ALL; -+ - ret = ath10k_bmi_execute(ar, address, bmi_otp_exe_param, &result); - if (ret) { - ath10k_err(ar, "could not execute otp (%d)\n", ret); |