mac80211: backport brcmfmac firmware & clm_blob loading rework
[openwrt/staging/wigyori.git] / package / kernel / mac80211 / patches / 327-v4.17-0010-brcmfmac-get-rid-of-brcmf_fw_map_chip_to_name.patch
diff --git a/package/kernel/mac80211/patches/327-v4.17-0010-brcmfmac-get-rid-of-brcmf_fw_map_chip_to_name.patch b/package/kernel/mac80211/patches/327-v4.17-0010-brcmfmac-get-rid-of-brcmf_fw_map_chip_to_name.patch
new file mode 100644 (file)
index 0000000..becf7cf
--- /dev/null
@@ -0,0 +1,92 @@
+From 18c2b20e276e04476a3350b4a92c1dfad725d45d Mon Sep 17 00:00:00 2001
+From: Arend Van Spriel <arend.vanspriel@broadcom.com>
+Date: Thu, 22 Mar 2018 21:28:29 +0100
+Subject: [PATCH] brcmfmac: get rid of brcmf_fw_map_chip_to_name()
+
+The function is no longer used so removing it.
+
+Reviewed-by: Hante Meuleman <hante.meuleman@broadcom.com>
+Reviewed-by: Pieter-Paul Giesberts <pieter-paul.giesberts@broadcom.com>
+Reviewed-by: Franky Lin <franky.lin@broadcom.com>
+Signed-off-by: Arend van Spriel <arend.vanspriel@broadcom.com>
+Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
+---
+ .../broadcom/brcm80211/brcmfmac/firmware.c         | 53 ----------------------
+ .../broadcom/brcm80211/brcmfmac/firmware.h         |  4 --
+ 2 files changed, 57 deletions(-)
+
+--- a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/firmware.c
++++ b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/firmware.c
+@@ -635,59 +635,6 @@ static void brcmf_fw_get_full_name(char
+       strlcat(fw_name, extension, BRCMF_FW_NAME_LEN);
+ }
+-int brcmf_fw_map_chip_to_name(u32 chip, u32 chiprev,
+-                            struct brcmf_firmware_mapping mapping_table[],
+-                            u32 table_size, char fw_name[BRCMF_FW_NAME_LEN],
+-                            char nvram_name[BRCMF_FW_NAME_LEN])
+-{
+-      char chipname[12];
+-      u32 i;
+-      char end;
+-
+-      for (i = 0; i < table_size; i++) {
+-              if (mapping_table[i].chipid == chip &&
+-                  mapping_table[i].revmask & BIT(chiprev))
+-                      break;
+-      }
+-
+-      if (i == table_size) {
+-              brcmf_err("Unknown chipid %d [%d]\n", chip, chiprev);
+-              return -ENODEV;
+-      }
+-
+-      brcmf_chip_name(chip, chiprev, chipname, sizeof(chipname));
+-
+-      /* check if firmware path is provided by module parameter */
+-      if (brcmf_mp_global.firmware_path[0] != '\0') {
+-              if (fw_name)
+-                      strlcpy(fw_name, brcmf_mp_global.firmware_path,
+-                              BRCMF_FW_NAME_LEN);
+-              if (nvram_name)
+-                      strlcpy(nvram_name, brcmf_mp_global.firmware_path,
+-                              BRCMF_FW_NAME_LEN);
+-
+-              end = brcmf_mp_global.firmware_path[
+-                              strlen(brcmf_mp_global.firmware_path) - 1];
+-              if (end != '/') {
+-                      if (fw_name)
+-                              strlcat(fw_name, "/", BRCMF_FW_NAME_LEN);
+-                      if (nvram_name)
+-                              strlcat(nvram_name, "/", BRCMF_FW_NAME_LEN);
+-              }
+-      }
+-
+-      brcmf_info("using %s for chip %s\n",
+-                 mapping_table[i].fw_base, chipname);
+-      if (fw_name)
+-              brcmf_fw_get_full_name(fw_name,
+-                                     mapping_table[i].fw_base, ".bin");
+-      if (nvram_name)
+-              brcmf_fw_get_full_name(nvram_name,
+-                                     mapping_table[i].fw_base, ".txt");
+-
+-      return 0;
+-}
+-
+ struct brcmf_fw_request *
+ brcmf_fw_alloc_request(u32 chip, u32 chiprev,
+                      struct brcmf_firmware_mapping mapping_table[],
+--- a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/firmware.h
++++ b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/firmware.h
+@@ -46,10 +46,6 @@ MODULE_FIRMWARE(BRCMF_FW_DEFAULT_PATH fw
+ #define BRCMF_FW_ENTRY(chipid, mask, name) \
+       { chipid, mask, BRCM_ ## name ## _FIRMWARE_BASENAME }
+-int brcmf_fw_map_chip_to_name(u32 chip, u32 chiprev,
+-                            struct brcmf_firmware_mapping mapping_table[],
+-                            u32 table_size, char fw_name[BRCMF_FW_NAME_LEN],
+-                            char nvram_name[BRCMF_FW_NAME_LEN]);
+ void brcmf_fw_nvram_free(void *nvram);
+ enum brcmf_fw_type {