Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit a42506eb authored by Meenakshi Venkataraman's avatar Meenakshi Venkataraman Committed by John W. Linville
Browse files

iwlwifi: move ucode_type from shared to op_mode



This variable holds the ucode currently
running on the device; which is determined by
op_mode, so move this parameter there.

Also, the name of the variable is a bit
misleading, so rename it to cur_ucode.

Signed-off-by: default avatarMeenakshi Venkataraman <meenakshi.venkataraman@intel.com>
Signed-off-by: default avatarWey-Yi Guy <wey-yi.w.guy@intel.com>
Signed-off-by: default avatarJohn W. Linville <linville@tuxdriver.com>
parent 2fdfc476
Loading
Loading
Loading
Loading
+5 −5
Original line number Diff line number Diff line
@@ -1632,7 +1632,7 @@ static void iwl_dump_nic_error_log(struct iwl_priv *priv)
	struct iwl_error_event_table table;

	base = priv->device_pointers.error_event_table;
	if (priv->shrd->ucode_type == IWL_UCODE_INIT) {
	if (priv->cur_ucode == IWL_UCODE_INIT) {
		if (!base)
			base = priv->shrd->fw->init_errlog_ptr;
	} else {
@@ -1644,7 +1644,7 @@ static void iwl_dump_nic_error_log(struct iwl_priv *priv)
		IWL_ERR(priv,
			"Not valid error log pointer 0x%08X for %s uCode\n",
			base,
			(priv->shrd->ucode_type == IWL_UCODE_INIT)
			(priv->cur_ucode == IWL_UCODE_INIT)
					? "Init" : "RT");
		return;
	}
@@ -1723,7 +1723,7 @@ static int iwl_print_event_log(struct iwl_priv *priv, u32 start_idx,
		return pos;

	base = priv->device_pointers.log_event_table;
	if (priv->shrd->ucode_type == IWL_UCODE_INIT) {
	if (priv->cur_ucode == IWL_UCODE_INIT) {
		if (!base)
			base = priv->shrd->fw->init_evtlog_ptr;
	} else {
@@ -1838,7 +1838,7 @@ int iwl_dump_nic_event_log(struct iwl_priv *priv, bool full_log,
	struct iwl_trans *trans = trans(priv);

	base = priv->device_pointers.log_event_table;
	if (priv->shrd->ucode_type == IWL_UCODE_INIT) {
	if (priv->cur_ucode == IWL_UCODE_INIT) {
		logsize = priv->shrd->fw->init_evtlog_size;
		if (!base)
			base = priv->shrd->fw->init_evtlog_ptr;
@@ -1852,7 +1852,7 @@ int iwl_dump_nic_event_log(struct iwl_priv *priv, bool full_log,
		IWL_ERR(priv,
			"Invalid event log pointer 0x%08X for %s uCode\n",
			base,
			(priv->shrd->ucode_type == IWL_UCODE_INIT)
			(priv->cur_ucode == IWL_UCODE_INIT)
					? "Init" : "RT");
		return -EINVAL;
	}
+1 −1
Original line number Diff line number Diff line
@@ -240,7 +240,7 @@ static ssize_t iwl_dbgfs_sram_read(struct file *file,
			IWL_ERR(priv, "No uCode has been loadded.\n");
			return -EINVAL;
		}
		img = &priv->fw->img[priv->shrd->ucode_type];
		img = &priv->fw->img[priv->cur_ucode];
		priv->dbgfs_sram_len = img->sec[IWL_UCODE_SECTION_DATA].len;
	}
	len = priv->dbgfs_sram_len;
+3 −0
Original line number Diff line number Diff line
@@ -997,6 +997,9 @@ struct iwl_priv {
		u32 error_event_table;
		u32 log_event_table;
	} device_pointers;

	/* indicator of loaded ucode image */
	enum iwl_ucode_type cur_ucode;
}; /*iwl_priv */

extern struct kmem_cache *iwl_tx_cmd_pool;
+0 −4
Original line number Diff line number Diff line
@@ -346,7 +346,6 @@ struct iwl_cfg {
 * @hw_params: see struct iwl_hw_params
 * @lock: protect general shared data
 * @eeprom: pointer to the eeprom/OTP image
 * @ucode_type: indicator of loaded ucode image
 */
struct iwl_shared {
	unsigned long status;
@@ -360,9 +359,6 @@ struct iwl_shared {
	/* eeprom -- this is in the card's little endian byte order */
	u8 *eeprom;

	/* ucode related variables */
	enum iwl_ucode_type ucode_type;

};

/*Whatever _m is (iwl_trans, iwl_priv, these macros will work */
+2 −2
Original line number Diff line number Diff line
@@ -601,11 +601,11 @@ static int iwl_testmode_driver(struct ieee80211_hw *hw, struct nlattr **tb)
			IWL_ERR(priv, "No uCode has not been loaded\n");
			return -EINVAL;
		} else {
			img = &priv->fw->img[priv->shrd->ucode_type];
			img = &priv->fw->img[priv->cur_ucode];
			inst_size = img->sec[IWL_UCODE_SECTION_INST].len;
			data_size = img->sec[IWL_UCODE_SECTION_DATA].len;
		}
		NLA_PUT_U32(skb, IWL_TM_ATTR_FW_TYPE, priv->shrd->ucode_type);
		NLA_PUT_U32(skb, IWL_TM_ATTR_FW_TYPE, priv->cur_ucode);
		NLA_PUT_U32(skb, IWL_TM_ATTR_FW_INST_SIZE, inst_size);
		NLA_PUT_U32(skb, IWL_TM_ATTR_FW_DATA_SIZE, data_size);
		status = cfg80211_testmode_reply(skb);
Loading