ath10k: different fw file name for sdio
authorErik Stromdahl <erik.stromdahl@gmail.com>
Wed, 26 Apr 2017 09:17:59 +0000 (12:17 +0300)
committerKalle Valo <kvalo@qca.qualcomm.com>
Thu, 4 May 2017 12:55:50 +0000 (15:55 +0300)
Since both SDIO based chipsets will use different
firmware from the PCIe and AHB chipsets, the fw file name
must be different depending on bus type.

The new firmware names are:

For PCIe and AHB:
firmware-<api_version>.bin (same as before)

For SDIO:
firmware-sdio-<api_version>.bin

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

index 84487b176c3fcbda12ef98eeb04d6ce8b74e7da8..eea111d704c5dbd6f3c0b18fa18bce03b0d69334 100644 (file)
@@ -1410,7 +1410,18 @@ err:
 static void ath10k_core_get_fw_name(struct ath10k *ar, char *fw_name,
                                    size_t fw_name_len, int fw_api)
 {
-       scnprintf(fw_name, fw_name_len, "%s-%d.bin", ATH10K_FW_FILE_BASE, fw_api);
+       switch (ar->hif.bus) {
+       case ATH10K_BUS_SDIO:
+               scnprintf(fw_name, fw_name_len, "%s-%s-%d.bin",
+                         ATH10K_FW_FILE_BASE, ath10k_bus_str(ar->hif.bus),
+                         fw_api);
+               break;
+       case ATH10K_BUS_PCI:
+       case ATH10K_BUS_AHB:
+               scnprintf(fw_name, fw_name_len, "%s-%d.bin",
+                         ATH10K_FW_FILE_BASE, fw_api);
+               break;
+       }
 }
 
 static int ath10k_core_fetch_firmware_files(struct ath10k *ar)