ath10k: refactor ath10k_init_download_firmware()
authorKalle Valo <kvalo@qca.qualcomm.com>
Mon, 13 Oct 2014 06:40:53 +0000 (09:40 +0300)
committerKalle Valo <kvalo@qca.qualcomm.com>
Tue, 21 Oct 2014 06:59:07 +0000 (09:59 +0300)
This is preparation for being able to download calibration data from a file.

Signed-off-by: Kalle Valo <kvalo@qca.qualcomm.com>
drivers/net/wireless/ath/ath10k/core.c

index 76f0db0654bbf841e6753e56ee44eb49b8bb0c41..d0b67a7512cf8d89a27bbdc4e7e9795f91b046d1 100644 (file)
@@ -225,6 +225,12 @@ static int ath10k_download_and_run_otp(struct ath10k *ar)
        u32 result, address = ar->hw_params.patch_load_addr;
        int ret;
 
+       ret = ath10k_download_board_data(ar);
+       if (ret) {
+               ath10k_err(ar, "failed to download board data: %d\n", ret);
+               return ret;
+       }
+
        /* OTP is optional */
 
        if (!ar->otp_data || !ar->otp_len) {
@@ -589,29 +595,16 @@ success:
        return 0;
 }
 
-static int ath10k_init_download_firmware(struct ath10k *ar,
-                                        enum ath10k_firmware_mode mode)
+static int ath10k_download_cal_data(struct ath10k *ar)
 {
        int ret;
 
-       ret = ath10k_download_board_data(ar);
-       if (ret) {
-               ath10k_err(ar, "failed to download board data: %d\n", ret);
-               return ret;
-       }
-
        ret = ath10k_download_and_run_otp(ar);
        if (ret) {
                ath10k_err(ar, "failed to run otp: %d\n", ret);
                return ret;
        }
 
-       ret = ath10k_download_fw(ar, mode);
-       if (ret) {
-               ath10k_err(ar, "failed to download firmware: %d\n", ret);
-               return ret;
-       }
-
        return ret;
 }
 
@@ -729,7 +722,11 @@ int ath10k_core_start(struct ath10k *ar, enum ath10k_firmware_mode mode)
                goto err;
        }
 
-       status = ath10k_init_download_firmware(ar, mode);
+       status = ath10k_download_cal_data(ar);
+       if (status)
+               goto err;
+
+       status = ath10k_download_fw(ar, mode);
        if (status)
                goto err;