aboutsummaryrefslogtreecommitdiffstats
path: root/drivers
diff options
context:
space:
mode:
authorWey-Yi Guy <wey-yi.w.guy@intel.com>2011-07-13 11:38:57 -0400
committerWey-Yi Guy <wey-yi.w.guy@intel.com>2011-07-21 10:31:01 -0400
commit898ed67be047d0762cc7592f67bf1313dff53ca9 (patch)
tree2efb9e1d1632ef996a3e0987813e87fffe97c99c /drivers
parenta920bffb88260aac36bfd05745696dc6aa256627 (diff)
iwlagn: remove un-necessary "_agn"
After driver split, extra _agn in priv structure is no needed, remove it. Signed-off-by: Wey-Yi Guy <wey-yi.w.guy@intel.com>
Diffstat (limited to 'drivers')
-rw-r--r--drivers/net/wireless/iwlwifi/iwl-agn-calib.c2
-rw-r--r--drivers/net/wireless/iwlwifi/iwl-agn-lib.c98
-rw-r--r--drivers/net/wireless/iwlwifi/iwl-agn-rxon.c10
-rw-r--r--drivers/net/wireless/iwlwifi/iwl-agn.c90
-rw-r--r--drivers/net/wireless/iwlwifi/iwl-core.c8
-rw-r--r--drivers/net/wireless/iwlwifi/iwl-debugfs.c72
-rw-r--r--drivers/net/wireless/iwlwifi/iwl-dev.h98
-rw-r--r--drivers/net/wireless/iwlwifi/iwl-rx.c26
-rw-r--r--drivers/net/wireless/iwlwifi/iwl-scan.c6
-rw-r--r--drivers/net/wireless/iwlwifi/iwl-trans-rx-pcie.c100
10 files changed, 254 insertions, 256 deletions
diff --git a/drivers/net/wireless/iwlwifi/iwl-agn-calib.c b/drivers/net/wireless/iwlwifi/iwl-agn-calib.c
index 204f0ece3c26..72d6297602b8 100644
--- a/drivers/net/wireless/iwlwifi/iwl-agn-calib.c
+++ b/drivers/net/wireless/iwlwifi/iwl-agn-calib.c
@@ -889,7 +889,7 @@ static void iwlagn_gain_computation(struct iwl_priv *priv,
889 memset(&cmd, 0, sizeof(cmd)); 889 memset(&cmd, 0, sizeof(cmd));
890 890
891 iwl_set_calib_hdr(&cmd.hdr, 891 iwl_set_calib_hdr(&cmd.hdr,
892 priv->_agn.phy_calib_chain_noise_gain_cmd); 892 priv->phy_calib_chain_noise_gain_cmd);
893 cmd.delta_gain_1 = data->delta_gain_code[1]; 893 cmd.delta_gain_1 = data->delta_gain_code[1];
894 cmd.delta_gain_2 = data->delta_gain_code[2]; 894 cmd.delta_gain_2 = data->delta_gain_code[2];
895 trans_send_cmd_pdu(&priv->trans, REPLY_PHY_CALIBRATION_CMD, 895 trans_send_cmd_pdu(&priv->trans, REPLY_PHY_CALIBRATION_CMD,
diff --git a/drivers/net/wireless/iwlwifi/iwl-agn-lib.c b/drivers/net/wireless/iwlwifi/iwl-agn-lib.c
index 67b55c5fa0d2..e77f91380a4a 100644
--- a/drivers/net/wireless/iwlwifi/iwl-agn-lib.c
+++ b/drivers/net/wireless/iwlwifi/iwl-agn-lib.c
@@ -53,73 +53,73 @@ static void iwlagn_count_tx_err_status(struct iwl_priv *priv, u16 status)
53 53
54 switch (status) { 54 switch (status) {
55 case TX_STATUS_POSTPONE_DELAY: 55 case TX_STATUS_POSTPONE_DELAY:
56 priv->_agn.reply_tx_stats.pp_delay++; 56 priv->reply_tx_stats.pp_delay++;
57 break; 57 break;
58 case TX_STATUS_POSTPONE_FEW_BYTES: 58 case TX_STATUS_POSTPONE_FEW_BYTES:
59 priv->_agn.reply_tx_stats.pp_few_bytes++; 59 priv->reply_tx_stats.pp_few_bytes++;
60 break; 60 break;
61 case TX_STATUS_POSTPONE_BT_PRIO: 61 case TX_STATUS_POSTPONE_BT_PRIO:
62 priv->_agn.reply_tx_stats.pp_bt_prio++; 62 priv->reply_tx_stats.pp_bt_prio++;
63 break; 63 break;
64 case TX_STATUS_POSTPONE_QUIET_PERIOD: 64 case TX_STATUS_POSTPONE_QUIET_PERIOD:
65 priv->_agn.reply_tx_stats.pp_quiet_period++; 65 priv->reply_tx_stats.pp_quiet_period++;
66 break; 66 break;
67 case TX_STATUS_POSTPONE_CALC_TTAK: 67 case TX_STATUS_POSTPONE_CALC_TTAK:
68 priv->_agn.reply_tx_stats.pp_calc_ttak++; 68 priv->reply_tx_stats.pp_calc_ttak++;
69 break; 69 break;
70 case TX_STATUS_FAIL_INTERNAL_CROSSED_RETRY: 70 case TX_STATUS_FAIL_INTERNAL_CROSSED_RETRY:
71 priv->_agn.reply_tx_stats.int_crossed_retry++; 71 priv->reply_tx_stats.int_crossed_retry++;
72 break; 72 break;
73 case TX_STATUS_FAIL_SHORT_LIMIT: 73 case TX_STATUS_FAIL_SHORT_LIMIT:
74 priv->_agn.reply_tx_stats.short_limit++; 74 priv->reply_tx_stats.short_limit++;
75 break; 75 break;
76 case TX_STATUS_FAIL_LONG_LIMIT: 76 case TX_STATUS_FAIL_LONG_LIMIT:
77 priv->_agn.reply_tx_stats.long_limit++; 77 priv->reply_tx_stats.long_limit++;
78 break; 78 break;
79 case TX_STATUS_FAIL_FIFO_UNDERRUN: 79 case TX_STATUS_FAIL_FIFO_UNDERRUN:
80 priv->_agn.reply_tx_stats.fifo_underrun++; 80 priv->reply_tx_stats.fifo_underrun++;
81 break; 81 break;
82 case TX_STATUS_FAIL_DRAIN_FLOW: 82 case TX_STATUS_FAIL_DRAIN_FLOW:
83 priv->_agn.reply_tx_stats.drain_flow++; 83 priv->reply_tx_stats.drain_flow++;
84 break; 84 break;
85 case TX_STATUS_FAIL_RFKILL_FLUSH: 85 case TX_STATUS_FAIL_RFKILL_FLUSH:
86 priv->_agn.reply_tx_stats.rfkill_flush++; 86 priv->reply_tx_stats.rfkill_flush++;
87 break; 87 break;
88 case TX_STATUS_FAIL_LIFE_EXPIRE: 88 case TX_STATUS_FAIL_LIFE_EXPIRE:
89 priv->_agn.reply_tx_stats.life_expire++; 89 priv->reply_tx_stats.life_expire++;
90 break; 90 break;
91 case TX_STATUS_FAIL_DEST_PS: 91 case TX_STATUS_FAIL_DEST_PS:
92 priv->_agn.reply_tx_stats.dest_ps++; 92 priv->reply_tx_stats.dest_ps++;
93 break; 93 break;
94 case TX_STATUS_FAIL_HOST_ABORTED: 94 case TX_STATUS_FAIL_HOST_ABORTED:
95 priv->_agn.reply_tx_stats.host_abort++; 95 priv->reply_tx_stats.host_abort++;
96 break; 96 break;
97 case TX_STATUS_FAIL_BT_RETRY: 97 case TX_STATUS_FAIL_BT_RETRY:
98 priv->_agn.reply_tx_stats.bt_retry++; 98 priv->reply_tx_stats.bt_retry++;
99 break; 99 break;
100 case TX_STATUS_FAIL_STA_INVALID: 100 case TX_STATUS_FAIL_STA_INVALID:
101 priv->_agn.reply_tx_stats.sta_invalid++; 101 priv->reply_tx_stats.sta_invalid++;
102 break; 102 break;
103 case TX_STATUS_FAIL_FRAG_DROPPED: 103 case TX_STATUS_FAIL_FRAG_DROPPED:
104 priv->_agn.reply_tx_stats.frag_drop++; 104 priv->reply_tx_stats.frag_drop++;
105 break; 105 break;
106 case TX_STATUS_FAIL_TID_DISABLE: 106 case TX_STATUS_FAIL_TID_DISABLE:
107 priv->_agn.reply_tx_stats.tid_disable++; 107 priv->reply_tx_stats.tid_disable++;
108 break; 108 break;
109 case TX_STATUS_FAIL_FIFO_FLUSHED: 109 case TX_STATUS_FAIL_FIFO_FLUSHED:
110 priv->_agn.reply_tx_stats.fifo_flush++; 110 priv->reply_tx_stats.fifo_flush++;
111 break; 111 break;
112 case TX_STATUS_FAIL_INSUFFICIENT_CF_POLL: 112 case TX_STATUS_FAIL_INSUFFICIENT_CF_POLL:
113 priv->_agn.reply_tx_stats.insuff_cf_poll++; 113 priv->reply_tx_stats.insuff_cf_poll++;
114 break; 114 break;
115 case TX_STATUS_FAIL_PASSIVE_NO_RX: 115 case TX_STATUS_FAIL_PASSIVE_NO_RX:
116 priv->_agn.reply_tx_stats.fail_hw_drop++; 116 priv->reply_tx_stats.fail_hw_drop++;
117 break; 117 break;
118 case TX_STATUS_FAIL_NO_BEACON_ON_RADAR: 118 case TX_STATUS_FAIL_NO_BEACON_ON_RADAR:
119 priv->_agn.reply_tx_stats.sta_color_mismatch++; 119 priv->reply_tx_stats.sta_color_mismatch++;
120 break; 120 break;
121 default: 121 default:
122 priv->_agn.reply_tx_stats.unknown++; 122 priv->reply_tx_stats.unknown++;
123 break; 123 break;
124 } 124 }
125} 125}
@@ -130,43 +130,43 @@ static void iwlagn_count_agg_tx_err_status(struct iwl_priv *priv, u16 status)
130 130
131 switch (status) { 131 switch (status) {
132 case AGG_TX_STATE_UNDERRUN_MSK: 132 case AGG_TX_STATE_UNDERRUN_MSK:
133 priv->_agn.reply_agg_tx_stats.underrun++; 133 priv->reply_agg_tx_stats.underrun++;
134 break; 134 break;
135 case AGG_TX_STATE_BT_PRIO_MSK: 135 case AGG_TX_STATE_BT_PRIO_MSK:
136 priv->_agn.reply_agg_tx_stats.bt_prio++; 136 priv->reply_agg_tx_stats.bt_prio++;
137 break; 137 break;
138 case AGG_TX_STATE_FEW_BYTES_MSK: 138 case AGG_TX_STATE_FEW_BYTES_MSK:
139 priv->_agn.reply_agg_tx_stats.few_bytes++; 139 priv->reply_agg_tx_stats.few_bytes++;
140 break; 140 break;
141 case AGG_TX_STATE_ABORT_MSK: 141 case AGG_TX_STATE_ABORT_MSK:
142 priv->_agn.reply_agg_tx_stats.abort++; 142 priv->reply_agg_tx_stats.abort++;
143 break; 143 break;
144 case AGG_TX_STATE_LAST_SENT_TTL_MSK: 144 case AGG_TX_STATE_LAST_SENT_TTL_MSK:
145 priv->_agn.reply_agg_tx_stats.last_sent_ttl++; 145 priv->reply_agg_tx_stats.last_sent_ttl++;
146 break; 146 break;
147 case AGG_TX_STATE_LAST_SENT_TRY_CNT_MSK: 147 case AGG_TX_STATE_LAST_SENT_TRY_CNT_MSK:
148 priv->_agn.reply_agg_tx_stats.last_sent_try++; 148 priv->reply_agg_tx_stats.last_sent_try++;
149 break; 149 break;
150 case AGG_TX_STATE_LAST_SENT_BT_KILL_MSK: 150 case AGG_TX_STATE_LAST_SENT_BT_KILL_MSK:
151 priv->_agn.reply_agg_tx_stats.last_sent_bt_kill++; 151 priv->reply_agg_tx_stats.last_sent_bt_kill++;
152 break; 152 break;
153 case AGG_TX_STATE_SCD_QUERY_MSK: 153 case AGG_TX_STATE_SCD_QUERY_MSK:
154 priv->_agn.reply_agg_tx_stats.scd_query++; 154 priv->reply_agg_tx_stats.scd_query++;
155 break; 155 break;
156 case AGG_TX_STATE_TEST_BAD_CRC32_MSK: 156 case AGG_TX_STATE_TEST_BAD_CRC32_MSK:
157 priv->_agn.reply_agg_tx_stats.bad_crc32++; 157 priv->reply_agg_tx_stats.bad_crc32++;
158 break; 158 break;
159 case AGG_TX_STATE_RESPONSE_MSK: 159 case AGG_TX_STATE_RESPONSE_MSK:
160 priv->_agn.reply_agg_tx_stats.response++; 160 priv->reply_agg_tx_stats.response++;
161 break; 161 break;
162 case AGG_TX_STATE_DUMP_TX_MSK: 162 case AGG_TX_STATE_DUMP_TX_MSK:
163 priv->_agn.reply_agg_tx_stats.dump_tx++; 163 priv->reply_agg_tx_stats.dump_tx++;
164 break; 164 break;
165 case AGG_TX_STATE_DELAY_TX_MSK: 165 case AGG_TX_STATE_DELAY_TX_MSK:
166 priv->_agn.reply_agg_tx_stats.delay_tx++; 166 priv->reply_agg_tx_stats.delay_tx++;
167 break; 167 break;
168 default: 168 default:
169 priv->_agn.reply_agg_tx_stats.unknown++; 169 priv->reply_agg_tx_stats.unknown++;
170 break; 170 break;
171 } 171 }
172} 172}
@@ -749,7 +749,7 @@ static int iwl_get_channels_for_scan(struct iwl_priv *priv,
749 749
750static int iwl_fill_offch_tx(struct iwl_priv *priv, void *data, size_t maxlen) 750static int iwl_fill_offch_tx(struct iwl_priv *priv, void *data, size_t maxlen)
751{ 751{
752 struct sk_buff *skb = priv->_agn.offchan_tx_skb; 752 struct sk_buff *skb = priv->offchan_tx_skb;
753 753
754 if (skb->len < maxlen) 754 if (skb->len < maxlen)
755 maxlen = skb->len; 755 maxlen = skb->len;
@@ -835,7 +835,7 @@ int iwlagn_request_scan(struct iwl_priv *priv, struct ieee80211_vif *vif)
835 } else if (priv->scan_type == IWL_SCAN_OFFCH_TX) { 835 } else if (priv->scan_type == IWL_SCAN_OFFCH_TX) {
836 scan->suspend_time = 0; 836 scan->suspend_time = 0;
837 scan->max_out_time = 837 scan->max_out_time =
838 cpu_to_le32(1024 * priv->_agn.offchan_tx_timeout); 838 cpu_to_le32(1024 * priv->offchan_tx_timeout);
839 } 839 }
840 840
841 switch (priv->scan_type) { 841 switch (priv->scan_type) {
@@ -1023,9 +1023,9 @@ int iwlagn_request_scan(struct iwl_priv *priv, struct ieee80211_vif *vif)
1023 scan_ch = (void *)&scan->data[cmd_len]; 1023 scan_ch = (void *)&scan->data[cmd_len];
1024 scan_ch->type = SCAN_CHANNEL_TYPE_ACTIVE; 1024 scan_ch->type = SCAN_CHANNEL_TYPE_ACTIVE;
1025 scan_ch->channel = 1025 scan_ch->channel =
1026 cpu_to_le16(priv->_agn.offchan_tx_chan->hw_value); 1026 cpu_to_le16(priv->offchan_tx_chan->hw_value);
1027 scan_ch->active_dwell = 1027 scan_ch->active_dwell =
1028 cpu_to_le16(priv->_agn.offchan_tx_timeout); 1028 cpu_to_le16(priv->offchan_tx_timeout);
1029 scan_ch->passive_dwell = 0; 1029 scan_ch->passive_dwell = 0;
1030 1030
1031 /* Set txpower levels to defaults */ 1031 /* Set txpower levels to defaults */
@@ -1035,7 +1035,7 @@ int iwlagn_request_scan(struct iwl_priv *priv, struct ieee80211_vif *vif)
1035 * power level: 1035 * power level:
1036 * scan_ch->tx_gain = ((1 << 5) | (2 << 3)) | 3; 1036 * scan_ch->tx_gain = ((1 << 5) | (2 << 3)) | 3;
1037 */ 1037 */
1038 if (priv->_agn.offchan_tx_chan->band == IEEE80211_BAND_5GHZ) 1038 if (priv->offchan_tx_chan->band == IEEE80211_BAND_5GHZ)
1039 scan_ch->tx_gain = ((1 << 5) | (3 << 3)) | 3; 1039 scan_ch->tx_gain = ((1 << 5) | (3 << 3)) | 3;
1040 else 1040 else
1041 scan_ch->tx_gain = ((1 << 5) | (5 << 3)); 1041 scan_ch->tx_gain = ((1 << 5) | (5 << 3));
@@ -2004,9 +2004,9 @@ void iwlagn_init_notification_wait(struct iwl_priv *priv,
2004 wait_entry->triggered = false; 2004 wait_entry->triggered = false;
2005 wait_entry->aborted = false; 2005 wait_entry->aborted = false;
2006 2006
2007 spin_lock_bh(&priv->_agn.notif_wait_lock); 2007 spin_lock_bh(&priv->notif_wait_lock);
2008 list_add(&wait_entry->list, &priv->_agn.notif_waits); 2008 list_add(&wait_entry->list, &priv->notif_waits);
2009 spin_unlock_bh(&priv->_agn.notif_wait_lock); 2009 spin_unlock_bh(&priv->notif_wait_lock);
2010} 2010}
2011 2011
2012int iwlagn_wait_notification(struct iwl_priv *priv, 2012int iwlagn_wait_notification(struct iwl_priv *priv,
@@ -2015,13 +2015,13 @@ int iwlagn_wait_notification(struct iwl_priv *priv,
2015{ 2015{
2016 int ret; 2016 int ret;
2017 2017
2018 ret = wait_event_timeout(priv->_agn.notif_waitq, 2018 ret = wait_event_timeout(priv->notif_waitq,
2019 wait_entry->triggered || wait_entry->aborted, 2019 wait_entry->triggered || wait_entry->aborted,
2020 timeout); 2020 timeout);
2021 2021
2022 spin_lock_bh(&priv->_agn.notif_wait_lock); 2022 spin_lock_bh(&priv->notif_wait_lock);
2023 list_del(&wait_entry->list); 2023 list_del(&wait_entry->list);
2024 spin_unlock_bh(&priv->_agn.notif_wait_lock); 2024 spin_unlock_bh(&priv->notif_wait_lock);
2025 2025
2026 if (wait_entry->aborted) 2026 if (wait_entry->aborted)
2027 return -EIO; 2027 return -EIO;
@@ -2035,7 +2035,7 @@ int iwlagn_wait_notification(struct iwl_priv *priv,
2035void iwlagn_remove_notification(struct iwl_priv *priv, 2035void iwlagn_remove_notification(struct iwl_priv *priv,
2036 struct iwl_notification_wait *wait_entry) 2036 struct iwl_notification_wait *wait_entry)
2037{ 2037{
2038 spin_lock_bh(&priv->_agn.notif_wait_lock); 2038 spin_lock_bh(&priv->notif_wait_lock);
2039 list_del(&wait_entry->list); 2039 list_del(&wait_entry->list);
2040 spin_unlock_bh(&priv->_agn.notif_wait_lock); 2040 spin_unlock_bh(&priv->notif_wait_lock);
2041} 2041}
diff --git a/drivers/net/wireless/iwlwifi/iwl-agn-rxon.c b/drivers/net/wireless/iwlwifi/iwl-agn-rxon.c
index 581534a54155..71487487d603 100644
--- a/drivers/net/wireless/iwlwifi/iwl-agn-rxon.c
+++ b/drivers/net/wireless/iwlwifi/iwl-agn-rxon.c
@@ -337,9 +337,9 @@ int iwlagn_set_pan_params(struct iwl_priv *priv)
337 cmd.slots[0].type = 0; /* BSS */ 337 cmd.slots[0].type = 0; /* BSS */
338 cmd.slots[1].type = 1; /* PAN */ 338 cmd.slots[1].type = 1; /* PAN */
339 339
340 if (priv->_agn.hw_roc_channel) { 340 if (priv->hw_roc_channel) {
341 /* both contexts must be used for this to happen */ 341 /* both contexts must be used for this to happen */
342 slot1 = priv->_agn.hw_roc_duration; 342 slot1 = priv->hw_roc_duration;
343 slot0 = IWL_MIN_SLOT_TIME; 343 slot0 = IWL_MIN_SLOT_TIME;
344 } else if (ctx_bss->vif && ctx_pan->vif) { 344 } else if (ctx_bss->vif && ctx_pan->vif) {
345 int bcnint = ctx_pan->vif->bss_conf.beacon_int; 345 int bcnint = ctx_pan->vif->bss_conf.beacon_int;
@@ -438,8 +438,8 @@ int iwlagn_commit_rxon(struct iwl_priv *priv, struct iwl_rxon_context *ctx)
438 /* always get timestamp with Rx frame */ 438 /* always get timestamp with Rx frame */
439 ctx->staging.flags |= RXON_FLG_TSF2HOST_MSK; 439 ctx->staging.flags |= RXON_FLG_TSF2HOST_MSK;
440 440
441 if (ctx->ctxid == IWL_RXON_CTX_PAN && priv->_agn.hw_roc_channel) { 441 if (ctx->ctxid == IWL_RXON_CTX_PAN && priv->hw_roc_channel) {
442 struct ieee80211_channel *chan = priv->_agn.hw_roc_channel; 442 struct ieee80211_channel *chan = priv->hw_roc_channel;
443 443
444 iwl_set_rxon_channel(priv, chan, ctx); 444 iwl_set_rxon_channel(priv, chan, ctx);
445 iwl_set_flags_for_band(priv, ctx, chan->band, NULL); 445 iwl_set_flags_for_band(priv, ctx, chan->band, NULL);
@@ -787,7 +787,7 @@ static void iwlagn_chain_noise_reset(struct iwl_priv *priv)
787 787
788 memset(&cmd, 0, sizeof(cmd)); 788 memset(&cmd, 0, sizeof(cmd));
789 iwl_set_calib_hdr(&cmd.hdr, 789 iwl_set_calib_hdr(&cmd.hdr,
790 priv->_agn.phy_calib_chain_noise_reset_cmd); 790 priv->phy_calib_chain_noise_reset_cmd);
791 ret = trans_send_cmd_pdu(&priv->trans, 791 ret = trans_send_cmd_pdu(&priv->trans,
792 REPLY_PHY_CALIBRATION_CMD, 792 REPLY_PHY_CALIBRATION_CMD,
793 CMD_SYNC, sizeof(cmd), &cmd); 793 CMD_SYNC, sizeof(cmd), &cmd);
diff --git a/drivers/net/wireless/iwlwifi/iwl-agn.c b/drivers/net/wireless/iwlwifi/iwl-agn.c
index 8afdeca2946a..6df244387b2f 100644
--- a/drivers/net/wireless/iwlwifi/iwl-agn.c
+++ b/drivers/net/wireless/iwlwifi/iwl-agn.c
@@ -1103,20 +1103,20 @@ static void iwl_ucode_callback(const struct firmware *ucode_raw, void *context)
1103 * for each event, which is of mode 1 (including timestamp) for all 1103 * for each event, which is of mode 1 (including timestamp) for all
1104 * new microcodes that include this information. 1104 * new microcodes that include this information.
1105 */ 1105 */
1106 priv->_agn.init_evtlog_ptr = pieces.init_evtlog_ptr; 1106 priv->init_evtlog_ptr = pieces.init_evtlog_ptr;
1107 if (pieces.init_evtlog_size) 1107 if (pieces.init_evtlog_size)
1108 priv->_agn.init_evtlog_size = (pieces.init_evtlog_size - 16)/12; 1108 priv->init_evtlog_size = (pieces.init_evtlog_size - 16)/12;
1109 else 1109 else
1110 priv->_agn.init_evtlog_size = 1110 priv->init_evtlog_size =
1111 priv->cfg->base_params->max_event_log_size; 1111 priv->cfg->base_params->max_event_log_size;
1112 priv->_agn.init_errlog_ptr = pieces.init_errlog_ptr; 1112 priv->init_errlog_ptr = pieces.init_errlog_ptr;
1113 priv->_agn.inst_evtlog_ptr = pieces.inst_evtlog_ptr; 1113 priv->inst_evtlog_ptr = pieces.inst_evtlog_ptr;
1114 if (pieces.inst_evtlog_size) 1114 if (pieces.inst_evtlog_size)
1115 priv->_agn.inst_evtlog_size = (pieces.inst_evtlog_size - 16)/12; 1115 priv->inst_evtlog_size = (pieces.inst_evtlog_size - 16)/12;
1116 else 1116 else
1117 priv->_agn.inst_evtlog_size = 1117 priv->inst_evtlog_size =
1118 priv->cfg->base_params->max_event_log_size; 1118 priv->cfg->base_params->max_event_log_size;
1119 priv->_agn.inst_errlog_ptr = pieces.inst_errlog_ptr; 1119 priv->inst_errlog_ptr = pieces.inst_errlog_ptr;
1120 1120
1121 priv->new_scan_threshold_behaviour = 1121 priv->new_scan_threshold_behaviour =
1122 !!(ucode_capa.flags & IWL_UCODE_TLV_FLAGS_NEWSCAN); 1122 !!(ucode_capa.flags & IWL_UCODE_TLV_FLAGS_NEWSCAN);
@@ -1142,9 +1142,9 @@ static void iwl_ucode_callback(const struct firmware *ucode_raw, void *context)
1142 ucode_capa.standard_phy_calibration_size = 1142 ucode_capa.standard_phy_calibration_size =
1143 IWL_MAX_STANDARD_PHY_CALIBRATE_TBL_SIZE; 1143 IWL_MAX_STANDARD_PHY_CALIBRATE_TBL_SIZE;
1144 1144
1145 priv->_agn.phy_calib_chain_noise_reset_cmd = 1145 priv->phy_calib_chain_noise_reset_cmd =
1146 ucode_capa.standard_phy_calibration_size; 1146 ucode_capa.standard_phy_calibration_size;
1147 priv->_agn.phy_calib_chain_noise_gain_cmd = 1147 priv->phy_calib_chain_noise_gain_cmd =
1148 ucode_capa.standard_phy_calibration_size + 1; 1148 ucode_capa.standard_phy_calibration_size + 1;
1149 1149
1150 /************************************************** 1150 /**************************************************
@@ -1169,7 +1169,7 @@ static void iwl_ucode_callback(const struct firmware *ucode_raw, void *context)
1169 1169
1170 /* We have our copies now, allow OS release its copies */ 1170 /* We have our copies now, allow OS release its copies */
1171 release_firmware(ucode_raw); 1171 release_firmware(ucode_raw);
1172 complete(&priv->_agn.firmware_loading_complete); 1172 complete(&priv->firmware_loading_complete);
1173 return; 1173 return;
1174 1174
1175 try_again: 1175 try_again:
@@ -1183,7 +1183,7 @@ static void iwl_ucode_callback(const struct firmware *ucode_raw, void *context)
1183 IWL_ERR(priv, "failed to allocate pci memory\n"); 1183 IWL_ERR(priv, "failed to allocate pci memory\n");
1184 iwl_dealloc_ucode(priv); 1184 iwl_dealloc_ucode(priv);
1185 out_unbind: 1185 out_unbind:
1186 complete(&priv->_agn.firmware_loading_complete); 1186 complete(&priv->firmware_loading_complete);
1187 device_release_driver(priv->bus->dev); 1187 device_release_driver(priv->bus->dev);
1188 release_firmware(ucode_raw); 1188 release_firmware(ucode_raw);
1189} 1189}
@@ -1265,10 +1265,10 @@ void iwl_dump_nic_error_log(struct iwl_priv *priv)
1265 base = priv->device_pointers.error_event_table; 1265 base = priv->device_pointers.error_event_table;
1266 if (priv->ucode_type == IWL_UCODE_INIT) { 1266 if (priv->ucode_type == IWL_UCODE_INIT) {
1267 if (!base) 1267 if (!base)
1268 base = priv->_agn.init_errlog_ptr; 1268 base = priv->init_errlog_ptr;
1269 } else { 1269 } else {
1270 if (!base) 1270 if (!base)
1271 base = priv->_agn.inst_errlog_ptr; 1271 base = priv->inst_errlog_ptr;
1272 } 1272 }
1273 1273
1274 if (!iwlagn_hw_valid_rtc_data_addr(base)) { 1274 if (!iwlagn_hw_valid_rtc_data_addr(base)) {
@@ -1341,10 +1341,10 @@ static int iwl_print_event_log(struct iwl_priv *priv, u32 start_idx,
1341 base = priv->device_pointers.log_event_table; 1341 base = priv->device_pointers.log_event_table;
1342 if (priv->ucode_type == IWL_UCODE_INIT) { 1342 if (priv->ucode_type == IWL_UCODE_INIT) {
1343 if (!base) 1343 if (!base)
1344 base = priv->_agn.init_evtlog_ptr; 1344 base = priv->init_evtlog_ptr;
1345 } else { 1345 } else {
1346 if (!base) 1346 if (!base)
1347 base = priv->_agn.inst_evtlog_ptr; 1347 base = priv->inst_evtlog_ptr;
1348 } 1348 }
1349 1349
1350 if (mode == 0) 1350 if (mode == 0)
@@ -1453,13 +1453,13 @@ int iwl_dump_nic_event_log(struct iwl_priv *priv, bool full_log,
1453 1453
1454 base = priv->device_pointers.log_event_table; 1454 base = priv->device_pointers.log_event_table;
1455 if (priv->ucode_type == IWL_UCODE_INIT) { 1455 if (priv->ucode_type == IWL_UCODE_INIT) {
1456 logsize = priv->_agn.init_evtlog_size; 1456 logsize = priv->init_evtlog_size;
1457 if (!base) 1457 if (!base)
1458 base = priv->_agn.init_evtlog_ptr; 1458 base = priv->init_evtlog_ptr;
1459 } else { 1459 } else {
1460 logsize = priv->_agn.inst_evtlog_size; 1460 logsize = priv->inst_evtlog_size;
1461 if (!base) 1461 if (!base)
1462 base = priv->_agn.inst_evtlog_ptr; 1462 base = priv->inst_evtlog_ptr;
1463 } 1463 }
1464 1464
1465 if (!iwlagn_hw_valid_rtc_data_addr(base)) { 1465 if (!iwlagn_hw_valid_rtc_data_addr(base)) {
@@ -1964,7 +1964,7 @@ static int iwl_mac_offchannel_tx(struct ieee80211_hw *hw, struct sk_buff *skb,
1964 1964
1965 /* TODO: queue up if scanning? */ 1965 /* TODO: queue up if scanning? */
1966 if (test_bit(STATUS_SCANNING, &priv->status) || 1966 if (test_bit(STATUS_SCANNING, &priv->status) ||
1967 priv->_agn.offchan_tx_skb) { 1967 priv->offchan_tx_skb) {
1968 ret = -EBUSY; 1968 ret = -EBUSY;
1969 goto out; 1969 goto out;
1970 } 1970 }
@@ -1978,14 +1978,14 @@ static int iwl_mac_offchannel_tx(struct ieee80211_hw *hw, struct sk_buff *skb,
1978 goto out; 1978 goto out;
1979 } 1979 }
1980 1980
1981 priv->_agn.offchan_tx_skb = skb; 1981 priv->offchan_tx_skb = skb;
1982 priv->_agn.offchan_tx_timeout = wait; 1982 priv->offchan_tx_timeout = wait;
1983 priv->_agn.offchan_tx_chan = chan; 1983 priv->offchan_tx_chan = chan;
1984 1984
1985 ret = iwl_scan_initiate(priv, priv->contexts[IWL_RXON_CTX_PAN].vif, 1985 ret = iwl_scan_initiate(priv, priv->contexts[IWL_RXON_CTX_PAN].vif,
1986 IWL_SCAN_OFFCH_TX, chan->band); 1986 IWL_SCAN_OFFCH_TX, chan->band);
1987 if (ret) 1987 if (ret)
1988 priv->_agn.offchan_tx_skb = NULL; 1988 priv->offchan_tx_skb = NULL;
1989 out: 1989 out:
1990 mutex_unlock(&priv->mutex); 1990 mutex_unlock(&priv->mutex);
1991 free: 1991 free:
@@ -2002,12 +2002,12 @@ static int iwl_mac_offchannel_tx_cancel_wait(struct ieee80211_hw *hw)
2002 2002
2003 mutex_lock(&priv->mutex); 2003 mutex_lock(&priv->mutex);
2004 2004
2005 if (!priv->_agn.offchan_tx_skb) { 2005 if (!priv->offchan_tx_skb) {
2006 ret = -EINVAL; 2006 ret = -EINVAL;
2007 goto unlock; 2007 goto unlock;
2008 } 2008 }
2009 2009
2010 priv->_agn.offchan_tx_skb = NULL; 2010 priv->offchan_tx_skb = NULL;
2011 2011
2012 ret = iwl_scan_cancel_timeout(priv, 200); 2012 ret = iwl_scan_cancel_timeout(priv, 200);
2013 if (ret) 2013 if (ret)
@@ -2380,18 +2380,18 @@ static int iwlagn_mac_ampdu_action(struct ieee80211_hw *hw,
2380 IWL_DEBUG_HT(priv, "start Tx\n"); 2380 IWL_DEBUG_HT(priv, "start Tx\n");
2381 ret = iwlagn_tx_agg_start(priv, vif, sta, tid, ssn); 2381 ret = iwlagn_tx_agg_start(priv, vif, sta, tid, ssn);
2382 if (ret == 0) { 2382 if (ret == 0) {
2383 priv->_agn.agg_tids_count++; 2383 priv->agg_tids_count++;
2384 IWL_DEBUG_HT(priv, "priv->_agn.agg_tids_count = %u\n", 2384 IWL_DEBUG_HT(priv, "priv->agg_tids_count = %u\n",
2385 priv->_agn.agg_tids_count); 2385 priv->agg_tids_count);
2386 } 2386 }
2387 break; 2387 break;
2388 case IEEE80211_AMPDU_TX_STOP: 2388 case IEEE80211_AMPDU_TX_STOP:
2389 IWL_DEBUG_HT(priv, "stop Tx\n"); 2389 IWL_DEBUG_HT(priv, "stop Tx\n");
2390 ret = iwlagn_tx_agg_stop(priv, vif, sta, tid); 2390 ret = iwlagn_tx_agg_stop(priv, vif, sta, tid);
2391 if ((ret == 0) && (priv->_agn.agg_tids_count > 0)) { 2391 if ((ret == 0) && (priv->agg_tids_count > 0)) {
2392 priv->_agn.agg_tids_count--; 2392 priv->agg_tids_count--;
2393 IWL_DEBUG_HT(priv, "priv->_agn.agg_tids_count = %u\n", 2393 IWL_DEBUG_HT(priv, "priv->agg_tids_count = %u\n",
2394 priv->_agn.agg_tids_count); 2394 priv->agg_tids_count);
2395 } 2395 }
2396 if (test_bit(STATUS_EXIT_PENDING, &priv->status)) 2396 if (test_bit(STATUS_EXIT_PENDING, &priv->status))
2397 ret = 0; 2397 ret = 0;
@@ -2698,7 +2698,7 @@ static void iwlagn_disable_roc(struct iwl_priv *priv)
2698 iwl_set_rxon_channel(priv, chan, ctx); 2698 iwl_set_rxon_channel(priv, chan, ctx);
2699 iwl_set_flags_for_band(priv, ctx, chan->band, NULL); 2699 iwl_set_flags_for_band(priv, ctx, chan->band, NULL);
2700 2700
2701 priv->_agn.hw_roc_channel = NULL; 2701 priv->hw_roc_channel = NULL;
2702 2702
2703 iwlagn_commit_rxon(priv, ctx); 2703 iwlagn_commit_rxon(priv, ctx);
2704 2704
@@ -2708,7 +2708,7 @@ static void iwlagn_disable_roc(struct iwl_priv *priv)
2708static void iwlagn_bg_roc_done(struct work_struct *work) 2708static void iwlagn_bg_roc_done(struct work_struct *work)
2709{ 2709{
2710 struct iwl_priv *priv = container_of(work, struct iwl_priv, 2710 struct iwl_priv *priv = container_of(work, struct iwl_priv,
2711 _agn.hw_roc_work.work); 2711 hw_roc_work.work);
2712 2712
2713 mutex_lock(&priv->mutex); 2713 mutex_lock(&priv->mutex);
2714 ieee80211_remain_on_channel_expired(priv->hw); 2714 ieee80211_remain_on_channel_expired(priv->hw);
@@ -2740,11 +2740,11 @@ static int iwl_mac_remain_on_channel(struct ieee80211_hw *hw,
2740 } 2740 }
2741 2741
2742 priv->contexts[IWL_RXON_CTX_PAN].is_active = true; 2742 priv->contexts[IWL_RXON_CTX_PAN].is_active = true;
2743 priv->_agn.hw_roc_channel = channel; 2743 priv->hw_roc_channel = channel;
2744 priv->_agn.hw_roc_chantype = channel_type; 2744 priv->hw_roc_chantype = channel_type;
2745 priv->_agn.hw_roc_duration = DIV_ROUND_UP(duration * 1000, 1024); 2745 priv->hw_roc_duration = DIV_ROUND_UP(duration * 1000, 1024);
2746 iwlagn_commit_rxon(priv, &priv->contexts[IWL_RXON_CTX_PAN]); 2746 iwlagn_commit_rxon(priv, &priv->contexts[IWL_RXON_CTX_PAN]);
2747 queue_delayed_work(priv->workqueue, &priv->_agn.hw_roc_work, 2747 queue_delayed_work(priv->workqueue, &priv->hw_roc_work,
2748 msecs_to_jiffies(duration + 20)); 2748 msecs_to_jiffies(duration + 20));
2749 2749
2750 msleep(IWL_MIN_SLOT_TIME); /* TU is almost ms */ 2750 msleep(IWL_MIN_SLOT_TIME); /* TU is almost ms */
@@ -2763,7 +2763,7 @@ static int iwl_mac_cancel_remain_on_channel(struct ieee80211_hw *hw)
2763 if (!(priv->valid_contexts & BIT(IWL_RXON_CTX_PAN))) 2763 if (!(priv->valid_contexts & BIT(IWL_RXON_CTX_PAN)))
2764 return -EOPNOTSUPP; 2764 return -EOPNOTSUPP;
2765 2765
2766 cancel_delayed_work_sync(&priv->_agn.hw_roc_work); 2766 cancel_delayed_work_sync(&priv->hw_roc_work);
2767 2767
2768 mutex_lock(&priv->mutex); 2768 mutex_lock(&priv->mutex);
2769 iwlagn_disable_roc(priv); 2769 iwlagn_disable_roc(priv);
@@ -2790,7 +2790,7 @@ static void iwl_setup_deferred_work(struct iwl_priv *priv)
2790 INIT_WORK(&priv->tx_flush, iwl_bg_tx_flush); 2790 INIT_WORK(&priv->tx_flush, iwl_bg_tx_flush);
2791 INIT_WORK(&priv->bt_full_concurrency, iwl_bg_bt_full_concurrency); 2791 INIT_WORK(&priv->bt_full_concurrency, iwl_bg_bt_full_concurrency);
2792 INIT_WORK(&priv->bt_runtime_config, iwl_bg_bt_runtime_config); 2792 INIT_WORK(&priv->bt_runtime_config, iwl_bg_bt_runtime_config);
2793 INIT_DELAYED_WORK(&priv->_agn.hw_roc_work, iwlagn_bg_roc_done); 2793 INIT_DELAYED_WORK(&priv->hw_roc_work, iwlagn_bg_roc_done);
2794 2794
2795 iwl_setup_scan_deferred_work(priv); 2795 iwl_setup_scan_deferred_work(priv);
2796 2796
@@ -2864,7 +2864,7 @@ static int iwl_init_drv(struct iwl_priv *priv)
2864 priv->iw_mode = NL80211_IFTYPE_STATION; 2864 priv->iw_mode = NL80211_IFTYPE_STATION;
2865 priv->current_ht_config.smps = IEEE80211_SMPS_STATIC; 2865 priv->current_ht_config.smps = IEEE80211_SMPS_STATIC;
2866 priv->missed_beacon_threshold = IWL_MISSED_BEACON_THRESHOLD_DEF; 2866 priv->missed_beacon_threshold = IWL_MISSED_BEACON_THRESHOLD_DEF;
2867 priv->_agn.agg_tids_count = 0; 2867 priv->agg_tids_count = 0;
2868 2868
2869 /* initialize force reset */ 2869 /* initialize force reset */
2870 priv->force_reset[IWL_RF_RESET].reset_duration = 2870 priv->force_reset[IWL_RF_RESET].reset_duration =
@@ -3247,7 +3247,7 @@ int iwl_probe(struct iwl_bus *bus, struct iwl_cfg *cfg)
3247 iwl_power_initialize(priv); 3247 iwl_power_initialize(priv);
3248 iwl_tt_initialize(priv); 3248 iwl_tt_initialize(priv);
3249 3249
3250 init_completion(&priv->_agn.firmware_loading_complete); 3250 init_completion(&priv->firmware_loading_complete);
3251 3251
3252 err = iwl_request_firmware(priv, true); 3252 err = iwl_request_firmware(priv, true);
3253 if (err) 3253 if (err)
@@ -3274,7 +3274,7 @@ void __devexit iwl_remove(struct iwl_priv * priv)
3274{ 3274{
3275 unsigned long flags; 3275 unsigned long flags;
3276 3276
3277 wait_for_completion(&priv->_agn.firmware_loading_complete); 3277 wait_for_completion(&priv->firmware_loading_complete);
3278 3278
3279 IWL_DEBUG_INFO(priv, "*** UNLOAD DRIVER ***\n"); 3279 IWL_DEBUG_INFO(priv, "*** UNLOAD DRIVER ***\n");
3280 3280
diff --git a/drivers/net/wireless/iwlwifi/iwl-core.c b/drivers/net/wireless/iwlwifi/iwl-core.c
index 3be011137d03..9b9f462ea0ff 100644
--- a/drivers/net/wireless/iwlwifi/iwl-core.c
+++ b/drivers/net/wireless/iwlwifi/iwl-core.c
@@ -840,12 +840,12 @@ static void iwlagn_abort_notification_waits(struct iwl_priv *priv)
840 unsigned long flags; 840 unsigned long flags;
841 struct iwl_notification_wait *wait_entry; 841 struct iwl_notification_wait *wait_entry;
842 842
843 spin_lock_irqsave(&priv->_agn.notif_wait_lock, flags); 843 spin_lock_irqsave(&priv->notif_wait_lock, flags);
844 list_for_each_entry(wait_entry, &priv->_agn.notif_waits, list) 844 list_for_each_entry(wait_entry, &priv->notif_waits, list)
845 wait_entry->aborted = true; 845 wait_entry->aborted = true;
846 spin_unlock_irqrestore(&priv->_agn.notif_wait_lock, flags); 846 spin_unlock_irqrestore(&priv->notif_wait_lock, flags);
847 847
848 wake_up_all(&priv->_agn.notif_waitq); 848 wake_up_all(&priv->notif_waitq);
849} 849}
850 850
851void iwlagn_fw_error(struct iwl_priv *priv, bool ondemand) 851void iwlagn_fw_error(struct iwl_priv *priv, bool ondemand)
diff --git a/drivers/net/wireless/iwlwifi/iwl-debugfs.c b/drivers/net/wireless/iwlwifi/iwl-debugfs.c
index 6f9ebae8ca06..17aebf08dff8 100644
--- a/drivers/net/wireless/iwlwifi/iwl-debugfs.c
+++ b/drivers/net/wireless/iwlwifi/iwl-debugfs.c
@@ -1915,121 +1915,121 @@ static ssize_t iwl_dbgfs_reply_tx_error_read(struct file *file,
1915 pos += scnprintf(buf + pos, bufsz - pos, "Statistics_TX_Error:\n"); 1915 pos += scnprintf(buf + pos, bufsz - pos, "Statistics_TX_Error:\n");
1916 pos += scnprintf(buf + pos, bufsz - pos, "%s:\t\t\t\t%u\n", 1916 pos += scnprintf(buf + pos, bufsz - pos, "%s:\t\t\t\t%u\n",
1917 iwl_get_tx_fail_reason(TX_STATUS_POSTPONE_DELAY), 1917 iwl_get_tx_fail_reason(TX_STATUS_POSTPONE_DELAY),
1918 priv->_agn.reply_tx_stats.pp_delay); 1918 priv->reply_tx_stats.pp_delay);
1919 pos += scnprintf(buf + pos, bufsz - pos, "%s:\t\t\t%u\n", 1919 pos += scnprintf(buf + pos, bufsz - pos, "%s:\t\t\t%u\n",
1920 iwl_get_tx_fail_reason(TX_STATUS_POSTPONE_FEW_BYTES), 1920 iwl_get_tx_fail_reason(TX_STATUS_POSTPONE_FEW_BYTES),
1921 priv->_agn.reply_tx_stats.pp_few_bytes); 1921 priv->reply_tx_stats.pp_few_bytes);
1922 pos += scnprintf(buf + pos, bufsz - pos, "%s:\t\t\t%u\n", 1922 pos += scnprintf(buf + pos, bufsz - pos, "%s:\t\t\t%u\n",
1923 iwl_get_tx_fail_reason(TX_STATUS_POSTPONE_BT_PRIO), 1923 iwl_get_tx_fail_reason(TX_STATUS_POSTPONE_BT_PRIO),
1924 priv->_agn.reply_tx_stats.pp_bt_prio); 1924 priv->reply_tx_stats.pp_bt_prio);
1925 pos += scnprintf(buf + pos, bufsz - pos, "%s:\t\t\t%u\n", 1925 pos += scnprintf(buf + pos, bufsz - pos, "%s:\t\t\t%u\n",
1926 iwl_get_tx_fail_reason(TX_STATUS_POSTPONE_QUIET_PERIOD), 1926 iwl_get_tx_fail_reason(TX_STATUS_POSTPONE_QUIET_PERIOD),
1927 priv->_agn.reply_tx_stats.pp_quiet_period); 1927 priv->reply_tx_stats.pp_quiet_period);
1928 pos += scnprintf(buf + pos, bufsz - pos, "%s:\t\t\t%u\n", 1928 pos += scnprintf(buf + pos, bufsz - pos, "%s:\t\t\t%u\n",
1929 iwl_get_tx_fail_reason(TX_STATUS_POSTPONE_CALC_TTAK), 1929 iwl_get_tx_fail_reason(TX_STATUS_POSTPONE_CALC_TTAK),
1930 priv->_agn.reply_tx_stats.pp_calc_ttak); 1930 priv->reply_tx_stats.pp_calc_ttak);
1931 pos += scnprintf(buf + pos, bufsz - pos, "%s:\t\t%u\n", 1931 pos += scnprintf(buf + pos, bufsz - pos, "%s:\t\t%u\n",
1932 iwl_get_tx_fail_reason( 1932 iwl_get_tx_fail_reason(
1933 TX_STATUS_FAIL_INTERNAL_CROSSED_RETRY), 1933 TX_STATUS_FAIL_INTERNAL_CROSSED_RETRY),
1934 priv->_agn.reply_tx_stats.int_crossed_retry); 1934 priv->reply_tx_stats.int_crossed_retry);
1935 pos += scnprintf(buf + pos, bufsz - pos, "%s:\t\t\t%u\n", 1935 pos += scnprintf(buf + pos, bufsz - pos, "%s:\t\t\t%u\n",
1936 iwl_get_tx_fail_reason(TX_STATUS_FAIL_SHORT_LIMIT), 1936 iwl_get_tx_fail_reason(TX_STATUS_FAIL_SHORT_LIMIT),
1937 priv->_agn.reply_tx_stats.short_limit); 1937 priv->reply_tx_stats.short_limit);
1938 pos += scnprintf(buf + pos, bufsz - pos, "%s:\t\t\t%u\n", 1938 pos += scnprintf(buf + pos, bufsz - pos, "%s:\t\t\t%u\n",
1939 iwl_get_tx_fail_reason(TX_STATUS_FAIL_LONG_LIMIT), 1939 iwl_get_tx_fail_reason(TX_STATUS_FAIL_LONG_LIMIT),
1940 priv->_agn.reply_tx_stats.long_limit); 1940 priv->reply_tx_stats.long_limit);
1941 pos += scnprintf(buf + pos, bufsz - pos, "%s:\t\t\t%u\n", 1941 pos += scnprintf(buf + pos, bufsz - pos, "%s:\t\t\t%u\n",
1942 iwl_get_tx_fail_reason(TX_STATUS_FAIL_FIFO_UNDERRUN), 1942 iwl_get_tx_fail_reason(TX_STATUS_FAIL_FIFO_UNDERRUN),
1943 priv->_agn.reply_tx_stats.fifo_underrun); 1943 priv->reply_tx_stats.fifo_underrun);
1944 pos += scnprintf(buf + pos, bufsz - pos, "%s:\t\t\t%u\n", 1944 pos += scnprintf(buf + pos, bufsz - pos, "%s:\t\t\t%u\n",
1945 iwl_get_tx_fail_reason(TX_STATUS_FAIL_DRAIN_FLOW), 1945 iwl_get_tx_fail_reason(TX_STATUS_FAIL_DRAIN_FLOW),
1946 priv->_agn.reply_tx_stats.drain_flow); 1946 priv->reply_tx_stats.drain_flow);
1947 pos += scnprintf(buf + pos, bufsz - pos, "%s:\t\t\t%u\n", 1947 pos += scnprintf(buf + pos, bufsz - pos, "%s:\t\t\t%u\n",
1948 iwl_get_tx_fail_reason(TX_STATUS_FAIL_RFKILL_FLUSH), 1948 iwl_get_tx_fail_reason(TX_STATUS_FAIL_RFKILL_FLUSH),
1949 priv->_agn.reply_tx_stats.rfkill_flush); 1949 priv->reply_tx_stats.rfkill_flush);
1950 pos += scnprintf(buf + pos, bufsz - pos, "%s:\t\t\t%u\n", 1950 pos += scnprintf(buf + pos, bufsz - pos, "%s:\t\t\t%u\n",
1951 iwl_get_tx_fail_reason(TX_STATUS_FAIL_LIFE_EXPIRE), 1951 iwl_get_tx_fail_reason(TX_STATUS_FAIL_LIFE_EXPIRE),
1952 priv->_agn.reply_tx_stats.life_expire); 1952 priv->reply_tx_stats.life_expire);
1953 pos += scnprintf(buf + pos, bufsz - pos, "%s:\t\t\t%u\n", 1953 pos += scnprintf(buf + pos, bufsz - pos, "%s:\t\t\t%u\n",
1954 iwl_get_tx_fail_reason(TX_STATUS_FAIL_DEST_PS), 1954 iwl_get_tx_fail_reason(TX_STATUS_FAIL_DEST_PS),
1955 priv->_agn.reply_tx_stats.dest_ps); 1955 priv->reply_tx_stats.dest_ps);
1956 pos += scnprintf(buf + pos, bufsz - pos, "%s:\t\t\t%u\n", 1956 pos += scnprintf(buf + pos, bufsz - pos, "%s:\t\t\t%u\n",
1957 iwl_get_tx_fail_reason(TX_STATUS_FAIL_HOST_ABORTED), 1957 iwl_get_tx_fail_reason(TX_STATUS_FAIL_HOST_ABORTED),
1958 priv->_agn.reply_tx_stats.host_abort); 1958 priv->reply_tx_stats.host_abort);
1959 pos += scnprintf(buf + pos, bufsz - pos, "%s:\t\t\t%u\n", 1959 pos += scnprintf(buf + pos, bufsz - pos, "%s:\t\t\t%u\n",
1960 iwl_get_tx_fail_reason(TX_STATUS_FAIL_BT_RETRY), 1960 iwl_get_tx_fail_reason(TX_STATUS_FAIL_BT_RETRY),
1961 priv->_agn.reply_tx_stats.pp_delay); 1961 priv->reply_tx_stats.pp_delay);
1962 pos += scnprintf(buf + pos, bufsz - pos, "%s:\t\t\t%u\n", 1962 pos += scnprintf(buf + pos, bufsz - pos, "%s:\t\t\t%u\n",
1963 iwl_get_tx_fail_reason(TX_STATUS_FAIL_STA_INVALID), 1963 iwl_get_tx_fail_reason(TX_STATUS_FAIL_STA_INVALID),
1964 priv->_agn.reply_tx_stats.sta_invalid); 1964 priv->reply_tx_stats.sta_invalid);
1965 pos += scnprintf(buf + pos, bufsz - pos, "%s:\t\t\t%u\n", 1965 pos += scnprintf(buf + pos, bufsz - pos, "%s:\t\t\t%u\n",
1966 iwl_get_tx_fail_reason(TX_STATUS_FAIL_FRAG_DROPPED), 1966 iwl_get_tx_fail_reason(TX_STATUS_FAIL_FRAG_DROPPED),
1967 priv->_agn.reply_tx_stats.frag_drop); 1967 priv->reply_tx_stats.frag_drop);
1968 pos += scnprintf(buf + pos, bufsz - pos, "%s:\t\t\t%u\n", 1968 pos += scnprintf(buf + pos, bufsz - pos, "%s:\t\t\t%u\n",
1969 iwl_get_tx_fail_reason(TX_STATUS_FAIL_TID_DISABLE), 1969 iwl_get_tx_fail_reason(TX_STATUS_FAIL_TID_DISABLE),
1970 priv->_agn.reply_tx_stats.tid_disable); 1970 priv->reply_tx_stats.tid_disable);
1971 pos += scnprintf(buf + pos, bufsz - pos, "%s:\t\t\t%u\n", 1971 pos += scnprintf(buf + pos, bufsz - pos, "%s:\t\t\t%u\n",
1972 iwl_get_tx_fail_reason(TX_STATUS_FAIL_FIFO_FLUSHED), 1972 iwl_get_tx_fail_reason(TX_STATUS_FAIL_FIFO_FLUSHED),
1973 priv->_agn.reply_tx_stats.fifo_flush); 1973 priv->reply_tx_stats.fifo_flush);
1974 pos += scnprintf(buf + pos, bufsz - pos, "%s:\t\t%u\n", 1974 pos += scnprintf(buf + pos, bufsz - pos, "%s:\t\t%u\n",
1975 iwl_get_tx_fail_reason( 1975 iwl_get_tx_fail_reason(
1976 TX_STATUS_FAIL_INSUFFICIENT_CF_POLL), 1976 TX_STATUS_FAIL_INSUFFICIENT_CF_POLL),
1977 priv->_agn.reply_tx_stats.insuff_cf_poll); 1977 priv->reply_tx_stats.insuff_cf_poll);
1978 pos += scnprintf(buf + pos, bufsz - pos, "%s:\t\t\t%u\n", 1978 pos += scnprintf(buf + pos, bufsz - pos, "%s:\t\t\t%u\n",
1979 iwl_get_tx_fail_reason(TX_STATUS_FAIL_PASSIVE_NO_RX), 1979 iwl_get_tx_fail_reason(TX_STATUS_FAIL_PASSIVE_NO_RX),
1980 priv->_agn.reply_tx_stats.fail_hw_drop); 1980 priv->reply_tx_stats.fail_hw_drop);
1981 pos += scnprintf(buf + pos, bufsz - pos, "%s:\t\t%u\n", 1981 pos += scnprintf(buf + pos, bufsz - pos, "%s:\t\t%u\n",
1982 iwl_get_tx_fail_reason( 1982 iwl_get_tx_fail_reason(
1983 TX_STATUS_FAIL_NO_BEACON_ON_RADAR), 1983 TX_STATUS_FAIL_NO_BEACON_ON_RADAR),
1984 priv->_agn.reply_tx_stats.sta_color_mismatch); 1984 priv->reply_tx_stats.sta_color_mismatch);
1985 pos += scnprintf(buf + pos, bufsz - pos, "UNKNOWN:\t\t\t%u\n", 1985 pos += scnprintf(buf + pos, bufsz - pos, "UNKNOWN:\t\t\t%u\n",
1986 priv->_agn.reply_tx_stats.unknown); 1986 priv->reply_tx_stats.unknown);
1987 1987
1988 pos += scnprintf(buf + pos, bufsz - pos, 1988 pos += scnprintf(buf + pos, bufsz - pos,
1989 "\nStatistics_Agg_TX_Error:\n"); 1989 "\nStatistics_Agg_TX_Error:\n");
1990 1990
1991 pos += scnprintf(buf + pos, bufsz - pos, "%s:\t\t\t%u\n", 1991 pos += scnprintf(buf + pos, bufsz - pos, "%s:\t\t\t%u\n",
1992 iwl_get_agg_tx_fail_reason(AGG_TX_STATE_UNDERRUN_MSK), 1992 iwl_get_agg_tx_fail_reason(AGG_TX_STATE_UNDERRUN_MSK),
1993 priv->_agn.reply_agg_tx_stats.underrun); 1993 priv->reply_agg_tx_stats.underrun);
1994 pos += scnprintf(buf + pos, bufsz - pos, "%s:\t\t\t%u\n", 1994 pos += scnprintf(buf + pos, bufsz - pos, "%s:\t\t\t%u\n",
1995 iwl_get_agg_tx_fail_reason(AGG_TX_STATE_BT_PRIO_MSK), 1995 iwl_get_agg_tx_fail_reason(AGG_TX_STATE_BT_PRIO_MSK),
1996 priv->_agn.reply_agg_tx_stats.bt_prio); 1996 priv->reply_agg_tx_stats.bt_prio);
1997 pos += scnprintf(buf + pos, bufsz - pos, "%s:\t\t\t%u\n", 1997 pos += scnprintf(buf + pos, bufsz - pos, "%s:\t\t\t%u\n",
1998 iwl_get_agg_tx_fail_reason(AGG_TX_STATE_FEW_BYTES_MSK), 1998 iwl_get_agg_tx_fail_reason(AGG_TX_STATE_FEW_BYTES_MSK),
1999 priv->_agn.reply_agg_tx_stats.few_bytes); 1999 priv->reply_agg_tx_stats.few_bytes);
2000 pos += scnprintf(buf + pos, bufsz - pos, "%s:\t\t\t%u\n", 2000 pos += scnprintf(buf + pos, bufsz - pos, "%s:\t\t\t%u\n",
2001 iwl_get_agg_tx_fail_reason(AGG_TX_STATE_ABORT_MSK), 2001 iwl_get_agg_tx_fail_reason(AGG_TX_STATE_ABORT_MSK),
2002 priv->_agn.reply_agg_tx_stats.abort); 2002 priv->reply_agg_tx_stats.abort);
2003 pos += scnprintf(buf + pos, bufsz - pos, "%s:\t\t%u\n", 2003 pos += scnprintf(buf + pos, bufsz - pos, "%s:\t\t%u\n",
2004 iwl_get_agg_tx_fail_reason( 2004 iwl_get_agg_tx_fail_reason(
2005 AGG_TX_STATE_LAST_SENT_TTL_MSK), 2005 AGG_TX_STATE_LAST_SENT_TTL_MSK),
2006 priv->_agn.reply_agg_tx_stats.last_sent_ttl); 2006 priv->reply_agg_tx_stats.last_sent_ttl);
2007 pos += scnprintf(buf + pos, bufsz - pos, "%s:\t\t%u\n", 2007 pos += scnprintf(buf + pos, bufsz - pos, "%s:\t\t%u\n",
2008 iwl_get_agg_tx_fail_reason( 2008 iwl_get_agg_tx_fail_reason(
2009 AGG_TX_STATE_LAST_SENT_TRY_CNT_MSK), 2009 AGG_TX_STATE_LAST_SENT_TRY_CNT_MSK),
2010 priv->_agn.reply_agg_tx_stats.last_sent_try); 2010 priv->reply_agg_tx_stats.last_sent_try);
2011 pos += scnprintf(buf + pos, bufsz - pos, "%s:\t\t%u\n", 2011 pos += scnprintf(buf + pos, bufsz - pos, "%s:\t\t%u\n",
2012 iwl_get_agg_tx_fail_reason( 2012 iwl_get_agg_tx_fail_reason(
2013 AGG_TX_STATE_LAST_SENT_BT_KILL_MSK), 2013 AGG_TX_STATE_LAST_SENT_BT_KILL_MSK),
2014 priv->_agn.reply_agg_tx_stats.last_sent_bt_kill); 2014 priv->reply_agg_tx_stats.last_sent_bt_kill);
2015 pos += scnprintf(buf + pos, bufsz - pos, "%s:\t\t\t%u\n", 2015 pos += scnprintf(buf + pos, bufsz - pos, "%s:\t\t\t%u\n",
2016 iwl_get_agg_tx_fail_reason(AGG_TX_STATE_SCD_QUERY_MSK), 2016 iwl_get_agg_tx_fail_reason(AGG_TX_STATE_SCD_QUERY_MSK),
2017 priv->_agn.reply_agg_tx_stats.scd_query); 2017 priv->reply_agg_tx_stats.scd_query);
2018 pos += scnprintf(buf + pos, bufsz - pos, "%s:\t\t%u\n", 2018 pos += scnprintf(buf + pos, bufsz - pos, "%s:\t\t%u\n",
2019 iwl_get_agg_tx_fail_reason( 2019 iwl_get_agg_tx_fail_reason(
2020 AGG_TX_STATE_TEST_BAD_CRC32_MSK), 2020 AGG_TX_STATE_TEST_BAD_CRC32_MSK),
2021 priv->_agn.reply_agg_tx_stats.bad_crc32); 2021 priv->reply_agg_tx_stats.bad_crc32);
2022 pos += scnprintf(buf + pos, bufsz - pos, "%s:\t\t\t%u\n", 2022 pos += scnprintf(buf + pos, bufsz - pos, "%s:\t\t\t%u\n",
2023 iwl_get_agg_tx_fail_reason(AGG_TX_STATE_RESPONSE_MSK), 2023 iwl_get_agg_tx_fail_reason(AGG_TX_STATE_RESPONSE_MSK),
2024 priv->_agn.reply_agg_tx_stats.response); 2024 priv->reply_agg_tx_stats.response);
2025 pos += scnprintf(buf + pos, bufsz - pos, "%s:\t\t\t%u\n", 2025 pos += scnprintf(buf + pos, bufsz - pos, "%s:\t\t\t%u\n",
2026 iwl_get_agg_tx_fail_reason(AGG_TX_STATE_DUMP_TX_MSK), 2026 iwl_get_agg_tx_fail_reason(AGG_TX_STATE_DUMP_TX_MSK),
2027 priv->_agn.reply_agg_tx_stats.dump_tx); 2027 priv->reply_agg_tx_stats.dump_tx);
2028 pos += scnprintf(buf + pos, bufsz - pos, "%s:\t\t\t%u\n", 2028 pos += scnprintf(buf + pos, bufsz - pos, "%s:\t\t\t%u\n",
2029 iwl_get_agg_tx_fail_reason(AGG_TX_STATE_DELAY_TX_MSK), 2029 iwl_get_agg_tx_fail_reason(AGG_TX_STATE_DELAY_TX_MSK),
2030 priv->_agn.reply_agg_tx_stats.delay_tx); 2030 priv->reply_agg_tx_stats.delay_tx);
2031 pos += scnprintf(buf + pos, bufsz - pos, "UNKNOWN:\t\t\t%u\n", 2031 pos += scnprintf(buf + pos, bufsz - pos, "UNKNOWN:\t\t\t%u\n",
2032 priv->_agn.reply_agg_tx_stats.unknown); 2032 priv->reply_agg_tx_stats.unknown);
2033 2033
2034 ret = simple_read_from_buffer(user_buf, count, ppos, buf, pos); 2034 ret = simple_read_from_buffer(user_buf, count, ppos, buf, pos);
2035 kfree(buf); 2035 kfree(buf);
diff --git a/drivers/net/wireless/iwlwifi/iwl-dev.h b/drivers/net/wireless/iwlwifi/iwl-dev.h
index da9048856a3b..c27380440b66 100644
--- a/drivers/net/wireless/iwlwifi/iwl-dev.h
+++ b/drivers/net/wireless/iwlwifi/iwl-dev.h
@@ -1391,56 +1391,54 @@ struct iwl_priv {
1391 } accum_stats, delta_stats, max_delta_stats; 1391 } accum_stats, delta_stats, max_delta_stats;
1392#endif 1392#endif
1393 1393
1394 struct { 1394 /* INT ICT Table */
1395 /* INT ICT Table */ 1395 __le32 *ict_tbl;
1396 __le32 *ict_tbl; 1396 void *ict_tbl_vir;
1397 void *ict_tbl_vir; 1397 dma_addr_t ict_tbl_dma;
1398 dma_addr_t ict_tbl_dma; 1398 dma_addr_t aligned_ict_tbl_dma;
1399 dma_addr_t aligned_ict_tbl_dma; 1399 int ict_index;
1400 int ict_index; 1400 u32 inta;
1401 u32 inta; 1401 bool use_ict;
1402 bool use_ict; 1402 /*
1403 /* 1403 * reporting the number of tids has AGG on. 0 means
1404 * reporting the number of tids has AGG on. 0 means 1404 * no AGGREGATION
1405 * no AGGREGATION 1405 */
1406 */ 1406 u8 agg_tids_count;
1407 u8 agg_tids_count; 1407
1408 1408 struct iwl_rx_phy_res last_phy_res;
1409 struct iwl_rx_phy_res last_phy_res; 1409 bool last_phy_res_valid;
1410 bool last_phy_res_valid; 1410
1411 1411 struct completion firmware_loading_complete;
1412 struct completion firmware_loading_complete; 1412
1413 1413 u32 init_evtlog_ptr, init_evtlog_size, init_errlog_ptr;
1414 u32 init_evtlog_ptr, init_evtlog_size, init_errlog_ptr; 1414 u32 inst_evtlog_ptr, inst_evtlog_size, inst_errlog_ptr;
1415 u32 inst_evtlog_ptr, inst_evtlog_size, inst_errlog_ptr; 1415
1416 1416 /*
1417 /* 1417 * chain noise reset and gain commands are the
1418 * chain noise reset and gain commands are the 1418 * two extra calibration commands follows the standard
1419 * two extra calibration commands follows the standard 1419 * phy calibration commands
1420 * phy calibration commands 1420 */
1421 */ 1421 u8 phy_calib_chain_noise_reset_cmd;
1422 u8 phy_calib_chain_noise_reset_cmd; 1422 u8 phy_calib_chain_noise_gain_cmd;
1423 u8 phy_calib_chain_noise_gain_cmd; 1423
1424 1424 /* counts reply_tx error */
1425 /* counts reply_tx error */ 1425 struct reply_tx_error_statistics reply_tx_stats;
1426 struct reply_tx_error_statistics reply_tx_stats; 1426 struct reply_agg_tx_error_statistics reply_agg_tx_stats;
1427 struct reply_agg_tx_error_statistics reply_agg_tx_stats; 1427 /* notification wait support */
1428 /* notification wait support */ 1428 struct list_head notif_waits;
1429 struct list_head notif_waits; 1429 spinlock_t notif_wait_lock;
1430 spinlock_t notif_wait_lock; 1430 wait_queue_head_t notif_waitq;
1431 wait_queue_head_t notif_waitq; 1431
1432 1432 /* remain-on-channel offload support */
1433 /* remain-on-channel offload support */ 1433 struct ieee80211_channel *hw_roc_channel;
1434 struct ieee80211_channel *hw_roc_channel; 1434 struct delayed_work hw_roc_work;
1435 struct delayed_work hw_roc_work; 1435 enum nl80211_channel_type hw_roc_chantype;
1436 enum nl80211_channel_type hw_roc_chantype; 1436 int hw_roc_duration;
1437 int hw_roc_duration; 1437 bool hw_roc_setup;
1438 bool hw_roc_setup; 1438
1439 1439 struct sk_buff *offchan_tx_skb;
1440 struct sk_buff *offchan_tx_skb; 1440 int offchan_tx_timeout;
1441 int offchan_tx_timeout; 1441 struct ieee80211_channel *offchan_tx_chan;
1442 struct ieee80211_channel *offchan_tx_chan;
1443 } _agn;
1444 1442
1445 /* bt coex */ 1443 /* bt coex */
1446 u8 bt_enable_flag; 1444 u8 bt_enable_flag;
diff --git a/drivers/net/wireless/iwlwifi/iwl-rx.c b/drivers/net/wireless/iwlwifi/iwl-rx.c
index f67931d408b6..8e314003b63a 100644
--- a/drivers/net/wireless/iwlwifi/iwl-rx.c
+++ b/drivers/net/wireless/iwlwifi/iwl-rx.c
@@ -170,7 +170,7 @@ static bool iwl_good_ack_health(struct iwl_priv *priv,
170 int actual_delta, expected_delta, ba_timeout_delta; 170 int actual_delta, expected_delta, ba_timeout_delta;
171 struct statistics_tx *old; 171 struct statistics_tx *old;
172 172
173 if (priv->_agn.agg_tids_count) 173 if (priv->agg_tids_count)
174 return true; 174 return true;
175 175
176 old = &priv->statistics.tx; 176 old = &priv->statistics.tx;
@@ -592,8 +592,8 @@ static void iwl_rx_reply_rx_phy(struct iwl_priv *priv,
592{ 592{
593 struct iwl_rx_packet *pkt = rxb_addr(rxb); 593 struct iwl_rx_packet *pkt = rxb_addr(rxb);
594 594
595 priv->_agn.last_phy_res_valid = true; 595 priv->last_phy_res_valid = true;
596 memcpy(&priv->_agn.last_phy_res, pkt->u.raw, 596 memcpy(&priv->last_phy_res, pkt->u.raw,
597 sizeof(struct iwl_rx_phy_res)); 597 sizeof(struct iwl_rx_phy_res));
598} 598}
599 599
@@ -841,11 +841,11 @@ static void iwl_rx_reply_rx(struct iwl_priv *priv,
841 phy_res->cfg_phy_cnt + len); 841 phy_res->cfg_phy_cnt + len);
842 ampdu_status = le32_to_cpu(rx_pkt_status); 842 ampdu_status = le32_to_cpu(rx_pkt_status);
843 } else { 843 } else {
844 if (!priv->_agn.last_phy_res_valid) { 844 if (!priv->last_phy_res_valid) {
845 IWL_ERR(priv, "MPDU frame without cached PHY data\n"); 845 IWL_ERR(priv, "MPDU frame without cached PHY data\n");
846 return; 846 return;
847 } 847 }
848 phy_res = &priv->_agn.last_phy_res; 848 phy_res = &priv->last_phy_res;
849 amsdu = (struct iwl_rx_mpdu_res_start *)pkt->u.raw; 849 amsdu = (struct iwl_rx_mpdu_res_start *)pkt->u.raw;
850 header = (struct ieee80211_hdr *)(pkt->u.raw + sizeof(*amsdu)); 850 header = (struct ieee80211_hdr *)(pkt->u.raw + sizeof(*amsdu));
851 len = le16_to_cpu(amsdu->byte_count); 851 len = le16_to_cpu(amsdu->byte_count);
@@ -972,9 +972,9 @@ void iwl_setup_rx_handlers(struct iwl_priv *priv)
972 priv->rx_handlers[REPLY_TX] = iwlagn_rx_reply_tx; 972 priv->rx_handlers[REPLY_TX] = iwlagn_rx_reply_tx;
973 973
974 /* set up notification wait support */ 974 /* set up notification wait support */
975 spin_lock_init(&priv->_agn.notif_wait_lock); 975 spin_lock_init(&priv->notif_wait_lock);
976 INIT_LIST_HEAD(&priv->_agn.notif_waits); 976 INIT_LIST_HEAD(&priv->notif_waits);
977 init_waitqueue_head(&priv->_agn.notif_waitq); 977 init_waitqueue_head(&priv->notif_waitq);
978 978
979 /* Set up BT Rx handlers */ 979 /* Set up BT Rx handlers */
980 if (priv->cfg->lib->bt_rx_handler_setup) 980 if (priv->cfg->lib->bt_rx_handler_setup)
@@ -991,11 +991,11 @@ void iwl_rx_dispatch(struct iwl_priv *priv, struct iwl_rx_mem_buffer *rxb)
991 * even if the RX handler consumes the RXB we have 991 * even if the RX handler consumes the RXB we have
992 * access to it in the notification wait entry. 992 * access to it in the notification wait entry.
993 */ 993 */
994 if (!list_empty(&priv->_agn.notif_waits)) { 994 if (!list_empty(&priv->notif_waits)) {
995 struct iwl_notification_wait *w; 995 struct iwl_notification_wait *w;
996 996
997 spin_lock(&priv->_agn.notif_wait_lock); 997 spin_lock(&priv->notif_wait_lock);
998 list_for_each_entry(w, &priv->_agn.notif_waits, list) { 998 list_for_each_entry(w, &priv->notif_waits, list) {
999 if (w->cmd != pkt->hdr.cmd) 999 if (w->cmd != pkt->hdr.cmd)
1000 continue; 1000 continue;
1001 IWL_DEBUG_RX(priv, 1001 IWL_DEBUG_RX(priv,
@@ -1006,9 +1006,9 @@ void iwl_rx_dispatch(struct iwl_priv *priv, struct iwl_rx_mem_buffer *rxb)
1006 if (w->fn) 1006 if (w->fn)
1007 w->fn(priv, pkt, w->fn_data); 1007 w->fn(priv, pkt, w->fn_data);
1008 } 1008 }
1009 spin_unlock(&priv->_agn.notif_wait_lock); 1009 spin_unlock(&priv->notif_wait_lock);
1010 1010
1011 wake_up_all(&priv->_agn.notif_waitq); 1011 wake_up_all(&priv->notif_waitq);
1012 } 1012 }
1013 1013
1014 if (priv->pre_rx_handler) 1014 if (priv->pre_rx_handler)
diff --git a/drivers/net/wireless/iwlwifi/iwl-scan.c b/drivers/net/wireless/iwlwifi/iwl-scan.c
index 0505b1ac7561..dd6937e97055 100644
--- a/drivers/net/wireless/iwlwifi/iwl-scan.c
+++ b/drivers/net/wireless/iwlwifi/iwl-scan.c
@@ -565,10 +565,10 @@ static void iwl_bg_scan_completed(struct work_struct *work)
565 goto out_settings; 565 goto out_settings;
566 } 566 }
567 567
568 if (priv->scan_type == IWL_SCAN_OFFCH_TX && priv->_agn.offchan_tx_skb) { 568 if (priv->scan_type == IWL_SCAN_OFFCH_TX && priv->offchan_tx_skb) {
569 ieee80211_tx_status_irqsafe(priv->hw, 569 ieee80211_tx_status_irqsafe(priv->hw,
570 priv->_agn.offchan_tx_skb); 570 priv->offchan_tx_skb);
571 priv->_agn.offchan_tx_skb = NULL; 571 priv->offchan_tx_skb = NULL;
572 } 572 }
573 573
574 if (priv->scan_type != IWL_SCAN_NORMAL && !aborted) { 574 if (priv->scan_type != IWL_SCAN_NORMAL && !aborted) {
diff --git a/drivers/net/wireless/iwlwifi/iwl-trans-rx-pcie.c b/drivers/net/wireless/iwlwifi/iwl-trans-rx-pcie.c
index 74343589f284..474860290404 100644
--- a/drivers/net/wireless/iwlwifi/iwl-trans-rx-pcie.c
+++ b/drivers/net/wireless/iwlwifi/iwl-trans-rx-pcie.c
@@ -510,9 +510,9 @@ void iwl_irq_tasklet(struct iwl_priv *priv)
510 * hardware bugs here by ACKing all the possible interrupts so that 510 * hardware bugs here by ACKing all the possible interrupts so that
511 * interrupt coalescing can still be achieved. 511 * interrupt coalescing can still be achieved.
512 */ 512 */
513 iwl_write32(priv, CSR_INT, priv->_agn.inta | ~priv->inta_mask); 513 iwl_write32(priv, CSR_INT, priv->inta | ~priv->inta_mask);
514 514
515 inta = priv->_agn.inta; 515 inta = priv->inta;
516 516
517#ifdef CONFIG_IWLWIFI_DEBUG 517#ifdef CONFIG_IWLWIFI_DEBUG
518 if (iwl_get_debug_level(priv) & IWL_DL_ISR) { 518 if (iwl_get_debug_level(priv) & IWL_DL_ISR) {
@@ -525,8 +525,8 @@ void iwl_irq_tasklet(struct iwl_priv *priv)
525 525
526 spin_unlock_irqrestore(&priv->lock, flags); 526 spin_unlock_irqrestore(&priv->lock, flags);
527 527
528 /* saved interrupt in inta variable now we can reset priv->_agn.inta */ 528 /* saved interrupt in inta variable now we can reset priv->inta */
529 priv->_agn.inta = 0; 529 priv->inta = 0;
530 530
531 /* Now service all interrupt bits discovered above. */ 531 /* Now service all interrupt bits discovered above. */
532 if (inta & CSR_INT_BIT_HW_ERR) { 532 if (inta & CSR_INT_BIT_HW_ERR) {
@@ -703,16 +703,16 @@ void iwl_irq_tasklet(struct iwl_priv *priv)
703/* Free dram table */ 703/* Free dram table */
704void iwl_free_isr_ict(struct iwl_priv *priv) 704void iwl_free_isr_ict(struct iwl_priv *priv)
705{ 705{
706 if (priv->_agn.ict_tbl_vir) { 706 if (priv->ict_tbl_vir) {
707 dma_free_coherent(priv->bus->dev, 707 dma_free_coherent(priv->bus->dev,
708 (sizeof(u32) * ICT_COUNT) + PAGE_SIZE, 708 (sizeof(u32) * ICT_COUNT) + PAGE_SIZE,
709 priv->_agn.ict_tbl_vir, 709 priv->ict_tbl_vir,
710 priv->_agn.ict_tbl_dma); 710 priv->ict_tbl_dma);
711 priv->_agn.ict_tbl_vir = NULL; 711 priv->ict_tbl_vir = NULL;
712 memset(&priv->_agn.ict_tbl_dma, 0, 712 memset(&priv->ict_tbl_dma, 0,
713 sizeof(priv->_agn.ict_tbl_dma)); 713 sizeof(priv->ict_tbl_dma));
714 memset(&priv->_agn.aligned_ict_tbl_dma, 0, 714 memset(&priv->aligned_ict_tbl_dma, 0,
715 sizeof(priv->_agn.aligned_ict_tbl_dma)); 715 sizeof(priv->aligned_ict_tbl_dma));
716 } 716 }
717} 717}
718 718
@@ -724,36 +724,36 @@ int iwl_alloc_isr_ict(struct iwl_priv *priv)
724{ 724{
725 725
726 /* allocate shrared data table */ 726 /* allocate shrared data table */
727 priv->_agn.ict_tbl_vir = 727 priv->ict_tbl_vir =
728 dma_alloc_coherent(priv->bus->dev, 728 dma_alloc_coherent(priv->bus->dev,
729 (sizeof(u32) * ICT_COUNT) + PAGE_SIZE, 729 (sizeof(u32) * ICT_COUNT) + PAGE_SIZE,
730 &priv->_agn.ict_tbl_dma, GFP_KERNEL); 730 &priv->ict_tbl_dma, GFP_KERNEL);
731 if (!priv->_agn.ict_tbl_vir) 731 if (!priv->ict_tbl_vir)
732 return -ENOMEM; 732 return -ENOMEM;
733 733
734 /* align table to PAGE_SIZE boundary */ 734 /* align table to PAGE_SIZE boundary */
735 priv->_agn.aligned_ict_tbl_dma = 735 priv->aligned_ict_tbl_dma =
736 ALIGN(priv->_agn.ict_tbl_dma, PAGE_SIZE); 736 ALIGN(priv->ict_tbl_dma, PAGE_SIZE);
737 737
738 IWL_DEBUG_ISR(priv, "ict dma addr %Lx dma aligned %Lx diff %d\n", 738 IWL_DEBUG_ISR(priv, "ict dma addr %Lx dma aligned %Lx diff %d\n",
739 (unsigned long long)priv->_agn.ict_tbl_dma, 739 (unsigned long long)priv->ict_tbl_dma,
740 (unsigned long long)priv->_agn.aligned_ict_tbl_dma, 740 (unsigned long long)priv->aligned_ict_tbl_dma,
741 (int)(priv->_agn.aligned_ict_tbl_dma - 741 (int)(priv->aligned_ict_tbl_dma -
742 priv->_agn.ict_tbl_dma)); 742 priv->ict_tbl_dma));
743 743
744 priv->_agn.ict_tbl = priv->_agn.ict_tbl_vir + 744 priv->ict_tbl = priv->ict_tbl_vir +
745 (priv->_agn.aligned_ict_tbl_dma - 745 (priv->aligned_ict_tbl_dma -
746 priv->_agn.ict_tbl_dma); 746 priv->ict_tbl_dma);
747 747
748 IWL_DEBUG_ISR(priv, "ict vir addr %p vir aligned %p diff %d\n", 748 IWL_DEBUG_ISR(priv, "ict vir addr %p vir aligned %p diff %d\n",
749 priv->_agn.ict_tbl, priv->_agn.ict_tbl_vir, 749 priv->ict_tbl, priv->ict_tbl_vir,
750 (int)(priv->_agn.aligned_ict_tbl_dma - 750 (int)(priv->aligned_ict_tbl_dma -
751 priv->_agn.ict_tbl_dma)); 751 priv->ict_tbl_dma));
752 752
753 /* reset table and index to all 0 */ 753 /* reset table and index to all 0 */
754 memset(priv->_agn.ict_tbl_vir, 0, 754 memset(priv->ict_tbl_vir, 0,
755 (sizeof(u32) * ICT_COUNT) + PAGE_SIZE); 755 (sizeof(u32) * ICT_COUNT) + PAGE_SIZE);
756 priv->_agn.ict_index = 0; 756 priv->ict_index = 0;
757 757
758 /* add periodic RX interrupt */ 758 /* add periodic RX interrupt */
759 priv->inta_mask |= CSR_INT_BIT_RX_PERIODIC; 759 priv->inta_mask |= CSR_INT_BIT_RX_PERIODIC;
@@ -768,15 +768,15 @@ int iwl_reset_ict(struct iwl_priv *priv)
768 u32 val; 768 u32 val;
769 unsigned long flags; 769 unsigned long flags;
770 770
771 if (!priv->_agn.ict_tbl_vir) 771 if (!priv->ict_tbl_vir)
772 return 0; 772 return 0;
773 773
774 spin_lock_irqsave(&priv->lock, flags); 774 spin_lock_irqsave(&priv->lock, flags);
775 iwl_disable_interrupts(priv); 775 iwl_disable_interrupts(priv);
776 776
777 memset(&priv->_agn.ict_tbl[0], 0, sizeof(u32) * ICT_COUNT); 777 memset(&priv->ict_tbl[0], 0, sizeof(u32) * ICT_COUNT);
778 778
779 val = priv->_agn.aligned_ict_tbl_dma >> PAGE_SHIFT; 779 val = priv->aligned_ict_tbl_dma >> PAGE_SHIFT;
780 780
781 val |= CSR_DRAM_INT_TBL_ENABLE; 781 val |= CSR_DRAM_INT_TBL_ENABLE;
782 val |= CSR_DRAM_INIT_TBL_WRAP_CHECK; 782 val |= CSR_DRAM_INIT_TBL_WRAP_CHECK;
@@ -784,11 +784,11 @@ int iwl_reset_ict(struct iwl_priv *priv)
784 IWL_DEBUG_ISR(priv, "CSR_DRAM_INT_TBL_REG =0x%X " 784 IWL_DEBUG_ISR(priv, "CSR_DRAM_INT_TBL_REG =0x%X "
785 "aligned dma address %Lx\n", 785 "aligned dma address %Lx\n",
786 val, 786 val,
787 (unsigned long long)priv->_agn.aligned_ict_tbl_dma); 787 (unsigned long long)priv->aligned_ict_tbl_dma);
788 788
789 iwl_write32(priv, CSR_DRAM_INT_TBL_REG, val); 789 iwl_write32(priv, CSR_DRAM_INT_TBL_REG, val);
790 priv->_agn.use_ict = true; 790 priv->use_ict = true;
791 priv->_agn.ict_index = 0; 791 priv->ict_index = 0;
792 iwl_write32(priv, CSR_INT, priv->inta_mask); 792 iwl_write32(priv, CSR_INT, priv->inta_mask);
793 iwl_enable_interrupts(priv); 793 iwl_enable_interrupts(priv);
794 spin_unlock_irqrestore(&priv->lock, flags); 794 spin_unlock_irqrestore(&priv->lock, flags);
@@ -802,7 +802,7 @@ void iwl_disable_ict(struct iwl_priv *priv)
802 unsigned long flags; 802 unsigned long flags;
803 803
804 spin_lock_irqsave(&priv->lock, flags); 804 spin_lock_irqsave(&priv->lock, flags);
805 priv->_agn.use_ict = false; 805 priv->use_ict = false;
806 spin_unlock_irqrestore(&priv->lock, flags); 806 spin_unlock_irqrestore(&priv->lock, flags);
807} 807}
808 808
@@ -852,12 +852,12 @@ static irqreturn_t iwl_isr(int irq, void *data)
852 } 852 }
853#endif 853#endif
854 854
855 priv->_agn.inta |= inta; 855 priv->inta |= inta;
856 /* iwl_irq_tasklet() will service interrupts and re-enable them */ 856 /* iwl_irq_tasklet() will service interrupts and re-enable them */
857 if (likely(inta)) 857 if (likely(inta))
858 tasklet_schedule(&priv->irq_tasklet); 858 tasklet_schedule(&priv->irq_tasklet);
859 else if (test_bit(STATUS_INT_ENABLED, &priv->status) && 859 else if (test_bit(STATUS_INT_ENABLED, &priv->status) &&
860 !priv->_agn.inta) 860 !priv->inta)
861 iwl_enable_interrupts(priv); 861 iwl_enable_interrupts(priv);
862 862
863 unplugged: 863 unplugged:
@@ -867,7 +867,7 @@ static irqreturn_t iwl_isr(int irq, void *data)
867 none: 867 none:
868 /* re-enable interrupts here since we don't have anything to service. */ 868 /* re-enable interrupts here since we don't have anything to service. */
869 /* only Re-enable if disabled by irq and no schedules tasklet. */ 869 /* only Re-enable if disabled by irq and no schedules tasklet. */
870 if (test_bit(STATUS_INT_ENABLED, &priv->status) && !priv->_agn.inta) 870 if (test_bit(STATUS_INT_ENABLED, &priv->status) && !priv->inta)
871 iwl_enable_interrupts(priv); 871 iwl_enable_interrupts(priv);
872 872
873 spin_unlock_irqrestore(&priv->lock, flags); 873 spin_unlock_irqrestore(&priv->lock, flags);
@@ -895,7 +895,7 @@ irqreturn_t iwl_isr_ict(int irq, void *data)
895 /* dram interrupt table not set yet, 895 /* dram interrupt table not set yet,
896 * use legacy interrupt. 896 * use legacy interrupt.
897 */ 897 */
898 if (!priv->_agn.use_ict) 898 if (!priv->use_ict)
899 return iwl_isr(irq, data); 899 return iwl_isr(irq, data);
900 900
901 spin_lock_irqsave(&priv->lock, flags); 901 spin_lock_irqsave(&priv->lock, flags);
@@ -912,21 +912,21 @@ irqreturn_t iwl_isr_ict(int irq, void *data)
912 /* Ignore interrupt if there's nothing in NIC to service. 912 /* Ignore interrupt if there's nothing in NIC to service.
913 * This may be due to IRQ shared with another device, 913 * This may be due to IRQ shared with another device,
914 * or due to sporadic interrupts thrown from our NIC. */ 914 * or due to sporadic interrupts thrown from our NIC. */
915 if (!priv->_agn.ict_tbl[priv->_agn.ict_index]) { 915 if (!priv->ict_tbl[priv->ict_index]) {
916 IWL_DEBUG_ISR(priv, "Ignore interrupt, inta == 0\n"); 916 IWL_DEBUG_ISR(priv, "Ignore interrupt, inta == 0\n");
917 goto none; 917 goto none;
918 } 918 }
919 919
920 /* read all entries that not 0 start with ict_index */ 920 /* read all entries that not 0 start with ict_index */
921 while (priv->_agn.ict_tbl[priv->_agn.ict_index]) { 921 while (priv->ict_tbl[priv->ict_index]) {
922 922
923 val |= le32_to_cpu(priv->_agn.ict_tbl[priv->_agn.ict_index]); 923 val |= le32_to_cpu(priv->ict_tbl[priv->ict_index]);
924 IWL_DEBUG_ISR(priv, "ICT index %d value 0x%08X\n", 924 IWL_DEBUG_ISR(priv, "ICT index %d value 0x%08X\n",
925 priv->_agn.ict_index, 925 priv->ict_index,
926 le32_to_cpu( 926 le32_to_cpu(
927 priv->_agn.ict_tbl[priv->_agn.ict_index])); 927 priv->ict_tbl[priv->ict_index]));
928 priv->_agn.ict_tbl[priv->_agn.ict_index] = 0; 928 priv->ict_tbl[priv->ict_index] = 0;
929 priv->_agn.ict_index = iwl_queue_inc_wrap(priv->_agn.ict_index, 929 priv->ict_index = iwl_queue_inc_wrap(priv->ict_index,
930 ICT_COUNT); 930 ICT_COUNT);
931 931
932 } 932 }
@@ -950,13 +950,13 @@ irqreturn_t iwl_isr_ict(int irq, void *data)
950 inta, inta_mask, val); 950 inta, inta_mask, val);
951 951
952 inta &= priv->inta_mask; 952 inta &= priv->inta_mask;
953 priv->_agn.inta |= inta; 953 priv->inta |= inta;
954 954
955 /* iwl_irq_tasklet() will service interrupts and re-enable them */ 955 /* iwl_irq_tasklet() will service interrupts and re-enable them */
956 if (likely(inta)) 956 if (likely(inta))
957 tasklet_schedule(&priv->irq_tasklet); 957 tasklet_schedule(&priv->irq_tasklet);
958 else if (test_bit(STATUS_INT_ENABLED, &priv->status) && 958 else if (test_bit(STATUS_INT_ENABLED, &priv->status) &&
959 !priv->_agn.inta) { 959 !priv->inta) {
960 /* Allow interrupt if was disabled by this handler and 960 /* Allow interrupt if was disabled by this handler and
961 * no tasklet was schedules, We should not enable interrupt, 961 * no tasklet was schedules, We should not enable interrupt,
962 * tasklet will enable it. 962 * tasklet will enable it.
@@ -971,7 +971,7 @@ irqreturn_t iwl_isr_ict(int irq, void *data)
971 /* re-enable interrupts here since we don't have anything to service. 971 /* re-enable interrupts here since we don't have anything to service.
972 * only Re-enable if disabled by irq. 972 * only Re-enable if disabled by irq.
973 */ 973 */
974 if (test_bit(STATUS_INT_ENABLED, &priv->status) && !priv->_agn.inta) 974 if (test_bit(STATUS_INT_ENABLED, &priv->status) && !priv->inta)
975 iwl_enable_interrupts(priv); 975 iwl_enable_interrupts(priv);
976 976
977 spin_unlock_irqrestore(&priv->lock, flags); 977 spin_unlock_irqrestore(&priv->lock, flags);