OSDN Git Service

iwlwifi: move fw_index from iwl_priv to iwl_nic
authorDon Fry <donald.h.fry@intel.com>
Mon, 6 Feb 2012 23:54:31 +0000 (15:54 -0800)
committerWey-Yi Guy <wey-yi.w.guy@intel.com>
Fri, 17 Feb 2012 18:27:51 +0000 (10:27 -0800)
Delete fw_index from iwl_priv and use iwl_nic instead.

Signed-off-by: Don Fry <donald.h.fry@intel.com>
Signed-off-by: Wey-Yi Guy <wey-yi.w.guy@intel.com>
drivers/net/wireless/iwlwifi/iwl-dev.h
drivers/net/wireless/iwlwifi/iwl-ucode.c

index f3dc67c..008287f 100644 (file)
@@ -788,7 +788,6 @@ struct iwl_priv {
        struct mac_address addresses[2];
 
        /* uCode images, save to reload in case of failure */
-       int fw_index;                   /* firmware we're trying to load */
        char firmware_name[25];
 
        struct iwl_rxon_context contexts[NUM_IWL_RXON_CTX];
index ca3cd8a..c3ac2cc 100644 (file)
@@ -690,23 +690,24 @@ static void iwl_ucode_callback(const struct firmware *ucode_raw, void *context);
 
 int __must_check iwl_request_firmware(struct iwl_priv *priv, bool first)
 {
+       struct iwl_nic *nic = nic(priv);
        const char *name_pre = cfg(priv)->fw_name_pre;
        char tag[8];
 
        if (first) {
 #ifdef CONFIG_IWLWIFI_DEBUG_EXPERIMENTAL_UCODE
-               priv->fw_index = UCODE_EXPERIMENTAL_INDEX;
+               nic->fw_index = UCODE_EXPERIMENTAL_INDEX;
                strcpy(tag, UCODE_EXPERIMENTAL_TAG);
-       } else if (priv->fw_index == UCODE_EXPERIMENTAL_INDEX) {
+       } else if (nic->fw_index == UCODE_EXPERIMENTAL_INDEX) {
 #endif
-               priv->fw_index = cfg(priv)->ucode_api_max;
-               sprintf(tag, "%d", priv->fw_index);
+               nic->fw_index = cfg(priv)->ucode_api_max;
+               sprintf(tag, "%d", nic->fw_index);
        } else {
-               priv->fw_index--;
-               sprintf(tag, "%d", priv->fw_index);
+               nic->fw_index--;
+               sprintf(tag, "%d", nic->fw_index);
        }
 
-       if (priv->fw_index < cfg(priv)->ucode_api_min) {
+       if (nic->fw_index < cfg(priv)->ucode_api_min) {
                IWL_ERR(priv, "no suitable firmware found!\n");
                return -ENOENT;
        }
@@ -714,7 +715,7 @@ int __must_check iwl_request_firmware(struct iwl_priv *priv, bool first)
        sprintf(priv->firmware_name, "%s%s%s", name_pre, tag, ".ucode");
 
        IWL_DEBUG_INFO(priv, "attempting to load firmware %s'%s'\n",
-                      (priv->fw_index == UCODE_EXPERIMENTAL_INDEX)
+                      (nic->fw_index == UCODE_EXPERIMENTAL_INDEX)
                                ? "EXPERIMENTAL " : "",
                       priv->firmware_name);
 
@@ -1032,7 +1033,7 @@ static void iwl_ucode_callback(const struct firmware *ucode_raw, void *context)
        memset(&pieces, 0, sizeof(pieces));
 
        if (!ucode_raw) {
-               if (priv->fw_index <= api_ok)
+               if (nic->fw_index <= api_ok)
                        IWL_ERR(priv,
                                "request for firmware file '%s' failed.\n",
                                priv->firmware_name);
@@ -1069,7 +1070,7 @@ static void iwl_ucode_callback(const struct firmware *ucode_raw, void *context)
         * on the API version read from firmware header from here on forward
         */
        /* no api version check required for experimental uCode */
-       if (priv->fw_index != UCODE_EXPERIMENTAL_INDEX) {
+       if (nic->fw_index != UCODE_EXPERIMENTAL_INDEX) {
                if (api_ver < api_min || api_ver > api_max) {
                        IWL_ERR(priv,
                                "Driver unable to support your firmware API. "
@@ -1094,7 +1095,7 @@ static void iwl_ucode_callback(const struct firmware *ucode_raw, void *context)
 
        if (build)
                sprintf(buildstr, " build %u%s", build,
-                      (priv->fw_index == UCODE_EXPERIMENTAL_INDEX)
+                      (nic->fw_index == UCODE_EXPERIMENTAL_INDEX)
                                ? " (EXP)" : "");
        else
                buildstr[0] = '\0';